Commit Graph

16794 Commits (31dcf51c88438ca85a053cab0ddbf78124078b39)

Author SHA1 Message Date
Valerio Pilo 31dcf51c88 [kcmkwin/kwindecoration] Fix Get Hot New Stuff
Summary:
Found better categories for GHNS v3: looks like only Aurorae is supported?

Also refresh the themes when you close the GHNS window, in case something was downloaded.

Test Plan: Open GHNS, download new theme, close GHNS -> new theme visible

Reviewers: leinir, graesslin, #kwin, davidedmundson

Reviewed By: leinir, #kwin, davidedmundson

Subscribers: ngraham, cfeck, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18935
2019-02-12 16:21:11 +01:00
David Edmundson 5fa18646b6 [autotests] Fix typo in autotest name 2019-02-12 12:38:35 +00:00
Volker Krause d920b323bd Follow ECM documentation style
Summary: In preparation for upstreaming to ECM, as qtbase needs this as well.

Reviewers: apol

Reviewed By: apol

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18944
2019-02-12 11:56:21 +01:00
David Faure 1b316b6b69 Merge branch 'Plasma/5.15' 2019-02-12 08:56:17 +01:00
David Faure 48971e0848 Enable -DQT_NO_URL_CAST_FROM_STRING and fix compilation 2019-02-12 08:54:53 +01:00
l10n daemon script 3e09342c5e 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"
2019-02-12 05:48:29 +01:00
Victor Ruzhykh 0cf7cca2ab Make the new Window Decoration KCM translatable
Differential Revision: https://phabricator.kde.org/D18931
2019-02-11 20:12:41 +02:00
Vlad Zagorodniy 5047449a55 [platforms/drm] Use more ScopedDrmPointer
Test Plan: Standalone KWin/Wayland still works.

Reviewers: #kwin, graesslin

Reviewed By: #kwin, graesslin

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18863
2019-02-10 20:26:02 +02:00
Vlad Zagorodniy 6006dab41c Use correct flag when checking whether a scene window is opaque
Summary:
Given that allclips contains opaque regions of higher windows, we should
check PAINT_WINDOW_TRANSLUCENT flag instead of PAINT_WINDOW_TRANSFORMED.

ba39d1f917 introduced that check. Neither
the commit message nor the associated review have any comments regarding
checking PAINT_WINDOW_TRANSFORMED, so given the following comment

    // Here we rely on WindowPrePaintData::setTranslucent() to remove
    // the clip if needed.

PAINT_WINDOW_TRANSFORMED is most likely a typo.

Reviewers: #kwin, graesslin

Reviewed By: #kwin, graesslin

Subscribers: graesslin, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18236
2019-02-10 20:05:45 +02:00
Vlad Zagorodniy 22cdf08956 Merge branch 'Plasma/5.15' 2019-02-10 20:01:59 +02:00
Vlad Zagorodniy 381d0df7f9 Copy layer repaints to Deleted
Summary:
If a Toplevel has scheduled layer repaints, then we have to copy them
to Deleted as well. This can happen, for example, when a client loses
shadow right before it gets closed or unmapped.

Reviewers: #kwin, graesslin

Reviewed By: #kwin, graesslin

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18786
2019-02-10 20:01:40 +02:00
Valerio Pilo 8350c0f2ce [kcmkwin/kwindecoration] Rewrite the KWin decorations settings as a ConfigModule
Summary:
* Wrote new KCM based on KQuickAddons::ConfigModule.
* Remade QMLs for Buttons and Themes tabs.
* Updated bridge model code for new plugin lookup API (fixes warnings).
* Fixed decoration shadow changing messing with the previews sizes.
* Fixed button drag and drop issues (see D18104).
* Fixed default settings button behavior and detection of settings changes.
* Updated Get Hot New Stuff.
* Removed apply button in previewbridge.cpp: After applying changes, a theme's KCModule is invalidated.

BUG: 389431
BUG: 350122
BUG: 346222
BUG: 342816
BUG: 397595

{F6574963} | {F6574962} | {F6574961} | {F6574960}

