Commit Graph

118 Commits

Author SHA1 Message Date
Chris Michael e8c7b82dab Ignore checking size of client and just always send new size. This
fixed basic-->advanced dialogs here

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-01-22 14:31:03 -05:00
Chris Michael cf675ad688 wl-desktop-shell: Fix issue where internal elm windows were not
borderless

This fixes the issue of elementary windows having 2 borders, however
it does expose a new issue where those same internal elm windows now
have a black shadow border around them.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-01-09 12:48:04 -05:00
Chris Michael f2e7bd7204 wl-desktop-shell: Remove use of deprecated e_comp_get function
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-01-06 09:30:30 -05:00
Chris Michael dd983b2e79 wl-desktop-shell: Always set netwm.ping on the client
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-11-03 12:27:13 -05:00
Chris Michael 1fd35b0636 wl_desktop_shell: Remove silly debug message
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-10-30 10:39:08 -04:00
Chris Michael 1203b36635 wl_desktop_shell: Remove resize.width/height compositor data fields.
Add some debugging print outs.
Don't check client size compared to new size.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-10-30 10:39:08 -04:00
Chris Michael 7cb087238d wl-desktop-shell: Don't call e_client_ping here.
Summary: As pointed out by shiin, this causes an infinite loop due to
e_client_ping already been called in the pre_frame callback. Thanks
for spotting this !! :)

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-10-30 08:41:04 -04:00
vivek bcd3c6de49 wl_desktop_shell: Fixed the issue to check if wl surface is active or hung up
Summary:
The patch will setup e_client_cb_ping_poller and as long as wl_surface is
active it will unset hung

Signed-off-by: vivek <vivek.ellur@samsung.com>

Reviewers: devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1608
2014-10-29 10:38:06 -04:00
Chris Michael 9ad13e4fcc wl_desktop_shell: Fix formatting
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-10-29 10:35:24 -04:00
vivek 0a60b1c553 wl_desktop_shell: Fixed the issue to check if client is active or hung up
Summary:
The patch will setup e_client_cb_ping_poller and as long as surface is
active it will unset hung

Signed-off-by: vivek <vivek.ellur@samsung.com>

Reviewers: devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1607
2014-10-29 10:34:26 -04:00
vivek 5f57c472b2 wl_desktop_shell: Implemented function to show xdg shell surface menu
Summary:
Implemented _e_xdg_shell_surface_cb_window_menu_show internal function
to show window menu.

Signed-off-by: vivek <vivek.ellur@samsung.com>

Reviewers: devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1606
2014-10-29 09:51:28 -04:00
Chris Michael 7498dbac99 don't crash when closing internal dialog boxes
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-10-12 10:08:05 -04:00
Chris Michael 40935c3c45 send xdg surface configure message when we maximize/unmaximize.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-10-06 15:57:36 -04:00
Chris Michael 6a07c9f99d wl-desktop-shell: Update module code for new xdg shell protocol
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-10-01 16:15:00 -04:00
Chris Michael 702e32ea2a wl-desktop-shell: Update desktop shell module for new xdg shell protocol
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-10-01 16:15:00 -04:00
Chris Michael 44168b4a36 wl-desktop-shell: Bump xdg protocol version
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-10-01 16:15:00 -04:00
maxerba fac4e89dfa Updating desktop files, eo.po and fr.po 2014-09-11 21:14:58 +02:00
vivek 3999e39962 wl_desktop_shell: Added shell_surface_destroy API for destroying all surfaces
Summary:
shell_surface_destroy function is a common destroy function to destroy all type of surfaces and to remove redundancy in code

Signed-off-by: vivek <vivek.ellur@samsung.com>

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1421
2014-09-08 08:15:22 -04:00
vivek 992f999301 bugfix: Check for parent surface before creating popup
xdg_shell requires a parent surface in order to create a popup, so we
should check the validity of the parent resource and error out
accordingly

Summary: Signed-off-by: vivek <vivek.ellur@samsung.com>

