Commit Graph

260 Commits

Author SHA1 Message Date
Kim Woelders 5ce609cca7 Change formatting style
No tabs, more like K&R.
Also switch to indent 2.2.13.
2023-11-26 10:03:45 +01:00
Kim Woelders 49d9d22af8 Build with cast-align=strict, fix warnings 2023-10-24 14:43:50 +02:00
Kim Woelders f89e5844cd CM: Don't do _NET_WM_CM_Sn acquisition in window mode 2023-10-23 05:30:31 +02:00
Kim Woelders a6a8cb529d FX: Fix clipping with compositing enabled some more
Reported by Milan Maljković.
2023-09-23 15:44:55 +02:00
Kim Woelders 711e66fb86 CM: Check if root subwindow redirection succeeds
Disable compositing if not.

If we ignore that the redirection does not succeed e16 will behave
badly.
2023-09-23 11:05:27 +02:00
Kim Woelders 394d9374ff CM: Rearrange initialization sequence
First acquire _NET_WM_CM_Sn, should/may make other CM go away.

Then do the root subwindow redirection. Should succeed if other CM does
its un-redirection.
2023-09-23 07:18:49 +02:00
Kim Woelders 53b82bbd26 Some include tweaks 2022-12-21 20:05:56 +01:00
Kim Woelders dc5db9e4a1 CM: Adjust shadowing conditions some more
Re-enable sharp shadows on shaped windows.
Should be ok now that sharp shadowing shaped windows has been fixed.
2022-04-29 20:01:17 +02:00
Kim Woelders 5b071a0e26 CM: Fix sharp shadows when window is shaped
This once did work. I wonder when it broke.
2022-04-29 19:53:08 +02:00
Kim Woelders a41b220904 CM: Adjust shadowing conditions
Treat all (non-off) shadow modes alike
Disable if shaped (OR too)
Disable if fullscreen (regular clients)
2022-03-30 22:18:20 +02:00
Kim Woelders 83a13eb6bf CM: Fix initial shaped state on OR windows 2022-03-30 22:18:20 +02:00
Kim Woelders 34d1de3984 FX: Fix cleanup with compositing enabled 2021-05-07 07:12:17 +02:00
Kim Woelders 726bb9ea13 FX: Fix clipping with compositing enabled 2021-05-07 07:12:11 +02:00
Kim Woelders 8170ada68c FX: Make it work in regular compositing mode 2021-05-07 07:11:32 +02:00
Kim Woelders f18f394e35 Introduce HAVE_COMPOSITE_OVERLAY_WINDOW 2021-05-07 07:11:09 +02:00
Kim Woelders 358b60baf9 Introduce E_ARRAY_SIZE() and MOD_ITEMS()
Just a bit tidier.
2021-03-19 06:36:46 +01:00
Kim Woelders d46d0aec05 CM: Fix damage corner case (reparenting fading-out window) 2020-09-09 16:23:05 +02:00
Kim Woelders 7199436ec5 CM: Fix switching fadeout to fadein
Happens when mousing over pager with zoom enabled.
2020-09-09 16:23:05 +02:00
Kim Woelders c839d0e14a src: Fix clang-analyzer complaints
arrange.c: Highly unlikely, maybe impossible situations

backgrounds.c: False positive (I think)

dialog.c: Fix memleak/segv on realloc failure

focus.c: False positive
	ewin should never be NULL with FOCUS_EWIN_NEW

main.c: False positive
	eoptarg will always be set if argument requires option

menus.c: Fix memleak on malloc failure

session.c: Fix dead assignment

stacking.c: False positive
	Changed code is nicer though

pager.c: False positive
	ewin would never be NULL if hiwin was NULL
	But rearrange for clarity anyway

