Commit Graph

24079 Commits (icc-effect-5.27.2)

Author SHA1 Message Date
Vitaliy Filippov cbde35147c Port to OffscreenEffect
FIXME: Now it makes window title bar key animations lag. Port to paintScreen().
2023-03-01 20:00:25 +03:00
Vitaliy Filippov 59caab3df6 ICC Color Correction Effect for 5.26.4 2023-03-01 20:00:24 +03:00
Jonathan Esk-Riddell 09def9d071 Update version number for 5.27.2
GIT_SILENT
2023-02-28 12:01:02 +00:00
Vlad Zahorodnii 6f7f7ed9db x11: Fix client area lookup with pending move resize
If there's a pending move resize, Window::output() won't be updated
until geometry updated are unlocked. We need to use moveResizeOutput()
instead.


(cherry picked from commit 18870f67cc94573fadb6bccd46419c1ebc7ae949)
2023-02-28 10:39:56 +00:00
l10n daemon script 2ed7bf44ca GIT_SILENT Sync po/docbooks with svn 2023-02-28 03:53:19 +00:00
l10n daemon script a62f6afb01 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-02-28 03:42:23 +00:00
Vlad Zahorodnii c6b91e901a wayland: Fix xdg-toplevel and xdg-popup window initialization
Buggy clients can commit the wl_surface several times in a row. On the
other hand, XdgToplevelInterface and XdgPopupInterface consider a
surface to be initialized if it has been configured. If the second
wl_surface commit comes before the configure event is sent, kwin will
initialize a toplevel or popup twice, which can trigger asserts.

BUG: 466530
(cherry picked from commit 43cac750343ad107ab92f29628cabb2a70a8d17f)
2023-02-27 20:14:18 +02:00
Aleix Pol 548ccc8036 screencasting: Choose the correct GL type to download into an image
BUG: 466299
2023-02-27 16:54:10 +00:00
Aleix Pol Gonzalez d30b7e49ab screencasting: Close streams when the output is disabled
It's technically possible to keep it somewhat going right now and just
not send frames but it doesn't make much intuitive sense.


(cherry picked from commit 4cda16ce3a3ef914c28b3bf962f9da8cc9ca24ff)
2023-02-27 15:44:17 +00:00
Vlad Zahorodnii 0d0474117d wayland: Setup compositing for internal window when it's mapped
Aurorae decoration plugin creates an unmapped internal window, it's not
rendered and so it's not added to the Workspace.

Internal window setups compositing in its constructor too. It means that
the WindowItem will have a link to the scene, but since the Compositor
has no any idea about the internal window yet, that scene can become a
dangling pointer, and kwin can crash when the window item is destroyed.

BUG: 466313
(cherry picked from commit 8fc634684c037dc0d88156d2dd076412989e6bc7)
2023-02-27 14:22:48 +02:00
Vlad Zahorodnii 98e01c4f44 Remove no longer relevant case in Workspace::replaceInStack()
Unmanaged windows are always in the stack now, so the else branch is not
needed, and in fact, it can produce undesired side effects if unmapped
window is closed.

(cherry picked from commit 298d63bc71a3d9b161849259c8309f677e77f939)
2023-02-27 14:22:37 +02:00
l10n daemon script 9d515d3abb GIT_SILENT Sync po/docbooks with svn 2023-02-27 04:06:01 +00:00
l10n daemon script 25cb7a8553 GIT_SILENT Sync po/docbooks with svn 2023-02-26 03:38:54 +00:00
Vlad Zahorodnii 7bfd302798 effects/zoom: Fix crash on X11
On X11, the painted screen is meaningless, so the zoom effect doesn't
use it to store offscreen data. It can create problems when iterating
over offscreen data map.

The painted screen can't be used to determine the necessary offscreen
texture size too. X11 requires some special care.

This change adds explicit wayland checks.

BUG: 466376
(cherry picked from commit 1854224c17db6df7b340d12f971ffddddbbe59c5)
2023-02-25 11:19:53 +02:00
l10n daemon script c46c853cdb GIT_SILENT Sync po/docbooks with svn 2023-02-25 05:34:07 +00:00
l10n daemon script 1232549d9f 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-02-25 04:47:23 +00:00
David Redondo fb59d975b5 Fix edid serial parsing
Descriptor blocks are 18 bytes, the serial number one has space
for 13 bytes of serial number.
BUG:466136
FIXED-IN:5.27.2


(cherry picked from commit 693ea96599c76df03b522fa4f180edf2f4041526)
2023-02-24 11:06:53 +00:00
Vlad Zahorodnii 554ad9ecda effects/zoom: Fix rendering with mixed scale factors
When allocating offscreen texture, we should use screen's scale rather
than current render target's scale.

In addition to that, the cached vbo cannot be used for rendering on
other screens with different scale factors, which can happen.

