platform/upstream/enlightenment.git
9 years agoe_module: Add event handler for ECORE_WL_EVENT_INTERFACES_BOUND 48/38248/1 accepted/tizen/common/20150416.090704 accepted/tizen/mobile/20150416.024404 accepted/tizen/tv/20150416.024151 accepted/tizen/wearable/20150416.024346 submit/tizen/20150415.104259
Duna Oh [Wed, 15 Apr 2015 09:52:45 +0000 (18:52 +0900)]
e_module: Add event handler for ECORE_WL_EVENT_INTERFACES_BOUND

Summary:
- Add event handler to make sure e_module_all_load() done after wayland compositor interfaces are bound
- Delete the "return" code if still loading modules, since "wl_desktop_shell" module create wl-shell and xdg-shell interfaces needed to be bound.

Test Plan:
(1) Run enlightenment on wayland
(2) If e_module attemps to make the "Error loading Module" popup window, you will see deadlock waiting for the wayland sync "done" event to be received. This means the wayland global interfaces including wl.compositor is not ready.

below is the mainloop we are blocked
---------------------------------------------------------------
_ecore_wl_init_wait(void)
{
   while (!_ecore_wl_disp->init_done)
     wl_display_dispatch(_ecore_wl_disp->wl.display);
}

Change-Id: Id1207dfdf40b0fe078ed9700c63d1203fb26ec5e
Signed-off-by: Duna Oh <duna.oh@samsung.com>
9 years agowl_drm: add check bind wayland display api to prevent segfault when enlightenment... accepted/tizen/common/20150414.100010 accepted/tizen/mobile/20150415.014947 accepted/tizen/tv/20150415.012509 accepted/tizen/wearable/20150415.013734 submit/tizen/20150411.154633
Gwanglim Lee [Fri, 10 Apr 2015 09:05:59 +0000 (18:05 +0900)]
wl_drm: add check bind wayland display api to prevent segfault when enlightenment is trying to run on sw mesa

Change-Id: Ief1172a4816a01ac91b52b0c3996eafe152647e5

9 years agoAdd NULL check for function pointer of GL Api 52/38052/1
MinJeong Kim [Fri, 10 Apr 2015 08:25:20 +0000 (17:25 +0900)]
Add NULL check for function pointer of GL Api

Change-Id: I986a59a047168c52b8f0c124d0a888102bffc90e
Signed-off-by: MinJeong Kim <minjjj.kim@samsung.com>
9 years agoForce free e_client when its buffer is destroied 38/38038/4
MinJeong Kim [Fri, 10 Apr 2015 05:01:35 +0000 (14:01 +0900)]
Force free e_client when its buffer is destroied

The destory request of any surface will trigger to hide its evas object
and to delete e_client object of the surface. Those hide process of evas
object generates hide animation corresponding to its shadow style. In the
case, long animation can cause SIGSEGV by trying to access shared memory
which is already munmapped. This revision prevents the situation by free of
evas object immediately when the buffer is destroied.

Change-Id: I2b404270cec581354c367390fb0040f868cbe556
Signed-off-by: MinJeong Kim <minjjj.kim@samsung.com>
9 years agoAdd support for wayland opengles compositing accepted/tizen/common/20150410.071835 accepted/tizen/mobile/20150410.075339 accepted/tizen/tv/20150410.075156 accepted/tizen/wearable/20150410.075251 submit/tizen/20150409.161222
Gwanglim Lee [Thu, 9 Apr 2015 13:42:28 +0000 (22:42 +0900)]
Add support for wayland opengles compositing

Change-Id: Ibcfe29ba861863b7738e80401fca5825bb5b4d14

9 years agoTo show underlay plane, added render_copy option for evas object of 24bit window... 88/37788/1 accepted/tizen/common/20150407.102151 accepted/tizen/mobile/20150407.084655 accepted/tizen/tv/20150407.064443 accepted/tizen/wearable/20150407.063234 submit/tizen/20150406.070142
Gwanglim Lee [Mon, 6 Apr 2015 06:30:25 +0000 (15:30 +0900)]
To show underlay plane, added render_copy option for evas object of 24bit window on x11

Change-Id: Ie3d2222d19e6c9541ba76c07106ba81e29fc3f38

9 years agoe_comp_object: set client size to requested size for wl_pointer-cursor 75/37775/1 accepted/tizen/common/20150407.101951 accepted/tizen/mobile/20150407.084826 accepted/tizen/tv/20150405.122457 accepted/tizen/wearable/20150405.123735 submit/tizen/20150404.110418 submit/tizen_mobile/20150406.000001
MinJeong Kim [Sat, 4 Apr 2015 09:04:44 +0000 (18:04 +0900)]
e_comp_object: set client size to requested size for wl_pointer-cursor

Change-Id: Icfb2250f2ef45f415b08aa0e6654be9d18e20a7a
Signed-off-by: MinJeong Kim <minjjj.kim@samsung.com>
9 years agoe_comp_object: resize wl-pointer-cursor object directly 73/37773/1
MinJeong Kim [Sat, 4 Apr 2015 08:16:34 +0000 (17:16 +0900)]
e_comp_object: resize wl-pointer-cursor object directly

