Commit Graph

85 Commits

Author SHA1 Message Date
Carsten Haitzler 471c4bebb5 efl_wfl: fix warning and err prints for wl keymap tmp file 2019-06-20 11:32:12 +01:00
Mike Blumenkrantz 2785c822d1 efl-wl: add missing docs for efl_wl_global_add()
Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: devilhorns, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8900
2019-06-10 08:57:35 -04:00
Marcel Hollerbach 46d464e5bf here comes meson
a new shiny buildtool that currently completes in the total of ~ 4 min..
1 min. conf time
2:30 min. build time
Where autotools takes:
1:50 min. conf time
3:40 min. build time.

meson was taken because it went quite good for enlightenment, and is a traction gaining system that is also used by other mayor projects. Additionally, the DSL that is defined my meson makes the configuration of the builds a lot easier to read.

Further informations can be gathered from the README.meson

Right now, bindings & windows support are missing.

It is highly recommented to use meson 0.48 due to optimizations in meson
that reduced the time the meson call would need.

Co-authored-by: Mike Blumenkrantz <zmike@samsung.com>

Differential Revision: https://phab.enlightenment.org/D7012
Depends on D7011
2018-10-02 17:22:50 +02:00
Derek Foreman 6fe7e1155d efl_wl: Send unique keymap fds to clients
Summary:
Prevent wayland clients from being able to destroy the compositor's
singleton keymap by making individual copies for each client.

Reviewers: zmike, devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6862
2018-08-17 12:46:39 -04:00
Xavi Artigas 65ee277a66 Efl.Canvas.Scene (from Efl.Canvas)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:23 -07:00
YeongJong Lee 67be5b427a efl_wl: Add NULL check
Reviewers: zmike, ManMower, Jaehyun_Cho, woohyun

Reviewed By: ManMower

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5862
2018-04-06 09:38:23 -05:00
Derek Foreman dbdd11aa11 efl_wl: Don't create touch resources with pointer interfaces
Fixes a forced disconnect error.
2018-03-06 16:06:05 -06:00
Mike Blumenkrantz cac28eeb7e efl-wl: send surface enter/leave based on compositor object visibility
this allows clients to conserve memory when the compositor is in a
hidden or obscured state

@feature
2018-02-22 13:00:04 -05:00
Derek Foreman ce3467f0b1 efl_wl: Update native surface for dmabuf test too
Should've added this to the last commit - though this change is purely
cosmetic as the test can never trigger direct scanout.
2018-02-14 14:40:31 -06:00
Derek Foreman a2b5dbf1d8 efl_wl: Update native surface usage
We should be zeroing out the dmabuf scanout stuff.
2018-02-14 14:35:19 -06:00
Mike Blumenkrantz 285c0bbfdc efl-wl: check for existing keyboard enter before sending leave
ref 4a32e2456e
2018-02-14 15:06:27 -05:00
Mike Blumenkrantz 7f0a4154f5 efl-wl: add function for passing ecore-exe flags to launched exes
@feature
2018-02-02 16:59:44 -05:00
Mike Blumenkrantz 32c293bea4 efl-wl: no need to check exe tag on app del, just remove pid always 2018-02-02 16:59:44 -05:00
Mike Blumenkrantz e8d24596a6 efl-wl: add functions for managing allowed client pids
@feature
2018-02-02 16:59:44 -05:00
Mike Blumenkrantz bd41e4626f efl-wl: don't leak xkb mmaps when running under x11
ref a32735e9a7
2018-01-24 16:31:26 -05:00
Mike Blumenkrantz a32735e9a7 efl-wl: create and maintain xserver-based keymap and keyboard states under x11
when run in a non-wayland environment, it's necessary to do some extra work
in order to guarantee that the keymap remains the same in the compositor as
in the xserver and to also guarantee that modifier states are accurately
applied even when the compositor is not actively focused

fix T6631
2018-01-24 16:18:51 -05:00
Mike Blumenkrantz 6e4c3b0445 efl-wl: use image border to optimize surface rendering with 1 opaque rect 2018-01-24 16:18:51 -05:00
Mike Blumenkrantz 093aecd75e efl-wl: unset kbd mods changed flag after sending modifiers
@fix
2018-01-24 16:18:51 -05:00
Mike Blumenkrantz 4a32e2456e efl-wl: fix no-op of setting keyboard enter on already-entered surface
@fix
2018-01-24 16:18:51 -05:00
Mike Blumenkrantz 10fc36614f efl-wl: add functionality for directly passing through xkb objects
when used in enlightenment, it's necessary to be able to directly use
the compositor's keyboard state to ensure consistency when keypress events
are not propagated

@feature
2018-01-24 16:18:51 -05:00
Mike Blumenkrantz 2f4a89cb0e efl-wl: add docs for smart callbacks 2018-01-24 16:18:51 -05:00
Vincent Torri f5b01ac5ce all: Simplify definition of EAPI
This will help in the transition from Autotools to Meson. This has been
tested on Windows for which EFL_XXX_BUILD were first introduced.
2018-01-18 18:04:03 +09:00
Mike Blumenkrantz 4d32334f21 Revert "efl wl - fix segv where garbage ptr to comp surface is still there"
This reverts commit 574ef9a5e5.

this should be resolved by 863a6e159e99c5f69ecc7461106aba2102f1da11 and is
only a possible case when an unmapped surface was activated, something which
is prevented by spec and can only occur if bugs exist elsewhere
2018-01-17 17:33:23 -05:00
Mike Blumenkrantz 4fb807dd20 efl-wl: only perform mouse-out operations for a seat if the mouse was "in"
this could lead to cases where the original application's cursor was permanently
lost

