]> git.tdb.fi Git - geometrycompositor.git/log
geometrycompositor.git
9 years agoDon't update mask on ConfigureNotify
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.

9 years agoImprove event handling
Mikko Rasa [Sun, 13 Dec 2015 16:18:20 +0000 (18:18 +0200)]
Improve event handling

9 years agoMinor cosmetic fixes
Mikko Rasa [Sun, 13 Dec 2015 15:47:20 +0000 (17:47 +0200)]
Minor cosmetic fixes

9 years agoMask out transparent parts of shaped windows
Mikko Rasa [Sun, 13 Dec 2015 15:46:03 +0000 (17:46 +0200)]
Mask out transparent parts of shaped windows

9 years agoBe more efficient when finding the window for a damage event
Mikko Rasa [Sun, 13 Dec 2015 15:26:29 +0000 (17:26 +0200)]
Be more efficient when finding the window for a damage event

9 years agoAdd a helper function for creating textures
Mikko Rasa [Sun, 13 Dec 2015 12:58:58 +0000 (14:58 +0200)]
Add a helper function for creating textures

9 years agoClear damage before rendering the window
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.

9 years agoSimplify some formulas a bit
Mikko Rasa [Sun, 13 Dec 2015 12:12:44 +0000 (14:12 +0200)]
Simplify some formulas a bit

9 years agoUse a more 3d-y approach for generating the monitor mesh
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.

9 years agoDon't try to update vertices of disabled monitors
Mikko Rasa [Sat, 12 Dec 2015 18:13:31 +0000 (20:13 +0200)]
Don't try to update vertices of disabled monitors

9 years agoFix correction counting in the control program
Mikko Rasa [Sat, 12 Dec 2015 17:10:48 +0000 (19:10 +0200)]
Fix correction counting in the control program

9 years agoInvert the Y coordinate for monitors as well
Mikko Rasa [Sat, 12 Dec 2015 17:07:18 +0000 (19:07 +0200)]
Invert the Y coordinate for monitors as well

9 years agoImplement a control interface using properties on the root window
Mikko Rasa [Sat, 12 Dec 2015 16:21:48 +0000 (18:21 +0200)]
Implement a control interface using properties on the root window

9 years agoUnbind the vertex array after rendering
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.

9 years agoMinor refactoring to initialize_monitor
Mikko Rasa [Sat, 12 Dec 2015 14:53:00 +0000 (16:53 +0200)]
Minor refactoring to initialize_monitor

9 years agoImplement vertical keystone and cylinder corrections
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.

9 years agoAvoid unsigned errors when a window goes off the bottom of the screen
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

9 years agoCleanup fixes
Mikko Rasa [Sat, 12 Dec 2015 12:25:01 +0000 (14:25 +0200)]
Cleanup fixes

9 years agoRender each monitor separately
Mikko Rasa [Sat, 12 Dec 2015 12:14:51 +0000 (14:14 +0200)]
Render each monitor separately

9 years agoSome more refactoring
Mikko Rasa [Sat, 12 Dec 2015 11:26:33 +0000 (13:26 +0200)]
Some more refactoring

9 years agoSome refactoring of OpenGL code
Mikko Rasa [Sat, 12 Dec 2015 11:17:02 +0000 (13:17 +0200)]
Some refactoring of OpenGL code

In preparation for geometry correction

9 years agoMove shader program linking to a separate function
Mikko Rasa [Sat, 12 Dec 2015 11:16:17 +0000 (13:16 +0200)]
Move shader program linking to a separate function

9 years agoMake the code compile cleanly in C90 mode
Mikko Rasa [Sat, 12 Dec 2015 10:42:59 +0000 (12:42 +0200)]
Make the code compile cleanly in C90 mode

9 years agoProcess ConfigureNotify events
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.

9 years agoDon't refresh non-dirty screens
Mikko Rasa [Fri, 11 Dec 2015 17:25:41 +0000 (19:25 +0200)]
Don't refresh non-dirty screens

9 years agoSet the dirty flags on most events, but only if the window was viewable
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

9 years agoVery minor refactoring
Mikko Rasa [Fri, 11 Dec 2015 17:24:23 +0000 (19:24 +0200)]
Very minor refactoring

9 years agoReact to ReparentNotify events
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.

9 years agoProcess DestroyNotify events
Mikko Rasa [Fri, 11 Dec 2015 16:52:31 +0000 (18:52 +0200)]
Process DestroyNotify events

9 years agoFix the shutdown sequence to avoid memory leaks
Mikko Rasa [Fri, 11 Dec 2015 16:47:59 +0000 (18:47 +0200)]
Fix the shutdown sequence to avoid memory leaks

9 years agoFix uninitialized variables
Mikko Rasa [Fri, 11 Dec 2015 16:47:17 +0000 (18:47 +0200)]
Fix uninitialized variables

9 years agoIgnore errors from the X server
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.

9 years agoRemove server grabbing code
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.

9 years agoAccount for border when drawing windows
Mikko Rasa [Fri, 11 Dec 2015 16:12:59 +0000 (18:12 +0200)]
Account for border when drawing windows

9 years agoRefresh the screen only when there's no events to process
Mikko Rasa [Fri, 11 Dec 2015 16:09:12 +0000 (18:09 +0200)]
Refresh the screen only when there's no events to process

9 years agoUse the shape extension to let input events through the overlay window
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

9 years agoInitial, marginally functional version
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.