25324 Commits (4b217483a0bd15839380346cd3556d6b85d7ded6)
 

Author SHA1 Message Date
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
Vlad Zahorodnii 8470ee03dc Drop Compositor::scheduleRepaint()
Its the only user is the standalone X11 backend, but it can use
RenderLoop.
1 year ago
Vlad Zahorodnii 79cb5fc6e2 backends/x11: Port away from Compositor::scheduleRepaint()
Compositor::scheduleRepaint() needs some knowledge of the composited
layers, which would be great to get rid of to split wayland and x11
compositing bits.
1 year ago
l10n daemon script b88e84b120 GIT_SILENT Sync po/docbooks with svn 1 year ago
l10n daemon script 4fe176cb94 GIT_SILENT Sync po/docbooks with svn 1 year ago
Alexander Lohnau 91f027be51 Specify KPackageStructure instead of KPackageType in knsrc files
The latter is removed in KF6

CCBUG: 474026
1 year ago
Kai Uwe Broulik dadd7bb545 debug_console: Support KWin::Window* property type
Display the window caption and class name (safe for the icon) like is done
with the windows themselves.

Eases debugging properties, such as "transientFor".
1 year ago
Nicolas Fella 64cc884029 Use keyword signature for target_link_libraries call 1 year ago
Vlad Zahorodnii b78258e464 backends/drm: Guard against null crtc in DrmPipeline::updateCursor
The null check was lost in fe1d4ffbc5.

BUG: 473963
1 year ago
Nate Graham 07773512c8 tabbox/switchers/thumbnail_grid: remove unnecessary second Math.round()
Fixup for 996730d3
1 year ago
Nate Graham 996730d310 tabbox/switchers/thumbnail_grid: refine icon positioning
This way it won't overlap the label when using a font with unusual
metrics.

BUG: 473690
1 year ago
Xaver Hugl 1d1981b0f4 backends/drm: make buffer age environment variable work again
It can be very useful for debugging
1 year ago
Xaver Hugl 1c18d11206 backends/drm: replace drmModeAtomicCommit with a custom implementation
drmModeAtomicCommit does additional allocations and sorting that KWin doesn't
use or need
1 year ago
Vlad Zahorodnii dee8a3b3a7 Clear decoration focus when window closes
If the window closes, we need to reset the focused decoration object.

BUG: 473244
1 year ago
Kai Uwe Broulik 5572e390c4 XdgToplevelWindow: Consider app responsive only if sent ping was received
> Pass the serial specified in the event back to the compositor by sending
> a "pong" request back with the specified serial.
1 year ago
l10n daemon script ef23d01502 GIT_SILENT Sync po/docbooks with svn 1 year ago
Kai Uwe Broulik f9e390c716 window: Replay move window action if window isn't movable
Otherwise, when using Alt as modifier for moving windows, the tabbox window
cannot be clicked because Alt is held down during Alt+Tab, which would try
to initiate a window move but the window isn't actually movable, so ends up
doing nothing.

It also allows to interact with Plasma popups, which are also immovable,
while the modified key is pressed.
1 year ago
David Edmundson 10ed34bc9d Avoid painting unchanged scene layers
Currently when we move the mouse the one render loop triggers a repaint.
When the cursor layer needs a new update we end up in the compositor
repainting the main content.

Even though painting should mostly no-op it still goes through all
existing items and effects to collect damage, still potentially making
the GL context current which could stall. A waste when we know we
haven't got anything to do. It's enough to cause noticable mouse lag on
some hardware.

Co-authored-by: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
1 year ago
Xaver Hugl fe1d4ffbc5 move cursor rendering from the backends to the compositor 1 year ago
l10n daemon script 8d86f1eb54 GIT_SILENT Sync po/docbooks with svn 1 year ago
Alexander Lohnau 40be656eed Adjust to changed signature of kcoreaddons_target_static_plugins
Depends on https://invent.kde.org/frameworks/kcoreaddons/-/merge_requests/360
1 year ago
l10n daemon script ed8437ed0d GIT_SILENT Sync po/docbooks with svn 1 year ago