Commit Graph

21948 Commits

Author SHA1 Message Date
Carsten Haitzler 18f754be0e evry module - fix warning about comparing signed to unsigned
harmless warning - use a cast to keepit quiet.
2017-02-24 14:47:41 -05:00
Carsten Haitzler 279bea35e4 efm - fix warnings for progress time display
the code is right - data is aligned, but gcc doesn't know this, so
silence it with void * cast
2017-02-24 14:47:41 -05:00
Carsten Haitzler a2ce9c054a e notification - silence alignment warning
the code is ok - it's aligned data from evas and we can address it by
int ptrs, but the warning is noise, so simply add a void * cast in there
2017-02-24 14:47:41 -05:00
Carsten Haitzler 1693daeb66 e comp - wl - add void cast to reduce warnings
we're pointer playing anyway so types here are not really useful. we
have to get our ptrs right - including alignment, and these warnings
are not useful and just noise.
2017-02-24 14:47:41 -05:00
Carsten Haitzler c080a171ee e xsettings - fix warnings about unaligned ptr access
this moves access to byte by byte memcpy's to avoid potential
unaligned access.
2017-02-24 14:47:41 -05:00
Carsten Haitzler 0bc055d19c e comp x - fix property fetch to use int ptr from the start
this clears up soem warnings and do the cast on providing the pointer
to ecore_x_window_prop_property_get() which since it has to allocate
the data will be fine for alignment anyway, so a void * cast will do.
2017-02-24 14:47:41 -05:00
Carsten Haitzler 737eabe0c3 efm ipc - fix unaligned int read on ipc decode
warning was right - this is an unaligned read. fix.
2017-02-24 14:47:41 -05:00
Carsten Haitzler f34d5dd159 e ptr cast via void fix to reduce warnings
so we cast a lot of ptrs to other types as that is then the actual
type of the object. all these objects are allocated by malloc nad
friends so this is ok. but gcc on arm is not happy and warns. maybe it
assume this ptr could be to an element in an array of structs of this
type and so on thus will have specific alignment enforced by compiler
but our casting may disturb it? anyway. cast via void first fixes it.
we can focus on other real warnings and errors instead.
2017-02-24 14:47:41 -05:00
Carsten Haitzler b6af56b0b2 e theme conf config - fix casting char fileds to int ptrs
we're casting ptrs to char fields to int * which is actually wrong as
we break alignment guarantees. fix.
2017-02-24 14:47:41 -05:00
Carsten Haitzler 664432e363 e fileman config - fix definite alignment bug with cast char to int ptr
we're casting ptrs to char fields to int * which is actually wrong as
we break alignment guarantees. fix.
2017-02-24 14:47:41 -05:00
Carsten Haitzler d425b38e56 e ervything md5 code - fix warnings about alignment
gcc on arm is actually validly complaining about us using int * ptrs
to point to char * data and thus it likely be unaligned, so work in
reverse. make the data int * aligned and when needed mess with it as
char * data byte by byte. warnings gone.
2017-02-24 14:47:41 -05:00
Mike Blumenkrantz 34eebbb4cc ignore all non-NORMAL type wl windows in e_place
this catches subsurfaces, drags, and popups, which were erroneously being
handled like obstacles during placement
2017-02-24 14:47:41 -05:00
Mike Blumenkrantz a0a9605d30 always set E_Client->placed when successfully moving a comp object
enforce this for all cases
2017-02-24 14:47:41 -05:00
Mike Blumenkrantz 808c0681db future-proof client hook inlist initialization
manually initializing this meant it needed to be kept in sync with the
header, something that I'm unlikely to check every time client hooks are
added/removed
2017-02-24 14:47:41 -05:00
Mike Blumenkrantz 0eeb0607e6 fix return code checking for errors when generating wl key events 2017-02-24 14:47:41 -05:00
Mike Blumenkrantz 3a83c9db9e more correctly handle dnd completion for wl
* always send cancel when drag is !accepted
* always null e_comp_wl->drag_source
2017-02-24 14:47:41 -05:00
Mike Blumenkrantz 10b1ba2b23 simplify _e_comp_wl_data_device_drag_finished() slightly 2017-02-24 14:47:40 -05:00
Mike Blumenkrantz 49c18095c2 move wl data device focus-change handling to data device leave() fn
leave() is always called before enter(), meaning that this will handle
window1 -> window2 as well as window1 -> null
2017-02-24 14:47:40 -05:00
Mike Blumenkrantz 6d14a6492f add specific handling for xwl cursor unsetting on mouse-out to ssd
xwl clients will attempt to unset the cursor when mousing out of the surface,
but this can happen after evas events are triggered for the ssd due to
latency

if the given surface has mouse.in set, but the mouse is not inside the surface
area, assume that the mouse has just entered the compositor canvas

 #TheDisappointer
2017-02-24 14:47:40 -05:00
Mike Blumenkrantz 5a69750ba9 reset compositor pointer cursor if wl surface destroy is the current cursor
this should never happen and is only included as a failsafe

 #TheDisappointer
2017-02-24 14:47:40 -05:00
Mike Blumenkrantz 6616fa2510 Revert "attempt to re-set wl surface pointer when popping back to "default" pointer type"
This reverts commit e42b072f38.

this is broken according to spec, clients should re-set their pointers manually
2017-02-24 14:47:40 -05:00
Mike Blumenkrantz f74862e9ea force mouse-out on wl clients during delete if mouse.in is set
#TheDisappointer
2017-02-24 14:47:40 -05:00
Mike Blumenkrantz 239dad4ec9 only unset current pointer cursor object if new one is being set
#TheDisappointer
2017-02-24 14:47:40 -05:00
Mike Blumenkrantz 2e7e1f0893 start xwayland process 2.0s after module load
this avoids conflicts with efl internals, which will break entirely
when DISPLAY is set under wayland, and xwayland internals, which will
abort immediately when efl tries to connect to it during its init phase
2017-02-24 14:47:40 -05:00
Mike Blumenkrantz b005919ea9 ref clients during exe_inst deletion to avoid invalid access after free
in the case where clients are deleted during the same loop that they are
added to an exe_inst, the client will be destroyed before the instance's
delete event returns

