24657 Commits (a9a58b1ed50769532e163013923ad70710f77fdd)
 

Author SHA1 Message Date
l10n daemon script 1cb5614fc1 GIT_SILENT Sync po/docbooks with svn 1 year ago
Aleix Pol Gonzalez ef6612ff77 screencast: Improve how we communicate that a frame has just cursor info
Set the SPA_CHUNK_FLAG_CORRUPTED flag to tell clients to ignore the frame.

See https://github.com/obsproject/obs-studio/issues/8630
1 year ago
David Edmundson f03af5eff5 libkwineffects: Set format on the main OffscreenQuickView
When showing the window RHI will realise the window has no underlying
platform window and create a temporary offscreen surface, different from
the offscreen surface we'll eventually be rendering into. This will use
the format of the main window.

If this offscreen surface format does not match the format of the
context we can fail in makeCurrent calls.
1 year ago
Jorge Barroso Barea e68e92bcbd kcms: Move footer actions to headers
This yields a more modern appearance and consistency with other KCMs
that have already adopted this style.
1 year ago
l10n daemon script 575831a331 GIT_SILENT Sync po/docbooks with svn 1 year ago
Alexander Lohnau 38758172f3 plugins/kpackage: Refactor CMake code a bit 1 year ago
Alexander Lohnau d32f9be5af plugins/kpackage: Rename metadata json files
Having them this long and the cpp file very short doesn't really make sense.

Also, we no longer install those files, but embed then in the C++ plugins
1 year ago
Alexander Lohnau 4ed3522e60 Remove author data, name and description from package metadata files
We do not display this data anywhere and do not use it internally either.

Task: https://phabricator.kde.org/T15452
1 year ago
Alexander Lohnau 3c2ac3c901 plugins/kpackage: Simplify CMake code
Just a simple wrapper that creates the plugin and links KPackage
1 year ago
Alexander Lohnau f88b80e90e plugins/kpackage: Make plugin cpp file only, add missing Q_Object macro
The macro is not strictly needed, but it simplifies debugging due to us having
the classname from the staticMetaObject available
1 year ago
Alexander Lohnau 017da14444 plugins/kpackage: Modernize code using initializer list syntax 1 year ago
Alexander Lohnau 7e76525f6e plugins/kpackage: Call file/dir definitions without translations
Depends on https://invent.kde.org/frameworks/kpackage/-/merge_requests/74
1 year ago
l10n daemon script 6a93514220 GIT_SILENT Sync po/docbooks with svn 1 year ago
Vlad Zahorodnii baac61b8e5 Fix calling virtual methods in Window destructor
When a window is removed from the deleted list, some effects can perform
cleanup. In its turn, it means that they can call some Window methods.

If those methods happen to be virtual, kwin can crash because calling
virtual methods in the destructor of a base class has undefined behavior.
1 year ago
Vlad Zahorodnii 8c87cd913e libkwineffects: Add interface include dirs
libkwineffects has been moved in a subdirectory to avoid including the
"toplevel" include dir in interface include dirs.
1 year ago
l10n daemon script dacc9a65fd GIT_SILENT Sync po/docbooks with svn 1 year ago
Xaver Hugl 86a9796a5a kwinglutils: bind texture in GLTexture::render
... instead of doing it everywhere that the method is used
1 year ago
l10n daemon script 52361936e7 GIT_SILENT Sync po/docbooks with svn 1 year ago
l10n daemon script 8b812ecb7f GIT_SILENT Sync po/docbooks with svn 1 year ago
Vlad Zahorodnii 7af928aae4 Drop Window::tabTo() 1 year ago
Vlad Zahorodnii 1041794e41 Adjust some comments in Window
Neither Window::frameMargins() nor Window::wantsShadowToBeRendered() are
virtual methods, so remove "Default implementation ..." comments.
1 year ago
Vlad Zahorodnii 70353d399d Drop Window::inputGeometry
It's been mostly superseded by Window::hitTest().
1 year ago
Vlad Zahorodnii 3763e4f84b wayland: Interpret input panel's input shape as the window geometry
maliit creates a fullscreen overlay window which doesn't go along well
with out geometry abstractions. For example, raw frame geometry can't be
used to displace normal windows otherwise they will be pushed offscreen.

Some of the maliit quirks are leaked in the InputMethod class. After
extending the lifetime of the InputPanelV1Window, they can cause
problems.

In order to make code in InputMethod more intuitive and encapsulate
maliit quirks, this change makes InputPanelV1Window interpret the
bounding rectangle of the input shape as the window geometry. This
lets us get rid of the hack in inputGeometry() too.

The size checks in Mode::VirtualKeyboard case have been removed because
they should be irrelevant. When reposition() is called, the wl_surface
is mapped, so its size cannot be 0x0.
1 year ago
Vlad Zahorodnii 4e8214e69e Drop custom inputGeometry and inputTransformation in x11 and xdg-shell windows
Effectively, X11Window and XdgSurfaceWindow use same stuff. Using the
buffer geometry should be fine in InternalWindow too.
1 year ago
Vlad Zahorodnii 2233190e67 Update pointer and tablet focus when focused window is closed
Prior to dropping Deleted, we implicitly relied on the fact that the
QPointer storing the focused window will be reset to null when the
window is closed so we didn't include any cleanup logic.

