platform/upstream/enlightenment.git
9 years agofix e_screensaver_update compiler warnings when building for
Chris Michael [Thu, 28 Aug 2014 16:30:29 +0000 (12:30 -0400)]
fix e_screensaver_update compiler warnings when building for
wayland-only

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agofix unused variable if building for wayland-only
Chris Michael [Thu, 28 Aug 2014 16:22:09 +0000 (12:22 -0400)]
fix unused variable if building for wayland-only

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoremove call to show pointer during canvas_new function
Chris Michael [Thu, 28 Aug 2014 16:10:09 +0000 (12:10 -0400)]
remove call to show pointer during canvas_new function

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agodestroy pointer when destroying window since we create new pointers
Chris Michael [Thu, 28 Aug 2014 15:39:25 +0000 (11:39 -0400)]
destroy pointer when destroying window since we create new pointers
for every window again.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoadd fixme note
Chris Michael [Thu, 28 Aug 2014 15:36:38 +0000 (11:36 -0400)]
add fixme note

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoTiling: Respect min size hints (set to floating if doesn't fit).
Tom Hacohen [Thu, 28 Aug 2014 15:30:17 +0000 (16:30 +0100)]
Tiling: Respect min size hints (set to floating if doesn't fit).

This fix floats all the windows that don't fit because of their min size
restrictions.
It can be made better, at the moment it is very simple. An example
broken case would be the following:
Assume we have 3 windows, A, B and C.
B and C both hand a min width of half the screen.

First we create A, then B. Everything works as they share the screen,
but when we add C, both B's and C's restrictions "fail" so they are both
set to float although in reality, floating C is enough. This can be
fixed by doing a live scan of the tree every time a window is floated,
though it's not essential at the moment.

Fixes T952.

9 years agofix pointer for stupid X11...but this breaks pointers in wayland (for
Chris Michael [Thu, 28 Aug 2014 15:10:07 +0000 (11:10 -0400)]
fix pointer for stupid X11...but this breaks pointers in wayland (for
now) :(

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agocreate window pointer based on compositor type
Chris Michael [Thu, 28 Aug 2014 15:08:36 +0000 (11:08 -0400)]
create window pointer based on compositor type

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agofix X compositor to use e_pointer_window_new
Chris Michael [Thu, 28 Aug 2014 15:01:46 +0000 (11:01 -0400)]
fix X compositor to use e_pointer_window_new

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoadd back 'pixels' field structure for pointer
Chris Michael [Thu, 28 Aug 2014 15:00:22 +0000 (11:00 -0400)]
add back 'pixels' field structure for pointer

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoCheck whether attached buffer exists, before using it.
MinJeong Kim [Wed, 27 Aug 2014 12:24:26 +0000 (08:24 -0400)]
Check whether attached buffer exists, before using it.

Summary:
Because attached buffer can be NULL for removing surface content,
check of pending.buffer should be done before getting resource value of the buffer.

Reviewers: devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1370

9 years agoadd missing 'pragma GCC diagnostic push'
Jérémy Zurcher [Wed, 27 Aug 2014 07:22:27 +0000 (09:22 +0200)]
add missing 'pragma GCC diagnostic push'

9 years agouse a new e_pointer for the window canvas
Chris Michael [Tue, 26 Aug 2014 18:36:57 +0000 (14:36 -0400)]
use a new e_pointer for the window canvas

This fixes an issue where internal dialogs were not using the e
cursors but would default back to an x cursor

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agobe sure to send the wl_data_device_send_enter when changing surface
Chris Michael [Tue, 26 Aug 2014 18:11:28 +0000 (14:11 -0400)]
be sure to send the wl_data_device_send_enter when changing surface
focus and add some more debugging for dnd

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agotrap return value of shm_buffer_get
Chris Michael [Tue, 26 Aug 2014 18:06:57 +0000 (14:06 -0400)]
trap return value of shm_buffer_get

This function Can fail to return an shm_buffer if the buffer_resource
is an EGL buffer.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoAdd checks for client being a wl pixmap in some functions
Chris Michael [Mon, 25 Aug 2014 14:22:31 +0000 (10:22 -0400)]
Add checks for client being a wl pixmap in some functions

If we don't do this, then when we run in X11 with wl client support,
we crash in various places (iconify, etc) when trying to work with
normal X clients.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agofix dereference of incomplete pointer type
Chris Michael [Mon, 25 Aug 2014 13:51:49 +0000 (09:51 -0400)]
fix dereference of incomplete pointer type

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoFix formatting
Chris Michael [Mon, 11 Aug 2014 13:35:14 +0000 (09:35 -0400)]
Fix formatting

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agowl-x11: Declare keyboard strings as NULL (initially) to avoid crash
Chris Michael [Thu, 7 Aug 2014 16:24:42 +0000 (12:24 -0400)]
wl-x11: Declare keyboard strings as NULL (initially) to avoid crash
when updating keymap

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agomove wl client_resize protocol calls to idler
Mike Blumenkrantz [Tue, 5 Aug 2014 14:16:16 +0000 (10:16 -0400)]
move wl client_resize protocol calls to idler

9 years agoautomatically enable pointer and keyboard for wayland-in-X
Mike Blumenkrantz [Mon, 4 Aug 2014 18:54:09 +0000 (14:54 -0400)]
automatically enable pointer and keyboard for wayland-in-X

9 years agoreuse existing render post callback for wayland clients
Mike Blumenkrantz [Mon, 4 Aug 2014 14:20:45 +0000 (10:20 -0400)]
reuse existing render post callback for wayland clients

9 years agoFix elm apps crashing from invalid e_remember
Chris Michael [Sun, 3 Aug 2014 14:34:38 +0000 (10:34 -0400)]
Fix elm apps crashing from invalid e_remember

Don't set changes.icon during surface creation. There are functions
that get called when icccm.class changes and That is the place to set
changes.icon.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
Additional authors: zmike

9 years agoFix inproper setting of window type during transient_set.
Chris Michael [Sun, 3 Aug 2014 13:41:44 +0000 (09:41 -0400)]
Fix inproper setting of window type during transient_set.

This fixes the issue of some wayland applications always showing up
with the e_border visible.

If we get a transient_set from wl_shell or xdg_shell, don't reset the
client's netwm.type. Some wayland applications are sending us
transient_set with parent to NULL....so don't explicitly set the
netwm.type to dialog.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoReduce usage of EC_CHANGED.
Chris Michael [Sun, 3 Aug 2014 13:40:15 +0000 (09:40 -0400)]
Reduce usage of EC_CHANGED.
Lock subsurface border type to borderless.
Remove commented out code.
Don't mark border.changed during pre_frame callback.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoreorder client idler and stacking functions so we can call them after
Chris Michael [Tue, 29 Jul 2014 20:26:48 +0000 (16:26 -0400)]
reorder client idler and stacking functions so we can call them after
post_move.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoReduce potential of unnecessary function calls:
Chris Michael [Tue, 29 Jul 2014 17:30:15 +0000 (13:30 -0400)]
Reduce potential of unnecessary function calls:
 - When we are doing client eval, don't check for Just changes in
property OR fetching. Rather we will check using an AND.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoSimplify both transient_set functions (wl_shell and xdg_shell).
Chris Michael [Tue, 29 Jul 2014 17:28:20 +0000 (13:28 -0400)]
Simplify both transient_set functions (wl_shell and xdg_shell).
Remove debugging noise.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoRemove NULL checks for valid client->comp_data ... let the crashing begin !!
Chris Michael [Tue, 29 Jul 2014 12:49:07 +0000 (08:49 -0400)]
Remove NULL checks for valid client->comp_data ... let the crashing begin !!

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoAdd ERR messages for EINTERN & EAPI functions.
Chris Michael [Tue, 29 Jul 2014 12:39:53 +0000 (08:39 -0400)]
Add ERR messages for EINTERN & EAPI functions.
Remove NULL checks ... let the crashing begin !!

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoAdd error messages in EINTERN & EAPI functions.
Chris Michael [Tue, 29 Jul 2014 12:35:28 +0000 (08:35 -0400)]
Add error messages in EINTERN & EAPI functions.
Remove NULL checks ... let the crashing begin !!

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoRemove unwanted NULL check in internal function
MinJeong Kim [Tue, 29 Jul 2014 12:16:14 +0000 (08:16 -0400)]
Remove unwanted NULL check in internal function

Summary: Remove unwanted NULL check in internal function.

Reviewers: gwanglim, devilhorns, zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1250

9 years agoclear parent's list of transients, when set parent to NULL.
Seunghun Lee [Sat, 26 Jul 2014 14:13:02 +0000 (10:13 -0400)]
clear parent's list of transients, when set parent to NULL.

Summary: we also need to clear parent's resource.

Test Plan: N/A

Reviewers: devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1238

9 years agowl-desktop-shell: Avoid runtime ERR noise for something that is not
Chris Michael [Thu, 24 Jul 2014 18:34:36 +0000 (14:34 -0400)]
wl-desktop-shell: Avoid runtime ERR noise for something that is not
really an error.

When we call shell_surface_parent_set with a NULL parent resource,
then there is No reason to try and find the pixmap window of a NULL
parent. Avoid that function call and just set the appropriate
properties and get out.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoFix building Enlightenment for X11-only, Wayland-Only, and X11 with Wayland clients.
Mike Blumenkrantz [Mon, 4 Aug 2014 16:58:49 +0000 (12:58 -0400)]
Fix building Enlightenment for X11-only, Wayland-Only, and X11 with Wayland clients.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
Additional authors: Chris Michael <cp.michael@samsung.com>

9 years agohandle setting any pending opaque regions during surface commit and
Chris Michael [Fri, 18 Jul 2014 06:46:42 +0000 (02:46 -0400)]
handle setting any pending opaque regions during surface commit and
cleanup the input region code also

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agofix return variable type from e_pixmap_window_get function
Chris Michael [Mon, 21 Jul 2014 15:10:16 +0000 (11:10 -0400)]
fix return variable type from e_pixmap_window_get function

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agochange client transient_for id to uint64_t
Chris Michael [Mon, 21 Jul 2014 15:08:59 +0000 (11:08 -0400)]
change client transient_for id to uint64_t

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agowl_drm: Add short block to mark setup for drm egl rendering
Chris Michael [Wed, 16 Jul 2014 19:38:40 +0000 (15:38 -0400)]
wl_drm: Add short block to mark setup for drm egl rendering

When the new drm hw accel engine is ready, we can replace this little
bit of code and have hardware-accelerated drm.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoAdd simple clipboard based on wayland protocol
MinJeong Kim [Wed, 16 Jul 2014 15:48:14 +0000 (11:48 -0400)]
Add simple clipboard based on wayland protocol

Summary:
Whenever any client requests new selection_set,
the data is saved to server-side clipboard directly on this revision.
So data device is able to keep data which is copied from client app have closed already
and is able to provide those data to new focused surface before coming new selection_set request.

Reviewers: devilhorns

Subscribers: cedric, gwanglim

Differential Revision: https://phab.enlightenment.org/D1165

9 years agoImplement wayland subsurface support based on E_Client.
Seunghun Lee [Wed, 16 Jul 2014 14:54:57 +0000 (10:54 -0400)]
Implement wayland subsurface support based on E_Client.

Summary: Support subsurface interface of wayland.

Test Plan:
1. Build enlightenment on devs/devilhorns/e_comp_wl branch.
2. Run enlightenment.
3. Run weston-subsurfaces
   - should be built after removing code of gl surface (not yet implemented)
   - just comment out the line egl_state_create in function of demoapp_create()

Reviewers: gwanglim, devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1182

9 years agoAdd missing wl_resource_destroy
Gwanglim Lee [Wed, 16 Jul 2014 14:37:18 +0000 (10:37 -0400)]
Add missing wl_resource_destroy

Summary:
There are no resource free codes in xdg shell destroy handler
and xdg popup destroy handler. e should delete wayland resource as
client requested.

Test Plan:
1. run e as wayland server
2. run weston-stacking in e
3. click with right mouse button to create xdg popup surface
4. click main surface area to delete xdg popup surface

Reviewers: devilhorns, zmike, raster

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1196

9 years agoDon't run xrdb or xmodmap when we are wayland only
Chris Michael [Tue, 15 Jul 2014 15:00:46 +0000 (11:00 -0400)]
Don't run xrdb or xmodmap when we are wayland only

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agomove the part of code for fetch transient_for in eval time to _e_shell_surface_parent...
Seunghun Lee [Fri, 11 Jul 2014 13:15:22 +0000 (09:15 -0400)]
move the part of code for fetch transient_for in eval time to _e_shell_surface_parent_set().

Summary:
we need to set ec->parent before eval time.
that's because client can request to commit surface calling shell.configure() before eval time.
in this case, ec->parent isn't set yet, configure(move) will be failed.

in order to fix it, we have to set ec->parent in _e_shell_surface_parent_set() before eval time,
but we should check if ec already have parent, and if so, remove its parent's transients before change the value of ec->parent.

Test Plan: N/A

Reviewers: devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1177

9 years agoremove EINA_UNUSED in move and resize callbacks
Gwanglim Lee [Thu, 10 Jul 2014 15:19:56 +0000 (11:19 -0400)]
remove EINA_UNUSED in move and resize callbacks

Summary: remove EINA_UNUSED from used function parameters

Test Plan: N/A

Reviewers: devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1173

9 years agoFixed trying to create damage area with 0x0 size
MinJeong Kim [Thu, 10 Jul 2014 13:38:30 +0000 (09:38 -0400)]
Fixed trying to create damage area with 0x0 size

Summary:
This revision fixed failure to create damage area using Eina_Tiler on surface damage callback.
It was caused by trying to create Eina_Tiler with 0x0 size which is from size of E_Client.

Test Plan:
1. Run elementary_test.
2. Select one of the test apps.(no more magic fail message)

Reviewers: zmike, devilhorns

Reviewed By: devilhorns

Subscribers: cedric, gwanglim

Differential Revision: https://phab.enlightenment.org/D1171

9 years agoremove setting ec->parent before evaluation.
Seunghun Lee [Wed, 9 Jul 2014 15:20:15 +0000 (11:20 -0400)]
remove setting ec->parent before evaluation.

Summary:
the value of "ec->parent" should be set in evaluation time,
therefore ec->parent->transients will be reset automatically.

Reviewers: devilhorns

CC: cedric
Differential Revision: https://phab.enlightenment.org/D1155

9 years agoAdd focus surface setting of keyboard for copy and paste between clients
MinJeong Kim [Wed, 9 Jul 2014 15:06:25 +0000 (11:06 -0400)]
Add focus surface setting of keyboard for copy and paste between clients

Summary:
To enable copy and paste between clients,
wayland data device requires to know what surface is focused.
So this revision have make keyboard get focused surface when client is focused or unfocused,
and create data_offer for new focused surface in order to let new focused surface be able to get data from current selection data_source.

Test Plan:
1. Run wayland server
2. Run elementary_test -to entry5 on wayland server.
3. Run elementary_test -to entry5 on wayland server again. (preparing two clients)
4. Copy text on one of clients, and paste to the other.

Reviewers: devilhorns

CC: gwanglim, cedric
Differential Revision: https://phab.enlightenment.org/D1157

9 years agofix crash when client in wayland request to set parent to null.
Seunghun Lee [Wed, 9 Jul 2014 14:52:26 +0000 (10:52 -0400)]
fix crash when client in wayland request to set parent to null.

Summary: Clear the E_Client's parent if client request to set parent to null.

Test Plan: run weston-stacking.

Reviewers: devilhorns

CC: cedric
Differential Revision: https://phab.enlightenment.org/D1154

9 years agoAdded conversion for image format to ARGB from XRGB for wayland. evas_object_image_da...
Seunghun Lee [Mon, 7 Jul 2014 13:55:45 +0000 (09:55 -0400)]
Added conversion for image format to ARGB from XRGB for wayland. evas_object_image_data_set will be used instead of evas_object_image_data_copy_set.

Summary: this patch will provide to launch the application based on XRGB8888 like weston-simple-shm.

Test Plan: launch weston-simple-shm

Reviewers: devilhorns, zmike, raster

CC: cedric
Differential Revision: https://phab.enlightenment.org/D1137

9 years agoChange time unit to milli-second from second when send event of frame done for waylan...
Seunghun Lee [Mon, 7 Jul 2014 13:03:48 +0000 (09:03 -0400)]
Change time unit to milli-second from second when send event of frame done for wayland client.

Summary: that's because weston sample client supposed that the time passed by frame callback is milli-second.

Reviewers: devilhorns, zmike, raster

CC: cedric
Differential Revision: https://phab.enlightenment.org/D1133

9 years agomap/unmap surface in committing surface should be valid, only when buffer is newly...
Seunghun Lee [Thu, 3 Jul 2014 14:43:02 +0000 (10:43 -0400)]
map/unmap surface in committing surface should be valid, only when buffer is newly attached. check if buffer is newly attached, when do map/unmap surface.

Summary:
There is a case that client do commit twice after one wl_surface_attach.
In this case, even if no buffer attached, unmapping the surface.
Because server already clear the buffer in first commit.

This patch fixes it.

Reviewers: devilhorns, zmike, raster

CC: cedric
Differential Revision: https://phab.enlightenment.org/D1115

9 years agoAdd missing function
MinJeong Kim [Tue, 1 Jul 2014 12:53:41 +0000 (08:53 -0400)]
Add missing function

Summary:
Added missing function _e_comp_wl_data_find_for_client.
@fix

Reviewers: devilhorns

CC: cedric
Differential Revision: https://phab.enlightenment.org/D1102

9 years agoFix formatting.
Chris Michael [Tue, 1 Jul 2014 11:08:05 +0000 (07:08 -0400)]
Fix formatting.
Rename data_resource_list to data_resources.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoImplement selection copy & paste using data interfaces of wayland
MinJeong Kim [Tue, 1 Jul 2014 11:03:07 +0000 (07:03 -0400)]
Implement selection copy & paste using data interfaces of wayland

Summary: It supports selection copy & pasete with wl_data_device_manager, wl_data_device, wl_data_offer and wl_data_source.

Test Plan:
1. Build enlightenment on devs/devilhorns/e_comp_wl branch.
2. Run enlightenment.
3. Run elementary_test -to entry5 (or any entry samples).
4. Select any block of text.
5. Do copy the block and Copy anywhere you want.

Reviewers: gwanglim, devilhorns

CC: cedric
Differential Revision: https://phab.enlightenment.org/D1094

9 years agopass the compositor ecore_evas to e_pointer_canvas_new
Chris Michael [Thu, 26 Jun 2014 13:31:41 +0000 (09:31 -0400)]
pass the compositor ecore_evas to e_pointer_canvas_new

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agopass the ecore_evas to e_pointer_canvas_new and use Eina_Bool for
Chris Michael [Thu, 26 Jun 2014 13:30:57 +0000 (09:30 -0400)]
pass the ecore_evas to e_pointer_canvas_new and use Eina_Bool for
true/false values

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agouse Eina_Bool for true/false values
Chris Michael [Thu, 26 Jun 2014 13:30:33 +0000 (09:30 -0400)]
use Eina_Bool for true/false values

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agouse the pointer from the compositor for e_win and don't free the pointer when the...
Chris Michael [Thu, 26 Jun 2014 13:29:42 +0000 (09:29 -0400)]
use the pointer from the compositor for e_win and don't free the pointer when the window closes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agocreate the compositor e_pointer on the ecore_evas
Chris Michael [Thu, 26 Jun 2014 13:29:19 +0000 (09:29 -0400)]
create the compositor e_pointer on the ecore_evas

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoadd new e_pointer files
Chris Michael [Thu, 26 Jun 2014 13:28:43 +0000 (09:28 -0400)]
add new e_pointer files

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agofix crash and memory leak when press and release any key repeatedly.
Seunghun Lee [Thu, 26 Jun 2014 13:19:23 +0000 (09:19 -0400)]
fix crash and memory leak when press and release any key repeatedly.

Summary:
since the size of wl_array is determined based on one byte,
so in order to compare with uint32_t, the size of wl_array should be divided by uint32_t's size.
and when calculate the size of wl_array by difference between two address,
address should type cast char* as one byte.

Test Plan:
(1) run terminology
(2) input any key several time.

Reviewers: devilhorns, zmike, raster

CC: cedric
Differential Revision: https://phab.enlightenment.org/D1089

9 years agoremove old e_pointer code
Chris Michael [Tue, 24 Jun 2014 17:03:05 +0000 (13:03 -0400)]
remove old e_pointer code

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoflush clients Before we dispatch main loop events as clients may queue
Chris Michael [Tue, 24 Jun 2014 16:55:01 +0000 (12:55 -0400)]
flush clients Before we dispatch main loop events as clients may queue
events onto the loop.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoadd EGL headers for wayland compositor
Chris Michael [Tue, 24 Jun 2014 16:01:43 +0000 (12:01 -0400)]
add EGL headers for wayland compositor

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agofix define check for shutting down wayland compositor.
Chris Michael [Tue, 24 Jun 2014 13:50:42 +0000 (09:50 -0400)]
fix define check for shutting down wayland compositor.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoenable checking of windows going outside of e_config->screen limits
Chris Michael [Mon, 23 Jun 2014 20:47:53 +0000 (16:47 -0400)]
enable checking of windows going outside of e_config->screen limits

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agore-enable checking of current client geometry when get a configure
Chris Michael [Mon, 23 Jun 2014 20:47:01 +0000 (16:47 -0400)]
re-enable checking of current client geometry when get a configure
message.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoadd support for mouse wheel events and pass them to wayland
Chris Michael [Mon, 23 Jun 2014 19:29:36 +0000 (15:29 -0400)]
add support for mouse wheel events and pass them to wayland

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agocheck if client is getting destroyed before we try to unmap it.
Chris Michael [Mon, 23 Jun 2014 16:57:19 +0000 (12:57 -0400)]
check if client is getting destroyed before we try to unmap it.

NB: This is done for wayland clients where e_client delete function
has already freed the client wl_comp_data Before we get a shell
surface destroy message from wayland. (occurs due to async nature).

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agocheck for valid comp_data before trying to use it.
Chris Michael [Mon, 23 Jun 2014 16:56:05 +0000 (12:56 -0400)]
check for valid comp_data before trying to use it.
Don't set pointer to 'k' in keydown event (we don't need it).

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agounify surface parent setting code for use with wl_shell and xdg_shell.
Chris Michael [Mon, 23 Jun 2014 13:45:16 +0000 (09:45 -0400)]
unify surface parent setting code for use with wl_shell and xdg_shell.
When setting transient, tell the compositor that we need to reset the
window type for this surface.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoupdate some fixme/notes
Chris Michael [Mon, 23 Jun 2014 13:42:50 +0000 (09:42 -0400)]
update some fixme/notes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agofix building theme module with wayland-only
Chris Michael [Thu, 19 Jun 2014 18:57:38 +0000 (14:57 -0400)]
fix building theme module with wayland-only

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoFix state of popup windows to skip taskbar, pager, etc, etc.
Chris Michael [Thu, 19 Jun 2014 18:56:58 +0000 (14:56 -0400)]
Fix state of popup windows to skip taskbar, pager, etc, etc.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agowl-desktop-shell: Unify popup_parent code and fix placement of popup
Chris Michael [Thu, 19 Jun 2014 18:55:53 +0000 (14:55 -0400)]
wl-desktop-shell: Unify popup_parent code and fix placement of popup
windows.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agofix compiler warning about unused variables when building for X11 or Wayland.
Chris Michael [Thu, 19 Jun 2014 13:46:54 +0000 (09:46 -0400)]
fix compiler warning about unused variables when building for X11 or Wayland.

NB: Each different build (x11/wl-only) had various unused variables.
This is a squash of the commits to fix all that.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agofix formatting
Chris Michael [Thu, 19 Jun 2014 13:31:07 +0000 (09:31 -0400)]
fix formatting

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoremove debug/warning message
Chris Michael [Thu, 19 Jun 2014 00:43:32 +0000 (20:43 -0400)]
remove debug/warning message

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoe-comp-wl: Handle setting window parent for internal dialogs.
Chris Michael [Wed, 18 Jun 2014 18:49:55 +0000 (14:49 -0400)]
e-comp-wl: Handle setting window parent for internal dialogs.
Move parent->modal setting from the shell module to the compositor.
Support setting of various window types (dialogs, menus, etc).
Handle setting of internal properties (min size, max size, etc).

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agowl-desktop-shell: Simplify transient_set functions and move the
Chris Michael [Wed, 18 Jun 2014 18:47:06 +0000 (14:47 -0400)]
wl-desktop-shell: Simplify transient_set functions and move the
client->parent->modal code to the compositor side.
Also, after setting netwm.type, change the set_win_type in the
compositor data field so that the compositor will handle parent->modal
on next property fetch.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoremove dead comments
Chris Michael [Wed, 18 Jun 2014 16:17:20 +0000 (12:17 -0400)]
remove dead comments

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoImplement focus_down_set function to grab mouse & wheel bindings.
Chris Michael [Tue, 17 Jun 2014 18:36:48 +0000 (14:36 -0400)]
Implement focus_down_set function to grab mouse & wheel bindings.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoImplement focus_check function and call on delete_request.
Chris Michael [Tue, 17 Jun 2014 18:12:31 +0000 (14:12 -0400)]
Implement focus_check function and call on delete_request.
Don't try to ping clients that we are forceably killing.
Implement e_grabinput calls during focus_set.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoFix defines for building with wayland-only or wayland-client support.
Chris Michael [Tue, 17 Jun 2014 17:13:07 +0000 (13:13 -0400)]
Fix defines for building with wayland-only or wayland-client support.

NB: This fixes internal dialogs not having frames

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoRelease array of keyboard keys when we shutdown input
Chris Michael [Tue, 17 Jun 2014 16:52:05 +0000 (12:52 -0400)]
Release array of keyboard keys when we shutdown input

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoImplement client stacking.
Chris Michael [Tue, 17 Jun 2014 16:50:48 +0000 (12:50 -0400)]
Implement client stacking.
Ungrab mouse & wheel bindings when we delete the client.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
remove client stacking code (apparently handled in e_client already)

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agofix define check for wayland client uuid store
Chris Michael [Sun, 15 Jun 2014 20:15:16 +0000 (16:15 -0400)]
fix define check for wayland client uuid store

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoImplement setting of client priority during focus events.
Chris Michael [Fri, 13 Jun 2014 18:52:00 +0000 (14:52 -0400)]
Implement setting of client priority during focus events.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agofix formatting
Chris Michael [Fri, 13 Jun 2014 12:27:33 +0000 (08:27 -0400)]
fix formatting

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoResize input/damage/opaque pending tilers when client is resized
MinJeong Kim [Fri, 13 Jun 2014 12:29:02 +0000 (08:29 -0400)]
Resize input/damage/opaque pending tilers when client is resized

Summary: When the client resized, it need to resize tilers for surface region also.

Reviewers: devilhorns, zmike, raster, gwanglim

CC: cedric
Differential Revision: https://phab.enlightenment.org/D1020

9 years agoremove debug noise
Chris Michael [Fri, 13 Jun 2014 12:25:10 +0000 (08:25 -0400)]
remove debug noise

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoadd support for xdg_shell surface transient_for
Gwanglim Lee [Fri, 13 Jun 2014 12:24:27 +0000 (08:24 -0400)]
add support for xdg_shell surface transient_for

Summary: add support for xdg_shell surface transient_for

Test Plan:
1. run e wayland server
2. run weston-stacking and set focus it
3. press 't' for creating transient_for surface

Reviewers: devilhorns, zmike, raster

CC: cedric
Differential Revision: https://phab.enlightenment.org/D1016

@feature

9 years agoadd client property event into wayland eval fetch handler
Gwanglim Lee [Fri, 13 Jun 2014 12:18:22 +0000 (08:18 -0400)]
add client property event into wayland eval fetch handler

Summary: add client property event for wayland client

Reviewers: devilhorns, zmike, raster

CC: cedric
Differential Revision: https://phab.enlightenment.org/D1015

9 years agouse calloc to allocate memory of E_Comp_Wl_Buffer which is set to zero, instead of...
Seunghun Lee [Thu, 12 Jun 2014 13:09:41 +0000 (09:09 -0400)]
use calloc to allocate memory of E_Comp_Wl_Buffer which is set to zero, instead of malloc.

Summary: E_Comp_Wl_Buffer's busy value should be updated after initialization as zero.

Reviewers: devilhorns, zmike, raster

Reviewed By: devilhorns

CC: cedric
Differential Revision: https://phab.enlightenment.org/D1011

9 years agouse eina_hash_int64_new to create hash table "clients_win_hash" in case wayland,...
Seunghun Lee [Thu, 12 Jun 2014 13:07:21 +0000 (09:07 -0400)]
use eina_hash_int64_new to create hash table "clients_win_hash" in case wayland, instead of eina_hash_int32_new.

Summary:
since the data as a key of hash is 64bit integers, clients_win_hash should be created to int64.
if not, loss of data can occur when add or delete data from hash table.

Test Plan:
(1) run any application. (added ec to hash table)
(2) close the application. (try to delete ec from hash table, but couldn't)
(3) after that, if _e_comp_wl_cb_render_post is called, since refer to ec which was already freed, enlightenment had been crashed.

Reviewers: devilhorns, zmike, raster

CC: cedric
Differential Revision: https://phab.enlightenment.org/D1006

9 years agofix geometry restore for maximized and fullscreen windows
Gwanglim Lee [Tue, 10 Jun 2014 20:52:22 +0000 (16:52 -0400)]
fix geometry restore for maximized and fullscreen windows

Summary:
there are no geometry restore codes in handler of
wl_shell_surface toplevel_set.

Test Plan:
1. run e wayland only server with devilhons's branch source (devs/devilhorns/e_comp_wl)
2. run terminology
3. make terminlogy surface to be maximized
4. make terminlogy surface to be un-maximized
5. move terminlogy surface

Reviewers: devilhorns, zmike, raster, stefan_schmidt

CC: cedric
Differential Revision: https://phab.enlightenment.org/D965

9 years agocleanup unused code
Chris Michael [Tue, 10 Jun 2014 20:49:18 +0000 (16:49 -0400)]
cleanup unused code

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoSwitch Wayland Compositor to use Eina_Tiler for damages, opaque, input, etc.
Chris Michael [Tue, 10 Jun 2014 20:43:18 +0000 (16:43 -0400)]
Switch Wayland Compositor to use Eina_Tiler for damages, opaque, input, etc.

Add code to hold references to 'buffers'.
 - Release 'buffers' After they have been rendered by the compositor.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoAdd structures for a buffer and reference to a buffer.
Chris Michael [Tue, 10 Jun 2014 20:42:16 +0000 (16:42 -0400)]
Add structures for a buffer and reference to a buffer.
Switch client_data structure to use eina_tiler for input, opaque,
damage regions.

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