The bug happens because the binary part of the applet sends out the
available screen resolution _before_ the applet is fully loaded AND also
whenever the screen changes in any way. This works fine with the non-
auto hiding panel because once the panel gets loaded, it changes the
available screen area (cause the part where panel is is reserved and
windows cannot go there) and that change is told to the binary part of
the applet and that part tells the positioning part.
However with the auto-hiding panel the signal about the changed
available screen space never arrives because the panel does not take
that space when it loads. And so the applet was left with "available
screen space = 0x0" because the first signal is sent out before the
applet is fully loaded.
So the obvious fix is to simply ask for the available screen space
_after_ the applet has finished loading.
BUG: 357652
FIXED-IN: 5.5.4
This patch does this:
* moves the screen handling code from the import into
the applet baseclass, which can access the containment
available screen rect and watch for screen changes
* fixes the applet config dialog's custom screen position
setting which has a bug of always being enabled
* consolidates duplicated code in the helper import
into functions
* ensures that popups have correct positions when on
screen that does not start with y=0 (and x=0 in some
cases too)
REVIEW: 126408
CCBUG: 353966
CCBUG: 356461
In kde4 times, the layout of clock's tooltip was nicely arranged using a
table. Now it's a bit of a mess so this brings back some nice layout.
Also simplifies the timeForZone function which is used only for the
tooltip.
BUG: 357005
BUG: 351472
CCBUG: 357004
FIXED-IN: 5.6.0
REVIEW: 124047
It's nice that we offer to configure an application's notification settings
from a notification. Usually, however, you're lost in a dialog of notifications
and you have no idea which event you just saw.
CHANGELOG: When pressing the "configure" button on a notification, the actual
notification type will be pre-selected in the upcoming notifications list
REVIEW: 126570
If an applet fails to load properly m_applet will be null which is a
valid state to be in when we destruct the plasmoid task object.
BUG: 356470
REVIEW: 126497
As describled in 'Self-hiding plasmoid' requirement
https://forum.kde.org/viewtopic.php?f=83&t=39501
I added Plasma::Types::HiddenStatus, then when the plasmoid's status is
SystemTray.Task.HiddenStatus, the plasmoid is just self-hiding.
REVIEW: 126298
QTimer::singleShot(time, QObject*, char*)
QTimer::singleShot(time, QObject*, PointerToFunction)
behave differently when time == 0
So the porting had an effect
This patch migrates to QMetaObject::invokeMethod which is clearer
CCBUG: 352055
There seems to be two different bug in 352055 but looks similar, the other one is fixed in Qt 5.6 according to Albert Astals Cid.
Somehow key events no longer end up in the expanded task, this could be related
to the fact that we now have a proper ScrollView instead of a plain ListView/Flickable.
REVIEW: 126293
It can happen that the onAppletLocationChanged() slot gets called before
init(), making init() reset the calculated position from the slot.
CCBUG: 356461
The globalConfig() in ctor returns a non-(yet-)existing KConfigGroup
which makes it always return the default value. So the config access
must be delayed for init().
Custom notification position is now correctly remembered.
BUG: 356419
FIXED-IN: 5.5.1
This slot gets triggered also on popup hiding, which is unwanted.
Should also prevent a crash when unloading notifications applet while
there is an active popup on screen.
BUG: 356402
FIXED-IN: 5.5.1
The notifications popup positioning recently regressed
by some other changes (looks like Qt) and the popups
would fly across the screen.
The proper solution is using KWin effect but given how
close the release is, this needs to be dealt with in a
different way.
The main problem is calculating the initial popup size
because as long as the Dialog is invisible, it has an
incorrect geometry, so it needs to be positioned right
after it's being displayed. The Dialog however gets the
sizes even later, so the code now calls a slot from Dialog
that ensures the sizes are correct before the initial
placement on screen. It's not ideal but I'm out of ideas
otherwise. Plus it should be only temporary until the
KWin effect will replace it.
Besides that, it moves the custom position handling from the
QML into the C++ applet class, making it easier.
REVIEW: 126221
BUG: 355069
FIXED-IN: 5.5.0
We now fade out the text at the end so there's no need for the increased
contrast by the raised ToolButtons. It also makes the list appear cleaner now.
Given we don't let it overflow anyway. This should alleviate the weird
scroll behavior but still doesn't completely fix it. QtQuick ListView
just doesn't like delegates with varying sizes.
CCBUG: 354592
Because this code depends on plasma-framework and kdeclarative versions
that will not be released before Plasma 5.5 beta, this needs to be
reverted.
And because beta is also feature and string freeze, this will be
postponed to 5.6.
Reverts these commits:
a179d512b469e13f67374b631f8c5c7232b798d5ea6691a307
Creates separate category for Calendar config, currently
only with "Show week numbers" and a list of calendar
plugins to enable/disable.
REVIEW: 126010
We need to check whether the stuff we *dropped* is supported by us, not whether
we support ourself :)
CHANGELOG: Fixed dropping files onto an icon widget linking to an application with restrictions on supported file types