Commit Graph

1620 Commits (7d0d8f74f74dba7620911078f1b0671496ec96aa)

Author SHA1 Message Date
Michail Vourlakos 266499a485 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 8b1526bc0d Revert "apply proper shadows for dock settings window"
This reverts commit 9e78fab4ce.
5 years ago
Michail Vourlakos 16a04684df blur dock settings window properly
--the new approach is always using the background
mask of the window from the FrameSvgItem background
applied.

BUG:416177
FIXED-IN:0.9.8
5 years ago
Michail Vourlakos 9e78fab4ce apply proper shadows for dock settings window
--copy and use plasmaquick/dialogshadow class from
plasma framework library

BUG:416175
FIXED-IN:0.9.8
5 years ago
Michail Vourlakos 80ceea98e2 respect plasma theme color palette always
--identify better what is the plasma theme color
palette the creator has chosen and use ALWAYS
the same color palette that Plasma is also using.
In the past, Latte was trying to protect the
color palette because Latte REVERSED colors mode
did not work fine for all plasma themes. That
approach is abandoned, Latte will use the same
colors group with plasma themes and it is on
the creators responsibility to provide enough
contrast
5 years ago
Michail Vourlakos 34d6c2cd78 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 411017c0f6 [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 706a80cae3 hide timer for floating views
--for floating views the hide timer can do
the trick about when to make the checks
that the view must become hidden. In floating
views should support different default and
current value because it should be greater
that the normal use cases.
5 years ago
Michail Vourlakos 87f86ebc75 trying to support masking for floating 5 years ago
Michail Vourlakos f539512c8c 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 3b1676fb93 update caller for availablescreenrectwithcriteria 5 years ago
Michail Vourlakos 620cc32c47 restore signal registering that was lost 5 years ago
Michail Vourlakos 8946ded107 improve availableScreenR*WithCriteria functions 5 years ago
Michail Vourlakos 9d6e350a85 New ScreenEdge triggering behavior for RealFloats
--trying an alternative approach concerning real floating
Views and screen edge triggering. In such case the user
has triggered to show a REAL FLOATING VIEW, it is considered
normal from user point of view for the view to remain shown
until there is windows changed state or the mouse has
escaped the View main window area
5 years ago
Michail Vourlakos a9d4f91c05 add inSlideAnimation flag for ViewPart::Positioner
--it can be used in order to enable/disable some codepaths
5 years ago
Michail Vourlakos 1dc154f932 track inLocationAnimation of View:Positioner 5 years ago
Michail Vourlakos b129a8d880 improve real floating views screen edge activation
-- when the user hovers the screen edge there is a chance that
screenedgeghostwindow has become underneath the view. In such
case when the real floating window slides in the screenghostwindow
becomes unhovered faulty and it is destroyed afterwards. It is
much better if the screenedgeghostwindow in such case remains shown
until the mouse is not contained neither in the view or the screen
ghost window
-- expose screen edge ghost window thickness
5 years ago
Michail Vourlakos e0e6f5f6b3 improve semantics for WM::setActiveEdge 5 years ago
Michail Vourlakos efbd2a8276 floating:staying mouse on edge and not hiding
--when the floating view is a real panel window and
slides out-in with real animation if the user keeps
its mouse on the screen edge the view can remain
shown without sliding out
5 years ago
Michail Vourlakos 103de33c92 trying to implement real panels sliding in/ou 5 years ago
Johnny Jazeix d2170f13c0 revert previous commit, add KDECompilerSettings back 5 years ago
Johnny Jazeix e705eed415 Don't run qmllint if ECM_ENABLE_SANITIZERS is defined 5 years ago
Michail Vourlakos d0aa28a60d 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 0bea257086 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 fdf798b49f add KDE official Help menu
--in that way Latte gains easily language
switching from user
--exposure of how/where to report bugs
5 years ago
Michail Vourlakos ada7be1a52 remove debug message 5 years ago
Michail Vourlakos 91b345e615 make indicators infrastructure smarter
--indicators are now tracked only based on their
installation path, that means that are updated
more precise when changes are applied and
at the same time views are recreated only when
the show the specific indicator that was changed
5 years ago
Michail Vourlakos 3108a73533 fixed compile with qt 5.9
FIXED-IN:0.9.7
BUG:415715
5 years ago
Michail Vourlakos 79705e9753 option to disable creenEdgeMargin for maximized
--improved settings for Floating windows in Behavior
tab and add a new option to hide ALL screen gaps meaning
both length screen and thickness screen gap when there
is a maximized window in the screen

BUG:415630
5 years ago
Michail Vourlakos f6b8ed139d update PanelShadows to upstream code 5 years ago
Michail Vourlakos 0853d78101 remove QFontMetrics deprecated code 5 years ago
Michail Vourlakos 70cb2f7fde 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 e5cab93fdb 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 ccbf2c88fd 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
Tranter Madi fe5dbf9f2b Improve context menu
Summary:
- Add `Configure Latte Global Settings...` because it's too hidden in Layout > Configure and does not relate to the Layout menu.
- Insert a new `Separator` to separate between Global settings and View settings (see screenshot)
- Rename `Panel/Dock Settings` to `Edit Panel/Dock` (Verb + Noun)
- Rename `Layout > Configure...` to `Layout > Manage Layouts` (Verb + Noun)

Menu Items Order:

   a.  -separator-
   b. Layouts->
   c. Configure Application...
   e.  -separator-
   f. Add Widgets...
   g. Edit Dock...
   h.  -separator- [only for Tasks plasmoid]
   i.  Close... [only for Tasks plasmoid]

BUG: 415584

Test Plan:
Before:
{F7844554}

After:
a. context menu of applets
{F7845184}
b. context menu of a task that hasn't/has one window shown
{F7844944}
{F7845185}
c. context menu of Latte Tasks plasmoid when used on the desktop
{F7845186}
{F7845187}

Reviewers: #latte_dock, #vdg, mvourlakos

Reviewed By: #latte_dock, mvourlakos

Subscribers: ngraham, ndavis, plasma-devel

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D26238
5 years ago
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
5 years ago
Michail Vourlakos 4cf929ea81 support containsMouse behavior for WindowsCanCover 5 years ago
Michail Vourlakos a0f9758350 wayland fix crash from visibility mode flag
--app is crashing if we set for Latte::Views
KWin visibility mode to WindowsCanCover because
Latte is hiding its Views at some animations.
In such case only the KWin AutoHide mode allows
that, otherwise it is crashing.
5 years ago
Michail Vourlakos dfd8bcdeca wayland improvements for WindowsAlwaysCover 5 years ago
Michail Vourlakos 7dd6696dfa wayland:fix crash from not found window 5 years ago
Michail Vourlakos c88329d278 x11:improve experience for Windows Always Cover
--simplify also some parts from windows calling window
manager values
5 years ago
Michail Vourlakos d9e18794c8 simplify keepabove/below calling
--start a bit to work with "Windows Always Cover"
visibility mode
5 years ago
Michail Vourlakos 3554c4a006 improve some functionality used 5 years ago
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
5 years ago
Michail Vourlakos 896afcc068 support screen edge margin for behaveAsPlasmaPanel 5 years ago
Michail Vourlakos 0ebef42513 add screenEdgeMargin and update border accordingly 5 years ago
Michail Vourlakos 945a034a8c remove deprecated SignalMapper at waylandinterface 5 years ago
Michail Vourlakos d31d7afb9d 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 111254e509 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 9dd798477e improve criteria for side panels dyamic touching
--Latte panels when they touch each other are informing
each other in order to provide consistent appearance. For
example the Unity mode where a top panel and a left panel
exist at the same time. In such case if the left panel is
INBUSY background state then the top panel is informed and
because inBusy state also. This way the top border of left dock
background does not look out of place. ON THE OTHER hand if
the left dock is hidden because the use has chosen auto-hide
visibility mode or any of the dodge(s) choices then the top
panel does not have to stay in isBusy state. The patch fixes
this by applying this behavior only when the left dock is shown
e.g. the mouse has entered the dock or the dodge mode is not
activated

BUG:415347
FIXED-IN:0.9.6
5 years ago