Commit Graph

1649 Commits (5363433b006f7faaa58e8a0330fbeccf395b314f)

Author SHA1 Message Date
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
Michail Vourlakos 2bd037f79a fix wrong criteria for isMaximized state 5 years ago
Michail Vourlakos 7c77270f0b consider as isMaximized state only full screen case
--window manager provides two more states isMaxHorizontally,
isMaxVertically. These states can be ignored and be
considered as isMaximized only when both of these states
are valid

FIXED-IN:0.9.6
5 years ago
Michail Vourlakos 2501c6169d fix compatibility with qt>=5.14
--fix qml register type for deprecated
code reference
5 years ago
Michail Vourlakos e05c5e2515 ignore plasma side-style panels/windows
--all plasma windows that are touching a screen edge
and their thickness based on the edge they are touching is
below 96px. are NOT consider as plasma panels and are
treated like normal windows for all Latte codepaths
5 years ago
Michail Vourlakos 61016444fb dont crash when changing layouts
--occasionaly when the user was switching
layouts it could get some crashes. It looks
safer to unload first the Latte::Views objects
and their corresponding containments afterwards.
I tried in my system to switch multiple layouts
in plenty different configurations and I could
not get a crash. This patch should fix the
mentioned crash report if that was the root
of the issue.

BUG:412864
FIXED-IN:0.9.5
5 years ago
Michail Vourlakos 6b5f4a952a dont drag/maximize windows from different desktops
--the last active window codepath provides a way to
drag and maximize/restore the last active window. This
should not occur when the last active window is not
in the current desktop and activity.

BUG:414089
FIXED-IN:0.9.5
5 years ago
l10n daemon script a3e747188f SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
5 years ago
l10n daemon script d649e74bc9 GIT_SILENT made messages (after extraction) 5 years ago
Michail Vourlakos 702b53493b Merge branch 'v0.9' into fix 5 years ago
Michail Vourlakos f63200988e ignore Plasma panels in Latte heuristics 5 years ago
Michail Vourlakos a946e485e0 indent fixes 5 years ago
Michail Vourlakos 7215d30ff6 fix typo that was creating an error build
BUG:413735
5 years ago
Michail Vourlakos 36f7834cff fix typo that was creating an error build
BUG:413735
5 years ago
Michail Vourlakos c1a6cfc325 optimize delayed application data updating
--the previous code was updating the delayed application
data for each instance of lastactivewindow separately.
The new code is implementing this at the central
WM::WindowsTracker and just informs last active windows
to update their values
5 years ago
Michail Vourlakos 4ff84b4bde optimize delayed application data updating
--the previous code was updating the delayed application
data for each instance of lastactivewindow separately.
The new code is implementing this at the central
WM::WindowsTracker and just informs last active windows
to update their values
5 years ago
Michail Vourlakos 189fb00426 update application data after 1500ms from startup
--when an application is tracked from the lastactivewindow
infrastructure it is updating the application name/icon
1500 ms after its first startup in order to fix apps cases
where they update their StartupWMClass a bit delayed

BUG:413671
5 years ago
Michail Vourlakos 8d4e96ed44 drop ksysguard dependency for kf5>=5.62
--following plasma updates for tasktools in order
to drop the ksysguard dependency which is also
costly
5 years ago
Michail Vourlakos d5b7694d4d update application data after 1500ms from startup
--when an application is tracked from the lastactivewindow
infrastructure it is updating the application name/icon
1500 ms after its first startup in order to fix apps cases
where they update their StartupWMClass a bit delayed

BUG:413671
5 years ago
Michail Vourlakos 6849a4906d drop ksysguard dependency for kf5>=5.62
--following plasma updates for tasktools in order
to drop the ksysguard dependency which is also
costly
5 years ago
Michail Vourlakos fb8428bc20 optimize last active window color scheme update 5 years ago
Michail Vourlakos fdb002d919 optimize last active window color scheme update 5 years ago
Michail Vourlakos c2a1c20d92 expose colorScheme to lastActiveWindow(s)
--applets can now use the color scheme from lastActiveWindow
objects in order to paint some of their elements
5 years ago
Michail Vourlakos 6a7c959e6a expose colorScheme to lastActiveWindow(s)
--applets can now use the color scheme from lastActiveWindow
objects in order to paint some of their elements
5 years ago
Michail Vourlakos dc0a9a8f22 Import and Load layout runtime through dbus
--switchToLayout dbus interface is used in order to
switch at specific layout that it is already imported.
With this commit the same dbus interface can be used
in order to import and load afterwards any latte layout
file by sending its absolute filepath
5 years ago
Michail Vourlakos 904cdfe2af Import and Load layout runtime through dbus
--switchToLayout dbus interface is used in order to
switch at specific layout that it is already imported.
With this commit the same dbus interface can be used
in order to import and load afterwards any latte layout
file by sending its absolute filepath
5 years ago
Michail Vourlakos a69f3013d8 search for Latte desktop file in more generic way
--there are distros that do not return /usr/share/applications
as their first global path for desktop files. It is better to not
just search for the "applications" path but rather the desktop
file also to make sure that we use the first one found.

