Vlad Zahorodnii
8197bf8890
Remove Window.visibleRect property
...
Scripts don't paint so the visible rect is no of use to them.
2022-11-18 20:04:09 +02:00
Vlad Zahorodnii
3d0101e127
Move window XID properties to X11Window
...
Scripts can't use platform specific apis so it makes little sense to
have these properties. On the other hand, they can be useful for debug
console.
2022-11-18 19:58:54 +02:00
Vlad Zahorodnii
b622bc5ec5
Remove Window.surface property
...
Scripts don't have sufficient capabilities to use platform specific
apis. So exposing wayland surface object to scripts makes no sense.
2022-11-18 19:55:43 +02:00
Vlad Zahorodnii
a0971264b8
Remove Window.alpha property
...
Scripts don't paint, there's little point for exposing this property to
scripts.
2022-11-18 19:54:40 +02:00
Vlad Zahorodnii
65130f85e6
Port Workspace from Window::clientPos()
2022-11-18 16:31:37 +00:00
Vlad Zahorodnii
f9abd04459
Port constraint constraints from Window::clientPos()
2022-11-18 16:31:37 +00:00
Vlad Zahorodnii
0ec732491b
Port PopupInputFilter to Window::clientGeometry()
...
Saves us some math operations.
2022-11-18 16:31:37 +00:00
Vlad Zahorodnii
5e04977d31
Drop SurfacePixmap::contentsRect()
...
It's unused.
2022-11-18 16:31:37 +00:00
Vlad Zahorodnii
64a6a70b3e
autotests: Use fewer Window::clientPos()
2022-11-18 16:31:37 +00:00
Alexey Andreyev
462d5f0642
utils/serviceutils: Improve Exec key parsing
...
Take into account Exec field codes.
The change makes possible to have both X-KDE-Wayland-Interfaces field
(for example, kde_lockscreen_overlay_v1)
(and additional arguments for Exec field (for example, %U).
See also:
https://specifications.freedesktop.org/desktop-entry-spec/latest/ar01s07.html
Contributes to:
https://invent.kde.org/plasma-mobile/plasma-dialer/-/merge_requests/105
2022-11-18 15:48:38 +00:00
Nate Graham
c01569e4b8
effects/windowview: make search field's placeholder text accurate
...
This effect has a search field that doesn't actually search; it filters
through open windows. Let's change its placeholder text to reflect this,
so users don't get confused.
2022-11-17 21:22:29 -07:00
Vlad Zahorodnii
3a7b35a95b
backends/wayland: Drop WaylandBackend::flush()
...
These flush()es are unnecessary, wayland backend will work fine without
them.
2022-11-17 18:08:06 +02:00
Vlad Zahorodnii
8655cc76e8
core: Drop initial window state properties in OutputBackend
...
Relevant output backends take these properties using their (xyz)Options
struct now.
2022-11-17 14:20:44 +00:00
Vlad Zahorodnii
12acd9bb78
autotests: Port away from OutputBackend::setInitialWindowSize()
2022-11-17 14:20:44 +00:00
Vlad Zahorodnii
528abfb00a
backends/{x11,wayland}: Rework passing initial configuration to windowed backends
...
Currently, OutputBackend stores the initial state for windowed backends.
It's messy because the backends can have different needs. Instead, make
windowed backends take an Options struct with all possible options.
2022-11-17 14:20:44 +00:00
Aleix Pol
69c9f19973
screencast: Don't scale the cursor
...
Otherwise it gets cutt off when scaling > 1.
This fixes Nate's screencasts (and anyone who has a system like nate's,
that is).
Part-of: <https://invent.kde.org/plasma/kwin/-/merge_requests/3195 >
2022-11-17 10:03:33 +00:00
Vlad Zahorodnii
b2d78a5c30
backends/wayland: Decouple from Compositor and Scene
...
Scene::addRepaintFull() is used to request an output update, but there
are other ways to do it that require referencing neither Compositor nor
Scene.
Part-of: <https://invent.kde.org/plasma/kwin/-/merge_requests/3202 >
2022-11-17 09:25:12 +00:00
Vlad Zahorodnii
3aa635430b
effects: Drop WindowPaintData.shader property
...
It allows us to encapsulate SurfaceItem rendering. It's needed to add
support for YUV->RGB conversion fallback path.
Effects that use this property must be ported to OffscreenEffect, see
also OffscreenEffect::setShader().
This is a BREAKING CHANGE!
2022-11-17 08:23:51 +00:00
Vlad Zahorodnii
4363b25b2d
effects/invert: Port to OffscreenEffect
...
Allows us to drop WindowPaintData.shader and to encapsulate rendering of
windows, which is needed to provide YUV->RGB conversion path.
2022-11-17 08:23:51 +00:00
Vlad Zahorodnii
69859aec28
kwineffects: Bring back OffscreenEffect::setShader()
...
OffscreenEffect can be still used to apply a shader effect to a window.
2022-11-17 08:23:51 +00:00
l10n daemon script
3d96b58548
GIT_SILENT Sync po/docbooks with svn
2022-11-17 02:05:56 +00:00
Vlad Zahorodnii
f06dce9d12
backends/wayland: Remove unused includes
2022-11-16 22:19:00 +02:00
Vlad Zahorodnii
bcb38f366d
backends/wayland: Port to xdg-decoration-v1
...
The server-decoration protocol is deprecated, and the clients should use
the xdg-decoration-v1 protocol instead.
kwin will indicate that it wants server side decoration. If the host
compositor insists on client-side decorations, the wayland backend will
render no csd. However, this is de-facto state at the moment too,
perhaps it can be improved by using libdecor?
Regardless, no csd is the current state too, except that both host and
nested compositors can enter a loop where one side says to use CSD and
the other side says that they want SSD.
2022-11-16 19:56:52 +02:00
Vlad Zahorodnii
be3146873f
core: Drop OutputBackend::isReady()
...
OutputBackend has a concept of readiness. When the host compositor goes
down, the OutputBackend will be marked as not ready, and when it
reappears, the output backend will be marked ready again.
On the other hand, host compositor going down is a niche case, it's not
something that often happens and it's hard to justify adding more moving
parts to the startup code. It's easier to call initialize() and check
whether it fails rather than call initialize() and then monitor isReady.
Therefore, this change drops OutputBackend::isReady() to make startup
simpler.
2022-11-16 14:47:25 +00:00
Vlad Zahorodnii
6951d662d6
backends/wayland: Merge WaylandOutput and XdgShellOutput
2022-11-16 14:47:25 +00:00
Vlad Zahorodnii
d4676cceb3
backends/wayland: Linearize startup sequence
...
This change removes async bits from the startup code in the wayland
backend to make it simpler. The main motivation behind this change is to
refactor the wayland backend so OutputBackend::isReady() can be removed.
2022-11-16 14:47:25 +00:00
David Edmundson
319c6a4cfa
activation: Guard against not having any active window
...
If we have no active window we shouldn't call lastUsageSerial. We may as
well activate whatever client requested it.
2022-11-16 07:44:52 +00:00
l10n daemon script
18553417d3
GIT_SILENT Sync po/docbooks with svn
2022-11-16 02:27:43 +00:00
l10n daemon script
9e5c577fdb
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"
2022-11-16 01:56:45 +00:00
Vlad Zahorodnii
98b65bb447
Port a usage of QScopedPointer to std::unique_ptr
2022-11-16 00:38:05 +02:00
Xaver Hugl
34aa734c7b
plugins: use more std::unique_ptr
2022-11-15 15:28:37 +00:00
Xaver Hugl
738b04a364
libkwineffects: use more modern C++
2022-11-15 15:28:37 +00:00
Xaver Hugl
0f3ae0216c
kcmkwin/kwinscreenedges: use more modern C++
2022-11-15 15:28:37 +00:00
Xaver Hugl
95599d2ffd
ruleitem: use std::unique_ptr
2022-11-15 15:28:37 +00:00
Xaver Hugl
65e886cde2
backends/drm: support the panel orientation property
2022-11-15 13:25:19 +00:00
Vlad Zahorodnii
e58affc71b
wayland: Make debug console placeable
...
Since the debug console has Qt.BypassWindowManagerHint flag set, it
won't be placed or ensured that it stays in the work area.
On the other hand, unlike X11, kwin won't have problems if the debug
console is managed on wayland.
BUG: 453920
2022-11-15 14:11:18 +02:00
l10n daemon script
34960e8e74
GIT_SILENT Sync po/docbooks with svn
2022-11-15 02:19:02 +00:00
l10n daemon script
16de8cf19c
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"
2022-11-15 01:52:24 +00:00
Aleix Pol
ecbe29640c
screencast: Fix how we tell pipewire that the stream has been resized
...
We need to send sizes in a format that param buffers understand.
This fixes some glitches we'd see when sharing a window and resizing it.
Thanks Jan Grulich for pointing me in the right direction!
BUG: 461590
2022-11-14 13:40:13 +00:00
l10n daemon script
47449e7a52
GIT_SILENT Sync po/docbooks with svn
2022-11-14 02:12:05 +00:00
Xaver Hugl
5fd9871fa7
workspace: silence signed unsigned comparison warning
2022-11-13 14:32:16 +00:00
Xaver Hugl
704d1d639a
qBound -> std::clamp
2022-11-13 14:32:16 +00:00
Xaver Hugl
d265535f9b
qMin -> std::min
2022-11-13 14:32:16 +00:00
Xaver Hugl
b0b7c8b1d3
qMax -> std::max
2022-11-13 14:32:16 +00:00
Vlad Zahorodnii
f1f58a186d
plugins/nightcolor: Add a todo note reminding to remove legacy shortcut
2022-11-13 14:24:54 +02:00
l10n daemon script
2d5c98069c
GIT_SILENT Sync po/docbooks with svn
2022-11-13 02:09:12 +00:00
l10n daemon script
4cb06a3713
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"
2022-11-13 01:51:17 +00:00
l10n daemon script
28ed199576
GIT_SILENT Sync po/docbooks with svn
2022-11-12 02:09:52 +00:00
Arjen Hiemstra
cd65515ea6
scene: Store renderTargetRect as QRectF
...
This allows the projection matrix calculation to properly calculate the
screen edges without losing bits due to earlier rounding.
2022-11-11 13:10:41 +00:00
l10n daemon script
69feee0ce6
GIT_SILENT Sync po/docbooks with svn
2022-11-11 02:12:23 +00:00