Commit Graph

12279 Commits

Author SHA1 Message Date
Mike Blumenkrantz d24055e361 store gadget orientation for runner gadgets
ref 66030a4639
2018-02-13 11:43:19 -05:00
Mike Blumenkrantz 66030a4639 set E_GADGET_ORIENTATION env var when launching sandbox gadgets 2018-02-13 10:48:14 -05:00
Mike Blumenkrantz 5bbc335ed9 remove gadget runner function stubs for pre 1.21 compat 2018-02-06 11:17:37 -05:00
Mike Blumenkrantz ed361340d7 don't require E_START env var to be set when running on valgrind
make manually valgrinding easier
2018-02-06 11:17:26 -05:00
Mike Blumenkrantz 1106bbde50 prepend input event handlers during init to ensure continued functionality
these handlers must always be the first to be called, so it's necessary
to guarantee that they will always be first in the list of handlers
2018-02-06 11:17:20 -05:00
Mike Blumenkrantz ec8b606614 add macro for adding a prepended event handler to a list 2018-02-06 11:17:14 -05:00
Mike Blumenkrantz aba428d86c add missing efl-wl header from mismerged commit
ref 9a484d1b64
2018-02-06 11:00:09 -05:00
Mike Blumenkrantz e662727595 Revert "use wl client geometry when calculating input rect geometry"
This reverts commit aa404d3916.

this seems to be an intermittent issue that should probably be fixed
elsewhere...

fix T6646
2018-01-29 12:38:05 -05:00
Mike Blumenkrantz 3c7f444f11 fix unused param warning 2018-01-25 14:20:41 -05:00
Mike Blumenkrantz aa404d3916 use wl client geometry when calculating input rect geometry
the x/y values of a comp object are unreliable during init, so ensure
valid coords are used to avoid accidentally moving input rects offscreen
2018-01-25 14:19:19 -05:00
Mike Blumenkrantz 79d757e21e add runner gadget objects to global efl-wl list and handle dynamic seat additions
enforce keymap passthrough under wayland
2018-01-24 16:18:57 -05:00
Mike Blumenkrantz 9a484d1b64 add generic handling for passing xkb objects to efl-wl objects under wayland
ensure that keymaps are effectively propagated to efl-wl clients and that key
presses are always propagated
2018-01-24 16:18:57 -05:00
Mike Blumenkrantz 27d505fb59 require [X-Gadget-Bugreport] entry for sandbox gadgets, integrate bug reporting 2018-01-22 17:03:45 -05:00
Mike Blumenkrantz 6f9b14b8ee print notifications to stderr if a notification handler doesn't exist 2018-01-22 16:52:00 -05:00
Mike Blumenkrantz 815391126e further protect against crashes when xwayland crashes 2018-01-22 16:51:40 -05:00
Mike Blumenkrantz 0e53e5aade xwayland popups don't require a parent surface on commit 2018-01-22 16:51:05 -05:00
Mike Blumenkrantz 8ffda5f23a don't do x11 window grab for fps counter when running in wayland mode
this crashes older efl
2018-01-22 16:21:28 -05:00
Mike Blumenkrantz efa9f4276a fix notification crashes when a callback isn't specified 2018-01-22 16:06:42 -05:00
Mike Blumenkrantz 69c570104a require X-Gadget-Version field for sandbox gadget .desktops 2018-01-22 15:59:09 -05:00
Mike Blumenkrantz 83041e4815 add menu item for reporting bugs
fix T6633
2018-01-22 15:35:58 -05:00
Mike Blumenkrantz 35f705a621 support gadget versions with [X-Gadget-Version] .desktop entry
fix T6397
2018-01-22 15:25:31 -05:00
Mike Blumenkrantz 9bba6e80e4 require [Type] = Application for sandbox gadget .desktop entries 2018-01-22 15:20:38 -05:00
Mike Blumenkrantz aa9ece4722 require [Name] entries for sandbox gadget .desktop files 2018-01-22 15:20:38 -05:00
Mike Blumenkrantz 83952a1708 add notification util function for more easily sending notifications
still need some kind of sticky notification for important things
2018-01-22 15:20:38 -05:00
Mike Blumenkrantz 109d7897b0 show title for gadget bar menus 2018-01-22 15:20:38 -05:00
Mike Blumenkrantz 0e14928811 add sandbox/runner gadget types to gadget menu as title 2018-01-22 15:20:35 -05:00
Mike Blumenkrantz d309a9c39b add gadget type to gadget menu header for internal gadgets 2018-01-22 14:39:53 -05:00
Mike Blumenkrantz 9a557876c2 use normal emotion function to determine playability of e_thumb files
ref 82f1b8a1c1
ref D4779
2018-01-22 14:16:26 -05:00
Mike Blumenkrantz adc3c5ac81 clamp large windows to desk's useful geometry if smart placement fails
in the case where a window does not place with the smart placement algorithm,
clamp position to the top-left available position within the useful geometry
so that the titlebar will always be visible
2018-01-22 13:41:45 -05:00
Mike Blumenkrantz 7f649d078b block gadget site layouts on moving gadgets which are not on the pointer site
these will be recalculated correctly once the move operation terminates