Change-Id: Ia80fa8822adb714449e97f7f1bfc78c25339da37
Signed-off-by: MinJeong Kim <minjjj.kim@samsung.com>
9 years agoe_comp_wl: fix not sending a mouse enter event. 15/37715/2
Boram Park [Thu, 2 Apr 2015 04:00:49 +0000 (13:00 +0900)]
e_comp_wl: fix not sending a mouse enter event.

Change-Id: I21cb031e293fe281e35ba89f3a96116a28a48856

9 years agodecrement e_comp->new_clients counter when unsetting new_client flag on wl cursor...
Mike Blumenkrantz [Wed, 25 Mar 2015 16:32:30 +0000 (12:32 -0400)]
decrement e_comp->new_clients counter when unsetting new_client flag on wl cursor clients

Change-Id: If35c45cea17b947bbc3d6b320ee08fee24cd91af

9 years agomobile policy desk set hook needs to ignore new_client clients
Mike Blumenkrantz [Wed, 25 Mar 2015 16:29:36 +0000 (12:29 -0400)]
mobile policy desk set hook needs to ignore new_client clients

desk set happens during client init, so these will always be new clients

ref D2242

Change-Id: Icf83859410916d2a4f6a0d9ac9679661d6347669

9 years agoRevert "when we get a request to close client app, defer resource deletion"
Mike Blumenkrantz [Thu, 5 Mar 2015 16:41:43 +0000 (11:41 -0500)]
Revert "when we get a request to close client app, defer resource deletion"

This reverts commit 1cf7c1f1511c446413fdc6fae35d17870bdd1c4e.

didn't fix the issue and obfuscated the code unnecessarily

Change-Id: I7fdfb1ad76152a65af9dbedf147c0ce8dae13c75

9 years agoMerge "comp_wl: Don't sync client size with buffer if client-side resize was locked...
Boram Park [Fri, 3 Apr 2015 01:14:25 +0000 (18:14 -0700)]
Merge "comp_wl: Don't sync client size with buffer if client-side resize was locked" into tizen

9 years agocomp_wl: Don't sync client size with buffer if client-side resize was locked 81/37681/1
MinJeong Kim [Thu, 2 Apr 2015 11:44:40 +0000 (20:44 +0900)]
comp_wl: Don't sync client size with buffer if client-side resize was locked

Change-Id: Idd4cbe75cec8bf55b132ae38f5dc88aaf2660d68
Signed-off-by: MinJeong Kim <minjjj.kim@samsung.com>
9 years agoconfigure: do not require ecore-x on wayland only env 73/37673/1
MinJeong Kim [Thu, 2 Apr 2015 04:48:58 +0000 (13:48 +0900)]
configure: do not require ecore-x on wayland only env

Change-Id: I9b4fa78b4623096053846793f80e16ebe1638e42
Signed-off-by: MinJeong Kim <minjjj.kim@samsung.com>
9 years agopackaging: version to 0.19.99 accepted/tizen/common/20150331.084906 accepted/tizen/mobile/20150331.095141 accepted/tizen/tv/20150331.095057 accepted/tizen/wearable/20150331.095116 submit/tizen/20150330.123154
Boram Park [Mon, 30 Mar 2015 22:48:13 +0000 (07:48 +0900)]
packaging: version to 0.19.99

Change-Id: I22c9a257ea62b3c54875e78d3c3ffd98a69252f8

9 years agoremove temporary code 95/37495/1
Boram Park [Mon, 30 Mar 2015 04:01:13 +0000 (13:01 +0900)]
remove temporary code

Summary:
    To avoid build-break, we removed version check part from configure.ac
    Now wayland is 1.7.0, We don't need temporary code any more.

Change-Id: I6550b72fbc7606968db133b40f0a5e7d57407d4f

9 years agoFix wayland client cursor set and client cursor move.
Mun, Gwan-gyeong [Thu, 19 Mar 2015 07:50:43 +0000 (16:50 +0900)]
Fix wayland client cursor set and client cursor move.

Change-Id: I4ca08d0deaaa7cc09e8b608b1f63a953c8233d14

9 years agoFix build break
MinJeong Kim [Wed, 18 Mar 2015 13:27:12 +0000 (22:27 +0900)]
Fix build break

Change-Id: I95f1c3325c40181eb3905873b4d20761dc7da92f

9 years agoe_comp: Added skip_first_damage
MinJeong Kim [Wed, 18 Mar 2015 12:06:40 +0000 (21:06 +0900)]
e_comp: Added skip_first_damage

For supporting the case that X doesn't send DamageNotify event of
damage creation, added skip_first_damage value.
This skip_first_damage will be used for determining skip of first DamageNotify.

Change-Id: I5d4c616110b9a0ed53a0b1781c02c0300481fede
Signed-off-by: MinJeong Kim <minjjj.kim@samsung.com>
9 years agotest_helper: Fixed appending NULL and Remove hide process of registrant
MinJeong Kim [Wed, 18 Mar 2015 09:58:12 +0000 (18:58 +0900)]
test_helper: Fixed appending NULL and Remove hide process of registrant

