25545 Commits (master)
 

Author SHA1 Message Date
Vlad Zahorodnii 2e42d7193d wayland: Assign tablet cursor surface role 1 year ago
Vlad Zahorodnii 51e8cfc41b wayland: Refactor SurfaceRole
After introducing SurfaceExtension, SurfaceRole has lost its commit()
function. It serves informative purpose now only.

Shell surface implementations don't have to inherit from SurfaceRole.

By making SurfaceRole act more like a value type, it's possible to fix
role handling in wl_pointer.set_cursor.
1 year ago
Vlad Zahorodnii 36a548ad9f Disable Xinerama specific workarounds for layer shell windows
They should not be needed for layer shell windows and in fact can break
some cases where things are expected to work properly.
1 year ago
Vlad Zahorodnii 67dcf53e80 autotests: Add more test cases in LayerShellV1WindowTest::testPlacementArea 1 year ago
l10n daemon script 9df7954b66 GIT_SILENT Sync po/docbooks with svn 1 year ago
Vlad Zahorodnii 7d626363e4 autotests: Remove old kernel checks
CI runners have been upgraded.
1 year ago
Xaver Hugl 32ae9dd7d1 libkwineffects: rename major and minor methods
There's "major" and "minor" defines that can get implicitly included, for
example with musl libc. To prevent that from breaking compilation, rename
the methods
1 year ago
Fushan Wen f0c8a0c482
plugins/qpa: implement platform accessibility
This allows screen readers to read window titles in a tabbox.

BUG: 472643
FIXED-IN: 5.27.9
1 year ago
l10n daemon script 1fea924c34 GIT_SILENT Sync po/docbooks with svn 1 year ago
Ser Freeman 1236e3e83b effects/maximize: Set oldGeometry only on windowMaximizedStateAboutToChange
Since there is now exist the signal right before maximize, use it to
set oldGeometry instead of storing previous values every time with
windowFrameGeometryChanged.

This fixes the effect under Wayland.
1 year ago
Vlad Zahorodnii 6dd6e176e3 Move X11Compositor and WaylandCompositor in their own files 1 year ago
Vlad Zahorodnii 14ab38b596 composite.h -> compositor.h 1 year ago
Vlad Zahorodnii 9cf6011ba4 autotests: Don't be so paranoid about compositing type
In many cases it's irrelevant, what we care about is whether given effect
is loaded and performs its function. So remove these paranoid checks
except the tests where it's important to use OpenGL compositing.
1 year ago
l10n daemon script faea125299 GIT_SILENT Sync po/docbooks with svn 1 year ago
Xaver Hugl 9dd236c87b plugins/qpa: use a surfaceless context for offscreen surfaces
According to Qt documentation, offscreen surfaces aren't actually for rendering,
so using a surffaceless context is ok
1 year ago
Xaver Hugl c0e44378ca libkwineffects: move render time query check to OpenGlContext 1 year ago
Xaver Hugl e401f3ff11 libkwineffects: drop gallium detection
It's not used anywhere
1 year ago
Xaver Hugl 6d35a27f90 libkwineffects: drop checks for GLSL and NPOT
Instead, creating contexts that miss these features should fail directly,
making KWin fall back to software rendering.
While this commit also drops workarounds for broken drivers that do software
emulation for features we need, such workarounds belong into these drivers and
the user can still manually turn off compositing if needed.
1 year ago
Xaver Hugl 0a58bd04d5 libkwineffects: don't query OpenGL extensions twice 1 year ago
Xaver Hugl ed02051a4a libkwineffects: move x server version query to xcb utils 1 year ago
Xaver Hugl 05a389c3b3 libkwineffects: move version to string functions to the Version class 1 year ago
Xaver Hugl a5df88b0de libkwineffects: move linux kernel version query out of GLPlatform
It has nothing to do with OpenGL
1 year ago
Xaver Hugl e0c7878357 libkwineffects: move version into its own files 1 year ago
Xaver Hugl 5ce02c6811 libkwineffects: drop limited glsl detection
It's not actually used anywhere
1 year ago
Xaver Hugl 451947b282 backends/x11/standalone: extract glx context into a separate class
This commit also drops most of the code around checks for direct rendering. If
direct rendering isn't supported, creating the OpenGL context will now simply fail,
achieving the same effect
1 year ago
Xaver Hugl f2dd1b3471 libkwineffects: align variable naming to the rest of KWin 1 year ago
Xaver Hugl 27f90476b4 libkwineffects: rename kwingl* files to gl* 1 year ago
Vlad Zahorodnii a51277f88a wayland: Remove QPointer from public SurfaceInterface api
QPointer is not meant for return values. There are also performance
considerations to avoid returning QPointer.
1 year ago
Vlad Zahorodnii dcadf24e64 wayland: Introduce surface state locking capabilities
In certain cases it can be useful to delay applying a surface commit. As
an example, the compositor may wait until the committed graphics buffer
is ready for reading to avoid stalling its graphics pipeline.