ref T4963
2017-02-24 14:47:40 -05:00
Mike Blumenkrantz 96c2ac0947 add note in doc for "gadget_destroyed" callback re: callback ordering 2017-02-24 14:47:40 -05:00
Carsten Haitzler 60e150aeb8 enlightenment_sys - eina_init BEFORE switching uid - safer
in case eina_init uses env vars, move it to befor setuid() so it can
detect. you normally would setuid only for a limited op and we do it
for "the rest of the running" as e_sys is fairly simple.
2017-02-24 14:47:40 -05:00
Derek Foreman f3e6f98889 Dispatch wayland frame callbacks in the correct order
The protocol says they should be dispatched in the order they're
registered, so switch to list append instead of list prepend.
2017-02-24 14:47:40 -05:00
Mike Blumenkrantz bef7872a01 hide wl client cursors when set_pointer is passed a null surface 2017-02-24 14:47:40 -05:00
Mike Blumenkrantz d257d872dc use 1x1 for unsized (internal) clients
this was a typo
2017-02-24 14:47:40 -05:00
Mike Blumenkrantz 526052c5af simplify mouse-out cursor reset for wl clients
this is handled by e_pointer_object_set()
2017-02-24 14:47:40 -05:00
Mike Blumenkrantz 9a3939d35c make e_pointer_object_set() a no-op when passing the existing cursor 2017-02-24 14:47:40 -05:00
Mike Blumenkrantz 02be57e7e5 Revert "re-enable getting and setting output rotations in wl_drm"
This reverts commit 54ecd5e56b.
2017-02-24 14:47:40 -05:00
Simon Lees 5771d4691b
21.6 NEWS Updates 2017-02-15 13:58:54 +10:30
Simon Lees 9c5ae9a47a
21.6 Release 2017-02-15 13:45:22 +10:30
Mike Blumenkrantz 72bfd182d1 add conditional updates for latest efl apis
ref dc2bad0fcd
2017-02-03 15:29:38 -05:00
Derek Foreman 17e66ed2b5 Stop sending wayland motion events when the mouse is grabbed
This stops the compositor from sending motion events to internal
windows while they're being moved or resized.
2017-02-03 10:49:54 -05:00
Carsten Haitzler 0a1733ba9a e dialog - fix unreszable dialogs to not be 1x1
so i see non-resizable dialogs end up 1x1... this fixes that.
2017-02-03 10:49:27 -05:00
Mike Blumenkrantz 1abdbe81b5 reset demo gadget id before deleting gadget object during drop operation
ensure that the gadget is marked as usable so that the config isn't deleted
2017-02-03 10:47:34 -05:00
Chris Michael 54ecd5e56b re-enable getting and setting output rotations in wl_drm
Small patch to re-enable the ability to query and set the rotation of
an output.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-02-03 10:42:09 -05:00
Carsten Haitzler f4243e1f5d e - wl mode - stop consuming 100 percent cpu
so on 1 intel laptop and my rpi i'm seeing 100% cpu usage in wayland
mode. it seems something is resizing to 0x0 and then causing a size
change which causes a property change which causes... another request
to 0x0 and repeat. dont set tyhe size changed flags if size actually
didnt change and this fixes that.
2017-02-03 10:41:25 -05:00
Mike Blumenkrantz 7608cebd85 handle pixmap_refresh() failure cases more accurately under wayland
non-usable pixmaps here are still valid in some cases, such as when
no buffer is attached
2017-02-03 10:41:10 -05:00
Mike Blumenkrantz 1644a7ec0a ensure that gadget internal del callbacks are handled before other callbacks 2017-02-03 10:41:04 -05:00
Mike Blumenkrantz bc9103ec68 use persistent clipping for comp object input rects
it's technically legal to set an input region larger than a surface,
then later expand the surface and expect that the input region will
also expand
2017-02-03 10:40:31 -05:00
Mike Blumenkrantz f2bfd957a1 do not perform frame coord adjustments for re_manage wayland clients
prevent mismatch of positions between restarts
2017-02-03 10:40:27 -05:00
Mike Blumenkrantz 5ab0d5be88 free configs for demo gadgets on object free
these are purely for demo purposes and should never be retained

I think this is right...
2017-02-03 10:40:05 -05:00
Chris Michael 0ba8bf56c5 Use proper coordinate adjustment
This seems like just some copy/paste that was never corrected, however
when calculating coordinate adjustments we should be using the proper
values here. Previous code was using e_comp_canvas_x_root_adjust for
the Y value. This patch uses e_comp_canvas_y_root_adjust for Y
coordinates.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-02-03 10:39:41 -05:00
Stephen 'Okra' Houston 0b3d519bd9 Enlightenment: Wireless gadget - place the ctxpopup after the size hints are set, not before 2017-02-03 10:39:07 -05:00
Stephen 'Okra' Houston 79342184b9 Enlightenment: Make gadget editor popup scrollable:
This fixes T5077
2017-02-03 10:38:58 -05:00
Carsten Haitzler 287b5ea0d9 ibar - fix seg with ibar icon task menus are up while desktop files change
segv if u go do make installs that install desktop files causing
efreet to recheck desktop files causing e to reset desktop files
causing ibar to refill icons but this causea a segv if a hover menu of
windows for that icon are up at the same time. this fixes that.

@fix
2017-02-03 10:36:28 -05:00