Change-Id: I80c8508f63b983f6d176fba7ffecaffdf067d986
Signed-off-by: MinJeong Kim <minjjj.kim@samsung.com>
9 years agofix tty problem when enlightenment(drm-backend) is killed by SIGSEGV
Boram Park [Tue, 17 Mar 2015 13:33:55 +0000 (09:33 -0400)]
fix tty problem when enlightenment(drm-backend) is killed by SIGSEGV

Summary:
    When enlightenment is working as wayland display server, enlightenment
    changes KDSETMODE to KD_GRAPHICS in _ecore_drm_tty_setup(). However,
    when enlightenment is killed by SIGSEGV, it doesn't changes KDSETMODE
    to KD_TEXT because englightenment process doesn't call ecore_drm_tty_close().

    When enlightenment is killed by SIGSEGV, it should get drm devices with
    ecore_drm_device_get_list(), and will call ecore_drm_launcher_disconnect(),
    and ecore_drm_launcher_disconnect will call ecore_drm_tty_close() internally.

Reviewers: zmike, cedric, raster, gwanglim, devilhorns

Reviewed By: devilhorns

Subscribers: cedric

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

Change-Id: Iffe4279a50bce0cf3baf419c959bd1fef8010feb

9 years agoFix null dereference. while e_comp_shutdown is going, e_client's object could be...
Mun, Gwan-gyeong [Mon, 16 Mar 2015 08:41:50 +0000 (17:41 +0900)]
Fix null dereference. while e_comp_shutdown is going, e_client's object could be unfocused.

Change-Id: Ib8734941b48468ca60b93cb5eaca5115d79f227a

9 years agofix build-error for wayland-only env
Boram Park [Tue, 17 Mar 2015 08:42:10 +0000 (17:42 +0900)]
fix build-error for wayland-only env

Change-Id: I949cc283c2bbe2f85d8a600846acbbaad0ff2b88

9 years agoDisable x11 dependent modules with options for wayland-only
Duna Oh [Tue, 17 Mar 2015 07:21:02 +0000 (16:21 +0900)]
Disable x11 dependent modules with options for wayland-only

Change-Id: I5c86f1332882864d157a1ca3fc6cdf8f7951915f
Signed-off-by: Duna Oh <duna.oh@samsung.com>
9 years agomove enlightenment.service file to e-tizen-data
Boram Park [Mon, 9 Mar 2015 13:00:30 +0000 (22:00 +0900)]
move enlightenment.service file to e-tizen-data

   Enlightenment can run as wayland display server without X.
   In this case, englightenment will be launched by display-manager
   -run.service. It looks better e-tizen-data offers systemd service
   files.

Change-Id: Id86e5d0b9dcdb800fe52c2026e5e97d64c442a79

9 years agoAdded extended focus policy :Top visible window takes focus.
Mun, Gwan-gyeong [Fri, 13 Mar 2015 09:01:33 +0000 (18:01 +0900)]
Added extended focus policy :Top visible window takes focus.

Change-Id: Ic92f1bda9eecfe0104ceee9ee3d76d433959eda4

9 years agoreplace e_comp_list with e_comp.
Boram Park [Tue, 10 Mar 2015 10:38:51 +0000 (19:38 +0900)]
replace e_comp_list with e_comp.

Change-Id: I230a15be9e93900d4d45337b8014a83c27bcb2af

9 years agoFix indentation on e_comp_object.
Mun, Gwan-gyeong [Mon, 9 Mar 2015 07:19:52 +0000 (16:19 +0900)]
Fix indentation on e_comp_object.

Change-Id: I08b5f22fe0d9e9b81413a5f576489630c8afef24

9 years agoDelay first showing of client object while damage count up to 2.
Mun, Gwan-gyeong [Fri, 6 Mar 2015 06:01:28 +0000 (15:01 +0900)]
Delay first showing of client object while damage count up to 2.

Change-Id: Idc0d3031673fc7171780fb8e556cb9af39b708f2

9 years agoAvoid freeing pixmap from unsetting parent window of pixmap
MinJeong Kim [Fri, 6 Mar 2015 01:26:04 +0000 (10:26 +0900)]
Avoid freeing pixmap from unsetting parent window of pixmap

When some E_Client is deleted by hide event of its window,
comp_x tries to unset parent window of client's E_Pixmap.
This unsetting is causing freeing pixmap even if the pixmap is still pending.
this revision is for avoiding those unwanted free.

Change-Id: Id7568b57b4d274534915920c115ac59ae94e746e
Signed-off-by: MinJeong Kim <minjjj.kim@samsung.com>
9 years agoadd client-notification-level to E_Layer
Boram Park [Sat, 28 Feb 2015 10:27:39 +0000 (19:27 +0900)]
add client-notification-level to E_Layer

Change-Id: I5781943db2440c1e5dc268287420b3fd3122da09

