This removes the last dependency from plasma-framework on kde4support.
This change is a bit more involved than other kde4support removals because
QSharedPointer does not provide a count() method. I therefore reworked the code
to store the SharedSvgRenderer as a QWeakPointer in s_renderers, making it
possible to detect when the last one goes away by creating a QWeakPointer guard
in SvgPrivate::eraseRenderer().
REVIEW: 114912
ToolTipArea.containsMouse allows the use to update the tooltip way
before it's shown, or when the contents of the tooltip should change
within an open dialog.
dismiss() and keepalive() allow handing over the tooltip dialog to
another item, in order to allow for a smoother handover when a new item
recycles the tooltipdialog. This avoids flickering when the tooltip
moves from one item to another.
Instead of registering WidgetExplorer inside the shell, create a new qml
plugin in the org.kde.plasma.private namespace.
This is useful for running widgetexplorer in qmlscene.
This makes testing, debugging and profiling considerably easier.
REVIEW: 114914
Saves quite a lot of roundtrips to the XServer. Most important we
fetch the atom only once which means we don't have to refetch when
checking the property notify events.
REVIEW: 112445
- Derive from MouseEventListener as to let input through
- react to target changes: reparent the MEL accordingly
- kill a bunch of warnings
This "helps" a bit, but still filters out input events since the MEL
only passes events down to children, but the tooltip's target becomes
its parent.
Reparenting the target crashes, and it seems a pretty ugly thing to do,
anyway, since we don't want to mess with the scenegraph structure just
to filter events out for tooltips. Grmblz.
Delete KDeclarativeMouseEvent when emitted
Do not leak KDeclarativeMouseEvent press and hold events when the mouse
moves.
Do not create KDeclarativeMouseEvent when the mouse is hovered. It's
pointless.
... instead of overriding the property.
Removes a warning whenever the implicit width and height changes, and
reduces the API footprint of AppletInterface.
The larger headings are a bit softened, to make their stick out less,
the font is meant to take care of this. Result: visually more consistent
colouring, strangely. Human eyes are beautifully complex things.
same rules of sharing and memory management apply.
The model will be shared between all visualizations and deleted when nobody is connected to the source anymore
Since we are checking if the width() is out of bounds we should also use
width() to correct the position.
Other cases might need change as well, but I think we better go in a case
by case bases to fix all possible issues.
It is up to the Containment to decide if the user is allowed or not
to lock/unluck the widgets, so corona should not add one when there is none
(user is not allow) and it shouldn't add another one when there is already
one.
Fixes duplicated action in toolbox.
I'm not sure for what reason this was changed but it is clearly wrong,
we don't want to create a new action but rather re-add (as the hack says)
the action we took before.
Fixes "Empty action" in toolbox.
The panel would be one pixel above the bottom edge, which prevents us
from using the invisible space beyond the panel. This makes the panel
flush with the bottom edge.
- We would only check for the available screen, but not for the location
when applying borders. Fix that.
- Cache dialog geometry when going fullscreen, so we can restore it when
we're not fullscreen anymore.
- Remove temporary var l, we have m_location for that.
The amount of warnings that plasma-shell has, makes it super hard to
make use of tools like journalctl or to grep ~/.xsession-errors.
We need these tools to diagnose possible bugs in the session start or
any other software that redirects stderr or those places.
We can remove this option once all the Warnings are fixed, specially
the one in Qt: https://codereview.qt-project.org/#change,73943
CCMAIL: plasma-devel@kde.org
This is needed to let KLauncher know that Plasma Shell has been
executed.
We are using plasma_shell because there is a bug in KDBusService
that prevents us from using plasma-shell. Fix is already done
but repositoiries at this very moment are frozen.
This is a needless duplication of the property, and it causes bugs.
Removing it, and porting all users to the flags property from QWindow
magically makes layering and resizability bugs vanish.
One problem is left: the dialog dismisses too easily, it should not
dismiss when being resized, moved or when a child dialog or QMenu opens
from it.