BUG:412612
FIXED-IN:0.9.4
5 years ago
Michail Vourlakos e04c57f403 search for Latte desktop file in more generic way
--there are distros that do not return /usr/share/applications
as their first global path for desktop files. It is better to not
just search for the "applications" path but rather the desktop
file also to make sure that we use the first one found.

BUG:412612
FIXED-IN:0.9.4
5 years ago
l10n daemon script 12ec3bf36c SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
5 years ago
l10n daemon script 7554e8c409 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
5 years ago
Michail Vourlakos fac638c156 remove obsolete fontmetrics libraries 5 years ago
Michail Vourlakos 8f588ea3d2 remove obsolete fontmetrics libraries 5 years ago
l10n daemon script 32078ac05a SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
5 years ago
l10n daemon script 8e35545463 GIT_SILENT made messages (after extraction) 5 years ago
Michail Vourlakos 6641b30d8e update debug messages for wm::tracker 5 years ago
Michail Vourlakos d9dc659d7b update debug messages for wm::tracker 5 years ago
l10n daemon script 71f9e6b85a SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
5 years ago
Michail Vourlakos 59712ee129 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
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
5 years ago
Michail Vourlakos cb9d978558 remove deprecated qApp::screenCountChanged
--use only screenAdded/Removed instead
5 years ago
Michail Vourlakos d095e4c22d remove deprecated qApp::screenCountChanged
--use only screenAdded/Removed instead
5 years ago
Michail Vourlakos c515cd0216 update QRegion deprecated code 5 years ago
Michail Vourlakos 1a49238d57 track kwinrc file only on changes
--instead of reading the kwin values all the time
when needed from user actions we now read them
only on startup and when the kwinrc file was
updated/changed

BUG:411657
FIXED-IN:0.9.3
5 years ago
Michail Vourlakos 9664d88ba0 update QRegion deprecated code 5 years ago
Michail Vourlakos 7cfcd84511 track kwinrc file only on changes
--instead of reading the kwin values all the time
when needed from user actions we now read them
only on startup and when the kwinrc file was
updated/changed

BUG:411657
FIXED-IN:0.9.3
5 years ago
Michail Vourlakos eb3639914b update AllScreens track information during startup
--Whenever a view is updating its layout then the AllScreens
tracked information [per layout tracking] should be updated
also. Until now this was happening only during startup and there
was a case that if during startup a view was requesting tracking
and the second one did not, then tracking for the entire layout
for all screens it could be faulty disabled.

BUG:411670
FIXED-IN:0.9.3
5 years ago
Michail Vourlakos a9b4989236 update AllScreens track information during startup
--Whenever a view is updating its layout then the AllScreens
tracked information [per layout tracking] should be updated
also. Until now this was happening only during startup and there
was a case that if during startup a view was requesting tracking
and the second one did not, then tracking for the entire layout
for all screens it could be faulty disabled.

BUG:411670
FIXED-IN:0.9.3
5 years ago
Björn Feber c264a0a9e3 [latte-dock] Use new activities icon
Summary:
Use the new icon added in D22155.
{F6948355}

Test Plan: Open the Latte layout settings.

Reviewers: #plasma, #vdg, mvourlakos, ndavis

Reviewed By: #vdg, mvourlakos, ndavis

Subscribers: #vdg, plasma-devel, #plasma

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D22170
5 years ago
Yuri Chornoivan dc14abf3d0 Fix minor EBN issues 5 years ago
Michail Vourlakos 82fae53926 update webpages and releases metadata 5 years ago
Michail Vourlakos 48ae720671 update webpages and releases metadata 5 years ago
Yuri Chornoivan 1aaef7aa2b Fix minor EBN issues 5 years ago
l10n daemon script 1c4f5906fd SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
6 years ago
Michail Vourlakos 3faf5f6114 Merge branch 'v0.9' into merger 6 years ago
l10n daemon script 20a4610a85 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
6 years ago
Michail Vourlakos 6281046629 autostart Latte earlier
--this way Latte is given the time to publish
its appmenu if available and normal applications
should follow afterwards

BUG:411341
FIXED-IN:0.9.2
6 years ago
Michail Vourlakos 0ea41820d0 autostart Latte earlier
--this way Latte is given the time to publish
its appmenu if available and normal applications
should follow afterwards

BUG:411341
FIXED-IN:0.9.2
6 years ago
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.
6 years ago
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
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 e4670ac174 Fix project_license tag 6 years ago
Yuri Chornoivan 997fbdff76 Get rid of deprecated setHidden() 6 years ago
Yuri Chornoivan e643109d0f Try to fix build with Clang (take 2) 6 years ago
Yuri Chornoivan 784dfd1bf9 Try to fix build with Clang 6 years ago
Yuri Chornoivan 3a60d6f3b2 Fix minor EBN issues 6 years ago
Yuri Chornoivan b0f8be948c Fix project_license tag 6 years ago
Yuri Chornoivan 65f00bc446 Get rid of deprecated setHidden() 6 years ago
Yuri Chornoivan f63ab9a872 Try to fix build with Clang (take 2) 6 years ago
Yuri Chornoivan 3f6d688dfe Try to fix build with Clang 6 years ago
l10n daemon script 1bec03ec8a SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
6 years ago