9 years agoIgnore configure requests for windows which do not have relevant E_Client yet
MinJeong Kim [Fri, 27 Feb 2015 09:18:57 +0000 (18:18 +0900)]
Ignore configure requests for windows which do not have relevant E_Client yet

Change-Id: I2555246058460da538f61daa0496a18995ea6d43
Signed-off-by: MinJeong Kim <minjjj.kim@samsung.com>
9 years agoAdded check damage count and pixmap validate of e_client object showing.
Mun, Gwan-gyeong [Thu, 26 Feb 2015 13:47:21 +0000 (22:47 +0900)]
Added check damage count and pixmap validate of e_client object showing.

Change-Id: I99e0956043978b09064b2e8d2dcb3cd2c36cc075

9 years agoexec enlightenment instead of enlightenment_start
Boram Park [Tue, 24 Feb 2015 12:45:12 +0000 (21:45 +0900)]
exec enlightenment instead of enlightenment_start

    Refer to below commit of mainstream. enlightenment_start can't
    be used to start enlightenment in systemd.

    -------------------------------------------------------
    commit 6f955263fa76649682066adc82f12d4249d9c3d0
    Author: Cedric BAIL <cedric.bail@samsung.com>
    Commit: Cedric BAIL <cedric.bail@samsung.com>

    enlightenment: do not propagate the systemd socket to E17.

    In a proper systemd user session setup, enlightenment_start will be
    gone. That is still not doable today and as I plan to roll more feature
    in EFL regarding systemd, we need to prevent enlightenment to believe
    it is the process started by systemd.

Change-Id: I8cfcef9abf9318da3babd96c7f9191796fe0fabb

9 years agoAdded initial test case framework
MinJeong Kim [Fri, 23 Jan 2015 07:48:25 +0000 (16:48 +0900)]
Added initial test case framework

1. Visibility calculation with comp_object status.
2. Added e_test_helper for supporting external TC modules through dbus

Change-Id: Ib994d99e179579c97aa7a59ccfa63b9bb3ea7d4d
Signed-off-by: MinJeong Kim <minjjj.kim@samsung.com>
9 years agoDisable display backlight control to avoid camera flash
Gwanglim Lee [Mon, 16 Feb 2015 11:41:35 +0000 (20:41 +0900)]
Disable display backlight control to avoid camera flash

Change-Id: I78c6287aaca9856c84d2a7da0ad4a8dd6b3b1c4d

9 years agoDo NOT set layer again for a client that have 'transient for window'
MinJeong Kim [Thu, 12 Feb 2015 06:02:03 +0000 (15:02 +0900)]
Do NOT set layer again for a client that have 'transient for window'

Change-Id: I6d0d1d3f75480f7877280bc576bc486193617de3
Signed-off-by: MinJeong Kim <minjjj.kim@samsung.com>
9 years agoAdded client_type config and E_CLIENT_PROPERTY_CLIENT_TYPE.
Mun, Gwan-gyeong [Mon, 9 Feb 2015 11:18:30 +0000 (20:18 +0900)]
Added client_type config and E_CLIENT_PROPERTY_CLIENT_TYPE.

Change-Id: I6aafc020437c7aaec500a8c1a4db378f9ed87dcf

9 years agoAdjust version number to upstream tag version for fixing build break
Gwanglim Lee [Fri, 16 Jan 2015 05:40:23 +0000 (14:40 +0900)]
Adjust version number to upstream tag version for fixing build break

Change-Id: I53a36f1a3d87b16914e6e2885658b0c2b2a7354b

9 years agoPackaging: update version to 0.19.1
Gwanglim Lee [Fri, 16 Jan 2015 05:00:23 +0000 (14:00 +0900)]
Packaging: update version to 0.19.1

Change-Id: If110b40d0430693cd1bba7f7f18638df3229cf42

9 years agoAdded check for deleted status of e_object before refering it
MinJeong Kim [Fri, 16 Jan 2015 01:36:22 +0000 (10:36 +0900)]
Added check for deleted status of e_object before refering it

Change-Id: I9b76d6b4bb1ccb3fb8db8d5c7a44312882862e7d
Signed-off-by: MinJeong Kim <minjjj.kim@samsung.com>
9 years agoAdded 'wm_win_rotation' config value for ZONE_WINDOW_ROTATION Feature
Mun, Gwan-gyeong [Mon, 12 Jan 2015 02:06:26 +0000 (11:06 +0900)]
Added 'wm_win_rotation' config value for ZONE_WINDOW_ROTATION Feature

Change-Id: Ic223e2aae9cbd101604f037b422f2f3d3b85c7cd

9 years agoAdded e_comp_object_intercept_hook feature on e_comp_object
Mun, Gwan-gyeong [Fri, 9 Jan 2015 08:03:47 +0000 (17:03 +0900)]
Added e_comp_object_intercept_hook feature on e_comp_object

Change-Id: I9236a012e27af8ba7356863fb76cebba76497bdf