Test Plan:
* Verified saving and loading for every setting
* Checked shadows of Breeze and Oxygen
* Tested all possible drag&drop operations on both sides of the fake titlebar
* Changed color schemes (with `kcmshell5 colors`) while showing the Themes tab to see if all previews update correctly their palettes
* Tested on a fresh Neon-developer account, via kcmshell and systemsettings

Reviewers: #vdg, abetts, ngraham, #kwin, davidedmundson

Reviewed By: #vdg, #kwin, davidedmundson

Subscribers: zzag, GB_2, ngraham, broulik, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18458
2019-02-10 13:01:04 +01:00
Vlad Zagorodniy 698b40dbbd [kcmkwin/compositing] Delete unused config headers
Test Plan: Compiles.

Reviewers: #kwin, davidedmundson, ngraham

Reviewed By: #kwin, davidedmundson, ngraham

Subscribers: ngraham, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18850
2019-02-08 17:27:25 +02:00
Vlad Zagorodniy be8729105f Move lanczos filter away from KWin core
Summary:
Lanczos filter shouldn't be in KWin core because it's quite specific about
rendering backend.

Test Plan: Windows in the desktop grid look normal.

Reviewers: #kwin, davidedmundson

Reviewed By: #kwin, davidedmundson

Subscribers: mart, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18774
2019-02-07 18:03:34 +02:00
Jonathan Riddell 5a750c3667 Update version number for 5.15.0
GIT_SILENT
2019-02-07 11:01:16 +00:00
Vlad Zagorodniy 16a2799b3a Merge branch 'Plasma/5.15' 2019-02-07 02:11:14 +02:00
Vlad Zagorodniy bdddf4daf2 [effects/screenedge] Use correct blend function
Summary:
Glow textures already have the red, green, and blue channels
premultiplied by the alpha component (because of QImage), thus we can't
use GL_SRC_ALPHA for sfactor in glBlendFunc.

BUG: 403570

Test Plan:
Before:
{F6592391}

After:
{F6592392}

Reviewers: #kwin, davidedmundson

Reviewed By: #kwin, davidedmundson

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18803
2019-02-07 02:10:57 +02:00
Vlad Zagorodniy 261e3a768a Make whitespace in Deleted consistent 2019-02-06 19:16:18 +02:00
Vlad Zagorodniy e81bbfb086 Remove unused field in Deleted
We don't need window_opacity because 92d06a8c4b
introduced m_opacity a while ago.
2019-02-06 19:15:49 +02:00
l10n daemon script 54e46dbd9f 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"
2019-02-06 08:36:52 +01:00
l10n daemon script d0fc39cbf0 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"
2019-02-06 05:46:34 +01:00
Vlad Zagorodniy 6481607565 Remove ExtraDesktop.sh
Summary: data/fsp_workarounds_1.kwinrules had been removed a while ago.

Reviewers: #kwin, davidedmundson

Reviewed By: #kwin, davidedmundson

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18775
2019-02-06 01:33:11 +02:00
Vlad Zagorodniy b06c1ea5a4 Move icons to data dir
Summary: We don't need them in the toplevel directory.

Test Plan: Compiles.

Reviewers: #kwin, davidedmundson

Reviewed By: #kwin, davidedmundson

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18771
2019-02-06 01:19:54 +02:00
Vlad Zagorodniy b40c702c76 Drop COPYING.DOC
Summary: KWin is licensed under GPLv2.

Reviewers: #kwin, graesslin

Reviewed By: #kwin, graesslin

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18657
2019-02-05 23:41:57 +02:00
Vlad Zagorodniy 920831bb8e Merge branch 'Plasma/5.15' 2019-02-05 14:32:41 +02:00
Vlad Zagorodniy c372585623 Fix --no-global-shortcuts option
Reviewers: #kwin, davidedmundson

Reviewed By: #kwin, davidedmundson

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18643
2019-02-05 14:32:14 +02:00
Kai Uwe Broulik f86d70aa63 Merge branch 'Plasma/5.15' 2019-02-05 13:28:56 +01:00
Kai Uwe Broulik 7a914e70b6 Merge branch 'Plasma/5.12' into Plasma/5.15 2019-02-05 13:28:45 +01:00
Kai Uwe Broulik bc5978b759 [effects/startupfeedback] Fix shader
Provide both 1.10 and 1.40 shaders.