After dropping Deleted and extending the lifetime of the original
window, it's no longer the case and we have to explicitly handle closing
the window otherwise kwin can encounter unexpected cases.
1 year ago
Jan Grulich 75c7689f67 Screencast: fix renegotiation when client fails to use DMABuf modifiers
When client fails to import a DMABuf with a certain modifier, it will
remove it from offerings on his side and offer a new set of modifiers
for us to use. In case the list ends up being small enough that even we
won't be able to use any of the modifiers, we would still keep these
modifiers on our list and offering them to the client. With this we
would end up in a loop renegotiating and never actually fallback to use
MemFD buffers instead. We should also offer modifier-less DMABufs as
in the past. Using these we just need to avoid offering them as they
should be used as the last option.

BUG: 448839
1 year ago
Vlad Zahorodnii 4de69f2ef7 wayland: Close internal popups instead of hiding
Hiding the QWindow handle confuses QWidget, which results in user
actions menu not showing up on second launch. Might be a Qt bug.

On the other hand, it makes sense to close dismissed popups, so let's do
it.
1 year ago
Vlad Zahorodnii 4578cf352b Revert "Revert "wayland: Update shadow immediately""
This reverts commit 08e392f368.

It appears like with RHI, user code can't mess with its current opengl
context, so let's update shadows immediately.

Just to be sure, shadow cleanup logic in ShadowItem has been hardened to
avoid disturbing the current opengl context unnecessarily.

BUG: 467926
1 year ago
Vlad Zahorodnii 072d5ff045 scene: Avoid changing current opengl context if the shadow has no texture
If there's nothing to be destroyed, do nothing.
1 year ago
Vlad Zahorodnii fd5807ecb7 backends/drm: Fix enabled state
"props->enabled" checks whether std::optional has a value, that's not
what we want.
1 year ago
Vlad Zahorodnii a04609b46f wayland: Fix output order sanitization in kde-output-management-v2
We need to remove disabled outputs.
1 year ago
Xaver Hugl 4f48258269 kscreenintegration: don't access optionals that may be missing a value 1 year ago
Xaver Hugl f70be829c6 backends/drm: don't access nullptr output configs 1 year ago
Vlad Zahorodnii 050336e421 Minor cosmetic improvements in Window
This change reorders some things in Window header so related things are
kept spatially close to make the code easier to navigate.
1 year ago
Alexander Lohnau fe935c0dc8 Adjust to new KPackage namespace for structures
See https://invent.kde.org/frameworks/kpackage/-/merge_requests/73
1 year ago
l10n daemon script fe5b9961cf GIT_SILENT Sync po/docbooks with svn 1 year ago
Aleix Pol d0b87a900f screencasting: Add an autotest
Adds an autotest that makes sure a screencasting stream works as
expected.
Adds an optional dependency to KPipeWire only effective to run the test.
1 year ago
Aleix Pol 7a6c2ce36f screencasting: Support opaque drm video formats
Fixes a warning on the CI
1 year ago
Aleix Pol aaae80a569 backends/virtual: Fix format
While we are using GL_RGB8, it seems to be using 32bit pixels.
1 year ago
Vlad Zahorodnii abb9b0d2cd Reshuffle desktop and activity related code in Window
Keep virtual desktop and activity related code spatially close to
improve code readability.
1 year ago
Vlad Zahorodnii 712a23bd59 Move Window::desktop to X11Window
Window::desktop() is obsolete. On the other hand, X11 doesn't support
having a window on several virtual desktops, so we still need it. As a
compromise, this change moves it to X11Window instead.
1 year ago
Vlad Zahorodnii 0d11a09010 tabbox: Port away from Window::desktop 1 year ago
Vlad Zahorodnii 2c12a6a417 wayland: Avoid updating outputs of a closed window
BUG: 467954
1 year ago
Xaver Hugl 66495f9c79 wayland/outputmanagement: don't access nullptr changesets
Since 6b8e08dfa9, changesets can be nullptr
1 year ago
Vlad Zahorodnii 101e38527d kcms: Port away from org.kde.kcm.ConfigModule
org.kde.kcm.ConfigModule doesn't exist anymore. Its replacement lives in
org.kde.kcmutils module now.

Note that the replacement has no "quickHelp" property, so it's been
removed. While on this, also drop "ConfigModule.buttons". It still
exists in the new ConfigModule but the default buttons should be fine.
1 year ago
Vlad Zahorodnii 73c26baab4 scripting: Make WindowModel.desktop property return list of desktops
The X11 desktop id property is obsolete.
1 year ago
Vlad Zahorodnii aebc361c45 Drop Window::isOnDesktop(int) 1 year ago
Vlad Zahorodnii e306e1b287 tabbox: Port away from legacy desktop ids 1 year ago
Vlad Zahorodnii 222b23eaa3 Adjust to kdecoration api changes 1 year ago
Vlad Zahorodnii d76527e7e6 Port window cascading from X11 desktop ids to VirtualDesktop 2 years ago