- removed useless "virtual" specifications
- removed useless destructors
- cleanup variable initializations
- moved protected methods as private when possible for better encapsulation
Summary:
While dimensions of QScreen are in logical pixels, the origin is not.
As result, computed native coordinates are incorrect on high dpi.
Test Plan:
Drag a window by empty area on a multiple monitor setup (with High DPI),
neither cursor nor windows should "jump."
Reviewers: #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D20182
Summary:
For a mouse users have the precision that if they clicked in an empty
area they want to perform some action.
For touch and tablets that isn't necessarily true.
From Boud in a kwin report: "The drag the window by empty areas is a
nasty one as well, especially when you're using a pen."
Change needs to happen in oxygen too
Test Plan:
Moved window using sidebar of kate with mouse
Couldn't drag it with a pen
Reviewers: #plasma
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D15942
Summary: Currently Breeze hard-depends on QtQuick in order to provide QtQuick-specific theme tweaks, but only for KDE5. This patch decouples KDE4 support from QtQuick support and allows Breeze to be built even when QtQuick is not available (at the loss of the QtQuick specific tweaks of course).
Reviewers: mart
Reviewed By: mart
Subscribers: ngraham, davidedmundson, plasma-devel
Tags: #plasma, #breeze
Differential Revision: https://phabricator.kde.org/D12708
Summary:
All these return statements are at the end of functions which return
nothing.
Reviewers: #breeze, mart
Reviewed By: mart
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D11638
Use window manager to handle window move when dragging from free space
also with QtQuickControls.
Registering QQuickItems is hacky, because there is no Style::polish
for QtQuickControls, so those items are now registered from ::isQtQuickControl.
Differential Revision: https://phabricator.kde.org/D3578
Summary:
So far breeze hard disabled the window moving on Wayland. With this
change the required functionality gets added.
For that Breeze creates an additional Seat and a Pointer on it to track
all pointer button events on the window. That way the kstyle gets the
latest serial which needs to be passed to the move requests. This is not
available through QtWayland's native interface, thus Breeze needs to
interact with Wayland directly.
When the move is triggered Breeze gets the ShellSurface for the window
and triggers the move on the own Seat object with the tracked serial.
Test Plan: Tested with KWin and Weston, move triggered in both.
Reviewers: #plasma_on_wayland
Subscribers: plasma-devel
Tags: #plasma_on_wayland
Differential Revision: https://phabricator.kde.org/D3019
Unfortunately we cannot support moving windows from the style on Wayland
(yet). To move a window we need the (Xdg)ShellSurface and the wl_seat.
Through the integration plugin we can get the ShellSurface, but not the
seat. Thus we cannot invoke the feature through KWayland.
We either need to extend the native interface and/or extend QWindow to
expose a startSystemMove (QPlatformWindow already supports a
startSystemResize).
REVIEW: 127301
Also remove hack that messes with cursor position, which results in
window sometimes rendered in wrong position for a moment after starting
window move.
REVIEW: 125522
BUG: 353749
Also remove hack that messes with cursor position, which results in
window sometimes rendered in wrong position for a moment after starting
window move.
REVIEW: 125522