ecompmgr.c: Avoid bogus issues
2020-01-29 16:43:01 +01:00
Kim Woelders 88dba1cfff Re-indent with indent-2.2.12 2020-01-23 21:30:02 +01:00
Kim Woelders 8f1bfc4f53 Fix warnings occurring in various situations 2020-01-23 20:29:05 +01:00
Kim Woelders b9a9946a0a Update copyright to 2018 2018-12-22 11:44:22 +01:00
Kim Woelders 22b5e58dcd Refactor/rename/use _EFREE type macros 2018-12-22 11:44:22 +01:00
Kim Woelders 4b319d794b Wrap some calls to XRenderCreatePicture(). 2015-01-25 00:05:10 +01:00
Kim Woelders 72328b12ab CM: Reorder start/stop details. 2015-01-24 15:50:15 +01:00
Kim Woelders 88e48caf47 CM: Fadeout tweak. 2015-01-24 15:37:56 +01:00
Kim Woelders 345a7a1d7d CM: Cosmetics. 2015-01-24 15:37:56 +01:00
Kim Woelders 9c31fe29ed Clean up header file inclusion order.
Fixes building with e.g. -std=c99 and c11 by always including config.h
(which defines _GNU_SOURCE) first.
2015-01-17 19:33:42 +01:00
Kim Woelders 168ef48fbc Minor fading animation tweak.
Keep fading animator pointer around to avoid having to look it up later.
2015-01-10 18:56:58 +01:00
Kim Woelders 94714f9b72 Initial CM/Present experimental support.
Seems to work... kindof..
2014-11-23 18:09:28 +01:00
Kim Woelders 611e6bfed0 Debug printout cleanups. 2014-11-22 16:33:08 +01:00
Kim Woelders 7c6deaabbf Extension version checking cleanups. 2014-11-20 21:45:25 +01:00
Kim Woelders 83e1e6e88f Add argb option to EPictureCreateBuffer(). 2014-08-17 16:14:59 +02:00
Kim Woelders 4d1bde02ae Wrap XID and some other X types.
Mostly to change longs to ints to reduce memory footprint a bit on 64
bit systems.
2014-04-23 19:13:00 +02:00
Kim Woelders a14e2978d8 Wrap some calls to XFillRectangle. 2013-12-29 08:59:39 +01:00
Kim Woelders e1f062fff5 Use NoXID in stead of None. 2013-12-29 08:59:38 +01:00
Kim Woelders 1294510ef2 Avoid redundant calls of XGetWindowAttributes (eobjs). 2013-11-24 16:37:17 +01:00
Kim Woelders 4a0bcfccf5 Simplify registration of override-redirect windows. 2013-11-24 16:37:17 +01:00
Kim Woelders 30cb2101aa Still more double to float. 2013-07-08 00:20:44 +02:00
Kim Woelders 3d03033e7f Some more double to float. 2013-07-08 00:05:20 +02:00
Kim Woelders b1f49c7273 No need for double - change to float. 2013-07-07 23:35:10 +02:00
Kim Woelders fea24f3376 CM: Fix startup after recent changes.
If the first millisecond time sample (difference) was "negative"
(sign change every ~23 days), CM rendering would be skipped.

SVN revision: 84385
2013-02-26 15:45:45 +00:00
Kim Woelders 76e6fdf360 CM: Fix override-redirect window registration detail.
When CM was enabled after start, mapped override-redirect windows weren't
picked up.

SVN revision: 84349
2013-02-24 18:57:45 +00:00
Kim Woelders 25069baced Cosmetics.
SVN revision: 84009
2013-02-17 00:19:48 +00:00
Kim Woelders 8ae20c987f Run composite rendering to screen separately from animators/idlers/timers.
Defer rendering if time since last is less than frame rate.
This reduces CPU usage somewhat in various situations.

SVN revision: 83995
2013-02-16 14:18:53 +00:00
Kim Woelders a8fa1734d3 CM: Set destination clip when rendering compositing buffer to screen.
This seems to reduce CPU usage by a factor of three on my Xorg 1.13.1(?).

SVN revision: 81817
2012-12-28 16:04:24 +00:00
Kim Woelders 51a19d26e7 Introduce new animation engine.
Based on work by Daniel Manjarres.

One of the major changes is to eliminate the "TimedLoop" construction
where we have "local" animation loops, in which we don't pass through
the main event handler.

SVN revision: 80542
2012-12-09 10:03:07 +00:00
Kim Woelders f244c9a479 Debug tweaks.
SVN revision: 77011
2012-09-22 08:29:15 +00:00
Kim Woelders 083ef4dd35 Cosmetics.
SVN revision: 77010
2012-09-22 08:29:11 +00:00
Kim Woelders a234e829ec Remove incorrect __UNUSED__.
SVN revision: 77009
2012-09-22 08:29:02 +00:00