Commit Graph

66 Commits (e5cab93fdb81951166511f4e2194e59cc2d436d1)

Author SHA1 Message Date
Michail Vourlakos f93bec8893 fixes for WindowsCanCover
--show immediately when view contains mouse
--hide only if view does not contain mouse
--never apply ByPassWM hint for WindowsCanCover
Michail Vourlakos 4cf929ea81 support containsMouse behavior for WindowsCanCover
Michail Vourlakos dfd8bcdeca wayland improvements for WindowsAlwaysCover
Michail Vourlakos c88329d278 x11:improve experience for Windows Always Cover
--simplify also some parts from windows calling window
manager values
Michail Vourlakos d9e18794c8 simplify keepabove/below calling
--start a bit to work with "Windows Always Cover"
visibility mode
Michail Vourlakos 3554c4a006 improve some functionality used
Michail Vourlakos 72777d18c1 add functionality to latte window manager
--the Latte window manager has gained now
functions in order to set the window flags
properly and to update KeepAbove/KeepBelow
flags for windows
Michail Vourlakos 896afcc068 support screen edge margin for behaveAsPlasmaPanel
Michail Vourlakos 8cf49b672c remove obsolete draggingStarted signals/slots
--draggingStarted signals/slots were used in order
to handle the active window dragging from empty areas.
The new approach ungrabs the mouse properly through
View relevant function and at the same time sends a
QEvent::Leave event to inform applets that the mouse
has left the view. This is enough in order to remove
any older draggingStarted workarounds and hacks.
Michail Vourlakos 057edb87f1 send QEvent::Leave for view when dragging started
--this way the applets in the view will be informed for
mouse exited the view window
Michail Vourlakos f7d968ff6d update struts when normalThickness value changes
--the issue was pretty obvious when the user was
using a top view with thickness < 24px. and a
bottom view always visible. In that case the top
view struts on startup did not decrease below
at 24px.

BUG:410707
Michail Vourlakos 3afd0eb643 set minimum hide timer interval 50ms
--when hide timer is set below 50ms. there are
cases that does not let the view to be shown after
a containmouse trigerring. By setting a minimum
value for the timer to 50ms this is fixed.

BUG:410370
Michail Vourlakos 9a10cd1e26 fix SharedLayout VisibilityManager::isCurrent state
--when KWin edges are used in a SharedLayout then the
all view Layout::isCurrent() function must be used
otherwise the layout is not identified properly as
current based on different layouts per activities
Michail Vourlakos c5b1e9bbf5 x11:drop QWindow::setVisible() function
--this function creates irrelevant crashes even
under x11 environment... Dropped in favour of
show()/hide() functions that seem to not create
any issues
Michail Vourlakos dac692bec4 dont block updating hidden state for drag enter
Michail Vourlakos 9e9003870b show view immediately for DragEnter
--when the user had activated KWin Edges and the
Show Timer was too high when the View delayed a
lot to show for DragEnter events
Michail Vourlakos a9310a3de3 disable KWin edges for ByPassWMHint
--KWin edges do not support trigerring
above fullscreen windows
Michail Vourlakos 3c5c59e149 Revert "consider mask thickness for struts"
This reverts commit a4764024db.
Michail Vourlakos 359b120360 Revert "remove workaround for struts gap"
This reverts commit 137cd36547.
Michail Vourlakos 137cd36547 remove workaround for struts gap
--consider always the maskThickness when
settings struts in order to avoid gaps
at all cases
Michail Vourlakos a4764024db consider mask thickness for struts
Michail Vourlakos 4cc4bfd6de REFACTOR WindowsTracker to provide more information
--View::WindowsTracker now provides all the time
information about CurrentScreen and AllScreens!
This way all consumers (Latte::Containment, Applets etc.)
can choose whatever suits them best.
Michail Vourlakos e5673a9cfa fix type for DodgeMaximized
Michail Vourlakos 3f3560aab5 update dodgeAllWindows on startup properly
Michail Vourlakos b251ea7b8e protect visibility destructor
--this protects a crash when closing Latte
immediately after startup
Michail Vourlakos ffced101e1 apply visibilitymanager::struts when are needed
Michail Vourlakos f63a0ad658 update/improve hack part of screenghostwindow
--related to KWin faulty behavior for visibility
Michail Vourlakos 945c6e50e2 remove deprecated m_views from AbstractWMInterface
Michail Vourlakos a295352514 limit WM::setViewExtraFlags calls
Michail Vourlakos ad788130ab REFACTOR:add WindowSystem namespace
Michail Vourlakos a6b8fbcaff consider view::hidden state after slide-out
Michail Vourlakos a27ff3ec48 REFACTOR:Update LayoutManager to Layouts::Manager
--create "layouts" own directory in order to host
all LAYOUTS management/control code and classes
Michail Vourlakos 29157f4636 refactor:rename managedLayout to layout/viewLayout
Michail Vourlakos d945c89713 update struts when needed after their removal
--improve also when struts are applied under a
Multiple Mode and Multiple Activities
Michail Vourlakos c38e3016de update hidden state after slide-in
BUG: 406415
Michail Vourlakos 5cf047dcc5 clear publishedStruts for visibility modes changes
Michail Vourlakos 06b92024ba remove no needed debug message
Michail Vourlakos bb3e82024e simplify valid struts calculations
Michail Vourlakos a472ef34f3 fix ident in visibilitymanager
--AlwaysVisible signals to update struts
are always enabled independent of Single/Multiple
mode but for Single mode they are just ignored
Michail Vourlakos d8cc85dd4a fix assert for visibilitymanager
BUG: 407131
Michail Vourlakos 854840b8fc fixes for style and naming
--for visibilitymanager class
Michail Vourlakos 417f992831 move intersect function to WindowsTracker
Michail Vourlakos dab796e253 improvements for visibilitymanager code
Michail Vourlakos a2566d1414 move dodgeAllWindows to windowtracker
Michail Vourlakos 20a57f3c15 improve edge changing animation
Michail Vourlakos b35fa94307 reduce availableScreenGeometry calls
Michail Vourlakos db6a4e9d0d make struts and Always Visible lighter
--support them also in Live Editing
Michail Vourlakos 385b0e0b20 update struts properly for TopLayouts
Michail Vourlakos 9bdd58ee3f restore Show Timer behavior for KWin Edges
Michail Vourlakos 9263b3e890 improvements for window tracker