Commit graph

25981 commits

Author SHA1 Message Date
Xaver Hugl
120d141501 backends/drm: use sync files for checking buffer readiness and use IN_FENCE_FD
This shouldn't change anything in practice, but with some badly behaving
drivers it can prevent oversynchronization.
2023-12-06 08:34:55 +01:00
l10n daemon script
b8caf31861 GIT_SILENT Sync po/docbooks with svn 2023-12-06 02:19:52 +00:00
l10n daemon script
520ead8f9e 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"
2023-12-06 02:10:37 +00:00
Vlad Zahorodnii
b01b626ca8 x11: Fix MouseButtonPress events sent to decoration
ButtonPressEvent::state includes keys and buttons prior to the button
press has been generated.

On the other hand, it appears that QMouseEvent::buttons() should include
currently pressed buttons, i.e. the button that has been just pressed
should be in that bitfield.

This is important for QQuickDeliveryAgent, which checks
QMouseEvent::button() and QMouseEvent::buttons() to decide whether to
send the button event only to tap handlers or both tap handlers and
mouse areas.

BUG: 476653
2023-12-05 22:04:10 +00:00
Xaver Hugl
7c8036efef core/colorspace: fix mapTo method and support PQ with it
BUG: 477799
2023-12-05 18:28:23 +00:00
Xaver Hugl
ab48621758 plugins/magnifier: use floating point offscreen texture
With color management, everything would get clamped to 1 nit otherwise.

BUG: 477841
2023-12-05 17:56:27 +00:00
Rafał Szalecki
3dc8b937ba Add missing whitespace in magiclamp config 2023-12-05 16:00:00 +00:00
Xaver Hugl
7fdf0fb792 backends/drm: support atomic modesetting in virtual machines
With kernel 6.6+, HOTSPOT_X and HOTSPOT_Y are exposed on the cursor plane
in virtual machines, so the fallback to the legacy API is no longer needed.
At some point in the future, the list of virtual machine drivers can be
dropped entirely.
2023-12-05 15:39:03 +00:00
Vlad Zahorodnii
57e2afaec1 plugins/shakecursor: Add descale animation 2023-12-05 15:19:29 +00:00
Vlad Zahorodnii
0a5bd7397b plugins/shakecursor: Make it easier to build up magnification 2023-12-05 15:19:29 +00:00
Vlad Zahorodnii
494e4a07f2 plugins/shakecursor: Don't trigger for cursor pushback
The shake detector is mistriggered by sporadic pointer movement when the
cursor is pushed back by a screen edge.

As a way to prevent it, this change adds a bounding rectangle
constraint. The cursor will move chaotically within a small bounding
rectangle if it's pushed back. So it should be enough to just check
the length of the diagonal.
2023-12-05 08:50:03 +00:00
l10n daemon script
999814796b GIT_SILENT Sync po/docbooks with svn 2023-12-05 02:12:10 +00:00
l10n daemon script
e4c979c578 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"
2023-12-05 02:05:58 +00:00
Nicolas Fella
f399d2442a Adapt to plasma-framework targets being renamed 2023-12-04 19:43:47 +00:00
Yifan Zhu
c441ce5cd1 Avoid accidental mixing of qreal and int
The code for placeSmart uses ints to store coordinates and dimensions,
but the various methods of QRectF return qreal types, which can be
non-integers under fractional scaling, causing multiple issues.

This commit explicitly converts the needed quantities to ints,
avoiding the issues.

Previously, the code relied on the assumption that
y = area.y() + area.height(); implies !(y < area.y() + area.height()).
This doesn't always hold when mixing qreals and ints, causing infinite loops
under fractional scaling when attempting to open large windows, as
reported in BUG 477820.

This commit also extends the fix in 5502ce9 to fractional scaling scenarios.
The ceiling of client widths and height is used, instead of the implicit
floor, which caused BUG 477886.

BUG: 477820
BUG: 477886
2023-12-04 08:59:58 -08:00
Nate Graham
e28ec8ada1 kcms/screenedges: fix defaults indicator for "remain active" checkbox
The initial value was being initialized to true despite the setting
being off by default, and the default checker was highlighting when it
was false, not when it was true.

BUG: 477329
FIXED-IN: 6.0
2023-12-04 14:58:25 +00:00
l10n daemon script
86a4906bf8 GIT_SILENT Sync po/docbooks with svn 2023-12-04 02:13:39 +00:00
l10n daemon script
5b4dce93e3 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"
2023-12-04 02:08:23 +00:00
l10n daemon script
3cc8e9f13b GIT_SILENT Sync po/docbooks with svn 2023-12-03 02:12:56 +00:00
l10n daemon script
ad07733e18 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"
2023-12-03 02:07:06 +00:00
l10n daemon script
5533b50d66 GIT_SILENT Sync po/docbooks with svn 2023-12-02 02:12:25 +00:00
l10n daemon script
6a494f9364 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"
2023-12-02 02:07:11 +00:00
Vlad Zahorodnii
dd9e04fb18 Fix -Wdeprecated-declarations 2023-12-01 12:06:48 +02:00
Bharadwaj Raju
e5753ea336 Make autohide screen edges use the same activation delay setting as other edges
Makes it possible to easily target things in a window near your panel edge,
without bringing up your panel.

The `m_client` condition this MR removes appears to have been added solely to make autohiding panels appear instantly. See c4140d6f4e.

