Mike Blumenkrantz
245bb97922
enforce fullscreen client stacking during nocomp end IFF client is fullscreen
...
previous behavior would result in the nocomp window becoming stuck at a fullscreen
layer when ending nocomp, even if the client was no longer fullscreen
fix T2827
2015-11-09 14:34:09 -05:00
Mike Blumenkrantz
203932fed9
move client post-update adding into render function
...
in some cases, it's possible for a client which expects to render on
the next frame to actually render on the frame after. in these cases,
the compositor must not clear the pixmap image until after the render
has occurred in order to avoid inaccuracies. for this reason, the best
place to flag a client for post-render work is at the time of the client's
render
ref T2762
ref D3120
2015-10-02 14:03:31 -04:00
Mike Blumenkrantz
e7176b5104
ensure that non-fullscreen nocomp clients have their layers re-set
...
in the case where a window is fullscreen without having the 'fullscreen'
flag set, the previously-used layer must be reapplied upon nocomp end
in order to avoid breaking the compositor
2015-09-11 13:08:18 -04:00
Mike Blumenkrantz
714353be47
add extreme hacks to enforce nocomp stacking policies
...
if windows set to "Always on Top" exist while the option to allow
windows over fullscreen windows is enabled, enabling nocomp will
result in the above windows being stuck over the nocomp window
instead, force the nocomp window to be the top-most window in all cases,
and then put it back if another object appears on the screen over it
fix T2703
2015-09-08 18:44:55 -04:00
Chris Michael
099861c55a
enlightenment: Make E build again with EFL from git
...
sed -i 's/EAPI/E_API/g'
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-01 15:56:20 -04:00
Mike Blumenkrantz
5f5786ab50
fix nocomp_override conditional which would inaccurately toggle nocomp
...
hooray gcc 5.0
2015-04-14 20:38:43 -04:00
Mike Blumenkrantz
800ec5eaa3
do not reapply focus on canvas object ungrab/close for pointer-focus enthusiasts
2015-02-20 09:56:15 -05:00
Mike Blumenkrantz
0d2001013f
redo shaped client checks to use shape flags instead of rect pointer, fix shapeless clients
...
according to the shape extension protocol, the number of rectangles returned should be checked to determine a client's shape. if 0 is returned, the client has no shape, meaning that it either should not be drawn or should have no input region. this improves behavior with various client window types such as tooltips
ref T1820
2014-12-07 20:18:27 -05:00
Mike Blumenkrantz
7003b3ed08
end nocomp on nocomp end...always
2014-09-16 11:07:13 -04:00
Mike Blumenkrantz
351bde444c
manually break out of nocomp
...
in the event that there was only one window open and it was closed, this would permanently break the compositor
fix T1665
2014-09-16 11:07:08 -04:00
Mike Blumenkrantz
9b8a6df115
check protocol visibility for nocomp breaks, not comp object visibility
...
new comp objects are never going to be visible during nocomp
2014-09-16 11:07:02 -04:00
Mike Blumenkrantz
72366e49f9
don't add nocomp damages for input-only windows
2014-09-16 11:06:59 -04:00
Mike Blumenkrantz
20a5b2bc18
fix nocomp skipping for skippable objects
...
fix T753
2014-09-08 09:12:21 -04:00
Mike Blumenkrantz
cdaa53fc8f
only add damages for nocomp clients if they are protocol-visible
2014-09-01 10:30:53 -04:00
Mike Blumenkrantz
362a9b6cce
reuse existing render post callback for wayland clients
2014-08-26 10:10:38 -04:00
Mike Blumenkrantz
3b649534c9
Fix building Enlightenment for X11-only, Wayland-Only, and X11 with Wayland clients.
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Additional authors: Chris Michael <cp.michael@samsung.com>
2014-08-26 10:10:38 -04:00
Chris Michael
b2e2219235
fix define check for shutting down wayland compositor.
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-08-26 10:10:37 -04:00
Chris Michael
5e7d2ce5d4
fix potential crash with e_comp_get.
...
e_manager_current_get Can return NULL so we should check that.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-08-26 10:10:35 -04:00
Chris Michael
dc4e619dea
fix building for wayland-only when --enable-wayland-clients is not
...
specified
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-08-26 10:10:35 -04:00
Chris Michael
7499b51b68
fix include of comp_wl header to work with wayland_only option
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-08-26 10:10:35 -04:00
Mike Blumenkrantz
21da3ed343
use comp object api function for shape cutting to prevent mirrors from getting shapes cut
2014-08-22 18:14:23 -04:00
Mike Blumenkrantz
62023bc722
nocomp enforcing is now more accurate
2014-08-16 09:46:56 -04:00
Mike Blumenkrantz
6bf8e24320
nocomp checks more correctly skip comp_skip objects
2014-08-16 09:46:21 -04:00
Mike Blumenkrantz
45906bdf20
fix infinite stacking loop when enforcing nocomp
2014-08-15 19:17:33 -04:00
Mike Blumenkrantz
11ec0ea86b
make nocomp-skipable objects not require shelf
2014-07-30 14:23:25 -04:00
Mike Blumenkrantz
858504c69f
add comp events for nocomp toggle
2014-07-30 14:23:17 -04:00
Mike Blumenkrantz
208d138678
ignore probably-systray clients when checking for nocomp restack clients
2014-07-20 17:28:33 -04:00
Mike Blumenkrantz
54603e2ee3
typo from shelf nocomp commit
2014-07-20 17:28:21 -04:00
Mike Blumenkrantz
ac8f73cabc
allow nocomp with "above" shelves
2014-07-20 17:17:05 -04:00
Mike Blumenkrantz
556c21030c
handle nocomp eval for visible clients stacked over fullscreen client
...
probably fixes T1409, T1316, T1388
2014-07-19 15:47:21 -04:00
Mike Blumenkrantz
0599c6897e
trivial/break out nocomp end into util function
2014-07-19 15:47:21 -04:00
Mike Blumenkrantz
fc7e06807d
hybris support
2014-06-08 12:47:44 -04:00
Mike Blumenkrantz
dbce413b42
fix shape cutting for frames which are larger than their object size implies
...
requires border themes to have data.item "frame_extends" set
2014-06-04 08:55:06 -04:00
Mike Blumenkrantz
5d6fc9cc6f
use 0,0 for start rect in shape cutter
2014-06-02 08:40:00 -04:00
Mike Blumenkrantz
82c8556dad
shut up impossible null deref
...
CID 1219856
2014-06-02 05:03:45 -04:00
Mike Blumenkrantz
7bc59d01fe
slightly optimize shape cutting
...
objects below the bottom client are unnecessary, so it's better to just start with the bottom client. this has a nice side effect of working around a weird evas bug where layers can exist while having no objects, breaking stacking iterator functions
2014-05-30 11:22:21 -04:00
Carsten Haitzler
5d8fb9e4d5
add delimiter to shape debug to make debugging easier
2014-05-29 20:51:02 +09:00
Mike Blumenkrantz
8ec74517ed
remove legacy e_sys handler callback system, redo sys action ordering, only blank on action success
...
fix T1271
2014-05-26 15:57:32 -04:00
Mike Blumenkrantz
6d3c9d3a19
feature: add automatic compositor engine detection
...
this takes care of the previously-required E_WL_FORCE autodetection. E_WL_FORCE behavior unchanged
2014-05-11 13:07:12 -04:00
Gwanglim Lee
72f1dcc748
add missing eina_list_append in comp init
...
Summary: add missing eina_list_append in comp init
Test Plan: N/A
Reviewers: raster, zmike, devilhorns
CC: cedric
Differential Revision: https://phab.enlightenment.org/D835
2014-05-08 11:30:01 -04:00
Sebastian Dransfeld
168dc8ef38
comp: no need to assign pointer before return
...
As we return after the list free, no need to set the pointer.
CID 1087717
2014-03-24 13:02:56 +01:00
Mike Blumenkrantz
c04d754ac5
enabling drm output module should NOT require X-less build.
...
these defines all need to be changed from HAVE_WAYLAND_ONLY to something like WITH_X or we're going to have lots of problems with xwayland later on
2014-03-18 16:14:04 -04:00
Chris Michael
4bb1d8f390
@bugfix: Only load external compositing modules if we are wayland-only
...
@bugfix: Initialize e_comp_wl if we are wayland-only OR supporting
wayland clients.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-03-18 07:43:05 +00:00
Chris Michael
915f8f0613
@bugfix: Fix building for WAYLAND_ONLY by using the proper define
...
sed -i 's/WAYLAND_ONLY/HAVE_WAYLAND_ONLY/g'
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-03-18 07:43:04 +00:00
Mike Blumenkrantz
4b58fa9a4e
replace ev->keyname with ev->key
...
see efl 5ae4cfd1923e502731f4d8fc2bf67b1f536a9216
2014-03-13 13:03:34 -04:00
Mike Blumenkrantz
450d6cf321
add comments to suppress false positives in intentional switch fallthroughs
...
CIDs 1155283, 1155282, 1155281
2014-03-13 12:20:38 -04:00
Mike Blumenkrantz
dacb821f05
trivial dead code--
...
CID 1187922
2014-03-13 11:43:53 -04:00
Mike Blumenkrantz
e77d536466
remove comp override immediately on screensaver disable
2014-02-28 15:27:35 -05:00
Mike Blumenkrantz
def17d763b
+e_comp_util_object_is_above_nocomp()
2014-02-26 11:46:32 -05:00
Mike Blumenkrantz
6a90f66cc4
use comp overrides when grabbing comp input
2014-02-26 11:46:31 -05:00