Mike Blumenkrantz
6a7e9e7d8c
placeholder commit because I screwed up a rebase somehow: previous two commits were to revert 09b4dfb940
and f55e5e86cf
which were reported to have broken some things for users
2013-07-24 07:09:12 +01:00
Mike Blumenkrantz
1cff963a02
asdf
2013-07-24 07:05:41 +01:00
Mike Blumenkrantz
4c97969056
asdf
2013-07-24 07:05:24 +01:00
Carsten Haitzler
d60279b977
zoomap always on popups - i enabled this before.
...
shelves are almost always around. that means that unless you magically
can do partial rendering, comp updates re-render shelf AND all
contents. for systems this means much mofre gl overhead thatn with
e17. to do a mid-way house, force zoomaps on for shelves, until evas
can auto stuff smart objects into buffers on its own based on behavior.
2013-07-19 09:31:55 +09:00
Mike Blumenkrantz
09b4dfb940
revert last, useless commit; what I really meant was to remove the unnecessary evas image calls
2013-07-12 13:59:24 +01:00
Mike Blumenkrantz
f55e5e86cf
minor comp optimization: reduce frequency of ecore-x calls when updating pixmaps for non-gl surfaces
2013-07-12 12:52:40 +01:00
Mike Blumenkrantz
fc9e67d137
return correct layer value when getting comp layer for border objects
2013-07-10 16:04:01 +01:00
Mike Blumenkrantz
31c3d13d57
get window geometry for overrides during shape update, not pixmap geometry
2013-07-09 11:50:48 +01:00
Chris Michael
607f5914ff
Remove duplicate call to layer_set.
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-09 11:43:29 +01:00
Mike Blumenkrantz
39678e3136
fix comp border initial stacking
2013-07-02 10:08:24 +01:00
Mike Blumenkrantz
a463688c5e
fix comp win layout stacking and remove unnecessary inlist ops
2013-07-02 10:08:24 +01:00
Mike Blumenkrantz
181f11a03a
fix override window shape input cutting
...
this is currently GUARANTEED to break with override shaped windows, which means that if such a window is ever opened, it will NEVER receive input unless it is placed over another client window. this is due to a limitation in evas where it is impossible to (de)select input regions which forced me to choose between either having shaped override windows (such as desktop recorders) block all mouse input to the screen OR have normal override windows (gtk menus and popups...) not able to generate their own input shape at all
2013-06-27 14:39:40 +01:00
Mike Blumenkrantz
a6245c5c4a
check ignore flags on effect_obj when cutting comp shapes
2013-06-25 09:19:04 +01:00
Mike Blumenkrantz
219b7c62fe
don't set real_hid when creating comp wins for borders
...
initial border pixmaps are now available for windows on other desktops immediately after startup, which should:
* improve initial redraw on first desk flip
* make comp mirrors available immediately for non-current desk windows
** fixes ibar menu instances
** fixes deskmirror redraws
2013-06-24 10:08:05 +01:00
Mike Blumenkrantz
32999cfe08
block comp show events for comp wins with borders -- these get handled by the border show event
2013-06-24 10:07:30 +01:00
Mike Blumenkrantz
26f61cb50a
block border comp geometry updates when pixmap has not been fetched
2013-06-24 09:35:34 +01:00
Mike Blumenkrantz
c22393189b
avoid setting changed on deleted borders when trying to refresh comp pixmap
2013-06-24 08:50:48 +01:00
Mike Blumenkrantz
9528724cd9
try adding comp damage rects on resume so the screen doesn't stay black
2013-06-17 07:59:46 +01:00
Mike Blumenkrantz
e6b22fc6bc
allow e_comp_win_effect_set() to take a NULL effect for unsetting current effect
2013-06-12 14:08:03 +01:00
Mike Blumenkrantz
8102025dd9
block comp win creation on window create for all border windows
2013-06-12 13:55:30 +01:00
Mike Blumenkrantz
69b4a51c87
delete an existing comp win if it's set to be ignored
2013-06-11 13:58:00 +01:00
Mike Blumenkrantz
68627596f6
go back to creating comp wins for all x windows, but do it...smarter
2013-06-11 13:40:28 +01:00
Mike Blumenkrantz
477aaa822e
zoomaps strike again: only enable for popups and menus now
...
fixes clicking desktop icons when the efm object is not at 0,0
2013-06-11 09:50:58 +01:00
Mike Blumenkrantz
ca49356bce
fix possible null deref
...
klocwork issue
2013-06-10 10:10:38 +01:00
Mike Blumenkrantz
d8cef4eb39
try passing raw border geom in comp resize events
2013-05-30 15:01:07 +01:00
Mike Blumenkrantz
fe8fa9d249
use new border inset util functions wherever possible to make things look nicer
2013-05-30 14:32:03 +01:00
Mike Blumenkrantz
50a6f16688
block comp win configure updates for borders: attempt #2
...
this time flag client to update pixmap and geom when the window change comes through
2013-05-30 14:07:13 +01:00
Mike Blumenkrantz
ab0a0ad4d0
unbreak window manipulation, need to test this more...
2013-05-30 12:04:37 +01:00
Mike Blumenkrantz
e07ca1aa8e
use client geom when configuring comp win from border resize callback
2013-05-30 12:01:36 +01:00
Mike Blumenkrantz
048b7743a9
block comp win configure updates for borders
2013-05-30 11:45:21 +01:00
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
Mike Blumenkrantz
b04d2dfc4b
add e_comp_win_effect_unclip() to unclip an effect object after a transition
2013-04-22 13:58:01 +01:00
Mike Blumenkrantz
1ff1b21563
check for border when adding comp wins without border object; temporary until e19
2013-04-22 13:58:01 +01:00
Mike Blumenkrantz
17e7ea400c
improve comp mirror safety check again
2013-04-19 16:47:06 +01:00
Mike Blumenkrantz
bd0ca79320
unset comp effect clip after effect ends
2013-04-19 16:23:56 +01:00
Mike Blumenkrantz
26a3a75e8c
e_comp_get() supports e_desk
2013-04-19 15:18:28 +01:00
Mike Blumenkrantz
f5965d533c
add new event for comp win stacking
2013-04-19 13:49:34 +01:00
Mike Blumenkrantz
f9f81ee6e1
send right comp source events
2013-04-19 13:44:52 +01:00
Mike Blumenkrantz
cfe46c2c40
make comp mirror safety check useful
2013-04-19 10:03:42 +01:00
Mike Blumenkrantz
5654d4ea4b
simplify comp mirror creation, update related fixme
2013-04-19 10:00:54 +01:00
Cedric Bail
a7ba24df70
e_comp: don't rely on undefined callback call order.
2013-04-19 11:23:13 +09:00
Mike Blumenkrantz
ded0db707f
use zoomap as image source for object mirrors, for all the good it will do
2013-04-18 13:42:23 +01:00
Mike Blumenkrantz
e922fcd32e
ensure we use edje util zoomap function only on known edje objects
2013-04-18 13:42:00 +01:00
Mike Blumenkrantz
b4b8e69bfe
try actually updating on border resize event for slightly more accurate resizes when doing shade animations rapidly
2013-04-18 12:57:37 +01:00
Mike Blumenkrantz
f9a45e14ec
comp win geometry updates with updates pending now queue another render job
2013-04-18 12:56:46 +01:00
Mike Blumenkrantz
9aa32ad327
render queue and flag geometry update on border resize event to catch shading animations
2013-04-18 12:53:13 +01:00
Mike Blumenkrantz
1071bd9020
fix comp win geometry updates for shaded windows
2013-04-18 12:44:19 +01:00
Mike Blumenkrantz
06dd5703a3
fix comp win geometry updates to always use pixmap size when available
2013-04-18 10:21:31 +01:00
Mike Blumenkrantz
c883ec1c25
simplify comp win geom update check to only look at flag
2013-04-18 10:21:12 +01:00
Mike Blumenkrantz
c32fbb3ab4
comp win reshadow now sets geom update flag instead of updating geom
2013-04-18 10:20:21 +01:00
Mike Blumenkrantz
22b95a70b1
set comp win geometry update flag for pixmap update during initial show
2013-04-18 10:08:07 +01:00