Commit Graph

10282 Commits

Author SHA1 Message Date
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
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 008a0658ec only trigger client mouse-in from x11 mouse move event if client+desk are visible
ref T2566
2015-07-15 14:27:19 -04:00
Mike Blumenkrantz 17e878eca3 simulate netwm sync for xwl clients
blocks execution of resizes until the surface commit arrives. reduces
the race condition between resize and render and eliminates frame drops
during slow resizes
2015-07-15 13:58:03 -04:00
Chris Michael 321a421208 e-comp-wl: Remove unused variable
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-15 13:46:51 -04:00
Chris Michael 9e2512eb98 e-comp-wl: Fix T2570: stuck key when closing efm windows
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-14 15:26:38 -04:00
Chris Michael e46c0812fc e-comp-wl: Fix getting end key during key down/up events
NB: This is actually an Oopsie from a previous commit that should not
have gotten in.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-14 15:10:38 -04:00
Chris Michael 147bc3d71a e-comp-wl: don't send keyboard modifiers twice.
NB: e_comp_wl_input_keyboard_modifiers_update already sends keyboard
modifiers to all keyboard resources, so no need to call this twice.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-14 14:46:13 -04:00
Chris Michael 116af14649 e-comp-wl: Update keyboard and modifier state AFTER we send them to clients
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-14 14:18:21 -04:00
Chris Michael 46997706ea e-comp-wl: Add support for wl_keyboard_send_repeat_info to allow for configurable keyboard repeat rates
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-14 13:29:02 -04:00
Chris Michael 74e96f3826 e-comp-wl: Update keyboard key state regardless of client focus or not
Key state updates need to be consistent. As we update the key state on
key up regardless of client focus, then we should be doing the same in
the key_down event handler so that key state remains consistent.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-14 13:29:02 -04:00
Chris Michael 5052bd9266 e-comp-wl: Don't call keyboard_modifiers_update twice
e_comp_wl_input_keyboard_state_update already makes a call to
e_comp_wl_input_keyboard_modifeirs_update so there is no need to call
it twice on key up/down events.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-14 13:29:02 -04:00
Mike Blumenkrantz 161b67a53d Revert "delete render updates for xwayland clients upon triggering a client resize"
This reverts commit f3f29a0cf8.

upon further review, this was not at all helpful and breaks resizing eventually
2015-07-14 13:12:06 -04:00
Simon Lees e8911323c3 e_bg_del should only delete the bg on the zone specified
Summary:
previously e_bg_del didn't take the zone paramater into
account

fixes T2572

Reviewers: raster, zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2810
2015-07-14 12:32:37 -04:00
Carsten Haitzler 964fabe6e2 e randr2 - auto clone and use common res when doing so - make it work
tested this and made it work. should fix T2100
2015-07-12 18:12:00 +09:00
Mike Blumenkrantz c128d54690 disable size debug on drags 2015-07-11 08:37:56 -04:00
Mike Blumenkrantz f3f29a0cf8 delete render updates for xwayland clients upon triggering a client resize
fixes frame dropping during resize
2015-07-10 16:59:47 -04:00
Mike Blumenkrantz 311f524094 only register dnd xwindow with compositor canvas in x11 compositor mode
registering it under wayland creates spurious mouse events
2015-07-10 16:03:45 -04:00
Mike Blumenkrantz 4a779ef03d fix xdnd in (x)wayland
this is a real thing, so don't abort immediately if it happens
2015-07-10 16:03:18 -04:00
Mike Blumenkrantz e92519f171 adjust layering of pointer and init splash
prevents cursor from getting stuck above screensaver fade
2015-07-10 14:21:50 -04:00
Mike Blumenkrantz 697e1beda3 add wayland client post-render references in the render loop 2015-07-10 13:22:15 -04:00
Mike Blumenkrantz bec06b8703 add function to fill in x11 cursor image on creation
xwayland compositing requires that we set up a root window cursor image
immediately since we'll be getting that cursor surface to display as soon
as the pointer goes out of an x11 client's window
2015-07-10 13:04:12 -04:00
Mike Blumenkrantz 5a26363046 break up some pointer setting code into helper functions 2015-07-10 13:03:05 -04:00
Mike Blumenkrantz 5d9cefd9e2 always set x11 override client geometry on startup
this geometry isn't something we can change later, so apply it now.
also fixes an ACK when trying to show input_only clients early
2015-07-10 12:07:29 -04:00
Mike Blumenkrantz c9d5053998 disable netwm sync on x11 clients in wayland compositors
this has no effect
2015-07-09 19:32:51 -04:00
Mike Blumenkrantz 884068ff9d when e crashes in wayland, just crash instead of possibly freezing 2015-07-09 15:11:13 -04:00
Mike Blumenkrantz 399e3c79ce unify crash handler functions 2015-07-09 15:01:50 -04:00
Mike Blumenkrantz 20d281d9d3 redo e_pointer to support xwayland cursors
this requires that both canvas cursors and window cursors be present for the same
E_Pointer object, even though only the canvas cursor is actually visible

 #kansas
