Commit Graph

82 Commits

Author SHA1 Message Date
Christopher Michael aae18b4dd9 Ecore_Wayland: More fixes for recent wayland changes.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 78056
2012-10-16 11:57:25 +00:00
Christopher Michael d8301202a0 Ecore_Wayland: Don't need to use display_dispatch_pending here, and
fix the data_handler callback so we receive events from the weston
compositor.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 78055
2012-10-16 11:57:22 +00:00
Christopher Michael b90b94709a Ecore_Wayland: Change Input to use wl_registry functions and not
wl_display_bind.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 78054
2012-10-16 11:57:19 +00:00
Christopher Michael ac7e3bfe64 Ecore_Wayland: Fix binding of output.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 78052
2012-10-16 11:57:13 +00:00
Christopher Michael e1c5667826 Ecore_Wayland: Be sure to call wl_surface_commit after we damage a
surface.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 78051
2012-10-16 11:57:10 +00:00
Christopher Michael cc85b42a0d Ecore_Wayland: Update ecore_wayland to work with most recent Wayland
from their git repo. This changes the way events are dispatched, and
adds the new wl_registry listeners in place of
wl_display_add_global_listener. Also fixes calls to non-existant
wl_display_iterate. Fixes binding the various Wayland interfaces
(compositor, shell, etc). Fixes binding of output and input.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 78050
2012-10-16 11:57:06 +00:00
Christopher Michael 8f1abe4a2c Ecore_Wayland: Add wl_registry to the Ecore_Wayland_Display structure.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 78049
2012-10-16 11:57:03 +00:00
Eduardo Lima (Etrunko) 8a014153d4 Wayland_SHM: Add listener to frame callback
This is the method necessary to synchronize Wayland and Evas rendering, similar
to vblank sync that is used in X11. This solves the Wayland SHM render issues
(tearing effect) without the need to add double buffering to the engine.

In a near future, the SHM implementation will feature double (or triple)
buffering and this syncrhonization mechanism will be changed to be optional.

Patch based on the work started by Robert Bradford on ticket #1280
http://trac.enlightenment.org/e/ticket/1280

Signed-off-by: Eduardo Lima (Etrunko) <eduardo.lima@intel.com>



SVN revision: 77580
2012-10-08 14:22:17 +00:00
Sebastian Dransfeld 89d1fdb265 ecore_wayland: Remove unneeded header
Already included by ecore_wl_private.h

SVN revision: 77548
2012-10-06 17:10:58 +00:00
Sebastian Dransfeld b111a5046e ecore_wayland: Make modifiers correctly at once
SVN revision: 77546
2012-10-06 15:58:27 +00:00
Sebastian Dransfeld a91fd04ead ecore_wayland: Use correct modifier flags
Events should use ECORE_EVENT_MODIFER_* flags...

SVN revision: 77534
2012-10-05 13:46:35 +00:00
Christopher Michael e7d8ab323c Ecore_Wayland: Add Copy-n-Paste support for Ecore Wayland.
NB: Based on initial work from Alex <zhiwen.wu@intel.com> (thanks for
the patch), but modified to clean up compiler warnings, fixed function 
declarations, fixed function namespacing.



SVN revision: 75809
2012-08-29 06:35:02 +00:00
Christopher Michael b47d9a1ce4 Ecore (Wayland): Work around bug in terminology ;) by making sure that
a Tab, when pressed, sends the proper key string.



SVN revision: 75617
2012-08-23 11:25:45 +00:00
Christopher Michael 0ef94e328e Ecore_Wayland: small patch from Alex wu <zhiwen.wu@linux.intel.com> to
implement touch events in ecore_wayland.



SVN revision: 75556
2012-08-22 15:53:29 +00:00
Christopher Michael 89fe05d03a Ecore_Wayland: Add some trapping to make sure we have a valid window
before trying to read a window id.



SVN revision: 75374
2012-08-17 08:52:35 +00:00
Christopher Michael 1278ec57bf Ecore_Wayland: If user tries to set a cursor name, but this cursor
does not exist in the current theme, then fallback to default left
pointer image.



SVN revision: 75315
2012-08-16 09:53:05 +00:00
Christopher Michael bdfd355e38 Ecore_wayland: Add a FIXME note to be tackled later.
SVN revision: 75314
2012-08-16 09:46:26 +00:00
Christopher Michael 6423de3f17 Ecore_Wayland: Fix always resetting the wayland pointer surface to
default when we get a mouse move. Now we will store the current
cursor, so it can be restored later (this is part of a bug fix for
#1293).



SVN revision: 75312
2012-08-16 09:37:52 +00:00
Christopher Michael cde4673abe Ecore_Wayland: Add alpha field to window structure, add cursor_name to
input structure.

These are required for fixes to _set_alpha/transparent, and upcoming
cursor fixes.



SVN revision: 75311
2012-08-16 09:35:41 +00:00
Christopher Michael 7a90ffb3b6 Ecore_Wayland: Fix ticket 1252 and stop segfaulting when we don't have
a keyboard or pointer interface available for drag-n-drop.



SVN revision: 75295
2012-08-15 14:01:20 +00:00
Christopher Michael 5e84f194e6 Ecore_Wayland: Only set the window allocated size if it is not a
fullscreen window. On a configure event, do not reset the allocated
size (this will be calculated and set later).



SVN revision: 75292
2012-08-15 10:02:22 +00:00
Christopher Michael 1b96e67e75 Ecore_Wayland (egl): Update server allocation when window allocation
changes.



SVN revision: 75213
2012-08-13 14:30:58 +00:00
Christopher Michael a5e2b68c69 Ecore_Wayland: Add keyrepeating support :) Fixes ticket #1292
This commit adds support to efl applications (elm) under wayland so
that they can get key repeats. All of this is internal and does not
require the application to do anything, which means the elm test for
notepad now works with repeating keys.



