Commit Graph

239 Commits (b4dcd158a4d6df1b83850d3e9ab9117768518371)

Author SHA1 Message Date
Michail Vourlakos 77866ebfe6 support dialogs/background for dock settings wins
--use a different shadows manager for dialogs such as
dock settings window through the Latte::Corona class.
The new shadow manager is responsible to draw
"dialogs/background" shadows for windows instead of
the PanelShadows original class which is responsible
to draw "widgets/background" shadows
5 years ago
Michail Vourlakos aa441064e1 identify highest priority application launcher
--provide a new way to identify which application
launcher has the highest priority in order to be
triggered. When an application launcher applet
has a global shortcut assigned to it then that
application launcher applet has the highest
priority in order to be triggered through
"Super" global key.
5 years ago
Michail Vourlakos 49b3c4648a [wayland,crash]-fix showing advanced dock settings
--fix showing advanced settings window in order to update
the window geometry ONLY WHEN there are availableScreenGeometry
changes from Latte::View(s).
--As a side effect changing docks/panels location under wayland
when they have enabled their background blur has reduced crashes
during location changes.
5 years ago
Michail Vourlakos ad074a6dab improve View workarounds for kwin activities
--improve the new worksarounds in order to always
apply the activities that a view and its windows are
present when the workarounds were triggered from
kwin faulty behavior. The kwin faulty behavior is
that when any activity is paused then all Latte::Views
become hidden and lose their activities references.
The workarounds are timers that when they trace
a faulty visible state !visible are restoring the
normal behavior to views.
5 years ago
Michail Vourlakos 06aef0e30d restore signal registering that was lost 5 years ago
Michail Vourlakos 7aca2bedd6 improve semantics for WM::setActiveEdge 5 years ago
Michail Vourlakos d27e90caf9 dock settings window not overlap plasma panels
--when dock settings window is shown it is good to
NOT overlap with plasma panels. Under X11 this is
possible because the real availableScreenGeometry
is exposed through QScreen.
5 years ago
Michail Vourlakos 722f49a7b9 add hidden debug option "kwinedges"
--a way to debug kwin edges behavior for
hidden Latte::View(s) screen edges windows
5 years ago
Michail Vourlakos ca8aadf1a9 fixed compile with qt 5.9
FIXED-IN:0.9.7
BUG:415715
5 years ago
Michail Vourlakos a2edffa8e7 update PanelShadows to upstream code 5 years ago
Michail Vourlakos 6b8e7a6361 new View::availableScreenRectChangedFrom triggers
--following the new design applied first at
View:availableScreenRegionChangedFrom instead of different
View parts to trigger directly m_corona relevant signal,
all View parts are triggering the View relevant signal
and as such the can be disabled all together
easily.
5 years ago
Michail Vourlakos 502571b09e set minimumLength for ScreenEdgeGhostWindow
--set a minimumLength in order to avoid the indicator
to become TOO SMALL and not noticable. The minimum
length has been set to be 25% of the screen edge length
that the view as attached.
5 years ago
Michail Vourlakos 9b6f597ce6 crash fix:from unloading views
--when as Always Visible view was unloaded from
a CentralLayout because its Activity was closing
it was creating a crash. This patch fixes the
situation by releasing sensitive view signals
earlier.
5 years ago
Michail Vourlakos 45b37050d1 dont wait for dock to show for activate shortcuts
--when the application launcher is not a popup then
we do not have to wait for the dock show we can execute
the activation code immediately
--when Latte activates an entry can now understand
if a popup is going to be shown in order to delay
the execution. If a popup is NOT going to show either
for a latte task or an applet then the code is executed
immediately