2015-07-09 14:45:04 -04:00
Mike Blumenkrantz c4c18ed30b return to using standard client util fns for getting client wins in x11 2015-07-08 17:16:25 -04:00
Mike Blumenkrantz 54c6d7094e remove unnecessary E_COMP_WL #defines
this is only required for aliasing E_Client->comp_data as wayland compositor data.
if comp_data is never dereferenced, it is not necessary to declare the compositor
type
2015-07-08 17:12:42 -04:00
Chris Michael f214d9d73b e-comp-wl: Create compositor screenshooter global and add function to actually handle taking shots
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-08 15:08:35 -04:00
Chris Michael 66a42b7994 e-comp-wl: Add screenshooter structure to comp_wl_data and add additional fields we need in E_Comp_Wl_Output
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-08 15:08:35 -04:00
Chris Michael 411a5717c7 e-comp-wl: Add screenshooter files to build order
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-08 15:08:35 -04:00
Chris Michael fcb560fca7 e-comp-wl: Add screenshooter protocol files
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-08 15:08:35 -04:00
Mike Blumenkrantz 6a459e3a4c remove NEED_X define from build
this used to be a marker for places where x11 functionality was needed,
but this has been simplified with the removal of wayland-only in configure
and so it is no longer needed
2015-07-08 14:49:33 -04:00
Mike Blumenkrantz 9f51bffd1e make e_client_util_.?win_get() fns return xwayland windows when available
fixes setting x11 hints in xwayland clients
2015-07-08 14:48:19 -04:00
Mike Blumenkrantz af15bf11eb set xwayland clients in x11 compositor client hash using parent window on flip 2015-07-08 14:47:24 -04:00
Mike Blumenkrantz 53ff8b764f properly calculate client+frame sizes during wl surface commit 2015-07-08 14:46:12 -04:00
Mike Blumenkrantz 9bdb805f48 account for race condition when creating initial comp object updates tiler
under wayland, some surfaces (eg. cursors) would attempt to show prior to
having acquired their actual size. these show attempts should be rejected
until the size has been set to ensure that rendering can proceed as expected

fix T2557
2015-07-08 12:36:36 -04:00
Mike Blumenkrantz c961408d7f block client signal binding activation when mouse action is active
this prevents oddities such as activating [window shade] and [resize] actions
simultaneously from breaking the compositor
2015-07-07 13:12:20 -04:00
Mike Blumenkrantz 17f0ce3713 move grabinput focus fix timer to x11 compositor and fix it to Work Better
see inline comments about x11 focus eventing for details

fix T2547
2015-07-06 15:46:02 -04:00
Mike Blumenkrantz 409bc58131 use ref macros to silence more printfs in e_remember 2015-07-06 14:29:30 -04:00