Differential Revision: https://phabricator.kde.org/D18757
2019-02-05 13:28:14 +01:00
Vlad Zagorodniy 0a9b8a49ee Merge branch 'Plasma/5.15' 2019-02-05 13:57:28 +02:00
Vlad Zagorodniy 582966db52 Merge branch 'Plasma/5.12' into Plasma/5.15 2019-02-05 13:57:09 +02:00
Vlad Zagorodniy 64115d4de2 Save the correct value of noborder property
Summary:
We can't use Client::noBorder while saving the desktop session because
the returned value is not necessarily set by the user.

BUG: 403948

Reviewers: #kwin, davidedmundson

Reviewed By: #kwin, davidedmundson

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18756
2019-02-05 13:55:46 +02:00
Vlad Zagorodniy 8eaf40cc21 Merge branch 'Plasma/5.15' 2019-02-04 22:59:12 +02:00
Vlad Zagorodniy 0b4482dc2e [kcmkwin/compositing] Fix effect video previews
Summary:
Currently, video previews do not work because we try to call showHide()
function that was removed in 787c39cd42.

Reviewers: #kwin, #plasma, davidedmundson

Reviewed By: #kwin, #plasma, davidedmundson

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18720
2019-02-04 22:47:18 +02:00
Vlad Zagorodniy 487990009a Move ExtendedCursor::Shape's doc comment to the correct place
Summary:
It probably has to be placed above the enum, though I'm not sure whether
it applies to ExtendedCursor::Shape or CursorShape.

Test Plan: Compiles.

Reviewers: #kwin, apol

Reviewed By: apol

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18669
2019-02-04 13:59:57 +02:00
Vlad Zagorodniy 5ad797d5fe [autotests] Test maximize animation
Test Plan:
    dbus-run-session ctest -R testMaximizeAnimation

Reviewers: #kwin

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18166
2019-02-01 13:50:40 +02:00
Vlad Zagorodniy 621370d729 [autotests] Test minimize animations
Test Plan:
    dbus-run-session ctest -R testMinimizeAnimation

Reviewers: #kwin

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18162
2019-02-01 13:50:40 +02:00
Vlad Zagorodniy 872831fb15 [autotests] Test desktop switching animations
Summary:
The new test verifies some common things about desktop switching
animation effects, it doesn't verify what each of one them is doing
because it wouldn't be worth it.

Test Plan:
    dbus-run-session ctest -R testDesktopSwitchingAnimation

Reviewers: #kwin

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18156
2019-02-01 13:50:40 +02:00
Vlad Zagorodniy 97cf32f916 Drop ShellClient::shellSurface method
Summary:
The only place where this method is used is testMaximize. Though that
usage is not justified. We're checking what KWayland already checks.

Test Plan: Compiles, all tests still pass.

Reviewers: #kwin, davidedmundson

Reviewed By: #kwin, davidedmundson

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18635
2019-02-01 12:54:27 +02:00
Vlad Zagorodniy 5a98591fff [libkwineffects] Adjust whitespace in AnimationEffect's header
Test Plan: Compiles.

Reviewers: #kwin

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D17835
2019-02-01 00:31:01 +02:00
Vlad Zagorodniy 09cf04eec4 [libkwineffects] Use Q_DISABLE_COPY in AnimationEffect
Summary:
AnimationEffect is an identity so delete copy constructor and copy
assignment operator.

Test Plan: Compiles.

Reviewers: #kwin, davidedmundson

Reviewed By: #kwin, davidedmundson

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D17838
2019-02-01 00:29:25 +02:00
Alex Nemeth 3c2148a5fb [effects/blur] Update blur to be more natural
Summary:
This gets rid of the dark area that may appear between very different colors by doing the blur in SRGB colorspace.
This is not enabled for GLES, and will use the previous blur type.

Test Plan:
Before:
{F6577457}

After:
{F6577458}