(cherry picked from commit 711b6e36d2610fb4f693c87f50ad5fe71165ad9c)
2023-02-24 09:50:51 +02:00
Vlad Zahorodnii dc465ec6ab effects/magnifier: Reduce the number of heap allocations
Reserve enough of space for all vertices instead of dynamically
expanding the QVector to accommodate for new data.

(cherry picked from commit a62dc13161780cba827fc7ae4bc25b661f2bdfd7)
2023-02-24 07:28:01 +00:00
Vlad Zahorodnii 28fddf3bce effects/magnifier: Fix rendering on multi screen setups
The projection matrix is constructed incorrectly, use the one provided
by the scene instead.

(cherry picked from commit 42cff94f722d08a8c40a818cdc835aa1dff880bf)
2023-02-24 07:28:01 +00:00
l10n daemon script a02900aba0 GIT_SILENT Sync po/docbooks with svn 2023-02-24 03:39:18 +00:00
Aleix Pol Gonzalez 764f6d26cd backends/drm: Make sure attributes are always initialized
It only gets set on specific cases and assumes false as default anyway.
kwin/src/backends/drm/drm_gpu.cpp:691:12: runtime error: load of value 190, which is not a valid value for type 'bool'


(cherry picked from commit a60c3130e39e80289a5f62a6211f98a03043899e)
2023-02-23 21:53:44 +00:00
Xaver Hugl b97e6f6c73 backends/wayland: fall back to qpainter when there's no render node
While we could still access the primary node, as we're not getting GPU acceleration
anyways we might as well fall back to CPU rendering directly

BUG: 466302


(cherry picked from commit 5f0ea95bfa0bba8cfd67d364fda7b108826c9db2)
2023-02-23 20:16:52 +00:00
Harald Sitter 24a59dd2fe backends/x11: explicitly free the outputs
...before releasing the connection!

this was randomly causing crashes because of use-after-disconnect
problems. since we would tear down the connection in ~X11WindowedBackend
but outputs wouldn't get cleaned up until QObject children cleanup of
the X11WindowedBackend object (or more precisely the OutputBase). this
would then result in ~X11WindowedOutput accessing a backend connection
that had already been closed

to help debug this type of problem moving forward let's also reset the
connection to nullptr during destruction. it's kinda pointless but it
makes it easier to spot use-after-disconnect

BUG: 466183


(cherry picked from commit 4fcc545628e6a1bce7bb6073e2aff9364f93d7a4)
2023-02-23 14:02:52 +00:00
Vlad Zahorodnii 6970199ccc backends/libinput: Fix crash upon receiving motion absolute events
The input events can be processed when the workspace is not available,
e.g. during startup or shutdown, so add a corresponding guard.

As a long term plan, we need to decouple Workspace from low-level input
backend parts, but it will be a too invasive change for now.

BUG: 449317
BUG: 465456


(cherry picked from commit da26deaa5c843ef303ef9f1b9f0cd3d341c5c5f5)
2023-02-23 07:23:11 +00:00
l10n daemon script 5b777e9fb6 GIT_SILENT Sync po/docbooks with svn 2023-02-23 03:47:58 +00:00
l10n daemon script 83d786e342 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-02-23 03:31:09 +00:00
Xaver Hugl 5abb038a3c pointer input: always confine pointer to screens
Checking if the pointer needs to be confined before doing `std::clamp` on
the position is useless and causes problems. With this change, the pointer
will always be confined to exactly the screen, without any fractional offsets.

BUG: 461911


(cherry picked from commit 520fa3042a9877379870af7b300fab7c669d7e7e)
2023-02-22 19:02:20 +00:00
Vlad Zahorodnii 7ea6506d61 effects: Fix selecting hidden windows using keyboard
WindowHeapDelegate used to have hidden property. It was renamed to
activeHidden, but WindowHeap has not been adjusted to the new name.

BUG: 466120


(cherry picked from commit bc0502b3cac939c5e75e63385dc9b4e2f32e9925)
2023-02-22 13:32:27 +00:00
Adam Williamson cb8c4d5b3d feat: allow VT switching even with global shortcuts disabled
(cherry picked from commit 779005f1d2a1035aa4f711a748852f69ca61fc12)
2023-02-22 07:27:11 +00:00
l10n daemon script 1193204b29 GIT_SILENT Sync po/docbooks with svn 2023-02-22 03:17:15 +00:00
Vlad Zahorodnii be772c7fe3 scene: Ensure there's current opengl context when DecorationItem is repainted for last time
BUG: 466186


(cherry picked from commit 2de5236e3fb4372ebafa6132eddfb16a85a331fc)
2023-02-21 13:48:37 +00:00
Vlad Zahorodnii e141fe8028 effects/glide: Fix transform
Translation should be in logical pixels.

BUG: 465849