fix T6623
2018-01-22 11:17:54 -05:00
Mike Blumenkrantz e787a71048 clear visible gadget popups when triggering a gadget action 2018-01-18 15:33:11 -05:00
Mike Blumenkrantz 617735ca4c consider gadget ctxpopups as normal popups for callback purposes 2018-01-18 15:31:43 -05:00
Mike Blumenkrantz 265dd55163 sort gadgets alphabetically in gadget editor 2018-01-18 15:02:11 -05:00
Mike Blumenkrantz 037068112f flush injected gadget loader protocol connections after calling methods
ensure that gadget-specific methods trigger a flush instead of relying
on a render to occur
2018-01-17 17:31:09 -05:00
Carsten Haitzler d73d902292 init anim - fix sudden vanish of init splash in some cases
this seems to happen to @manmower in T6619. it may just be timing
changes that changed the start loop time to be at init of ecore maybe ...
but it was doing a forced hide and not a clean "done"
that animates/fades. so fix this along with deferring show until the
first render pre.

this fixes T6619
2018-01-17 18:14:29 +09:00
Mike Blumenkrantz 683f76beab add a lot of null checks to wayland egl init
fix T6617
2018-01-16 18:36:11 -05:00
Stephen Houston f4cff7229f Mark unused parameters as EINA_UNUSED and remove unused variables. 2018-01-12 16:58:16 -06:00
Mike Blumenkrantz 0fa5d3d0e3 rename Bryce -> Gadget Bar in ui elements
this was a joke that accidentally went on way longer than intended
2018-01-12 15:23:52 -05:00
Mike Blumenkrantz 7b31d05ff2 unset E_Client->changes.pos when attempting to maximize a new re_manage client
a remaining client from before a restart which is maximized does not need its
position adjusted; this will cause it to go offscreen when unmaximized

ref T6414
2018-01-12 12:26:21 -05:00
Mike Blumenkrantz 6c97716899 use e_zone_desk_useful_geometry_get() for all client maximize geometry fetching
fix T6414
2018-01-12 12:26:21 -05:00
Mike Blumenkrantz b95e28fd91 propagate sandboxed gadget tooltip sizes as aspects
xdg_popup does not have min size hints, so instead we can proxy aspect through
to mimic this behavior
2018-01-11 16:24:00 -05:00
Mike Blumenkrantz 94270ffd93 pass correct pointer to sandbox gadget tooltip destructor
fix crash when hiding tooltips
2018-01-11 16:24:00 -05:00
Mike Blumenkrantz 6b002d58a2 explicitly show sandbox gadget extracted surfaces
ensure that these surfaces are made visible if they have not yet been internally
mapped

ref T6443
2018-01-10 14:22:11 -05:00
Mike Blumenkrantz 0568e20ba5 use SIGTERM for closing all sandbox gadgets, SIGUSR2 for removing gadgets
this should be more usable
2018-01-09 14:41:14 -05:00
Mike Blumenkrantz 83f77b0156 use SIGINT when closing sandboxed gadgets 2018-01-09 10:01:32 -05:00
Mike Blumenkrantz d2c85e5471 Revert "add sandbox gadget event to indicate gadget removal"
This reverts commit 6549353b53.