9 years agoAdded E_CLIENT_HOOK_NEW_CLIENT_POST to E_CLIENT_HOOK
Mun, Gwan-gyeong [Fri, 9 Jan 2015 07:57:20 +0000 (16:57 +0900)]
Added E_CLIENT_HOOK_NEW_CLIENT_POST to E_CLIENT_HOOK

Change-Id: Ibe464690522e362dd0d6e52c445e848b5648fd73

9 years agoAdded E_VIRTUAL_KEYBOARD_TYPE type and value to E_Client
Mun, Gwan-gyeong [Fri, 9 Jan 2015 07:49:31 +0000 (16:49 +0900)]
Added E_VIRTUAL_KEYBOARD_TYPE type and value to E_Client

Change-Id: I7a2b9378f528dab636acfb5b773e9a243ed11a4b

9 years agoAdd first step of Zone_Window_Roation Feature
Mun, Gwan-gyeong [Mon, 5 Jan 2015 12:48:55 +0000 (21:48 +0900)]
Add first step of Zone_Window_Roation Feature

Change-Id: Ife577b104b8bd665e50d066d2b450e26f6146ebd

9 years agofix crash when activating menu that is not in range
Duna Oh [Mon, 5 Jan 2015 10:16:55 +0000 (19:16 +0900)]
fix crash when activating menu that is not in range

Change-Id: I5582a562e4607e5b7aee58ca50a451b0ff4c9c60
Signed-off-by: Duna Oh <duna.oh@samsung.com>
9 years agoAdded 'effect_style' config value to determine effect style
MinJeong Kim [Tue, 23 Dec 2014 10:13:30 +0000 (19:13 +0900)]
Added 'effect_style' config value to determine effect style

Change-Id: Ic50d54b2d1404909b601f3d42dd2c69b7f1d7606

9 years agoAdded a config value 'effect_file' on E_Comp_Config to load specific effect edc
MinJeong Kim [Mon, 22 Dec 2014 09:32:05 +0000 (18:32 +0900)]
Added a config value 'effect_file' on E_Comp_Config to load specific effect edc

Change-Id: I508a0c31c3a0e4d176fbf504bb0b14e8c4c82bdf
Signed-off-by: MinJeong Kim <minjjj.kim@samsung.com>
9 years agoAdd home directory to environment of systemd service file
Gwanglim Lee [Fri, 19 Dec 2014 02:42:05 +0000 (11:42 +0900)]
Add home directory to environment of systemd service file

Change-Id: Ia14988d50c64539aac7366297faad04d346a0180

9 years agoadd enlightenment.service temporarily to run enlightenment in system session
Boram Park [Mon, 15 Dec 2014 13:06:29 +0000 (22:06 +0900)]
add enlightenment.service temporarily to run enlightenment in system session

Change-Id: I3566c731e9a4f2e73738497ef8d6df1a00b58b4c

9 years agoe_config: NOT install profile.cfg and Ignore line feed when it gets profile name
MinJeong Kim [Mon, 15 Dec 2014 11:55:37 +0000 (20:55 +0900)]
e_config: NOT install profile.cfg and Ignore line feed when it gets profile name

Change-Id: Ia0d64070647a1cf14547773b9c186d274b6fdfdc
Signed-off-by: MinJeong Kim <minjjj.kim@samsung.com>
9 years agofixed installation path of "enlightenment.service" to /usr/lib.
Seunghun Lee [Mon, 22 Sep 2014 23:55:01 +0000 (08:55 +0900)]
fixed installation path of "enlightenment.service" to /usr/lib.

%{_libdir} is converted /usr/lib64, when build based on x86_64 arch.
since systemd is installed in /usr/lib, and enlightenment.service file is installed that path,
it occurs rpm packaging error.

Change-Id: I4a72a3cd6c208874ae768b127e011dd146043017

9 years agopackaging: add a runtime requirement to "monotype-fonts"
Manuel Bachmann [Fri, 5 Sep 2014 08:49:58 +0000 (10:49 +0200)]
packaging: add a runtime requirement to "monotype-fonts"

Running Enlightenment explicitly requires the "Sans" font,
which is provided by the "monotype-fonts" package.

Change-Id: I918d8645705da05403a00d39a9c5dda00771a62e
Signed-off-by: Manuel Bachmann <manuel.bachmann@open.eurogiciel.org>
9 years agoUpdate Version to 0.19.0, and spec file to packge the rpm properly.
Seunghun Lee [Wed, 3 Sep 2014 07:48:20 +0000 (16:48 +0900)]
Update Version to 0.19.0, and spec file to packge the rpm properly.

Change-Id: I9483f97e7afcf567823d784fa6b54f1ebb253996

9 years agoadd packaging directory
Boram Park [Tue, 10 Mar 2015 10:14:26 +0000 (19:14 +0900)]
add packaging directory

Change-Id: I1751c9619d96b3c9846c5bb994e009f240e4cf21

9 years agograb wl shell surface geom and use for adjusting resize operations upstream/0.19.99
Mike Blumenkrantz [Tue, 3 Mar 2015 21:48:25 +0000 (16:48 -0500)]
grab wl shell surface geom and use for adjusting resize operations