@fix

 #TheDisappointer
2018-01-17 17:04:20 -05:00
Mike Blumenkrantz 9ccf88e326 efl-wl: ensure parent surface is mapped before attempting to revert activation 2018-01-17 17:03:48 -05:00
Mike Blumenkrantz beb430a00b efl-wl: immediately unset a destroyed surface's cursor
@fix
2018-01-17 17:01:01 -05:00
Mike Blumenkrantz c13ae0a630 efl-wl: enforce xdg-shell spec requiring a commit to an unmapped surface
a separate commit is required for a newly-unmapped surface in order for
the surface to be able to attach a buffer and be mapped
2018-01-17 16:55:35 -05:00
Mike Blumenkrantz 02af7e8210 efl-wl: only send keyboard enter and activation for mapped surfaces
setting active for unmapped surfaces bypasses the expected path for
unsetting activate during surface unmap if the surface is destroyed
while active and unmapped

@fix
2018-01-17 16:52:34 -05:00
Mike Blumenkrantz f6d045ea8d efl-wl: remove some broken logic for activating toplevel parents
parents of parents should not be marked as activated...probably

@fix
2018-01-17 16:42:31 -05:00
Mike Blumenkrantz 11a9ed301d efl-wl: set event ON_HOLD flag when they are sent to a surface
use a flag to indicate when processed events have been internally processed

@fix
2018-01-17 16:41:41 -05:00
Mike Blumenkrantz b7eba8af7b efl-wl: propagate surface activation back to parent if child is hidden
a toplevel child will always be stacked right above its parent

@fix
2018-01-17 16:39:44 -05:00
Mike Blumenkrantz 45191ff294 efl-wl: send more mouse buttons to clients
@fix
2018-01-17 16:39:44 -05:00
Mike Blumenkrantz 742e20a002 efl-wl: split case for toplevel vs popup during surface hide activate propagation
this should have no functional differences due to spec, but make sure it reads
more clearly
2018-01-17 16:39:44 -05:00
Mike Blumenkrantz 17b0db9ed3 efl-wl: add lots of null checks to egl init
ref T6617
2018-01-16 18:38:25 -05:00
Carsten Haitzler 574ef9a5e5 efl wl - fix segv where garbage ptr to comp surface is still there
comp surface destruction doesnt clear the pointer to one in the comp
struct that then is garbage later. fix.
2018-01-16 17:49:52 +09:00
Mike Blumenkrantz abc88c498e efl-wl: multiply axis events by 10 to send normalized values
ref T6443
2018-01-12 16:03:12 -05:00
Mike Blumenkrantz 60028fafb7 efl-wl: unset cursor role on existing cursor surface if new cursor is set
this avoids killing clients which replace cursors

@fix
2018-01-12 15:49:06 -05:00
Mike Blumenkrantz d176fbc806 efl-wl: return NULL without error when non-extracted parent is found
in  efl_wl_extracted_surface_extracted_parent_get()
2018-01-12 14:58:34 -05:00
Mike Blumenkrantz 571702aebb efl-wl: do not modify extracted surface visibility during commit
extracted surfaces are wholly managed externally, so this should not be modified

ref T6443

@fix
2018-01-10 14:21:03 -05:00
Mike Blumenkrantz 79ca67d8a5 efl-wl: move to xdg-shell vfinal
@feature
2018-01-10 11:39:52 -05:00
Mike Blumenkrantz cca561e94e efl-wl: add function to get the parent of an extracted surface
@feature
2018-01-03 18:46:54 -05:00
Derek Foreman 49fefaf1bc efl_wl: Silence ridiculous warning
Including wayland client code before wayland server code causes
spurious "struct wl_buffer deprecated" nonsense.

Recent ecore_wl2 changes brought wayland client code into Ecore_Wl2.h
which caused the warning to trigger here.

Simply re-ordering the include files should resolve with no functional
change.
2017-11-27 11:33:53 -06:00
Derek Foreman 51da93da28 efl_wl: Add missing @since to new functions
These ones were introduced for 1.21.
2017-11-09 12:41:22 -06:00
Mike Blumenkrantz e7faa2c820 efl-wl: send configures when extracted popups are resized 2017-10-25 10:44:16 -04:00
Mike Blumenkrantz 2b3c8d7f3f efl-wl: don't randomly set min/max size hints on popup surface objects
this is misleading since popups don't have min/max size hints
2017-10-25 10:44:16 -04:00
Mike Blumenkrantz 42c56cc33b efl_wl: do not propagate hints to main widget for child surfaces
the top-most parent should be the surface from which hints are obtained

@fix
2017-10-25 10:44:16 -04:00
Mike Blumenkrantz ed30f41de8 wayland: add support for efl weight hint propagation from elm_win to efl_wl
@feature
2017-10-25 10:44:16 -04:00
Mike Blumenkrantz e9572a6537 efl_wl: add function for returning the evas object for an extracted surface
@feature
2017-10-25 10:44:16 -04:00
Mike Blumenkrantz c7f9f2eef1 efl_wl: destroy extant shell surface upon surface deletion
avoid invalid reads later

@fix
2017-10-25 10:44:16 -04:00
Mike Blumenkrantz 6006fab98d efl_wl: more closely follow wl spec for input regions
@fix
2017-10-25 10:44:16 -04:00