I had forgotten that this is already handled by other means
2018-01-09 09:57:36 -05:00
Mike Blumenkrantz 6985df9058 throw unconfigured buffer error as necessary in wl_surface.commit 2018-01-08 11:53:52 -05:00
Mike Blumenkrantz beb6922a17 always throw error in wl_surface.commit for unparented popup surfaces 2018-01-08 11:52:58 -05:00
Mike Blumenkrantz 5cc08794ee handle passed output resource for xdg-shell fullscreen request 2018-01-08 11:14:05 -05:00
Mike Blumenkrantz f34c780db3 print error when failing to unlink efm/eeze mount point after unmount
CID 1382955
2018-01-08 10:46:25 -05:00
Mike Blumenkrantz 6ad75a5e85 protect against null deref when emitting efm/eeze error messages
CID 1382954
2018-01-08 10:46:25 -05:00
Mike Blumenkrantz b9a9bd1da9 refactor E_Storage finding for efm/eeze volumes in backend
CID 1382951
2018-01-08 10:46:25 -05:00
Mike Blumenkrantz c662eab434 add sandbox gadget event to indicate gadget configure
ref T6443
2018-01-05 12:33:39 -05:00
Mike Blumenkrantz 8bd02aca70 set runner gadget instance data to gadget object, not sandbox object
fixes crash when configuring gadget
2018-01-05 12:33:39 -05:00
Mike Blumenkrantz 6549353b53 add sandbox gadget event to indicate gadget removal
ref T6443
2018-01-05 12:33:39 -05:00
Mike Blumenkrantz 81891eeb8e explicitly tag sandbox gadget instances as such 2018-01-05 12:33:39 -05:00
Mike Blumenkrantz a8ebefcb68 use only required wayland protocol files for gadget loader build 2018-01-05 12:33:39 -05:00
Mike Blumenkrantz 99f1f21665 only use first-added window for gadget interfaces in sandboxing
popups and tooltips are not valid for gadget api use, only the base window
for a gadget should receive/use gadget methods
2018-01-05 12:33:39 -05:00
Mike Blumenkrantz e78c1843ae handle tooltips in sandboxed gadgets
fix T6335
2018-01-05 12:33:39 -05:00
Thanatermesis 3d9044a9fc improved default size for icons in menus that looks pixelated 2018-01-04 20:22:42 +00:00
Ross Vandegrift 629f7d41c8 clean up .desktop files and misc typos
Summary:
Drop deprecated Encoding key from desktop files

The Encoding key is no longer required, all desktop files are assumed to
be UTF-8 encoded.  See details at:
https://standards.freedesktop.org/desktop-entry-spec/1.1/apc.html

Fix various typos and misspellings

lintian, Debian's package checker, uses strings to check for common typos
in compiled binaries.  This change fixes the ones it identified in 0.22.1.

Reviewers: zmike!

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5585
2018-01-04 09:57:52 -05:00
Derek Foreman 2a7312d2bc Fix potential NULL pointer dereference
CID 1382953
2017-12-21 09:54:42 -06:00
Al Poole 481a4d6611 build: fix meson build on FreeBSD.
Summary: -Dsystemd=false and -Ddevice-udev=false with this.

Reviewers: raster, zmike!

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-12-15 11:32:20 -08:00
Carsten Haitzler 4f26b4b1dd e come client - actually set placed more generally...
previous fix... was not general enough. put this outside the if that
only places if props change or size pos hints need fetching.

@fix
2017-12-14 23:10:58 +09:00
Amitesh Singh 4d340f2114 Revert "re-enable building against latest efl git"
This reverts commit a782beba82.

the legacy API was missing. I added it in EFL now.
Refer 1264fb4af2 in EFL.

Fixes T6500
2017-12-13 13:45:35 +09:00
Chris Michael a782beba82 re-enable building against latest efl git
In EFL git head, this function has changed to be just
evas_object_coords_inside_get. This patch wraps the two different
function names around an #ifdef so we can check EFL version that we
are building against and call the correct function accordingly.

Fixes T6500

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-12-12 10:19:37 -05:00
Marcel Hollerbach 45aeda7843 build: enable -lintl if we find it
otherwise translations are not working
2017-12-11 15:47:33 +01:00
Carsten Haitzler a2740126f1 e client - fix initial placement of override redirect windows in x....
several override redirect windows are being forcibly re-placed by e.
they should not be. ever. this affects scim's IM panel i see and
chromium's menus. it probably affects more than this. this fixes both
of these cases for sure. probably more.

@fix
2017-11-26 00:28:31 +09:00
Mike Blumenkrantz bd88282047 remove autotools 2017-11-20 07:05:36 -05:00
Carsten Haitzler 9fe7343180 fix mouse hangs after unblank
this fixes T5883
2017-11-14 18:15:26 +09:00
Derek Foreman db9e70708a Make e_gadget_runner.c compile on efl 1.20
It won't work, but it won't fail to build.  Temporary hack until 1.21
is released.
2017-11-09 12:39:24 -06:00
Mike Blumenkrantz 8b798d9fb0 move x11 client re_manage code into corresponding NEW_CLIENT hook
setting desk after e_client_new() completes is too late, as a desk will have
been automatically set by this time and any existing positioning data will
have been mangled in the process

fix T6317
2017-11-08 09:29:35 -05:00
Mike Blumenkrantz f05b26c8a3 set zone/desk for clients after creating comp object
previously this resulted in attempting to move the comp object before it
was created, but evas does not throw any errors when null is passed and so
it was never noticed