(cherry picked from commit c24a5f03959686cc72fdb3b83341529c2bee8568)
2023-02-21 12:24:50 +00:00
David Edmundson 5e16c3337e Aurorae: Add dummy window for working device pixel ratio
Aurorae uses a QQuickWindow that receives an implicit scale through the
QPA. Unfortunately there's a known quirk with device pixel ratio not
being followed when offscreen surfaces are never shown and an
independent render control is used.

Without this QQuickRenderControl::grab ends up using a buffer the size
of the window * dpr, but with the contents rendered at 1x in the corner
along with incorrect device pixel ratio information.

This patch copies a used solution from EffectQuickView. This can be
resolved more neatly with newer Qt.

BUG: 452730
BUG: 465790


(cherry picked from commit 01fd54d7538a1b8a9c954645142af699284d01d5)
2023-02-21 11:55:09 +00:00
Jonathan Esk-Riddell 61b944d318 Update version number for 5.27.1
GIT_SILENT
2023-02-21 11:04:38 +00:00
Vlad Zahorodnii 451eec2e8c tiling: Make child tiles inherit padding from parent tile
If a new tile is added, make it inherit parent tile's padding to ensure
consistent padding.

BUG: 465842


(cherry picked from commit 18d6159be193f3267d258b28a7efa9ffd4e98d7c)
2023-02-21 09:54:27 +00:00
Arjen Hiemstra c3f88fed62 effects/contrast: Round device coordinates when creating geometry
Since normal geometry is now rounded, we need to make sure to round
anything that should match that geometry, otherwise we risk things
peeking out of the normal geometry.

BUG: 464526


(cherry picked from commit edbbe996d33d17ae8020fb06611141586fd1e7bb)
2023-02-21 09:08:19 +00:00
l10n daemon script e25b182830 GIT_SILENT Sync po/docbooks with svn 2023-02-21 03:36:13 +00:00
l10n daemon script 4f5c8155df 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-02-21 03:27:23 +00:00
Xaver Hugl e2a082594a cursorsource: fix scaling with Xwayland
Before this commit, the device pixel ratio of the cursor was set to ignore
the Xwayland scale override, while the size of the cursor surface was scaled.
This change removes the scaling of the cursor surface size, to make the cursor
be no longer cut off in rendering.

BUG: 466094


(cherry picked from commit 81571203f12c3fbd8c7cb8bc6446587a43d3895b)
2023-02-20 19:32:37 +00:00
Xaver Hugl 699d7fdd88 cursordelgate: round cursor position when rendering
Otherwise there can be weird artifacts when screen scaling is involved


(cherry picked from commit 3334fb8752bb1e5dd40d8fa9969c8ba24d2547b8)
2023-02-20 15:52:48 +00:00
David Edmundson aa700a13d6 outputchangeset: Round passed scale
wl_fixed is lossy even for values that are representable as perfect doubles, like 1.15

This causes various visual glitches and off sizes.

Given we're using units of 120ths for the fractional scale protocol it makes sense
to fix the passed values for anything else over the wayland protocol.

BUG: 465850


(cherry picked from commit 3082133117c4360d4ac9bc7500f4d2338f86e8d0)
2023-02-20 12:23:01 +00:00
David Redondo bbe2d4236c Mark Window as damaged when decoration or shadow changes
Enforms thumbnails, screencasts and effects of these changes and
that the window needs repainting.
BUG:464417
FIXED-IN:5.27.1


(cherry picked from commit 264a19247bc081dfb4701509b1920a539e0b65bc)
2023-02-20 11:28:39 +00:00
l10n daemon script a9ea80aeec GIT_SILENT Sync po/docbooks with svn 2023-02-20 03:42:02 +00:00
l10n daemon script 8b0212ded0 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-02-20 03:31:43 +00:00
l10n daemon script 5f3157781d GIT_SILENT Sync po/docbooks with svn 2023-02-19 03:47:25 +00:00
Tobias Berner d9b7791f7b Add missing cerrno include.
(cherry picked from commit 99b2e6072c544cc1630dcf3b72e062bdf0503d5f)
2023-02-18 10:13:44 +00:00
l10n daemon script 53bf47200d GIT_SILENT Sync po/docbooks with svn 2023-02-18 03:42:47 +00:00
David Edmundson 41f533550a effects/tileseditor: Set translation domain in QML files
BUG: 464572


(cherry picked from commit bfe837c9184c198544848d58098ed2cac6346fe9)
2023-02-17 10:25:55 +00:00
Vlad Zahorodnii 2ea9d7d8a5 wayland: Remove SeatInterfacePrivate::accumulatedCapabilities
The seat no longer posts the relevant protocol error.

(cherry picked from commit e1e9e89f34e28693a833506c5e5bc73cf338c6de)
2023-02-17 08:10:59 +00:00