Summary: It works for the effect
Test Plan:
kcmshell5 kcm_kwin_effects
Change some settings, the "Restore defaults" button is enabled when the state is not the default state.
Open an effect configuration, the "Restore defaults" button is enabled when the settings are not default.
Reviewers: #kwin, crossi, ervin, zzag
Reviewed By: #kwin, zzag
Subscribers: zzag, kwin
Tags: #kwin
Differential Revision: https://phabricator.kde.org/D26040
Summary: Use a kcfg file to specify virtual desktops settings saved to kwinrc.
Test Plan:
kcmshell5 kcm_kwin_virtualdesktops
Change something, check apply buttons works appropriately
Save the settings and relaunch the kcm, the new settings are taken loaded correctly
Reviewers: #kwin, ervin
Reviewed By: ervin
Subscribers: kwin
Tags: #kwin
Differential Revision: https://phabricator.kde.org/D25871
Summary:
This makes it possible to detect these changes via KConfigWatcher.
This is needed for D25670
Reviewers: #kwin, ngraham, davidedmundson
Reviewed By: #kwin, ngraham, davidedmundson
Subscribers: ngraham, kwin
Tags: #kwin
Differential Revision: https://phabricator.kde.org/D25695
Summary:
Tabs in the Window Decoration KCM look awkward now because the frame is drawing an extra line while the tab bar is also drawing its line.
This patch just slightly alters an existing hack so that the frame's top line can't be seen.
Subscribers: kwin
Tags: #kwin
Differential Revision: https://phabricator.kde.org/D25582
Summary:
Selecting not to vsync does not make sense for an X11 compositor. In the end
we want clients to be able to present async if they want to but the compositor
is supposed to send swaps with vsync to the XServer in order to not generate
tearing artifacts.
There was also a detection logic which did some questionable things in case
vsync was not available. I don't think this is necessary at all since we can
just always run a timer to present with or without vsync.
Test Plan: kwin_x11 tested on i915.
Reviewers: #kwin, zzag
Subscribers: zzag, kwin
Tags: #kwin
Maniphest Tasks: T11071
Differential Revision: https://phabricator.kde.org/D23511
Summary:
Won't make things go much faster since everything that was
being passed by value is refcounted but still const & is a bit faster
than refcounting
For shared pointers instead of adding const & we move them into the
destination variable saving some cpu usage but at the same time making
clear the pointer is being stored by not being const &
Reviewers: zzag
Reviewed By: zzag
Subscribers: zzag, kwin
Tags: #kwin
Differential Revision: https://phabricator.kde.org/D25022
Summary:
Otherwise the combobox containing the switching effects escapes from the page. Same fix
as D24885.
BUG: 403151
FIXED-IN: 5.17.2
Test Plan:
Checkbox text now elides when the window is made very narrow, and combobox no longer gets
cut off.
Reviewers: #kwin, zzag, davidedmundson
Reviewed By: #kwin, zzag, davidedmundson
Subscribers: kwin
Tags: #kwin
Differential Revision: https://phabricator.kde.org/D24988
Otherwise the layout explodes.
Unfortunately it seems Layouts don't shrink the items within even if there's not enough room at all, so I need this fillWidth + maximumWidth workaround.
Differential Revision: https://phabricator.kde.org/D24885
Summary:
Hide the animation speed slider on Plasma as this becomes duplicated
with the global "animation speed" slider.
Also port to the new format for the config option which stores the
actual multiplier, not a magic number.
Test Plan:
Didn't appear normally
Manually modified env; slider appeared
Tested load/save of defaults and the two extremes
Reviewers: zzag
Reviewed By: zzag
Subscribers: zzag, kwin
Tags: #kwin
Differential Revision: https://phabricator.kde.org/D24075
Summary:
Right now a few of the window placement modes suffer one or more of the following problems:
- Inconsistency between the text shown in the Window Behavior and Window Rules KCMs
- Title does not indicate what it does
- Awkward wording
- Lack of unity in grammatical mood between the different modes
This patch fixes these issues by improving the strings and standardizing on the descriptive mood:
- Smart -> Minimal Overlapping
- Maximizing -> Maximized
- Cascade -> Cascaded
- Zero-Cornered -> In Top-Left Corner
Strings are also unified between the window behavior and window rules KCMs, and docbooks are adjusted accordingly.
Test Plan:
{F7279685, size=full}
{F7279694, size=full}
Reviewers: #kwin, #vdg, ndavis, filipf, zzag, romangg
Reviewed By: #kwin, #vdg, ndavis, filipf, romangg
Subscribers: gladhorn, alexeymin, IlyaBizyaev, broulik, hein, hpereiradacosta, GB_2, alexde, davidedmundson, romangg, cfeck, filipf, zzag, ndavis, kwin, kde-doc-english
Tags: #kwin, #documentation
Differential Revision: https://phabricator.kde.org/D23415
Summary:
Because KWin is a very old project, we use three kinds of null pointer
literals: 0, NULL, and nullptr. Since C++11, it's recommended to use
nullptr keyword.
This change converts all usages of 0 and NULL literal to nullptr. Even
though it breaks git history, we need to do it in order to have consistent
code as well to ease code reviews (it's very tempting for some people to
add unrelated changes to their patches, e.g. converting NULL to nullptr).
Test Plan: Compiles.
Reviewers: #kwin, davidedmundson, romangg
Reviewed By: #kwin, davidedmundson, romangg
Subscribers: romangg, kwin
Tags: #kwin
Differential Revision: https://phabricator.kde.org/D23618
We have lots of inconsistency at the moment in CMakeLists.txt files. Most
of it is due to kwin being a very old project. This change hopefully fixes
all of it.
Summary:
This has been commented out since 2014, I doubt it will come back.
This is a big amount of code, maintenance will be easier without it.
Reviewers: #kwin, zzag
Reviewed By: #kwin, zzag
Subscribers: romangg, graesslin, kwin
Tags: #kwin, #documentation
Differential Revision: https://phabricator.kde.org/D23069
Summary:
Revision 9a59e3fb6c removed the ghns
button, but did not remove the corresponding entry in the tab focus
chain.
Reviewers: #kwin, ngraham, zzag
Reviewed By: #kwin, zzag
Subscribers: kwin
Tags: #kwin
Differential Revision: https://phabricator.kde.org/D23936
Summary:
Apply the KDE HIG, use form layouts, make desktop files consistent and make the KCMs look better.
{F7323519}
{F7330485}
{F7330486}
{F7302318}
{F7302319}
Test Plan: Open the {nav Window Behavior} KCMs. All options should still work
Reviewers: #kwin, #plasma, #vdg, ngraham, zzag
Reviewed By: #kwin, #plasma, #vdg, ngraham, zzag
Subscribers: ngraham, davidedmundson, zzag, #vdg, #plasma, kwin, #kwin
Tags: #kwin
Maniphest Tasks: T10273
Differential Revision: https://phabricator.kde.org/D23615
Summary:
This allows all the section headers to always have the same look and feel and be
adjusted in just one place.
Depends on D23049
Test Plan: {F7181776}
Reviewers: #vdg, kwin, GB_2, #kwin
Reviewed By: #vdg, GB_2
Tags: #kwin
Maniphest Tasks: T10384
Differential Revision: https://phabricator.kde.org/D23055
Summary:
Switch to Q_ASSERT in order to make code a bit more consistent. We have
places where both assert and Q_ASSERT are used next to each other. Also,
distributions like Ubuntu don't strip away assert(), let's hope that
things are a bit different with Q_ASSERT.
Test Plan: Compiles.
Reviewers: #kwin, davidedmundson
Reviewed By: #kwin, davidedmundson
Subscribers: romangg, davidedmundson, kwin
Tags: #kwin
Differential Revision: https://phabricator.kde.org/D23605
Summary:
Apply the KDE HIG, use a form layout, make the desktop file consistent and make the KCM look better.
{F7160251}
{F7149956}
Test Plan: Open the Screen Edges and Touch Screen KCMs.
Reviewers: #kwin, #plasma, #vdg, zzag, ngraham
Reviewed By: #kwin, #plasma, #vdg, zzag, ngraham
Subscribers: ngraham, zzag, #vdg, #plasma, kwin, #kwin
Tags: #kwin
Differential Revision: https://phabricator.kde.org/D22909
Summary:
Tweak spacing and margins, improve the look of headers and descriptions.
{F7155024}
Test Plan: Open the Desktop Effects KCM and hover over a list item.
Reviewers: #kwin, #plasma, #vdg, ngraham
Reviewed By: #vdg, ngraham
Subscribers: ngraham, #vdg, #plasma, kwin, #kwin
Tags: #kwin
Differential Revision: https://phabricator.kde.org/D22914
Summary:
Use the same list style as the Virtual Desktops KCM and Kirigami actions with tooltips.
Also removes the info button. The copyright info can now be accessed by clicking on the item.
BUG: 409693
BUG: 335197
BUG: 335198
Test Plan:
Together with D22827:
{F7138726}
Reviewers: #kwin, #vdg, filipf, GB_2, ngraham, davidedmundson
Reviewed By: #kwin, #vdg, filipf, GB_2, ngraham, davidedmundson
Subscribers: ngraham, GB_2, filipf, kwin
Tags: #kwin, #vdg
Maniphest Tasks: T10273
Differential Revision: https://phabricator.kde.org/D22830
Summary:
The QML Window Decorations KCM uses a fake tab bar with code copied from Plasma-pa, due
to the lack of a real QML tab widget (see https://bugs.kde.org/show_bug.cgi?id=394296).
As a result, we have to manufacture our own by combining a TabBar with a frame in which
the content sits, and any change made to one needs to be applied to the other as well.
The Plasma-pa version just received a minor change in D22533. This patch implements the
same change for the Window Decorations KCM so they don't look inconsistent with one
another.
Test Plan: Before-and-afters are identical to the images in D22533
Reviewers: #kwin, #vdg, filipf
Reviewed By: #vdg, filipf
Subscribers: kwin
Tags: #kwin
Differential Revision: https://phabricator.kde.org/D22886