SVN revision: 75037
2012-08-09 09:57:47 +00:00
Christopher Michael 33d4af1e18 Ecore_Wayland: When we unmaximize windows, used the saved allocation
sizes. When setting a window to be not transparent, recreate the
opaque region if needed.



SVN revision: 75004
2012-08-08 10:06:12 +00:00
Christopher Michael 1699490f15 Ecore_Wayland: Add missing __UNUSED__ to function paramateres ... Oh,
and also Fix Ticket #1242 where windows would resize in an incorrect
direction.

When resized an elm client application in Weston, and you grabbed the
top of the window to resize it, all resizing action was occuring from
the bottom of the window. Let's fix that ;) Now when you grab the top
of the window and resize it, it actually does resize from the top :)



SVN revision: 74933
2012-08-06 13:13:42 +00:00
Christopher Michael 8123853195 Ecore_wayland: Add myself a FIXME note for after the "freeze".
SVN revision: 74930
2012-08-06 12:31:05 +00:00
Christopher Michael ac4eb64015 Ecore (Wayland): Patch from Robert Bradford to check for valid
surfaces for events received from Wayland where the surface has
already been destroyed.



SVN revision: 74847
2012-08-03 13:27:05 +00:00
Christopher Michael cc6d6f0091 Ecore_Wayland: Use libxkbcommon function to map keysym to unicode
charachters.

Patch from Robert Bradford. Fixes ticket #1105



SVN revision: 74780
2012-08-02 06:43:20 +00:00
Christopher Michael 3e61fd8917 Ecore_Wayland: Test for a valid surface before we try to process the
pointer_enter event.



SVN revision: 74419
2012-07-26 07:23:32 +00:00
Christopher Michael a32308d4e8 Ecore_wayland: Fix calls to update_modifier state and pass the proper
paramaters. Only set input & opaque regions during resize.



SVN revision: 74325
2012-07-23 14:04:17 +00:00
Christopher Michael de6cfa77b3 Ecore_Wayland: Update geometry callback function to match new changes
in wayland. Now passes in a 'transform' also.



SVN revision: 74319
2012-07-23 09:31:49 +00:00
Christopher Michael 1625fc9b91 Ecore_Wayland: Fix some typos in the doxygen with regard to dpi get.
Add a comment pending future investigation with regard to how dpi is
calculated here.



SVN revision: 73351
2012-07-05 14:06:20 +00:00
Christopher Michael 5ef3b00eaf Ecore_Wayland: Updates to work with latest Wayland:
Add pointer frame callback. Add pointer surface listener.
  Use doubles for input surface position.
  Fix dnd function prototype to use wl_data_offer now.
  Fix dnd_add function to not use proxy_create anymore.
  Fix regression where window resizing down would leave artifacts.
    - Need to update the window allocation size before attaching the
new buffer.
  Fix set_transient & set_popup to use the parent surface, not the
shell surface.



SVN revision: 73254
2012-07-04 07:16:29 +00:00
Christopher Michael 0c4febd6f2 Ecore_Wayland: Patches from Rob Bradford to fix ticket(s): 1030 & 1031
Ecore_Wayland: Drop the unused timestamp from the configure event
Ecore_Wayland: Port to updated Wayland API
The cursor on the pointer is now a Wayland surface rather than a buffer.



SVN revision: 72381
2012-06-18 10:48:29 +00:00
Christopher Michael 19e75367b0 Ecore_Wayland: Patch from Rob Bradford to add missing NULL checks for
ecore_wl_input.



SVN revision: 71957
2012-06-11 17:11:38 +00:00
Christopher Michael a4114e2aa8 Ecore_Wayland: Patch from Rob Bradford <rob@linux.intel.com> for
updating axis events to be fixed point numbers.



SVN revision: 71756
2012-06-06 14:10:43 +00:00
Christopher Michael f636cb730c Ecore_Wayland: Add patch from Rob Bradford <rob@linux.intel.com> to
enhance keyboard input handling.

* Associate the keymap with the input device rather than the display
since you could could have different keymaps associated with different
devices.

* Increase the size of character arrays used for the string
representations of
the keyname, keysym and for the string representing the key.

* Re-enable the code that converts the keysym to a printable
definition - this
is required where the keysym is not the same as the printable definition



SVN revision: 71750
2012-06-06 13:20:02 +00:00
Christopher Michael 0f378c9331 Ecore_Wayland: Use the input's pointer_enter_serial instead of
timestamp for setting pointer image.