Reviewers: devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1388
2014-09-02 08:35:50 -04:00
Chris Michael d9cdcdbef4 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
2014-08-26 10:10:38 -04:00
Chris Michael 8fa7e4f59d 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>
2014-08-26 10:10:38 -04:00
Chris Michael c93ea90edf Simplify both transient_set functions (wl_shell and xdg_shell).
Remove debugging noise.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-08-26 10:10:38 -04:00
Seunghun Lee 89b2881476 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
2014-08-26 10:10:38 -04:00
Chris Michael 814b50f7e6 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>
2014-08-26 10:10:38 -04:00
Mike Blumenkrantz 3b649534c9 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>
2014-08-26 10:10:38 -04:00
Chris Michael bb64229ae9 fix return variable type from e_pixmap_window_get function
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-08-26 10:10:38 -04:00
Gwanglim Lee a96d7290f5 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
2014-08-26 10:10:38 -04:00
Seunghun Lee e5f293214d 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
2014-08-26 10:10:38 -04:00
Gwanglim Lee 6248f11b80 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
2014-08-26 10:10:38 -04:00
Seunghun Lee 4152e1e2dd 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
2014-08-26 10:10:37 -04:00
Seunghun Lee 97c39e74cc 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
2014-08-26 10:10:37 -04:00
Chris Michael 2ab2a9a36f re-enable checking of current client geometry when get a configure
message.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-08-26 10:10:37 -04:00
Chris Michael 581975d255 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>
2014-08-26 10:10:37 -04:00
Chris Michael 379799e903 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>
2014-08-26 10:10:37 -04:00
Chris Michael 2ed054a669 wl-desktop-shell: Unify popup_parent code and fix placement of popup
windows.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-08-26 10:10:36 -04:00
Chris Michael 08a98cdb87 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>
2014-08-26 10:10:36 -04:00
Chris Michael 118f4eb05e fix formatting
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-08-26 10:10:36 -04:00
Chris Michael dca596c611 remove debug noise
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-08-26 10:10:36 -04:00
Gwanglim Lee d86b5816e8 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
2014-08-26 10:10:36 -04:00
Gwanglim Lee a13179dc9d 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
2014-08-26 10:10:36 -04:00
Chris Michael 4ab5c6deb5 fix up formatting of gwanglim's D966 patch
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-08-26 10:10:35 -04:00
Gwanglim Lee ae76232c2c add fullscreen_set handler for wl_shell_surface
Summary: fullscreen_set handler for wl_shell_surface

Test Plan:
1. run e wayland only server with devilhons's branch source (devs/devilhorns/e_comp_wl)
2. run elementary_test -to "window states"
3. select fullscreen check box on elementary_test surface

Reviewers: devilhorns, zmike, raster, stefan_schmidt

Reviewed By: devilhorns

CC: cedric

Differential Revision: https://phab.enlightenment.org/D966
2014-08-26 10:10:35 -04:00
Gwanglim Lee 93669a4db1 resource parameter is used in _e_shell_surface_cb_move
Summary: remove EINA_UNUSED of resource parameter in _e_shell_surface_cb_move

Test Plan: N/A

Reviewers: devilhorns, zmike, raster, stefan_schmidt

CC: cedric

Differential Revision: https://phab.enlightenment.org/D967
2014-08-26 10:10:35 -04:00
Chris Michael 7a201e24da add support for wl_shell surface move & resize
@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-08-26 10:10:35 -04:00
Chris Michael 92fd5b4be1 add missing EINA_UNUSED
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-08-26 10:10:35 -04:00
Chris Michael 79599394da update various files for compositor structure changes
- X compositor
  - shell module
  - drm module
  - x11 module
2014-08-26 10:10:35 -04:00
Chris Michael 4da7f486fa don't need to e_pixmap_ref here.
fix wayland client application resizing.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-08-26 10:10:35 -04:00
Chris Michael 61a08390b3 update wl_desktop_shell module
- Add support for xdg_shell
 - rework to function with new wayland compositor

@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-08-26 10:10:35 -04:00
Chris Michael 217d5a95bc remove old wayland compositor and old shell files
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-08-26 10:10:34 -04:00
Chris Michael f6d2f30d93 Port D1089 patch from Seunghun Lee <shiin.lee@samsung.com> to current
E master

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.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-06-26 10:58:06 -04:00