BUG: 267277
2023-12-01 08:09:35 +00:00
l10n daemon script
83d0764870 GIT_SILENT Sync po/docbooks with svn 2023-12-01 02:15:13 +00:00
l10n daemon script
0468860b0d 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"
2023-12-01 02:08:56 +00:00
Vlad Zahorodnii
f5f343d33e opengl: Drop scale arg in GLTexture::render()
It makes the API confusing and in many places, the target size is
already in device pixels.
2023-11-30 13:55:55 +00:00
Kai Uwe Broulik
cecd630b2e wayland/xdgforeign_v2: Create UUID without braces
They can be annoyin to type on the terminal, requiring escaping and what not.
The protocol doesn't specify the format, so we can just drop them.
2023-11-30 13:17:08 +00:00
l10n daemon script
8dc297db71 GIT_SILENT Sync po/docbooks with svn 2023-11-30 02:09:51 +00:00
l10n daemon script
2ad4bb6de3 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"
2023-11-30 02:05:05 +00:00
Vlad Zahorodnii
7787920277 cmake: Improve readability
Indent target_link_libraries of kwin to improve code readability. As is,
PUBLIC and PRIVATE blend with target names and therefore they are harder
to spot.
2023-11-29 14:21:36 +00:00
l10n daemon script
646b508efe GIT_SILENT Sync po/docbooks with svn 2023-11-29 14:17:09 +00:00
l10n daemon script
2b29e702dc 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"
2023-11-29 14:10:58 +00:00
Vlad Zahorodnii
5e90452d08 Add more closed window checks
The stack contains closed windows, so we need to guard against them.

BUG: 475423
2023-11-29 13:56:07 +00:00
Vlad Zahorodnii
c0b387bf5e backends: Drop waylandServer dependency
Backends dependending on the wayland server is not great, it makes them
less reusable and creates a strict instantion order that doesn't fully
make sense.
2023-11-29 13:31:47 +00:00
Vlad Zahorodnii
19c6425607 plugins/screencast: Use bilinear min/mag filter
Use GL_LINEAR so region screencasts look nicer when the output content
is magnified or minified.
2023-11-29 13:16:54 +00:00
Vlad Zahorodnii
6f7e06bf9e plugins/screencast: Clean up embedded cursor painting code
The MVP uniform is set twice, in addition to that, the cursor size is
scaled more than once.
2023-11-29 13:16:54 +00:00
Jonathan Esk-Riddell
cea6368e72 Update version number for 5.90.0
GIT_SILENT
2023-11-29 10:24:10 +00:00
Vlad Zahorodnii
40dbe9eb66 plugins/startupfeedback: Fix glitches with fractional scaling
Snap the bouncy icon to the pixel grid and if necessary stretch it.
2023-11-29 08:04:51 +00:00
Timothy Bautista
a25ae5261d plugins/morphingpopups: add easing curves
This makes the motion of the effect more consistent with other
window-related effects, which typically also use some form of a
cubic curve.
2023-11-29 07:47:12 +00:00
Yevhen Popok
0b1bc516e3 plugins/magnifier: Add missing "Zoom In" alt. shortcut
Make the "Magnifier" and "Zoom" effects use the same shortcuts for "Zoom In"
2023-11-29 07:27:39 +00:00
Yevhen Popok
0f31ab89c8 plugins/zoom: Add missing "Zoom In" default alt. shortcut 2023-11-29 07:27:39 +00:00
Vlad Zahorodnii
5ba0d2c933 plugins/screencast: Simplify OutputScreenCastSource::render()
The texture size is already in device pixels.
2023-11-29 07:15:35 +00:00
l10n daemon script
8452b1414e GIT_SILENT Sync po/docbooks with svn 2023-11-29 02:14:33 +00:00
l10n daemon script
c8122e4cd5 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"
2023-11-29 02:08:23 +00:00
David Edmundson
d18db74d5f XWayland: no forwarding with Shift keys
The shift key doesn't make sense to be one of the keys that will trigger
KWin to allow XWayland apps to process all keys when it's pressed,
because there aren't generally global shortcuts that consist of Shift
plus an alphanumeric character key. That's because this key combination
is used to type capital letters.

So we can safely exclude the shift key to improve security against key logging and not break any global
shortcut-using XWayland apps for people using this feature.

The shift key on it's own is still forwarded as that's a non-character key.
2023-11-28 20:10:37 +00:00
Vlad Zahorodnii
831064f351 plugins: Add shakecursor plugin
This plugin helps you locate the cursor by enlarging it when the pointer
is quickly moved back and forth.

BUG: 432927
2023-11-28 16:36:26 +00:00
Vlad Zahorodnii
5696081cf7 plugins/startupfeedback: Add hidpi support on wayland 2023-11-28 18:18:16 +02:00
Vlad Zahorodnii
7233616c2c plugins/startupfeedback: Fix bouncing icon being too small on wayland
We need to be careful about the target rect when painting a hidpi image
onto a lodpi image.

This is the case when the startup feedback generates bouncing frames.
The icon pixmap may be hidpi, while the result image has device pixel
ratio 1.
2023-11-28 16:06:33 +00:00
Vlad Zahorodnii
784d48ef52 Port away from deprecated KConfigBase::group() api 2023-11-28 10:02:03 +00:00