I think this still may not be 100% perfect,
but it's more like 95% perfect now instead of 50%

9 years agoenlightenment: Implement support for wl_data_device_interface "release" event
Chris Michael [Tue, 3 Mar 2015 16:59:52 +0000 (11:59 -0500)]
enlightenment: Implement support for wl_data_device_interface "release" event

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoenlightenment: Bump required Wayland version to 1.7.0
Chris Michael [Tue, 3 Mar 2015 16:59:02 +0000 (11:59 -0500)]
enlightenment: Bump required Wayland version to 1.7.0

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agodon't install SIGBUS handler if we are running wayland-only
Chris Michael [Tue, 3 Mar 2015 14:54:23 +0000 (09:54 -0500)]
don't install SIGBUS handler if we are running wayland-only

Wayland shm sets up a sigbus handler for catching invalid shm region
access. If we setup our sigbus handler here, then the wl-shm sigbus
handler will not function properly

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agowhen we get a request to close client app, defer resource deletion
Chris Michael [Mon, 2 Mar 2015 20:41:46 +0000 (15:41 -0500)]
when we get a request to close client app, defer resource deletion
until After close animation has been run

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoremove ec->awaiting_hide_event
Mike Blumenkrantz [Mon, 2 Mar 2015 19:27:29 +0000 (14:27 -0500)]
remove ec->awaiting_hide_event

no longer used

9 years agoimprove wl grab resize calcs
Mike Blumenkrantz [Sat, 28 Feb 2015 21:48:07 +0000 (16:48 -0500)]
improve wl grab resize calcs

9 years agoupdate+clamp wl surface client size to buffer size during commit
Mike Blumenkrantz [Sat, 28 Feb 2015 20:46:16 +0000 (15:46 -0500)]
update+clamp wl surface client size to buffer size during commit

this is the same as the X render loop behavior, just in a different place

9 years agosend different values to wl clients for configure when performing a resize action
Mike Blumenkrantz [Sat, 28 Feb 2015 20:43:12 +0000 (15:43 -0500)]
send different values to wl clients for configure when performing a resize action

the calculated values here seem to not be sufficiently accurate to manage a calculated resize.
instead, calc relative pointer coords and send them

 #barrel

9 years agoset output->scale to e_scale, and when we wl_output_send_scale
Chris Michael [Sat, 28 Feb 2015 16:36:42 +0000 (11:36 -0500)]
set output->scale to e_scale, and when we wl_output_send_scale
actually send output->scale

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agowayland: Make sure we're initializing output scale sensibly
Bryce Harrington [Sat, 28 Feb 2015 00:45:24 +0000 (19:45 -0500)]
wayland: Make sure we're initializing output scale sensibly

Summary:
By default the E_NEW() will create our output objects with a 0.0 scale,
which doesn't make any sense and if anything will lead to crashes.
Instead use a scale factor of 1.0.

When updating output details, if the scale setting is invalid then set
it to 1.0 as a sensible value.

Note this doesn't actually enable scaling, just helps make sure we're
not injecting invalid scale parameters from the start.

Reviewers: zmike, devilhorns, cedric

Subscribers: cedric

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

9 years agowayland: Refactor output initialization code
Bryce Harrington [Sat, 28 Feb 2015 00:23:11 +0000 (19:23 -0500)]
wayland: Refactor output initialization code

Summary:
The code to initialize outputs has duplicate stanzas for updating the
data members of the output structure.  This set of refactoring steps
shuffles things around to eliminate the redundant code.  I think this
also makes the code easier to follow too.

This also breaks out a new internal routine for looking up outputs by
id.  I suspect this will have general usefulness later.

Reviewers: devilhorns, cedric, zmike

Subscribers: cedric

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

9 years agoremove wl client resize idler, send ec->w/h instead of ec->client.w/h on resize
Mike Blumenkrantz [Fri, 27 Feb 2015 20:55:41 +0000 (15:55 -0500)]
remove wl client resize idler, send ec->w/h instead of ec->client.w/h on resize

this idler makes sense in X where there is a third party display server but not in wl

9 years agonoop when setting pointer object if re-setting same object
Mike Blumenkrantz [Fri, 27 Feb 2015 20:07:24 +0000 (15:07 -0500)]
noop when setting pointer object if re-setting same object

9 years agodisable fileman popups in wl-only mode
Mike Blumenkrantz [Fri, 27 Feb 2015 19:44:27 +0000 (14:44 -0500)]
disable fileman popups in wl-only mode

these crash for now and I'm annoyed

9 years agoremove missed use of E_COMP_WL_PIXMAP_CHECK macro
Chris Michael [Fri, 27 Feb 2015 15:59:59 +0000 (10:59 -0500)]
remove missed use of E_COMP_WL_PIXMAP_CHECK macro

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agowayland: Document the public API
Bryce Harrington [Fri, 27 Feb 2015 14:24:59 +0000 (09:24 -0500)]
wayland:  Document the public API

Summary: Add doxygen comments for public API members

