1
0
mirror of https://github.com/KDE/latte-dock.git synced 2025-02-07 13:57:40 +03:00

949 Commits

Author SHA1 Message Date
Yuri Chornoivan
4b55cdce52 Fix minor typo 2018-10-24 07:25:49 +03:00
Michail Vourlakos
b1ad7f2a18 send window change signale for color scheme 2018-10-23 20:42:14 +03:00
Michail Vourlakos
f2d088a297 add theme roundness option at preferences page 2018-10-23 20:42:13 +03:00
Michail Vourlakos
59f66233f2 track files for schemes changes
--track changes for wm default scheme
--track changes for colors in specific scheme
2018-10-23 20:42:13 +03:00
Michail Vourlakos
e1712dded4 add more colors to SchemeColors 2018-10-23 20:42:13 +03:00
Michail Vourlakos
f6b4aa55cf support background painting based on window scheme
--support painting based on the active window scheme.
Added a schemecolors class for this and updated
abstractwindowinterface to provide tracking for windows
color schemes.
2018-10-23 20:42:12 +03:00
l10n daemon script
7fd9cb1952 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"
2018-10-20 05:56:42 +02:00
Michail Vourlakos
37dbab99bf remove no needed public api from visibilitymanager 2018-10-14 22:31:48 +03:00
Michail Vourlakos
0bab344682 fixes for multi-screen behavior
--fix wrong placement at multi-screen environment
during startup. freeEdges function was not sufficient for
reconsiderScreen() because there was a chance to
exclude edges that even though they were available
it returned fault results. Such case is when
a view request available edges for specific screen
and the edge of that specific view is also exluded
because that view has not finished its movement
to the new assigned screen.

--fix re-adding an explicit dock when its screen
is activated. A check was missing in order to
confirm that a primary dock is occuping that
edge but we must check also that the primary
screen is the same with the explicit one.

--add/improve debug messages
2018-10-12 19:04:17 +03:00
l10n daemon script
cfec678f68 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"
2018-10-10 06:14:12 +02:00
l10n daemon script
b7a1bbfdfc GIT_SILENT made messages (after extraction) 2018-10-10 03:49:52 +02:00
Michail Vourlakos
be7bbfe848 dont call syncGeometry when some cases
--dont call costly syncGeometry when drawShadows
externally is called. In such case only updating
shadows/borders is needed.
2018-10-07 21:04:21 +03:00
Michail Vourlakos
f955c6a40c improve reconsiderScreens code for multi-screens
--try to make screens assignment and window geometry
more consistent. There are three variables in a dock
window for its screen and positioning to be accurate,
screen(), m_screenToFollow, m_screenToFollowId

BUG: 399456
2018-10-07 20:08:58 +03:00
Michail Vourlakos
135ddc479d dont break BorderlessMaximized window default
--dont update the BorderlessMaximized value if
the user hasnt explicitly enabled it from Latte
options.
2018-10-07 01:12:48 +03:00
Michail Vourlakos
1638449997 imrove windowChanged signal under X11
--the new code contains more comments and except
blacklisting all NET::Properties2 signals that are
not accompanied with NET::Properties it also
whitelists specific states for NET::WMState.
This should lower a lot the calculations needed
in order to support the dodge visibility modes.
At the same time apps that are abusing X11 signals
should be ignored totally because the whitelisted
states and NET::Properties are only set by the
user or the window manager.

BUG: 399149
FIXED-IN: 0.8.2
2018-10-06 16:28:46 +03:00
Michail Vourlakos
64a40429a4 option/define who will be used at global shortcuts
--add an option in Tweaks page in order for the user
to define which dock/panel will have the highest priority
for global shortcuts activation. This option can be
used is per layout basis. Each layout can have its own
high priority dock/panel for Latte unified shortcuts.

BUG: 398914
2018-09-22 20:21:57 +03:00
Michail Vourlakos
4732f7f1b1 activate entries for docks containing only applets
--when a dock/panel does not contain any taskmanager
should also be able to activate its applets through
Latte's unified global shortcuts

BUG: 398913
2018-09-22 19:12:38 +03:00
Michail Vourlakos
09fe5e385b on startup explicit dock faulty moving onPrimary
--multi-screen fix for explicit docks. There were
cases that explicit docks during startup were
moving to onprimary screen even though they shouldnt
based on the new multi-screens implementation.
Bug was tracked down at a faulty series of signals
that were overwriting dockView config values
to default values and that was creating the fault.
-- one more fix for multi-screens, a missing return
statement in case an explicit dock is called and its
edge at that specific screen is occuppied by an
onPrimary one.

