]>
git.tdb.fi Git - geometrycompositor.git/log
summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
Mikko Rasa [Mon, 14 Dec 2015 00:55:46 +0000 (02:55 +0200)]
Get rid of the ugly debugging colors
Mikko Rasa [Sun, 13 Dec 2015 19:02:31 +0000 (21:02 +0200)]
Render root pixmap if available
Mikko Rasa [Sun, 13 Dec 2015 16:52:19 +0000 (18:52 +0200)]
Synchronize after subtracting damage from windows
The change in
19993ce wasn't enough to completely avoid the race
condition, most likely because of direct rendering.
Mikko Rasa [Sun, 13 Dec 2015 16:32:32 +0000 (18:32 +0200)]
Some tweaks to GL context usage
Mikko Rasa [Sun, 13 Dec 2015 16:24:31 +0000 (18:24 +0200)]
Defer window pixmap and mask updates until rendering time
Interactive operations may result in a large number of changes within a
single frame. Processing each one separately is a waste of time since
only the last results will be visible. Additionally it's easier to make
sure the GL context is available.
Mikko Rasa [Sun, 13 Dec 2015 16:19:50 +0000 (18:19 +0200)]
Don't update mask on ConfigureNotify
There's always a separate ShapeNotify event to signal shape changes.
Mikko Rasa [Sun, 13 Dec 2015 16:18:20 +0000 (18:18 +0200)]
Improve event handling
Mikko Rasa [Sun, 13 Dec 2015 15:47:20 +0000 (17:47 +0200)]
Minor cosmetic fixes
Mikko Rasa [Sun, 13 Dec 2015 15:46:03 +0000 (17:46 +0200)]
Mask out transparent parts of shaped windows
Mikko Rasa [Sun, 13 Dec 2015 15:26:29 +0000 (17:26 +0200)]
Be more efficient when finding the window for a damage event
Mikko Rasa [Sun, 13 Dec 2015 12:58:58 +0000 (14:58 +0200)]
Add a helper function for creating textures
Mikko Rasa [Sun, 13 Dec 2015 12:27:12 +0000 (14:27 +0200)]
Clear damage before rendering the window
This avoids a race condition where the application might render to the
window after it has been rendered but before the damage is cleared.
Mikko Rasa [Sun, 13 Dec 2015 12:12:44 +0000 (14:12 +0200)]
Simplify some formulas a bit
Mikko Rasa [Sun, 13 Dec 2015 11:53:59 +0000 (13:53 +0200)]
Use a more 3d-y approach for generating the monitor mesh
It's easier to grasp, especially when more corrections are implemented.
The coordinates for cylinder correction are now spaced evenly by angle
rather than X coordinate. This also fixes incorrect texture coordinates.
Mikko Rasa [Sat, 12 Dec 2015 18:13:31 +0000 (20:13 +0200)]
Don't try to update vertices of disabled monitors
Mikko Rasa [Sat, 12 Dec 2015 17:10:48 +0000 (19:10 +0200)]
Fix correction counting in the control program
Mikko Rasa [Sat, 12 Dec 2015 17:07:18 +0000 (19:07 +0200)]
Invert the Y coordinate for monitors as well
Mikko Rasa [Sat, 12 Dec 2015 16:21:48 +0000 (18:21 +0200)]
Implement a control interface using properties on the root window
Mikko Rasa [Sat, 12 Dec 2015 16:20:42 +0000 (18:20 +0200)]
Unbind the vertex array after rendering
Otherwise buffer updates could inadvertently affect the last used vertex
array.
Mikko Rasa [Sat, 12 Dec 2015 14:53:00 +0000 (16:53 +0200)]
Minor refactoring to initialize_monitor
Mikko Rasa [Sat, 12 Dec 2015 14:37:53 +0000 (16:37 +0200)]
Implement vertical keystone and cylinder corrections
There's no configuration interface yet.
Mikko Rasa [Sat, 12 Dec 2015 13:26:09 +0000 (15:26 +0200)]
Avoid unsigned errors when a window goes off the bottom of the screen
Mikko Rasa [Sat, 12 Dec 2015 12:25:01 +0000 (14:25 +0200)]
Cleanup fixes
Mikko Rasa [Sat, 12 Dec 2015 12:14:51 +0000 (14:14 +0200)]
Render each monitor separately
Mikko Rasa [Sat, 12 Dec 2015 11:26:33 +0000 (13:26 +0200)]
Some more refactoring
Mikko Rasa [Sat, 12 Dec 2015 11:17:02 +0000 (13:17 +0200)]
Some refactoring of OpenGL code
In preparation for geometry correction
Mikko Rasa [Sat, 12 Dec 2015 11:16:17 +0000 (13:16 +0200)]
Move shader program linking to a separate function
Mikko Rasa [Sat, 12 Dec 2015 10:42:59 +0000 (12:42 +0200)]
Make the code compile cleanly in C90 mode
Mikko Rasa [Fri, 11 Dec 2015 17:26:09 +0000 (19:26 +0200)]
Process ConfigureNotify events
All of the basic functionality should be done now, and the compositor is
in a usable state. Rendering of non-rectangular windows is still buggy.
Mikko Rasa [Fri, 11 Dec 2015 17:25:41 +0000 (19:25 +0200)]
Don't refresh non-dirty screens
Mikko Rasa [Fri, 11 Dec 2015 17:25:04 +0000 (19:25 +0200)]
Set the dirty flags on most events, but only if the window was viewable
Mikko Rasa [Fri, 11 Dec 2015 17:24:23 +0000 (19:24 +0200)]
Very minor refactoring
Mikko Rasa [Fri, 11 Dec 2015 16:56:04 +0000 (18:56 +0200)]
React to ReparentNotify events
When a reparenting window manager is in use, new windows appear on the
root window first and immediately get reparented. We must unredirect
them so the contents appear in the window manager frame.
Mikko Rasa [Fri, 11 Dec 2015 16:52:31 +0000 (18:52 +0200)]
Process DestroyNotify events
Mikko Rasa [Fri, 11 Dec 2015 16:47:59 +0000 (18:47 +0200)]
Fix the shutdown sequence to avoid memory leaks
Mikko Rasa [Fri, 11 Dec 2015 16:47:17 +0000 (18:47 +0200)]
Fix uninitialized variables
Mikko Rasa [Fri, 11 Dec 2015 16:35:20 +0000 (18:35 +0200)]
Ignore errors from the X server
Events don't provide enough information to perform all necessary
operations atomically, so some errors are unavoidable.
Mikko Rasa [Fri, 11 Dec 2015 16:14:02 +0000 (18:14 +0200)]
Remove server grabbing code
It causes significant slowdown with some applications, and I haven't
actually noticed any tearing without it.
Mikko Rasa [Fri, 11 Dec 2015 16:12:59 +0000 (18:12 +0200)]
Account for border when drawing windows
Mikko Rasa [Fri, 11 Dec 2015 16:09:12 +0000 (18:09 +0200)]
Refresh the screen only when there's no events to process
Mikko Rasa [Fri, 11 Dec 2015 15:32:47 +0000 (17:32 +0200)]
Use the shape extension to let input events through the overlay window
Mikko Rasa [Fri, 11 Dec 2015 15:17:55 +0000 (17:17 +0200)]
Initial, marginally functional version
Can redirect and display windows, but does not react to configure
events or many other things.