Reviewers: zmike, cedric, devilhorns

Reviewed By: devilhorns

Subscribers: cedric

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

9 years agowayland: Eliminate extraneous E_COMP_WL_PIXMAP_CHECK macro
Bryce Harrington [Fri, 27 Feb 2015 14:21:55 +0000 (09:21 -0500)]
wayland: Eliminate extraneous E_COMP_WL_PIXMAP_CHECK macro

Summary:
Many of the functions in the compositor do some preliminary checks, to
ensure objects are valid and the right type.  Most of the checks follow
a consistent pattern, for example:

    if (!(ec = data)) return;
    if (e_object_is_del(E_OBJECT(ec))) return;
    if (ec->iconic) return;

This style makes it pretty straightforward to review the pre-conditions
of the function.

The one exception is the check to see if an object is a wayland pixmap;
this is implemented as a C macro.

     E_COMP_WL_PIXMAP_CHECK;

The name of the macro is descriptive enough, but it conceals what is
actually being checked.  I think that it is clearer and fits better with
the style of the rest of the pre-condition checks for this check to just
be shown as regular C code:

     if (e_pixmap_type_get(ec->pixmap) != E_PIXMAP_TYPE_WL) return;

Reviewers: zmike, cedric, devilhorns

Reviewed By: devilhorns

Subscribers: cedric

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

9 years agowayland: Fix missing check on E_NEW return
Bryce Harrington [Fri, 27 Feb 2015 14:18:27 +0000 (09:18 -0500)]
wayland: Fix missing check on E_NEW return

Summary:
All other E_NEW calls in this file check the return value, except this
one place.  In this function, other calls are being checked for NULL and
handled so this one should as well.  The other handlers in this function
follow the style of issuing an error message, freeing objects, and
returning false; we don't need to free anything so just do the error
message and return.

Reviewers: zmike, cedric, devilhorns

Subscribers: cedric

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

9 years agoupdate wl xdg states on maximize/fullscreen events
Mike Blumenkrantz [Fri, 27 Feb 2015 03:32:14 +0000 (22:32 -0500)]
update wl xdg states on maximize/fullscreen events

9 years agodon't send wl mouse button events when client's menu is active
Mike Blumenkrantz [Fri, 27 Feb 2015 02:55:34 +0000 (21:55 -0500)]
don't send wl mouse button events when client's menu is active

9 years agounify wl comp mouse button callback checks
Mike Blumenkrantz [Fri, 27 Feb 2015 02:54:17 +0000 (21:54 -0500)]
unify wl comp mouse button callback checks

9 years agowayland: Whitespace cleanup
Bryce Harrington [Thu, 26 Feb 2015 21:42:27 +0000 (16:42 -0500)]
wayland: Whitespace cleanup

Summary: Cosmetic

Reviewers: zmike

Subscribers: cedric

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

9 years agoreject ignored clients from client mouse event functions
Mike Blumenkrantz [Thu, 26 Feb 2015 21:16:53 +0000 (16:16 -0500)]
reject ignored clients from client mouse event functions

9 years agofix compile issue due to output change and fixup subsurface creation to match new...
Chris Michael [Wed, 25 Feb 2015 19:17:14 +0000 (14:17 -0500)]
fix compile issue due to output change and fixup subsurface creation to match new "state" paradigm

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoImplement buffer_reference to fix client resizing issue
Chris Michael [Wed, 25 Feb 2015 18:14:30 +0000 (13:14 -0500)]
Implement buffer_reference to fix client resizing issue

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoadjust wayland compositor scale when we adjust e_scale
Chris Michael [Wed, 25 Feb 2015 18:13:10 +0000 (13:13 -0500)]
adjust wayland compositor scale when we adjust e_scale

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoadd a surface_state structure to E_Comp_Wl_Client_Data
Chris Michael [Thu, 19 Feb 2015 21:33:09 +0000 (16:33 -0500)]
add a surface_state structure to E_Comp_Wl_Client_Data

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoclamp to parent height, not parent y co-ordinate.
Derek Foreman [Thu, 26 Feb 2015 20:27:52 +0000 (15:27 -0500)]
clamp to parent height, not parent y co-ordinate.

Summary:
Clamping to Y makes pop ups get shifted up if a window is
near the top of the screen.

Reviewers: devilhorns, zmike

Subscribers: cedric

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

9 years agoDon't crash when an error pop-up occurs before the compositor is set up.
Derek Foreman [Thu, 26 Feb 2015 19:43:10 +0000 (14:43 -0500)]
Don't crash when an error pop-up occurs before the compositor is set up.

Reviewers: devilhorns, zmike

Subscribers: cedric

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

9 years agowayland: Refactor out common mouse handling code
Bryce Harrington [Thu, 26 Feb 2015 03:00:11 +0000 (22:00 -0500)]
wayland:  Refactor out common mouse handling code

Summary:
These two functions are nearly identical so move much of the common code
into a helper function.

Reviewers: cedric, devilhorns, zmike

Subscribers: cedric

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