This change introduces basic surface state locking capabilities and
ports some surface extensions to new helpers to manage associated state.
1 year ago
Vlad Zahorodnii 60251bc1e4 wayland: Properly track subsurface position in parent surface state
It's a prerequisite for allowing to delay applying surface state.
1 year ago
Vlad Zahorodnii 25825f3970 wayland: Move subsurface stack in its own struct 1 year ago
Vlad Zahorodnii a101bc3628 wayland: Property propagate modifier SurfaceState fields
Currently, committed fields are contiguously accumulated. With this, it
will be possible to see what fields have been committed when the
committed() signal is emitted.
1 year ago
Vlad Zahorodnii 5fbdd0decc wayland: Refactor xdg-shell handling
It would be nice if xdg-surface and xdg-surface role state are in a
single object so it's easier to stash them. This change refactors
xdg-shell handling to allow that.

xdg-surface state now belongs to xdg-toplevel or xdg-popup state.
1 year ago
Vlad Zahorodnii 1e255265c3 wayland: Post protocol error if popup parent has no surface role 1 year ago
Kai Uwe Broulik dc2965efad scene: Set preferred output scale for DND icon
Otherwise the icon will have a scale of 1, leading to blurry
drag pixmaps on Wayland.
1 year ago
Nate Graham 8727fcb752 Remove versioning from PlasmaCore module imports
It's unneeded in Qt6 and can cause subtle issues.
1 year ago
Xaver Hugl 76c3e57bef backends/drm: allow cursor updates to be done independently of the scene
This way the scene doesn't get rendered when you move the cursor
1 year ago
Xaver Hugl e9d3d228bb libkwineffects/kwinglutils: always enable error message printing
It makes no sense to lock that behind an env var. If there's errors those
should always be printed so that we know about them without further investigation
1 year ago
Xaver Hugl 69187e86ab libkwineffects/glvertexbuffer: remove color handling
It's a remnant of OpenGL 1 times. If some piece of code wants a specific
color, it should set the uniform of the used shader itself
1 year ago
Xaver Hugl 43cbd2834c libkwineffects/glvertexbuffer: don't crash if mapping fails 1 year ago
Xaver Hugl ab3e517d8a libkwineffects/glvertexbuffer: simplify setAttribLayout 1 year ago
Xaver Hugl 617f3b9000 libkwineffects/glvertexbuffer: add a better helper for uploading vertices 1 year ago
Xaver Hugl cbe8d21f07 libkwineffects: split kwinglutils into multiple files
A single 2000+ line file isn't great to work with
1 year ago
Xaver Hugl 43b9dc7eee libkwineffects/kwinglutils: use std::bitset instead of a custom implementation 1 year ago
Xaver Hugl e5f9e54944 libkwineffects/kwinglutils: simplify index buffer implementation 1 year ago
l10n daemon script c59d0aafa2 GIT_SILENT Sync po/docbooks with svn 1 year ago
Kai Uwe Broulik 23bbc75b12 plugins/{blur,contrast}: Take into account window opacity
Fixes excessive blur/contrast behind a semi-transparent window.
1 year ago
Aleix Pol Gonzalez 3d2a3de07e wayland: Release all keys upon keyboard leaving
Biggest most annoying symptom was that the window was rendered unusable
after alt+tab, but any other combination is also problematic.
1 year ago
Mikhail Vinogradov 82be16df29 Try to refresh textInput active focus status 1 year ago
Kai Uwe Broulik 861105248d screenedge: Don't trigger when a mouse button is pressed
Avoids accidentally triggering an edge when dragging a scroll bar or
text selection all the way to the screen edge.

Special case for moving windows, as you want to be able to drag
a window to an edge to switch virtual desktops.
1 year ago