Commit Graph

150 Commits

Author SHA1 Message Date
Mike Blumenkrantz c8ed7270b8 remove comp win create handler: comp wins now just get created on show 2013-05-30 11:41:54 +01:00
Mike Blumenkrantz 36d45c65ef add e_comp_win_effect_clip for manually applying clip to comp wins 2013-05-30 09:39:30 +01:00
Mike Blumenkrantz 76ed05375d register comp canvas for dnd during creation 2013-05-29 13:45:48 +01:00
Mike Blumenkrantz e772799f4d disable comp shadows for override windows with titles that begin with "noshadow" 2013-05-28 13:18:28 +01:00
Mike Blumenkrantz 10585f1771 Revert "dont leak shape rects!"
they weren't leaking.
2013-05-23 13:16:15 +01:00
Carsten Haitzler bfec26893d dont leak shape rects! 2013-05-23 20:56:08 +09:00
Mike Blumenkrantz 15933c43a0 improve e_comp_util_wins_print for non-border comp wins 2013-05-23 10:45:25 +01:00
Mike Blumenkrantz 74732f5603 block creation of comp wins for border parent windows 2013-05-23 08:59:51 +01:00
Mike Blumenkrantz ce21e7fe98 ensure we delete previous shape if we commandeer an override comp win as a border comp win somehow 2013-05-23 08:59:51 +01:00
Chris Michael 54931cf7f6 Fix several "variable may be used uninitialized" warnings.
Signed-off-by: Chris Michael <devilhorns@comcast.net>
2013-05-22 17:26:18 +01:00
Mike Blumenkrantz 68829b05d5 block dynamic comp win creation for deleted border-client windows 2013-05-22 14:44:03 +01:00
Mike Blumenkrantz a583f9a118 streamline comp win initial geometry setting to use fewer roundtrips and not randomly put overrides in the upper left corner 2013-05-22 14:17:37 +01:00
Mike Blumenkrantz 74f33f1ed2 block dynamic creation of comp wins for root windows and their parents. my confusion is palpable. 2013-05-22 13:24:03 +01:00
Mike Blumenkrantz b6024ca722 unify comp win external shape creation routine and allow for non-override windows to be dynamically created on window show events
fixes stupid non-override qt menus
2013-05-22 13:16:48 +01:00
Mike Blumenkrantz b0fb5ae565 greatly improve pointer focus models by hooking mouse callbacks to the comp win object 2013-05-22 11:07:01 +01:00
Mike Blumenkrantz edbb6d2294 better tag choice for new comp-backlight conf2 option 2013-05-21 13:57:19 +01:00
Carsten Haitzler 0bf55848ab add option to not fade backlight on suspend/resume/reboot/shutdown/logout etc. to keep backlight untouched. 2013-05-21 22:07:06 +09:00
Mike Blumenkrantz 89664c894e layout/comp "top at xy" functions now allow restricting based on visibility
fixes desktop gadget dnd
2013-05-21 13:52:11 +01:00
Mike Blumenkrantz 9e16026e04 set pass events on override windows to fix things like desktop recording 2013-05-21 11:21:05 +01:00
Mike Blumenkrantz b307dee904 block non-override comp win creation more effectively 2013-05-21 11:21:05 +01:00
Mike Blumenkrantz c8d615f155 comp shape updates:
* move all shape rectangle stuff into e_container_shape

* use input rects for cutting comp shape when available

* set shape changed and render queue when container shape change callbacks are called

