Mike Blumenkrantz
a579c2ec36
force render update on wayland clients during commit
...
an unmapped wayland client must still run post-render code to execute
frame callbacks
fixes terminology initial render with efl from git
2015-08-06 19:40:10 -04:00
Mike Blumenkrantz
5bde1a8648
implement x11->wayland dnd operations
...
still a little rough, but the basics are functional. works by showing
the x11 compositor selection window, which has rects to exclude geometries
of xwl clients, for getting x11 xdnd events, and then manually sending
all the related client messages in order to inform the x11 client that
enlightenment is, in fact, an extremely credible xdnd drop site and not
a rogue compositor which will mangle/destroy the dnd data.
still render crashes after the operation completes, so possibly not the
most useful thing to be using now
2015-08-06 19:31:20 -04:00
Mike Blumenkrantz
3c722ac7f2
alias xwl client pixmaps -> wl surface pixmaps
...
it's now possible to retrieve the xwl client using the xwl xwindow
2015-08-06 19:31:20 -04:00
Mike Blumenkrantz
6aa9a9477e
add pixmap aliasing
...
this provides the ability to alias one pixmap id as another pixmap
2015-08-06 19:31:20 -04:00
Mike Blumenkrantz
8557da360c
make dummy e_drag rect invisible
2015-08-06 19:31:20 -04:00
Mike Blumenkrantz
e37f5d8c28
set pass events on DND type windows
...
these are the actual drag windows from external apps and will be stuck
under the cursor, ideally not blocking/intercepting all motion events
2015-08-06 19:31:20 -04:00
Mike Blumenkrantz
000c97659f
reject xwl clients from wayland data device enter/leave functions
...
NYI
2015-08-06 19:31:20 -04:00
Mike Blumenkrantz
550cc56e59
make most wayland data device functions external
2015-08-06 19:31:20 -04:00
Mike Blumenkrantz
106dfe4e21
only attempt to provide wayland drag motion data if drag exists
2015-08-06 19:31:20 -04:00
Mike Blumenkrantz
3dca058dfa
block wayland mouse button propagation to clients while drag is active
2015-08-06 19:31:20 -04:00
Mike Blumenkrantz
9740477615
store global wayland data manager resource
2015-08-06 19:31:20 -04:00
Mike Blumenkrantz
aa5788175b
move wl compositor function for creating data sources to be external
2015-08-06 19:31:20 -04:00
Mike Blumenkrantz
0f070c6683
reenable compositor shape cutting onto the selection window in xwl
...
this will provide x11 eventing as needed on an already existing window
2015-08-06 19:31:20 -04:00
Mike Blumenkrantz
fa75d181d4
block internal usage of x11 input grabs under wayland
...
these shouldn't be necessary since we control the input
2015-08-06 19:31:20 -04:00
Mike Blumenkrantz
dddbe2a518
force mouse-up on wayland drag start
...
allows mouse eventing to function as expected during drags and provides
updating during the drag
2015-08-05 17:30:03 -04:00
Mike Blumenkrantz
f2f4b65ead
move menu mouse-up feed util function to E_API in comp canvas
2015-08-05 17:26:50 -04:00
Mike Blumenkrantz
b7cc0e07b8
enable x11 dnd in wayland compositors
...
maximize footgun potential since this currently crashes immediately
2015-08-05 16:07:10 -04:00
Mike Blumenkrantz
53900d184a
use pointer hash to track data manager resources
2015-08-04 19:48:45 -04:00
Mike Blumenkrantz
5f6c91a4f4
block screensaver activation during wl dnd operations
2015-08-04 19:39:09 -04:00
Mike Blumenkrantz
d4aa1ba7c2
add functionality for blocking wl screensaver activation
2015-08-04 19:39:09 -04:00
Mike Blumenkrantz
1beecb72d7
add server-side wl dnd
...
weston-dnd seems to work as expected
2015-08-04 19:39:09 -04:00
Mike Blumenkrantz
bce5283b57
fix wl data device kbd focus function
...
this should only send the selection offer
2015-08-04 19:39:09 -04:00
Mike Blumenkrantz
b5a5e98632
make wl data device util function EINTERN
...
e_comp_wl_data_find_for_client()
2015-08-04 19:39:09 -04:00
Mike Blumenkrantz
965d089c8a
add more wl data device debug infos
2015-08-04 19:39:09 -04:00
Mike Blumenkrantz
616ca6583e
apply wayland data device focus after focus has been set
...
the focus_set client hook is for setting focus, not for doing things which
must occur after focus has been set
2015-08-04 19:39:09 -04:00
Mike Blumenkrantz
6a50d5f581
fix compositor type detection for dnd operations
...
wayland compositors will always use a compositor grab
2015-08-04 19:39:09 -04:00
Mike Blumenkrantz
b33d8bdf10
allow new drags to be created with no associated mime types
2015-08-04 19:39:09 -04:00
Mike Blumenkrantz
b011c4a045
reduce explicit ecore-x type usage in e_dnd
2015-08-04 19:39:09 -04:00
Mike Blumenkrantz
fa11e0ecd7
further unify drag start functions
2015-08-04 19:39:09 -04:00
Mike Blumenkrantz
e5678549da
track the current pointer focus client in wayland compositor
2015-08-04 19:39:09 -04:00
Mike Blumenkrantz
acf5d09796
reject deleted clients from wl show callback
2015-08-04 19:39:09 -04:00
Mike Blumenkrantz
9669dc1dc5
show drag object immediately when beginning a drag
...
fixes flicker at start of drag
2015-08-04 19:39:09 -04:00
Mike Blumenkrantz
2607ad2339
only return xwayland pixmap from e_comp_x_client_pixmap_get() for xwl clients
2015-08-04 19:39:09 -04:00
Mike Blumenkrantz
5526bd357a
unify most of drag start functions
2015-07-31 15:35:55 -04:00
Mike Blumenkrantz
81a797a0fa
defer focus-setting on focus revert during desk flip when visibility is pending
...
in the case that a client is going to be shown on the next loop iteration,
focus setting must still occur and be deferred
this fixes the case of a window appearing on a desk while the user is switching
desks away from it even though this window is attempting to focus itself
2015-07-31 13:58:29 -04:00
Mike Blumenkrantz
04fe354592
notidle the screensaver in wl compositor mouse move cb
...
fixes screen blanking while user is active
2015-07-30 16:35:51 -04:00
Mike Blumenkrantz
de1d24021b
set ELM_DISPLAY appropriately for wayland compositors
2015-07-30 16:29:25 -04:00
Mike Blumenkrantz
847d3fe358
reject internal window moves when they originate from a wl configure event
...
fixes a number of internal win positioning issues
2015-07-30 16:22:08 -04:00
Mike Blumenkrantz
24ec288b3c
remove spurious focus setting on desk flip without animation
...
focus gets automatically handled in e_desk_flip_end(). changing it
again here will produce unintended/wrong results in some cases
fix T2071
2015-07-29 19:47:49 -04:00
Mike Blumenkrantz
9ad208bfb8
add fallback loading of default theme on init
...
this should fix cases where whatever the user-set theme is doesn't provide
a required group by filling it in
fix T2210
2015-07-29 17:41:21 -04:00
Mike Blumenkrantz
7848947ea0
Revert "remove unnecessary geometry setting during xwl client swap"
...
This reverts commit ae1fc10d06
.
not unnecessary if the client has already been shown. fixes xwl menus
randomly showing up at 0,0
2015-07-29 15:40:02 -04:00
Mike Blumenkrantz
cd0e11c8c3
fix new_client setting on xwl clients during swap
2015-07-29 15:39:39 -04:00
Mike Blumenkrantz
1496b3db7b
don't reset wayland surface geometry for overrides
2015-07-29 15:38:17 -04:00
Mike Blumenkrantz
01ba4eea55
end compositor animations for dead clients on hide
...
fixes a huge object leak in xwayland related to menus
2015-07-29 15:25:22 -04:00
Mike Blumenkrantz
e5d367292f
return immediately on wayland focus-in key timer when no focused kbds exist
2015-07-28 17:36:13 -04:00
Mike Blumenkrantz
c9e35cc0f9
do not call ecore_time_unix_get() on each key sending loop for wayland clients
2015-07-28 17:34:58 -04:00
Derek Foreman
fea72d5fcd
wayland: Only send keyboard modifiers to focused resources
...
Summary: We were sending them to anything that bound a wl_keyboard.
Reviewers: zmike
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D2879
2015-07-28 17:12:57 -04:00
Mike Blumenkrantz
8278e20183
reduce delay before running screensaver-off animations in wayland
...
this feels a bit more natural while still displaying animations after dpms
has finished cycling
2015-07-28 16:58:53 -04:00
Mike Blumenkrantz
42bc9b0bef
disable ecore-evas events on client windows during actions
...
this is a not-great way of hacking around various issues related to
the efl mouse button cancel patches that went in for the 1.15 cycle
which changed the entire mouse input workings of the toolkit.
to avoid further issues, the compositor will explicitly block eventing
on all internal canvases during actions
2015-07-28 16:46:00 -04:00
Mike Blumenkrantz
f7ca0b5791
disable x11 mouse eventing in wayland compositor mode
...
these events are delegated directly by the compositor. anything that
is told to us by x11 may or may not be the case and we shouldn't care
either way
2015-07-28 15:59:19 -04:00