Reviewers: #vdg, #kwin, davidedmundson, zzag, fredrik, ngraham

Reviewed By: #vdg, fredrik, ngraham

Subscribers: Codezela, fredrik, abetts, Petross404, rapiteanu, filipf, rooty, ngraham, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18377
2019-01-31 19:21:40 +01:00
Vlad Zagorodniy 4853228bc5 [kcmkwin/rules] Fix line separators in the dialog
Summary:
{F6576622}

{F6576625}

Reviewers: #kwin, davidedmundson

Reviewed By: #kwin, davidedmundson

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18616
2019-01-30 15:56:28 +02:00
David Edmundson 7d10ab0fe7 [wayland] Drop Qt extended surface
Summary:
This is only relevant on Qt and when WlShell is used.
This was only the case before Qt5.10.

We will depend on Qt5.12 next release.
Static Qt builds which are that old typically wouldn't contain QtWayland

Test Plan: Compiles. Not used in tests

Reviewers: #kwin, graesslin

Reviewed By: #kwin, graesslin

Subscribers: graesslin, zzag, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18594
2019-01-30 01:00:41 +00:00
David Edmundson 4240c4af05 [wayland] Call ShellClient install interface methods consistently
Summary:
When we create a new Shellclient there may be a pending relevant
interface.

For every other case this is handled in WaylandServer, the class
responsible for attaching new interfaces at runtime.
The only exception is ServerSideDecorationInterface which is handled in
the ShellClient constructor.

This makes everything consistent.

No behavioural changes.

Test Plan: Ran unit tests

Reviewers: #kwin, zzag

Reviewed By: #kwin, zzag

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18592
2019-01-30 01:00:41 +00:00
Erik Kurzinger f294e7a035 Call frameRendered for undamaged Wayland surfaces
Currently, if a Wayland surface registers a frame callback but does
not send a damage event, the callback will not be serviced even after
KWin has completed a compositing cycle and is therefore ready to
render a new frame for the surface. Since some clients, including any
using NVIDIA's Wayland EGL implementation, wait for frame events
before preparing each frame this behavior can result in hangs if a
compositing cycle occurs between registering the frame callback and
sending the damage event.

Instead, in accordance with the Wayland specification, frame callbacks
should be serviced (via KWayland::Server::SurfaceInterface::frameRendered)
for all visible windows - not just those damaged since the last
compositing cycle.
2019-01-29 12:38:42 -08:00
David Edmundson 18dd0327c2 [autotests] Untangle ShellClient::testMaximizedToFullscreen
Summary:
XdgShell and WlShell behave very differently when it comes to switching
from normal to maximised to fullscreen and back. Under XDGShell they are
2 properties, under WlShell it's a tristate enum.

This test was testing something very specific under WlShell and then
became a horrid mess of if statements doing different things and testing
different things, especially after XdgShell got proper configure
handling.

This patch splits it into two methods.

Test Plan:
Ran test
Passed

Reviewers: #kwin, zzag

Reviewed By: #kwin, zzag

Subscribers: zzag, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18589
2019-01-29 12:31:06 +00:00
Vlad Zagorodniy bd15c1185d Trim whitespace 2019-01-28 02:28:48 +02:00
Martin Flöser 07e394fbb7 Fix unused param warning
Sorry for introducing them.
2019-01-27 14:03:53 +01:00
Martin Flöser cfecb1e077 Fix reorder warning in AbstractScript
Summary:
scripting/scripting.h:205:13: warning: ‘KWin::AbstractScript::m_pluginName’ will be initialized after [-Wreorder]
     QString m_pluginName;
             ^~~~~~~~~~~~
scripting/scripting.h:204:13: warning:   ‘QString KWin::AbstractScript::m_fileName’ [-Wreorder]
     QString m_fileName;
             ^~~~~~~~~~
scripting/scripting.cpp:230:1: warning:   when initialized here [-Wreorder]
 KWin::AbstractScript::AbstractScript(int id, QString scriptName, QString pluginName, QObject *parent)
 ^~~~

Reviewers: #kwin

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18560
2019-01-27 13:25:40 +01:00