fix T6317
ref T6326
2017-11-08 09:29:28 -05:00
Mike Blumenkrantz a7d5920ba6 unset E_Client->changes.pos for re_manage clients
I think this was unintentionally working around a placement bug?
2017-11-08 09:28:52 -05:00
Mike Blumenkrantz 99db9e2557 more E_BITFIELD conversions 2017-11-08 09:22:24 -05:00
Mike Blumenkrantz 791f70541d unify meson version requirements for efl 2017-11-07 10:41:45 -05:00
Mike Blumenkrantz 19a807bdb2 always emit E_EVENT_COMP_OBJECT_ADD events
fix T6322
2017-11-07 10:40:12 -05:00
Mike Blumenkrantz e7cfd06675 avoid performing client rescales during shutdown 2017-11-07 10:40:00 -05:00
Mike Blumenkrantz 59fa0e418d use E_BITFIELD define for bitfield struct members
on release builds this will be a bitfield, on devel builds it will make
bools a normal unsigned char for easier debugging
2017-11-07 10:39:56 -05:00
Mike Blumenkrantz f78eb3c108 requeue client for render if show animation completes and damages exist
attempt to catch clients which have a render queued prior to the image
becoming visible
2017-11-07 10:39:33 -05:00
Mike Blumenkrantz dde4bafd7f add field width limits to all fscanf params in e_intlc.
fix T6316
2017-11-07 10:39:17 -05:00
Carsten Haitzler 147bc7a6da e comp object - patch volume update case for propagating state signals
complete f161edc3f3 with missing update
case

@feature
2017-11-07 16:16:33 +09:00
Carsten Haitzler f161edc3f3 comp object -> propgate signals to the volume objects from the frame
if frame changes (eg by focus signals) the volume object cant adapt.
send signals to it too so it can adapt if it wants to.

@feat
2017-11-07 15:41:35 +09:00
Carsten Haitzler 4f5067dde9 hits: silence warnings about possible null string for strcmp 2017-11-06 11:19:39 +09:00
Carsten Haitzler dd9a6637e4 e sys - frix warning for less noise
though act will not be set unless mnt is also true... this means less
noise from compiler wanrings so we can focus on real errors.
2017-11-06 10:24:37 +09:00
Mike Blumenkrantz b40398ab30 make autotools build depend on protocol xml files to pull in changes 2017-11-03 14:01:17 -04:00
Mike Blumenkrantz aeee701b63 fix undefined symbols on autotools+wayland build 2017-11-03 14:01:14 -04:00
Mike Blumenkrantz ecb0370ea9 save sandbox gadget configs when saving normal gadget config 2017-11-03 13:51:41 -04:00
Mike Blumenkrantz 2e81e5f8de disable sandbox gadgets if loader cannot be found on startup 2017-11-03 13:51:12 -04:00
Mike Blumenkrantz b8f8c42aec make wl_pointer cursor handling state-based to correctly handle cursor visuals
this fixes a lot of corner cases such as apps which set their cursor before
receiving pointer.enter events
2017-11-03 13:21:57 -04:00
Mike Blumenkrantz 58e686caec show internal pointer cursor whenever resetting to internal cursor
don't rely on efl internals for this
2017-11-03 13:19:54 -04:00
Mike Blumenkrantz f4470e002e add gadget sandboxing
docs in progress, tasks https://phab.enlightenment.org/project/board/179/
2017-11-03 11:47:35 -04:00
Mike Blumenkrantz 9302f23a56 bump efl pc required version 2017-11-03 11:43:07 -04:00
Mike Blumenkrantz 3ddd090173 fix non-pam build with meson 2017-11-01 14:04:06 -04:00
Mike Blumenkrantz 577f62e9b1 pass key downs through xkbcommon
bad copy/paste in 984a1facd9
2017-11-01 13:20:19 -04:00
Mike Blumenkrantz b5320b6246 explicitly free client animation agent object during fullscreen operation
ensure that animations do not persist after fullscreen state has been set
2017-10-31 12:04:48 -04:00
Mike Blumenkrantz 0f216c7e95 handle more mouse buttons under wayland
this was incorrectly referenced from weston's x11 compositor, which directly
uses xcb events and sends them as wl_pointer events. efl translates all input
events to use the same button scheme numbering, coincidentally enabling the use
of this code for all backends
2017-10-30 10:51:20 -04:00
Mike Blumenkrantz 47df20207d block wl modal window destructor from intercepting xwl modal windows
failing to pass these to the xwl destructor breaks the xserver

ref T5593
2017-10-30 10:29:39 -04:00
Mike Blumenkrantz ac49e6de22 unset xwayland client changes.pos flag during xwl->wl switch if client is unplaced
fixes some initial client positioning issues
2017-10-30 10:29:39 -04:00
Carsten Haitzler 4f8e3acfcf nvidia driver workaround atexit handlers for pam auth
this works around an apparently atexit() handler in nvidia drivers
that if you fork() a parent and do NOT exec() then the child process
will end up messing with the parent processes access to the nvidia
devices/display/whatever i believe via an atexit() handler because
moving from exit() to _exit() solves the issue. fixes T6197

@fix
2017-10-30 13:11:06 +09:00