Mike Blumenkrantz
0b66c2d841
set new_client flag on xwl clients during swap
...
this forces another run of client placement so that xwl clients do
not always appear at 0,0
2015-07-22 17:10:49 -04:00
Mike Blumenkrantz
ae1fc10d06
remove unnecessary geometry setting during xwl client swap
...
this geometry will be applied during show
2015-07-22 17:10:11 -04:00
Mike Blumenkrantz
43ed8dbdb5
set shell-less wl surface mapped state regardless of visibility during commit
...
new_client flag here will defer show operations, but the operations will complete
2015-07-22 17:09:14 -04:00
Mike Blumenkrantz
6dfc6da02c
update wl keyboard resource key presses on focus in/out of surfaces
2015-07-22 16:59:23 -04:00
Mike Blumenkrantz
5c5fb11187
allow wl client focus-out callback to execute on deleted E_Clients
2015-07-22 16:28:48 -04:00
Mike Blumenkrantz
435bd8794a
don't update wl keyboard state on client focus events
...
this is always up-to-date
2015-07-22 16:28:08 -04:00
Mike Blumenkrantz
75fb072dc3
fix backlight init value
...
in the case where xrandr is not used, setting backlight to very dim on init
will result in the backlight remaining at a very dim level when the backlight
normal level is 1.0 since backlight values will not successfully update until
at least 0.05s after the main loop starts
ref T1333
2015-07-22 13:56:19 -04:00
Mike Blumenkrantz
818fcb01f4
fix compositing error when client is ec->hidden during show animation
...
this prevented clients from being deleted and resulted in artifacts and
memory leaks
2015-07-22 13:30:02 -04:00
Mike Blumenkrantz
a3d5762bf2
simplify deskmirror client desk checking
2015-07-22 13:23:53 -04:00
Mike Blumenkrantz
9c1fca5a16
fix wl build
2015-07-22 12:24:35 -04:00
Mike Blumenkrantz
a9db84f94e
simulate modal windows for badly behaved x11 clients
...
it seems that some clients, eg. libreoffice, don't set the modal window
property on child dialogs. instead of fighting for focus, set up the child
as a modal on the parent and then avoid the whole issue
fix T2594
2015-07-21 18:24:39 -04:00
Mike Blumenkrantz
a951b88305
don't block keybind activation while grabs are active
2015-07-21 15:33:50 -04:00
Mike Blumenkrantz
b51e5fa0b2
ensure clients possess comp_data before dereferencing it during x11 stacking
...
ref T2566
2015-07-21 14:34:11 -04:00
Mike Blumenkrantz
5c00c1009b
redo wl compositor key eventing
...
* break out key callbacks into EINTERNs
* remove extraneous/unused mouse event handlers
* enforce wl modifier updating in all cases
* ensure keybinds are activated before wl clients receive input
- block wl client input during grabs
fixes T2565
2015-07-21 14:27:29 -04:00
Mike Blumenkrantz
d2fce4ce27
do not add x11 compositor desklock hooks in non-x11 compositor
2015-07-21 14:25:41 -04:00
Mike Blumenkrantz
2ce5dfa33f
add wl compositor desklock hooks to add grabs during lock
2015-07-21 14:25:16 -04:00
Mike Blumenkrantz
21b8016c5b
add clients to focus stack as necessary in e_client_unignore()
2015-07-21 14:21:36 -04:00
Mike Blumenkrantz
2eabf1142f
always stop passing key events on once they reach the lokker callback
2015-07-21 14:21:07 -04:00
Mike Blumenkrantz
7aea28a86b
do not attempt to remove wl xdg popup clients from focus stack
...
these have never been added to the focus stack, so removing them is useless
2015-07-21 14:19:39 -04:00
Mike Blumenkrantz
269d589cd1
do not block winlist activity based on event window in non-x11 compositors
...
fixes winlist interaction in wayland
2015-07-21 14:13:55 -04:00
Derek Foreman
aae280bfcd
shot: Skip the wayland setup bits when running under X
...
fix T2592
Reviewers: zmike
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D2851
2015-07-21 12:23:55 -04:00
Chris Michael
e78abc23c1
desklock: Fix T2589: Screen Lock crashes in E
...
Don't call ecore_x functions unless we are using an X11 compositor.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-21 09:03:59 -04:00
Mike Blumenkrantz
3c3f0845f3
fix typo in comp object opaque region render
...
#DerekWasRight
2015-07-20 17:26:13 -04:00
Mike Blumenkrantz
f6725c53a4
move opaque region (image border) apply to render fn
...
this seems to provide a more accurate region for rendering in my tests,
as various weston-apps no longer show black rects during resize
2015-07-20 14:38:44 -04:00
Mike Blumenkrantz
612a61ce0e
don't mangle wl client opaque region tiler during commit clip
2015-07-20 14:38:31 -04:00
Mike Blumenkrantz
4acce00428
improve wl compositor tiler usage
...
pixman <-> tiler api naming seems similar but functionality is totally
different
2015-07-20 14:10:55 -04:00
Mike Blumenkrantz
4d76741533
only perform keybind grabs on root window for x11 compositors
2015-07-20 13:32:06 -04:00
Mike Blumenkrantz
f2d71ad903
block compositor keybinds using more accurate x11 detection
...
blocking based on event window here is only valid for true x11 compositors
and not just compositors with root windows
fixes keybind activation when running xwayland clients
2015-07-20 13:29:13 -04:00
Derek Foreman
35938839bd
wayland: Also link with libwayland-client.so
...
Summary:
E is both a client and a server, so it should be linking
both libraries.
#Kansas
Reviewers: zmike, devilhorns
Reviewed By: devilhorns
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D2843
2015-07-20 11:17:40 -04:00
Carsten Haitzler
ee16a11455
e - randr allow you to turn off screens and keep them off if config says so
2015-07-19 22:41:48 +09:00
Carsten Haitzler
94a15856bd
e - unbreak client pixmaps when native surf is used
...
this unbreaks disappearing client content introduced by
5a001b1759
.
2015-07-18 23:39:46 +09:00
Mike Blumenkrantz
6b7ce91373
do not set opaque regions on comp object mirrors
...
based on testing, this breaks all rendering of related objects. I
suspect that the image border needs to be manually scaled based on
image::mirror proportions in order for this to work as expected, but
adding the required code seems like too much complexity for nearly zero
gain
2015-07-17 16:09:52 -04:00
Mike Blumenkrantz
1d4d906361
render surface opaque regions as opaque when image border is set
...
it seems that just setting the opaque region is not enough for evas;
we must also inform it that the opaque region is opaque and should not
be blended
2015-07-17 16:07:01 -04:00
Mike Blumenkrantz
552f065c09
zero out wl surface opaque region on commit in all cases
...
it's possible that the opaque ptr may exist but have no regions,
which will result in the previous frame's opaque region being used
2015-07-17 15:58:14 -04:00
Mike Blumenkrantz
bd776b157f
add e_client_unignore() for triggering events when unignoring a client
...
mainly for use in wayland compositing since all surfaces are ignored
until they get a shell surface or a commit
2015-07-17 15:30:30 -04:00
Mike Blumenkrantz
51c74889cf
fix wl_fb define name in comp init
2015-07-17 15:30:30 -04:00
Mike Blumenkrantz
5a001b1759
enforce image border/size/pixels_dirty setting on comp mirrors during create
...
this should provide a more accurate first-render for mirrors as they are added
2015-07-17 15:30:30 -04:00
Mike Blumenkrantz
62792ce662
ensure wayland parts of shot module use the correct wayland display objects
...
the ecore-wl global objects used here will be wrong for the case of nested
compositors
2015-07-17 15:30:30 -04:00
Mike Blumenkrantz
6471ba0a05
do not update client list hint when creating a new wayland client
2015-07-17 15:30:30 -04:00
Mike Blumenkrantz
fbe55d20f1
always set new wayland E_Clients to be ignored during client hook
2015-07-17 15:30:30 -04:00
Mike Blumenkrantz
d5e25a8449
add wl_wl wl output module
...
it is now possible to create a xephyr window in a drm-enlightenment session,
launch wl-x11 enlightenment in xephyr, and then launch wl-wl enlightenment
inside that enlightenment
the primary limitation on this output module is that all internal windows will
appear in the outer compositor due to the current restriction of ecore-wayland
with regard to only having a single global display server connection
#Inception
2015-07-17 15:30:30 -04:00
Seunghun Lee
faacad29dc
remove a kind of typo in E_ZONE_GEOMETRY atom string.
...
Test Plan: N/A
Reviewers: devilhorns, zmike
Reviewed By: devilhorns, zmike
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D2833
2015-07-17 15:04:39 -04:00
Chris Michael
bf993c6eee
e-comp-wl: Fix region_add and region_subtract functions to make sure we have accurate opaque regions
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-17 14:58:34 -04:00
Mike Blumenkrantz
32c48f9a40
...and also ungrab the compositor when internal drags end
2015-07-16 12:59:04 -04:00
Mike Blumenkrantz
2e5ab5a947
only use input xwindows for internal drags in x11 compositor
...
this fixes input region detection for dnd operations
fix T1831
2015-07-16 12:52:00 -04:00
Derek Foreman
41cb2fa161
screenshooting: Avoid void pointer arithmetic
...
Summary:
If we use unsigned char pointers instead of void pointers we actually
conform to the C standard.
This patch removes a reliance on a gcc extension and, as an added bonus,
also quiets a warning in the default build.
Reviewers: zmike
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D2820
2015-07-15 18:09:15 -04:00
Mike Blumenkrantz
7859787f73
wl clients should not use edges during keyboard resize
...
ref T2452
2015-07-15 18:08:32 -04:00
Mike Blumenkrantz
ecb5f4ca41
add E_Client->keyboard_resizing flag
...
there is no other indication of whether a client is resizing using the
keyboard, so this should serve as an adequate hint
2015-07-15 18:07:12 -04:00
Mike Blumenkrantz
73c03565b3
never use new clients for stacking part 2: the secret of the stacking
...
a client with this flag set here is unreliable to use as a stacking
reference since it has yet to be stacked and can be located anywhere
in the window stack.
fixes internal window stacking on startup
2015-07-15 16:22:02 -04:00
Mike Blumenkrantz
953b80f8ef
ensure that focus is set and focus stack is managed on winlist hide
...
if pointer warping is disabled, attempting to pointer warp with mouse-based
focus policies will fail here, preventing focus from being applied as expected
ref T2566
2015-07-15 14:47:35 -04:00