Chris Michael
8287202c43
ecore-wl2: Don't free display structure during display cleanup function
...
Due to reference caching, we cannot free the display structure here
yet. During calls to ecore_wl2_display_destroy (or others), if the
number of references reaches zero, then we end up calling
wl_display_destroy (or equivelant). If we free our display structure
during cleanup function, then calls to wl_display_destroy will cause a
segfault as our display->wayland_display has already been freed from
the structure
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-07 10:00:23 -05:00
Mike Blumenkrantz
d2a7882b73
ecore-wl2: fix use after free and leak when deleting display object
...
ref T2919
2015-12-05 13:06:03 -05:00
Mike Blumenkrantz
f50a434bd1
ecore-wl2: apply same deferred shell surface creation as ecore-wayland
...
new wheel meets old wheel.
ref 265ad8b5d0
2015-12-04 19:06:51 -05:00
Mike Blumenkrantz
022dda2f68
ecore-wl2: handle null global has in ecore_wl2_display_globals_get()
2015-12-04 19:06:48 -05:00
Chris Michael
ba10e3547c
ecore-wl2: Start on implementing support for multi-seat
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:05:01 -05:00
Chris Michael
2aecd1ec48
ecore-wl2: Cancel data callback if we have a fatal error
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:05:01 -05:00
Chris Michael
cb04220ca3
ecore-wl2: Add support for handling Fatal Errors
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:03:35 -05:00
Chris Michael
8196913b15
ecore-wl2: Add caching of server displays and fix issue of client
...
connecting to same server pid
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:03:35 -05:00
Chris Michael
ad5f93b521
ecore-wl2: Client connections do not need to listen for a write event
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:03:35 -05:00
Chris Michael
be32567dfb
ecore-wl2: Also listen for write events when creating a compositor
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:03:35 -05:00
Chris Michael
59d1491929
ecore-wl2: Fix event processing for client connections
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:03:35 -05:00
Chris Michael
5a13b093b5
ecore-wl2: Connect to proper name during ecore_wl2_display_connect
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:03:35 -05:00
Chris Michael
ede679b7bd
ecore-wl2: Don't re-add existing globals
...
If we already have seen this global, and it is in the globals hash,
then don't re-add it and just jump straight to sending the event
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:03:35 -05:00
Chris Michael
8f338af511
ecore-wl2: Remove all code relating to custom window animators
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:03:35 -05:00
Chris Michael
47cd4d4168
ecore-wl2: Fix issue of compositors not flushing clients properly
...
Summary: When we use ecore_wl2 for creating compositors (E), we need
to flush clients before we dispatch events on the wl loop, so add a
prepare_callback for the fd handlers and flush clients there.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
8683c6ecf6
ecore-wl2: Implement reference counting for client connected displays
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
3dc45d4945
ecore-wl2: Cache client displays and reuse them to reduce memory usage
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
fbfe60751d
ecore-wl2: Set WAYLAND_DISPLAY env variable when we create a display
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Derek Foreman
497b9c045e
ecore-wl2: cache the registry
...
wl_get_registry() returns a new object that we must destroy, so
we should cache one at connect and never call that again.
Signed-off-by: Derek Foreman <derekf@osg.samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
b89c45dbf9
ecore-wl2: Add support for idle_enterer
...
Summary: This fixes an issue where scrolling mouse wheel would not
actually perform any scroll until another event was received.
NB: Unsure if we need this for "server" connections yet
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
6c16d7967b
ecore-wl2: Use proper wayland function to get display registry
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
d4c312ecce
ecore-wl2: Cleanup wayland objects on display cleanup
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
9a9d120c44
ecore-wl2: Cleanup inputs on display disconnect/destroy
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
35710fa919
ecore-wl2: Add API function to return the registry of a display
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
518b97cc1c
ecore-wl2: Add API function to find a window given a window id
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
41f6e1f505
ecore-wl2: Add display to global event structure
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
76a06f300f
ecore-wl2: Fix issue of animators not starting
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
25390920be
ecore-wl2: Add API function to retrieve screen size
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
ffa12c3820
ecore-wl2: Fix not sending compositor reguests when we use
...
ecore_wl2_display_connect
Summary: If we do Not listen for ECORE_FD_WRITE on the file descriptor
handler, then we never send a wl_display_flush which means we don't
send requests to the compositor and thus nothing ever renders. Fix
that by listening for FD_WRITE and calling wl_display_flush.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
90217c80fc
ecore-wl2: Add implementation for supporting custom tick animators
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
2a973da77b
ecore-wl2: Add function to find a window based on surface
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
bcd949fa03
ecore-wl2: Add start of Ecore_Wl2_Input code
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
70aa5a9a34
ecore-wl2: Add support for xdg shell listener
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
d722b41e1a
ecore-wl2: Add start of Ecore_Wl2_Output code for outputs
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
5df31145ad
ecore-wl2: Add a listener for display sync when connect is called
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
88e47d7def
ecore-wl2: Add API function to return an iterator for display globals
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
f5e35519b3
ecore-wl2: Group connect and disconnect functions together
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
93ea0b172c
ecore-wl2: Add internal function to cleanup Ecore_Wl2_Display when closed
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
98706f0157
ecore-wl2: Add API function for servers to terminate wayland display main loop
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
6b14714b56
ecore-wl2: Create new xkb context for each display when connected
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
a079b10224
ecore-wl2: Add API function for servers to destroy a wayland display
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
5e3a9860aa
ecore-wl2: Add API function for clients to disconnect from a Wayland display
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
3a708abdf4
ecore-wl2: Add API function to return the wl_shm interface
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
963b1da5f1
ecore-wl2: Call wl_event_loop_dispatch with a 0 timeout
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
54a0345503
ecore-wl2: Add support for binding various wayland interfaces
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
31bf92dbbd
ecore-wl2: Add API function to return wl_display
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
93f17dec58
ecore-wl2: Modify ecore_wl2_display_create to take an optional socket name
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
81c120db14
ecore-wl2: Start on code to handle globals being added or removed
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
e4f4d52cf3
ecore-wl2: Add start of opaque Ecore_Wl2_Display structure
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael
8c8334ad2d
ecore-wl2: Add ecore_wl2_display file to build order
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00