9 years agopre-escape all notification body texts before display or merge
Mike Blumenkrantz [Thu, 26 Feb 2015 01:05:43 +0000 (20:05 -0500)]
pre-escape all notification body texts before display or merge

this fixes notification merging again

ref T2053

9 years agobuild: allow building in pure Wayland mode (no xcb, no ecore-x)
Manuel Bachmann [Wed, 25 Feb 2015 08:15:41 +0000 (09:15 +0100)]
build: allow building in pure Wayland mode (no xcb, no ecore-x)

Summary:
We should be building Enlightenement with "--enable-wayland-only"
even if xcb, ecore-x... are not present. The Evas wayland-shm
engine will then be a prerequisite, though.

E_Alert being too much X11-oriented, let us disable it completely
before it is ported.

Also, do not require the X11 rendering engines at runtime.

Reviewers: stefan, devilhorns

Reviewed By: devilhorns

Subscribers: stefan_schmidt, stefan

Projects: #enlightenment-git

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

9 years agoe - menus - fix submenu popup direction when zones are not at 0 y
Carsten Haitzler (Rasterman) [Wed, 25 Feb 2015 06:55:08 +0000 (15:55 +0900)]
e - menus - fix submenu popup direction when zones are not at 0 y

9 years agoe - menus - fix autoscroll on zones not at 0 y...
Carsten Haitzler (Rasterman) [Wed, 25 Feb 2015 06:31:00 +0000 (15:31 +0900)]
e - menus - fix autoscroll on zones not at 0 y...

9 years agocosmetic: Whitespace cleanup of wayland client files
Bryce Harrington [Tue, 24 Feb 2015 22:34:20 +0000 (17:34 -0500)]
cosmetic:  Whitespace cleanup of wayland client files

Summary:
cosmetic: Cleanup whitespace for wayland compositor

There is excess trailing whitespace in several of the files for the
wayland implementation.  These patches attempt to apply the spacing
rules for Enlightenment as documented at:
https://phab.enlightenment.org/w/coding_convention/

The whitespace rules are applied using the following emacs tabbing
settings:

 (defun start-efl-c-mode ()
  "C mode with adjusted defaults for use with Enlightenment
  development."
  (interactive)
  (c-mode)
  (c-set-style "gnu")
  (setq tab-width 8)
  (setq indent-tabs-mode nil)
  (setq c-basic-offset 3)
  (setq defun-block-intro 3)
  (setq statement-block-intro 3)
  (setq case-label 1)
  (setq statement-case-intro 3)
 )

This patchset also eliminates all tabs in favor of whitespace, as per
the coding style rules.

Reviewers: zmike, cedric, devilhorns

Subscribers: cedric

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

9 years agoremove unused variable
Chris Michael [Tue, 24 Feb 2015 20:36:34 +0000 (15:36 -0500)]
remove unused variable

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoappend E_Comp_Wl_Output to compositor's output list during output_init
Chris Michael [Tue, 24 Feb 2015 20:27:48 +0000 (15:27 -0500)]
append E_Comp_Wl_Output to compositor's output list during output_init
call

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agodon't remove E_Comp_Wl_Output on unbind as this Could lead to nasty
Chris Michael [Tue, 24 Feb 2015 20:17:07 +0000 (15:17 -0500)]
don't remove E_Comp_Wl_Output on unbind as this Could lead to nasty
crashes if a second client tries to bind wl_output

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoFix wl_output tracking in wayland compositor
Derek Foreman [Tue, 24 Feb 2015 20:10:37 +0000 (15:10 -0500)]
Fix wl_output tracking in wayland compositor

Summary:
We should keep a list of resources per output to propagate wl_output
changes to each client that bound an output.

The output list now contains all outputs, not just bound ones.

Reviewers: devilhorns, zmike

Subscribers: cedric

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

9 years agoCode cleanup and check for OOM condition with wl_array_add
Bryce Harrington [Tue, 24 Feb 2015 19:47:56 +0000 (14:47 -0500)]
Code cleanup and check for OOM condition with wl_array_add

Summary:
wayland: Check wl_array_add return for OOM condition
cosmetic: Make error return check syntax consistent with rest of code
wayland: Reuse use_adj to track child-forced adjust
wayland: Refactor to collapse if chain
wayland: Refactor _e_comp_wl_client_priority_adjust to collapse if chain
 + This uses early returns to unwrap a couple if clauses to make the code a bit less nesty.
wayland: Refactor if statements for consistency with rest of file

Reviewers: cedric, zmike, devilhorns

Subscribers: devilhorns, cedric

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

9 years agocreate wl_outputs when in wayland-only mode
Chris Michael [Tue, 24 Feb 2015 18:27:56 +0000 (13:27 -0500)]
create wl_outputs when in wayland-only mode

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoFix T2131 (crash when creating wl_outputs)
Chris Michael [Tue, 24 Feb 2015 18:25:22 +0000 (13:25 -0500)]
Fix T2131 (crash when creating wl_outputs)

This fixes the crash and creates outputs based on e_randr
configuration (when in wayland-client mode).

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