BUG: 398219
FIXED-IN: 0.8.1
2018-09-04 19:43:17 +03:00
Michail Vourlakos
203c740980 IMPORTANT FIX:show dodged dock at corner cases
When there was only one latte dock and the last
active window was closed, the dock wasnt showing
afterwards. The dodge logic now has been improved
in order to not lose any window manager signals
that could help indicate when to show/hide a
dodge capable dock

BUG: 398052
FIXED-IN: 0.8.1
2018-09-01 17:45:08 +03:00
Michail Vourlakos
cc0e0e7c47 simplify dodge(s) code and comment it 2018-08-31 16:49:47 +03:00
Michail Vourlakos
66817695fe raise docks when there isnt any active window
--there are cases that the window manager doesnt
return any active window at all. In such cases
we can assume that our docks/panels dont have to
be hidden.

BUG: 398052
FIXED-IN: 0.8.1
2018-08-31 15:29:49 +03:00
Tobias C. Berner
156accc34f Fix build on FreeBSD by including <array>.
Summary:
latte-dock-0.8.0/app/dock/dockview.h:367:44:
    error: implicit instantiation of undefined template 'std::__1::array<QMetaObject::Connection, 4>'
    std::array<QMetaObject::Connection, 4> connectionsManagedLayout;
                                           ^

Reviewers: #freebsd, mvourlakos, davidedmundson

Reviewed By: davidedmundson

Subscribers: plasma-devel

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D14534
2018-08-30 18:15:01 +02:00
Michail Vourlakos
9e53fa727b update to latest panel shadows 2018-08-30 13:57:16 +03:00
Yuri Chornoivan
7323068f36 Fix minor EBN issues 2018-08-30 08:47:53 +03:00
Michail Vourlakos
87094a6fe7 dont draw panel shadows when theme doesnot provide
when the plasma theme was not supporting shadows then
Latte was double drawing the panel background when
the user has chosen that wanted shadows

BUG: 397980
FIXED-IN: 0.8.1
2018-08-28 13:49:32 +03:00
Michail Vourlakos
285a2f8764 ignore systrays at multi-screen considerations
--if a dock/panel was containing a systray there
was a chance that the systray was messing the
calculations for adding/removing docks based on
the screen and edges changes
2018-08-24 01:27:14 +03:00
Michail Vourlakos
b2f1f98b57 remove deprecated code from old multi-screens arch
--Latte will no longer try to be too smart concerning
the multi-screens behavior. At the old implementation
Latte wouldnt let you reach at a state that you dont
have a tasks plasmoid available. Such a case could be
when the user moves a dock from primary to explicit
screen and disables the screen afterwards. That case
should be thought better in the future in order to be
identified and handled properly without making the
code unnecessary complex. Such an example could be by
identifing the case and asking the user for actions.
2018-08-22 18:13:39 +03:00
Michail Vourlakos
bb8835f156 identify maximized window screen differently
--there are cases that the window geometry isnt consistent
for maximized windows. That was breaking the previous
implementation of dynamic background because of:
https://bugs.kde.org/show_bug.cgi?id=397700
the new implementation is using only the window center in
order to identify the screen in which a window is
present

BUG: 397344
FIXED-IN: 0.8.1
2018-08-21 15:09:23 +03:00
Michail Vourlakos
78b41eff91 use current transparency to update effects
--the background contrast effect should be applied
only when the dock/panel is visually solid otherwise
it may block the transparency settings

BUG: 397431
FIXED-IN: v0.8.1
2018-08-21 00:51:36 +03:00
l10n daemon script
7a693bdcda GIT_SILENT made messages (after extraction) 2018-08-15 03:37:16 +02:00
l10n daemon script
cdc0cdcd7d GIT_SILENT made messages (after extraction) 2018-08-08 03:40:24 +02:00
l10n daemon script
46fa568350 GIT_SILENT made messages (after extraction) 2018-08-05 03:26:34 +02:00
Michail Vourlakos
8062a76605 improve activation badges visual indicators
--when an activation shortcut follows Meta+"Character"
scheme it is shown lowerCase and at all other cases
it is shown upperCase

CCBUG: 397128
2018-08-04 13:42:50 +03:00
Michail Vourlakos
9a69323293 smarter badges identifier for activation shortcuts
--with this commit now Latte is able to identify what are
the global shortcuts used for each activation entry and
also to not show at all any badge for activation entries
that are disabled from the user

