Commit graph

16056 commits

Author SHA1 Message Date
l10n daemon script
e54baa8d73 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-02-22 05:20:00 +01:00
Martin Flöser
a0c91c6e19 Merge branch 'Plasma/5.12' 2018-02-21 18:07:41 +01:00
Martin Flöser
7bf4a94286 Disable window rule configuration for Wayland
Summary:
The window rule detection is too bound to X11 for it to work for
Wayland windows. In fact it results in the config module just crashing.
Thus it's better to just disable the items in the menu. As it's only for
X11 windows we can also enforce platform xcb for the rules dialog.

Test Plan: Menu disabled on Wayland window, menu enabled on Xwayland window

Reviewers: #kwin, #plasma

Subscribers: plasma-devel, kwin

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D10594
2018-02-21 18:06:47 +01:00
Martin Flöser
338c7362c9 Properly handle move during touch events
Summary:
When a window was being moved the touch handling performed the wrong
interaction. Due to that it was possible to move the window, but KWin
did not enter the correct code paths, thus quick tiling was for example
not functional.

BUG: 390113
FIXED-IN: 5.12.3

Test Plan: New test case added and manual test in nested KWin

Reviewers: #kwin, #plasma

Subscribers: plasma-devel, kwin

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D10431
2018-02-21 18:06:00 +01:00
Jonathan Riddell
b5e8694fdf Update version number for 5.12.2
GIT_SILENT
2018-02-20 13:44:25 +00:00
Martin Flöser
0886051622 [autotests] Add test case for decoration default mode
I incorrectly assumed we have a bug when no mode is requested. The test
case shows it works correctly.
2018-02-19 22:10:17 +01:00
Vlad Zagorodniy
ddd406dfd9 [effects] replace old slide effect with a new one
Summary:
The new slide effect tries to separate each virtual desktop
as much as possible. This separation makes the new slide
effect more intuitive than the old one.

Test Plan:
* switch between virtual desktops
* or, move a window to another virtual desktop

Reviewers: #vdg, #kwin, #plasma, graesslin, ngraham

Reviewed By: #kwin, #plasma, graesslin

Subscribers: mart, graesslin, abetts, ngraham, plasma-devel, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D9638
2018-02-16 06:09:27 +02:00
Marco Martin
8a2b9a014f check for EGL_KHR_platform_gbm extension as well
Summary:
some drivers, like Mali have EGL_KHR_platform_gbm
but not EGL_MESA_platform_gbm

Test Plan: pending a test on rock64 board

Reviewers: #kwin, #plasma, davidedmundson, graesslin

Reviewed By: #kwin, #plasma, graesslin

Subscribers: graesslin, garg, davidedmundson, plasma-devel, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D10346
2018-02-15 19:33:06 +01:00
Alex Nemeth
627b11ce49 Added missing image format
Summary:
`QImage::Format_ARGB6666_Premultiplied` was missing from the image format table.
This might have caused some bugs later on.
See: http://doc.qt.io/qt-5/qimage.html#Format-enum

Reviewers: fredrik, #kwin

Reviewed By: fredrik

Subscribers: cfeck, kwin, #kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D10497
2018-02-14 23:23:19 +01:00
Alex Nemeth
cc0325af41 Added noise blur effect
Summary:
Added the option to turn on noise behind the blurred area.
The lowest strength value disables it completely, so it is optional and is disabled by default.

Test Plan:
Edit: this new screenshot shows the updated noise generation.
Edit2: separated the screenshots so you can flick through them to clearly see the differences

{F5694024}

{F5694031}

{F5694025}

{F5694028}

Reviewers: #kwin, #vdg, fredrik

Reviewed By: #vdg, fredrik

Subscribers: davidedmundson, matheusm, romangg, ivan, zzag, ngraham, kwin, #kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D10281
2018-02-14 00:13:08 +01:00
Jonathan Riddell
28c79bd446 Update version number for 5.12.1
GIT_SILENT
2018-02-13 13:14:16 +00:00
l10n daemon script
bdf1845342 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-02-12 07:04:02 +01:00
Martin Flöser
a0aef86a74 Add test case for force opacity rules on ShellClient
This is the first test for force rules. As those cannot be set through
the temporary rules message the rulesrc must be modified. To support this
RuleBook gained a setConfig method.

To my positive surprise the rules already work as intended.
2018-02-11 18:29:26 +01:00
l10n daemon script
8c74b793e0 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-02-11 07:09:43 +01:00
l10n daemon script
ca5747c094 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-02-11 05:09:38 +01:00
Martin Flöser
137b954add Remove remaining HAVE_INPUT ifdef sections
Somehow they sneaked in between creating the patch for making libinput
mandatory and pushing the patch.
2018-02-10 20:36:43 +01:00
l10n daemon script
7a60008ff9 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-02-10 06:56:29 +01:00
l10n daemon script
ded7225572 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-02-10 05:02:44 +01:00
Bastian Köcher
6e5f5d92da Add KF5::WaylandServer to include the required directories
Summary: `abstract_egl_backend.cpp` includes several kwayland headers, but the include paths aren't added for kwayland. This patch solves the problem, by adding kwayland as requirement for the opengl scene plugin.