BUG:415417
FIXED-IN:0.9.6
5 years ago
Michail Vourlakos 55cb8efb17 refactor:move qml handling from globalshortcuts
--all the qml handling code from globalshortcuts is
now moved to Latte::View::ContaimentInterface. This
way the code is cleaner and can be expanded easier.
5 years ago
Michail Vourlakos 8f588ea3d2 remove obsolete fontmetrics libraries 5 years ago
Michail Vourlakos 35d8b98abf dont use topleft corner at ghost win hiding mask
--this way the top-left screen corner is always
available even when left or top views are auto-hidden
or dodged
6 years ago
Michail Vourlakos 9664d88ba0 update QRegion deprecated code 6 years ago
Yuri Chornoivan dc14abf3d0 Fix minor EBN issues 6 years ago
Michail Vourlakos 153f5dab27 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.
6 years ago
Michail Vourlakos 0994405f69 send QEvent::Leave for view when dragging started
--this way the applets in the view will be informed for
mouse exited the view window
6 years ago
Yuri Chornoivan 15ab253efd Fix minor EBN issues 6 years ago
Yuri Chornoivan 784dfd1bf9 Try to fix build with Clang 6 years ago
Michail Vourlakos bf66aa35a7 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
6 years ago
Michail Vourlakos 92a4fb054e improve smartness for Unity case layout
--when a vertical view is in busy state and is touching
also a horizontal view that is fully transparent in
SMART mode then the visual result is not that good.
In that case it is better to show the view background.
The horizontal view background in that case can provide
three different states:
a) if the panel style for popups is activated then the
horizontal view will follow the plasma original style
b) if NOT [a] and solid background for touching windows
is enabled then solid background will be offered
c) if NOT [a] and NOT [b] then the isBusy state
transparency will be offered
6 years ago
Michail Vourlakos cad13372d6 support touching horizontal view and isbusy
--trying to increase smartness for horizontal
and vertical views. In multiple layouts environment
a view can exist in cases that one or more of
the sided views that is touching it is NOT
transparent, it would be nice for those
cases the top or bottom  view to LOSE also
its transparency in order to not look
inconsistent.
6 years ago
Michail Vourlakos 1000f62836 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
6 years ago
Michail Vourlakos cdf230944e fix configview.h reference
BUG:410371
FIXED-IN:0.9.1
6 years ago
Michail Vourlakos b94f87f144 rename trackerwindows to windowstracker
-- in order to distinguish it from the neighbour
tracker classes
6 years ago
Michail Vourlakos 9c0ff5d2a8 fix drag sensitivity when KWin edges are used 6 years ago
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
6 years ago
Michail Vourlakos c94843c9e6 KWin issue #2,hiding windows when activies stopped
--in such case under x11, the winIds of the visible
Latte windows are changed and as such the windows
tracking mechanism becomes broken. The code introduced
tries to track the case the update the WM::ignoredWindows
properly
6 years ago
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
6 years ago
Michail Vourlakos 3a465782e1 wayland:improve latte windows id discovering 6 years ago
Michail Vourlakos 1ef328bd3a avoid wayland crashes from QWindow::setVisible 6 years ago
Michail Vourlakos c85d24ac37 use WM:IgnoredWindows infrastructure for wayland
--improvements for IgnoredWindows infrastructure
all over the relevant classes
6 years ago
Michail Vourlakos 79f392723e wm:support ignored windows
--x11 implementation is in place and wayland
case must be updated accordingly
6 years ago
Michail Vourlakos dac692bec4 dont block updating hidden state for drag enter 6 years ago
Michail Vourlakos 8033db04d3 increase KWin Ghost window thickness
--this way the KWin Edges ghost window behaves
more accurate and more predictable
6 years ago
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
6 years ago
Michail Vourlakos ba6460e919 update indicators runtime
--fixes to signals in ViewParts in order to avoid
crashes. Currently the recreateView approach is used
in order to reload indicators runtime dynamically.
The "View::setSource" approach does not reload the
indicators properly
6 years ago
Michail Vourlakos 85e49d41bf improve view recreation code 6 years ago
Michail Vourlakos caefba4576 recreate views when indicators update 6 years ago
Michail Vourlakos a9310a3de3 disable KWin edges for ByPassWMHint
--KWin edges do not support trigerring
above fullscreen windows
6 years ago
Michail Vourlakos a7abf5d309 update background svg file when plasmatheme changes 6 years ago
Michail Vourlakos 0e96168742 update backgroundContrastEffect mid values
--the previous approach was disabling the background
contrast effect at all times except when the background
opacity was 100%, the new approach considers the background
opacity value and provide mid values to be applied.
That means that 0% background opacity disables the background
constrast visual effect, 100% applies the background contrast
visual effect at its maximum values and in between the mid
values for background contrast effect are applied
6 years ago
Michail Vourlakos 91a9e7c0c5 improvements for effects area and painting 6 years ago
Michail Vourlakos 3c5c59e149 Revert "consider mask thickness for struts"
This reverts commit a4764024db.
6 years ago
Michail Vourlakos 359b120360 Revert "remove workaround for struts gap"
This reverts commit 137cd36547.
6 years ago
Michail Vourlakos 137cd36547 remove workaround for struts gap
--consider always the maskThickness when
settings struts in order to avoid gaps
at all cases
6 years ago