* create fewer comp wins (small memory improvement)
2013-05-21 11:21:05 +01:00
Mike Blumenkrantz 7749fddaa0 set comp mirror image size before setting image data -> no more black/garbage mirrors 2013-05-20 12:18:21 +01:00
Mike Blumenkrantz 9d8a1c0a75 ignore comp shapes which have pass events set 2013-05-20 08:59:33 +01:00
Carsten Haitzler 4ca3e80d2b fix comp mirrors to work with gl engines... 2013-05-19 23:44:15 +09:00
discomfitor 34399c80db allow popups named "noshadow*" to skip comp shadowing 2013-05-18 19:39:52 +01:00
discomfitor 4bbafeebb3 using pixmap w/h directly for comp mirrors is probably infinitesimally faster here 2013-05-18 19:39:51 +01:00
discomfitor 2f6bbfd908 fix comp mirrors for argb xim non-native wins 2013-05-18 19:39:51 +01:00
Jérémy Zurcher d0b7970f5f e_comp: partial revert to fix mixer popup
Revert "let us... force zoomap always for popups and menus. let's eee if this"
This reverts commit 4df2ff56f5.
2013-05-13 22:53:22 +02:00
Mike Blumenkrantz 103298eee3 remove some completed compositor todos 2013-05-10 12:23:07 +01:00
Mike Blumenkrantz 727cd45b5c force window resize when pixmap comes back with a size that doesn't match the client window
this causes comp to refetch the pixmap again with the correct size and allows windows which were shaded across a restart to be unshaded
2013-05-10 11:11:35 +01:00
Mike Blumenkrantz 95b9313e64 don't fetch window pixmap for shaded window 2013-05-10 10:38:37 +01:00
Mike Blumenkrantz 1b684e8191 correctly calculate border frame shape when cutting a window 2013-05-09 14:14:52 +01:00
Mike Blumenkrantz 6f29188963 ignore comp shape rects outside the screen, print overrides in comp win print function 2013-05-09 13:06:04 +01:00
Mike Blumenkrantz 9b8c586202 fix input shapes for input windows: desk flipping once again functional 2013-05-07 11:42:02 +01:00
Mike Blumenkrantz 7cfd355f7f unbreak window resizing 2013-05-07 10:32:38 +01:00
Mike Blumenkrantz c7e64b4e38 block damage and pixmap fetches on windows in geometry updates if window is shading 2013-05-07 08:50:08 +01:00
Mike Blumenkrantz 6018f8c356 ensure comp geometry update happens even if update gets deferred 2013-05-07 08:49:44 +01:00
Mike Blumenkrantz 26b7ff074a don't use pixmap size for comp geom updates if border is shading 2013-05-07 08:49:21 +01:00
Igor Murzov d5b019b078 Fix incorrect format usage in E_CONFIGURE_OPTION_MINMAX_STEP_FMT 2013-05-02 15:49:25 +04:00
Carsten Haitzler 4df2ff56f5 let us... force zoomap always for popups and menus. let's eee if this
speeds things up?
2013-04-30 12:37:59 +09:00
Mike Blumenkrantz 85d192238e remove unnecessary comp checks for init win 2013-04-29 09:46:10 +01:00
Carsten Haitzler 8cf7e61744 protect against failure to find a container layer win in comp
it may happen that a container layer window cannot be found (someone
deleted it other than e - which is possible), and e hasn't expected
this. comp will have removed the comp win entry but containers will
not know. this is either some client being stupid, or malicious, but
protect against it, complain with an ERR and march on so we don't crash.
2013-04-26 16:31:29 +09:00
Carsten Haitzler 59c4e0f81b fix race condtion in comp caused by delayed job doing the populate.
by making a job to delay population we play a race condition game with
initting of other bits of e. this means the comp may or may not have
been filled by the container layer winds before other internal events
and actions start making comp wins and setting layers. this means that
things like e_comp_win_find() for a con->layers[n].win may fail... as
this has yet to be added... and thus.. we crash in startup. it's a
race condition.

so this removed the delay job and makes population of the comp
explicit. it puts the population into the hnds of the e_main init
after a manager has been created and after a container is created, and
thus laer wins created, so it can walk the x window stack correctly,
but before anything else is done. this means that we will be properly
inited at this point without a race condition.
2013-04-26 16:31:29 +09:00
Mike Blumenkrantz 7777b5d738 fix stacking list order of comp objects under the layout 2013-04-25 11:21:18 +01:00
Mike Blumenkrantz 275000dcbf only apply solid zoomap for menus 2013-04-23 17:10:20 +01:00
Mike Blumenkrantz 2ae8713130 fix comp pixmap fetching to refetch when X is slow 2013-04-23 15:53:54 +01:00
Mike Blumenkrantz fb4d8b9f35 set force flag when hiding comp wins on desk switch 2013-04-23 09:07:58 +01:00
Mike Blumenkrantz 6d27a48f58 add comp win zoomaps back with an #ifdef for debugging 2013-04-23 08:58:56 +01:00
Mike Blumenkrantz 9d6e2ecc97 update comp win geometry on border events 2013-04-23 08:58:56 +01:00
Mike Blumenkrantz 5c49e7c981 remove border checking for comp win add...this is bad I guess 2013-04-23 08:58:56 +01:00