Reviewers: #kwin, graesslin

Reviewed By: #kwin, graesslin

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D10373
2018-02-09 21:03:03 +01:00
David Faure
1a46b663b4 Merge branch 'Plasma/5.12' 2018-02-09 09:13:18 +01:00
David Faure
b1035b6826 Fix compilation without libinput
CCMAIL: notmart@gmail.com
2018-02-09 09:12:29 +01:00
Rohan Garg
3e37f896e3 Simplify compositing setup code
Summary: We can get rid of the superfluous if/else ladder.

Reviewers: kwin

Subscribers: #kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D10393
2018-02-08 20:12:01 +01:00
l10n daemon script
40862c034a 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-02-08 07:02:28 +01:00
l10n daemon script
3dbb47745f 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-02-08 05:13:52 +01:00
Martin Flöser
7a3627fc2b Merge branch 'Plasma/5.12' 2018-02-07 19:45:45 +01:00
Martin Flöser
8245a74b31 Make it possible to compile 5.12 branch with a kdecoration from master
Summary:
KDecoration has two new pure virtual methods. Due to that one cannot
build KWin in the stable branch. This makes bug fixing rather cumbersome
as one also needs to switch the kdecoration branch.

This rather unusual change for a stable branch improves the
compatibility by adding the new virtual methods without doing anything
and without marking them as override, so that the code can compile with
a kdecoration from 5.12 and a kdecoration from master.

Test Plan: 5.12 branch compiles with kdecoration master branch

Reviewers: #kwin, #plasma

Subscribers: plasma-devel, kwin

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D10296
2018-02-07 19:43:53 +01:00
Martin Flöser
477d79b16a Merge branch 'Plasma/5.12' 2018-02-05 21:22:05 +01:00
Martin Flöser
ea5e701164 [x11] Fix interactive point selection
Summary:
The support for interactive point selection was missing. This results in
the ColorPicker dbus API always returning an error on X11. We either need
to disable the ColorPicker on X11 or add support for this functionality.

As the X11 platform basically supports selecting a point in the
interactive window selection it makes more sense to add this missing
method in the platform than to disable support of color picker effect.

BUG: 387720
FIXED-IN: 5.12.1

Test Plan:
Run KWin/X11 on Xephyr and was able to pick a color and
kill a window

Reviewers: #kwin, #plasma

Subscribers: plasma-devel, kwin

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D10302
2018-02-05 21:21:27 +01:00
l10n daemon script
93dd777351 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-02-05 06:51:49 +01:00
Martin Flöser
bbf00fdd98 Require libinput and udev
Summary:
The main reason for not having it as a mandatory dependency was that BSD
doesn't support it. But as I learned recently it is available on our CI
system. So BSDs have support now.

Even more it showed that the code doesn't compile if the dependency is
missing. And there's one thing I hate: broken build configuration
options.

So let's make UDEV and libinput a required dependency and get rid of the
problems.

Test Plan: Compiles

Reviewers: #kwin, #plasma

Subscribers: plasma-devel, kwin

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D10057
2018-02-04 15:00:42 +01:00
Martin Flöser
45bdd8a342 Merge branch 'Plasma/5.12' 2018-02-04 15:00:31 +01:00
Martin Flöser
aefa11f11a Block geometry updates on move resize finish and don't configure xdg shell surfaces while blocked
Summary:
We send out too many configure requests when finishing move resize which
also triggers quick tiling. This change addresses the problem of the too
many configure requests by making the configure method check whether
geometry updates are blocked. And to make this work properly for the end
of finish move resize the complete method is wrapped in a geometry
update blocker.

BUG: 388072
FIXED-IN: 5.12.1

Test Plan:
Quick tiling test passes, both Wayland and X11 windows are
quick tiled correctly.

Reviewers: #kwin, #plasma, jgrulich

Subscribers: plasma-devel, kwin

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D10156
2018-02-04 14:59:56 +01:00
Martin Flöser
e22d9d957b Enable blending if a subsurface has an alpha channel
Summary:
While investigating BUG 387313 I noticed that blending might be disabled
for subsurfaces. Blending was disabled before rendering the subsurfaces
and it is not checked whether the surfaces have an alpha channel or not.

This change addresses this problem by disabling blending after all
subsurfaces have been rendered and enabling blending if a subsurface has
an alpha channel.

Unfortunately this does not fix the investigated bug.

Reviewers: #kwin, #plasma

Subscribers: plasma-devel, kwin

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D10060
2018-02-04 14:58:50 +01:00
Alex Nemeth
f8ff40271e Removed the "fastblur" path
Summary:
Since the new blur is more efficient "fastblur" or "simpleblur" is not needed anymore for fullscreen blur.
Even my old low-end laptop from 2009 (with Intel T3300) can easily do fullscreen blur now with the new method without any hitch at all.