SVN revision: 71748
2012-06-06 12:55:53 +00:00
Rob Bradford b170d36865 Ecore_Wayland: Update to latest wayland git and add support for keymap
& modifier change(s). Also, add patches from Rob Bradford
<rob@linux.intel.com> for basic support for setting wayland cursor:

From c5d9094f4792bf7375c216682947de334002cdad Mon Sep 17 00:00:00 2001
From: Rob Bradford <rob@linux.intel.com>
Date: Tue, 29 May 2012 16:35:01 +0100
Subject: [PATCH] Ecore_Wayland: Add basic support for setting the cursor

* Add api to the ecore_wl_input_ namespace to allow setting the buffer
to use
for the pointer and for loading a named cursor from a cursor theme.
Under the
Wayland protocol the cursor is associated with the input device.

* Add helper functions to ecore_wl_window to set the cursor based on the
active pointer input device for the window.

* Load the cursor theme when the SHM interface is ready and provide an
API
call to provide a wl_cursor for a given name.

* Add API to restore to the default cursor and then use that when the
pointer
enters the surface to ensure compliance with the Wayland protocol.

Cheers :)



SVN revision: 71734
2012-06-06 08:18:58 +00:00
Christopher Michael 7d9ec3120f Ecore_Wayland: Fix global interface name, thanks Alex ;)
SVN revision: 71350
2012-05-23 08:01:15 +00:00
Christopher Michael c88aa2ff08 Ecore_Wayland: Add patch from Alex Wu <zhiwen.wu@linux.intel.com> for
changing Ecore_Wayland input to match current Wayland git (wrt wl_set
changes).

Thanks Alex :)



SVN revision: 71306
2012-05-22 08:17:30 +00:00
Christopher Michael 6c4fd25e58 Ecore_Wayland: Quiet down output for robster ;)
SVN revision: 71201
2012-05-17 13:55:14 +00:00
Christopher Michael 14681a29cf Ecore_Wayland: Update ecore_wayland to work with recent wayland git:
This commit also includes patch(s) from Robert Bradford
<robert.bradford@intel.com> for Supporting vertical/horizontal
scrolling, and updates to wayland fixed point for input events.

Fix ecore_wl_input to use new libxkbcommon api.
Add new surface_enter/leave listener for ecore_wl_window.



SVN revision: 71107
2012-05-15 11:58:21 +00:00
Christopher Michael 86cc4ef357 Ecore_Wayland: Patch from Robert Bradford (rob@linux.intel.com) for
Complete support for keyboard events. Thank You :)

NB: This is a modified patch from what Rob originally sent. This fixes
formatting, uint32_t types, function name, and other such things ;)



SVN revision: 70672
2012-05-02 18:04:40 +00:00
Carsten Haitzler b57b9f5fea make notes about wayland stuff being experimental. we cant really back
it until wayland itself is stable. warnings. lets hope it all works
out fine in the end.



SVN revision: 70486
2012-04-26 03:42:41 +00:00
Christopher Michael 0a889a10c5 Ecore_Wayland: Cleanup header inclusions. Fix issues with efl wayland
clients not moving or resizing properly with most recent git wayland.
Make use of wayland's new 'serial' stuff in place of timestamps (where
appropriate). Add code to handle new wayland 'ping' events.



SVN revision: 70443
2012-04-24 16:59:35 +00:00
Jonas M. Gastal a1e12eddbb Cleanup Doxygen Warnings - ecore 4
Files modified:
ecore/src/lib/ecore_wayland/ecore_wl_window.c
ecore/src/lib/ecore_x/xcb/ecore_xcb.c
ecore/src/lib/ecore_x/xcb/ecore_xcb_randr.c
ecore/src/lib/ecore_x/xcb/ecore_xcb_window.c
ecore/src/lib/ecore_x/xcb/ecore_xcb_window_shadow.c
ecore/src/lib/ecore_x/xlib/ecore_x.c
ecore/src/lib/ecore_x/xlib/ecore_x_randr_12.c
ecore/src/lib/ecore_x/xlib/ecore_x_window.c
ecore/src/lib/ecore_x/xlib/ecore_x_window_prop.c

SVN revision: 70424
2012-04-23 20:09:55 +00:00
Christopher Michael fc0ec643ca Ecore_Wayland: Update ecore_wayland client code to handle using
'serial' rather than timestamp. Trap in ecore_wl_screen_size_get for
the case where display->output is NULL.



SVN revision: 70282
2012-04-17 21:55:25 +00:00
Christopher Michael ccb5d642bd Ecore_Wayland: Update to latest wayland from git.
SVN revision: 70280
2012-04-17 19:06:23 +00:00
Christopher Michael 5d4554996f Ecore_Wayland: Rework ecore_wayland to match current wayland git wrt
pointer grabs, shm_pool interface. Rename fields of the
wl_event_mouse_in/out structures to match other ecore event structs.
Add API functions for getting a list of outputs, for getting a windows
shell_surface, and for setting a windows parent.



SVN revision: 69997
2012-04-10 17:00:56 +00:00