BUG: 397128
2018-08-04 02:05:44 +03:00
l10n daemon script
ec9ad19c36 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"
2018-08-03 05:35:32 +02:00
l10n daemon script
41f9e43e7e GIT_SILENT made messages (after extraction) 2018-08-03 03:26:23 +02:00
Michail Vourlakos
84de238181 missing apostrophe
BUG: 396676
2018-08-02 18:39:32 +03:00
Michail Vourlakos
7bceb7e4b7 Identify snapped windows independent of screen
--the old code wasnt screen independent for identifying
windows that touch the panel edge. There were cases
that when a window was touching a panel edge at
screen A to faulty identify that is touching
screen B also. The code now is more robust and it
can also handle cases that window is touching two or
more different panels in different screens.

BUG: 397076
FIXED-IN: 0.8.1
2018-08-02 14:23:01 +03:00
Michail Vourlakos
30c90d2a41 More predictable copy function for multi-screen
--Improve the series of events in order for CopyDock
to work better in multi-screen environments. Copy Dock
should create the same dock in the same free edge at
different explicit screen when that edge is already
occupied in the origin screen

BUG: 397081
FIXED-IN: 0.8.1
2018-08-02 13:26:07 +03:00
Michail Vourlakos
03b469eff5 IMPORTANT: Update multi-screen codepage!!!
--after v0.8 release many issues with multi-architecture
were identified. An alternative approach was needed
in order for Latte to get a more user-predictable state.
In new approach:
--onPrimary docks have always higher value
and should be shown, this is also like how plasma is
moving its panels.
--explicit docks are removed if their edge in their screen
is occupied by an onPrimary dock
--be stupid smart in order to check if docks contain
tasks and try to not remove them based on screen-changes
is removed! Over-Complicated code that doesnt help
in maintainability...

one of the issues was reported at following bug report...

BUG: 396806
2018-07-24 22:25:19 +03:00
Michail Vourlakos
9cb58d0d43 dont block shortcuts execution
--when trying to activate an entry through
global shortcuts we should take into
account the docks that we have already
access but that should not block the action
code.
2018-07-23 21:23:28 +03:00
Michail Vourlakos
973090906d more improvements in global shortcuts memory usage 2018-07-23 21:07:32 +03:00
Michail Vourlakos
c9d61e1637 improve memory usage for globalshortcuts 2018-07-23 20:58:12 +03:00
Michail Vourlakos
f3bc0b4c0b disable badges numbers for plasma taskmanagers 2018-07-23 19:13:46 +03:00
Michail Vourlakos
6cff0be9c1 enable Meta forward from KWin to Latte
In Latte Preferences the user can now enable/disable
the Meta key forwarding for showing the
Application Launcher

BUG: 396754
2018-07-23 18:59:30 +03:00
Michail Vourlakos
d4cb4e2410 setup unified global shortcuts per dock
--in multiple layouts environment the user
may prefer different settings for its global
shortcuts, in some may wants to use global
shortcuts for its applets and in another
layout may not.
2018-07-23 17:17:00 +03:00
Michail Vourlakos
6708510213 support a meta badge visual from global shortcuts
--when an application launcher exists, Latte can show
a "Meta" badge for that applet instead of the global
shortcut action number. With this patch we take also
into account when the assigned application launcher is
in different dock/panel and show it accordingly

BUG: 396753
2018-07-23 17:00:58 +03:00
Michail Vourlakos
265383ce34 missing global shortcuts new instance record 9
Summary:
In Latte global shortcuts is missing one record
for New Instance of ninth record

BUG: 396751
FIXED-IN: 0.8.1

Subscribers: plasma-devel

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D14273
2018-07-22 15:06:51 +03:00
Michail Vourlakos
00d15a7906 support no-unified global shortcuts
--v0.8 introduced unified global shortcuts for all
cases, that means that applets are also taken into
account for Latte activation/new instance global
shortcuts. A new parameter is introduced with
the patch at Latte global settings file called
"unifiedGlobalShortcuts", the user can set that
parameter to false before Latte startup in order
to use only global shortcuts relevant to the
Latte plasmoid.
2018-07-21 19:46:25 +03:00
Michail Vourlakos
5728cb954b fix to update contents correctly between sessions
--when changing Single mode to Multiple mode the latest
changes from user didnt get into because the kde cache
from KFileConfigPtr hadnt been updated yet. This
patch fixes this by using a temp file that contains
the layout in question.
2018-07-13 20:42:11 +03:00