Reviewers: graesslin, #kwin, #plasma, #vdg, fredrik

Reviewed By: #vdg, fredrik

Subscribers: avaragic, fredrik, ngraham, plasma-devel, kwin, #kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D10181
2018-02-03 19:04:11 +01:00
Martin Flöser
dca8023207 Merge branch 'Plasma/5.12' 2018-02-03 16:04:05 +01:00
Martin Flöser
6c00cfb5c7 [libinput] Ensure Event::device returns a proper Device
Summary:
This fixes a problem when a Device added and another event on the Device
are queued together. In that case the second event would not get the
Device set as it's not yet created.

This change ensures that when accessing device the pointer will be
updated.

BUG: 389674
FIXED-IN: 5.12.0

Reviewers: #kwin, #plasma, fvogt

Subscribers: plasma-devel, kwin

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D10236
2018-02-03 16:03:10 +01:00
Alex Nemeth
0a22983bef Updated blur default value from 5/15 to 10/15
Summary: The default blur value of 5/15 is too low.

Test Plan:
Before:
{F5681825}

After:
{F5681826}

Reviewers: #vdg, #kwin, fredrik

Reviewed By: #vdg, fredrik

Subscribers: ngraham, kwin, #kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D10180
2018-02-01 19:56:51 +01:00
Bhushan Shah
137f164261 Update version number for 5.12.0
GIT_SILENT
2018-02-01 17:35:40 +05:30
l10n daemon script
e48eba00cc 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-01-29 06:51:07 +01:00
l10n daemon script
effe52f65d 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-01-29 05:06:41 +01:00
l10n daemon script
36e3632101 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-01-28 06:53:21 +01:00
l10n daemon script
53969e4828 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-01-28 05:10:57 +01:00
Alex Nemeth
977a5ef012 Reverted accidental file permission changes
Summary: In D9848 the file permissions in effects/blur where accidentally changed from 644 to 755.

Test Plan: {F5674656}

Reviewers: #kwin, hein

Reviewed By: hein

Subscribers: kwin, #kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D10100
2018-01-26 03:32:33 +09:00
Alex Nemeth
0179f741bb Updated the blur method to use the more efficient dual kawase blur algorithm.
Summary:
Updated the old and outdated blur method to use the much more efficient dual kawase blur method.
Now with this we can do virtually infinite blur with very very little performance cost.
The dual kawase blur method is basically downscaling and upscaling an image, but combined with the kawase blur shader.
Comparison: https://i.imgur.com/mh6Cw61.png
Left is old, right is new.
Comparison was done with the strongest blur setting in a VM running on an Intel i7-4790 and a GTX980
We can see here that the performance is even better with this new method.

Reviewers: #plasma, #kwin, graesslin, fredrik

Reviewed By: fredrik

Subscribers: hein, dos, luebking, broulik, romangg, zzag, anthonyfieroni, mart, davidedmundson, fredrik, ngraham, plasma-devel, kwin, #kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D9848
2018-01-26 02:31:45 +09:00
Marco Martin
87b688daae Expose if the tablet mode switch is available
Summary:
expose in the libinput wrapper a property that tells whether
a tablet mode switch input device is present on the machine,
expose it trough dbus

Test Plan:
still not complete, I need a way to either access the connection
from TabletModeManager or setting to TabletModeManager from input.cpp

Reviewers: #kwin, #plasma, graesslin

Reviewed By: #kwin, #plasma, graesslin

Subscribers: graesslin, ngraham, davidedmundson, plasma-devel, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D9944
2018-01-25 12:46:38 +01:00
l10n daemon script
df28de8716 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-01-24 05:14:01 +01:00
Martin Flöser
86f835ac35 Merge branch 'Plasma/5.12' 2018-01-23 16:59:06 +01:00
Martin Flöser
339a08de38 Acknowledge the server side deco mode in WaylandServer not ShellClient
Summary:
With GTK applications our code showed issues. With GTK the sequence for
a menu or dialog window is:
 1. create surface
 2. create server side decoration
 3. request csd
 4. create xdg_shell_surface

Which result in KWin to have the ServerSideDecoration object being
created before the ShellClient is created. The connect for mode changed
happens in ShellClient, which is too late to catch that the window
requested client side decoration. Thus KWin created a decoration about
things such as a menu.

This change moves the acknowledge of the mode to WaylandServer. As we
anyway always acknowledge the requested mode we can also do it there and
don't require ShellClient to be present. Thus when the ShellClient is
created the mode is properly reflected and no decoration is created.

BUG: 389117
FIXED-IN: 5.12.0

Test Plan: Played a lot with evince

Reviewers: #kwin, #plasma

Subscribers: plasma-devel, kwin

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D9967
2018-01-23 16:58:33 +01:00
l10n daemon script
5b64f5d28c 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-01-23 06:58:06 +01:00
l10n daemon script
02f4d3f4f7 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-01-23 05:13:56 +01:00