Commit Graph

18949 Commits

Author SHA1 Message Date
Carsten Haitzler 39752e55ec 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-12 16:25:35 +09:00
Carsten Haitzler f591b09da5 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-12 16:25:35 +09:00
Mike Blumenkrantz 4e1cbab3ff 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-10 17:24:13 -05:00
Mike Blumenkrantz 8f3c9dd796 do not use new_client to determine placement-related paths during wl client commit
this is a remnant from xdg5-only code where new_client meant "first buffer". with
xdg6, this is no longer the case since a surface can receive infinite commits
without ever having a buffer attached

ref 9a82f7bcb0
2017-02-10 17:24:13 -05:00
Mike Blumenkrantz 476305563c always set E_Client->placed when successfully moving a comp object
enforce this for all cases
2017-02-10 17:24:13 -05:00
Mike Blumenkrantz 63b7111a1f make client placement eval not dependent on new_client flag
this should just run if placed is not set for a valid window
2017-02-10 17:24:13 -05:00
Mike Blumenkrantz 040b5f6a44 watch client UNIGNORE hook for adding new tiling clients
ref 6f5e2ddefcd287640416c8da362b3865299e331b
2017-02-10 17:24:13 -05:00
Mike Blumenkrantz e7f9500bae do not display sr rememebers in remember config dialog 2017-02-10 17:24:13 -05:00
Mike Blumenkrantz 964640d9ae never return remembers which apply uuid if not looking for sr remembers
avoid collision between sr remembers and user remembers
2017-02-10 17:24:13 -05:00
Mike Blumenkrantz a8e7ca98cc allow new_clients to update their remembers
this might cause a little more event spam but it's pretty harmless
2017-02-10 17:24:13 -05:00
Mike Blumenkrantz 743a57f572 watch UNIGNORE hook for hooking window remembers
ref d9cc4f887828b620cd114e85b89589cbe929ea50
2017-02-10 17:24:13 -05:00
Mike Blumenkrantz d6052cbbfd unignore wl clients on first commit regardless of buffer attachment
this allows for things to begin catching "new" clients as soon as possible
in the compositor
2017-02-10 17:24:13 -05:00
Mike Blumenkrantz 7c118eb272 use E_Client->changes.size for validating wl client geom during configure
xdg6 allows for clients without buffers to be configured such that the
first buffer will match the configured state

if a client is sized before this point, the changes.size flag will be set
2017-02-10 17:24:13 -05:00
Mike Blumenkrantz 2f6f31f2a7 add client hook for UNIGNORE
UNIGNORE is the hook to watch for wl clients as they are added; the
ignore mechanism prevents most of the compositor from processing
clients. this is a stupid method from an api perspective since it's
different in x11 and wl, so it should probably be improved on in the future
2017-02-10 17:24:13 -05:00
Mike Blumenkrantz 25240fb86d 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-10 17:24:13 -05:00
Mike Blumenkrantz 51782fd5ee Revert "e - wayland - fix double-resize if e wants a different initial size"
This reverts commit e1c3120689.

this commit revealed a number of issues with the xdg6 implementation related
to unconfigured buffer management: see subsequent patches for a less
sledgehammer-y solution

ref 5497fadce4
2017-02-10 17:24:13 -05:00
Mike Blumenkrantz 0d4a52a240 fix return code checking for errors when generating wl key events 2017-02-10 17:24:13 -05:00
Mike Blumenkrantz cafb46953b add wl_buffer output module 2017-02-10 17:24:13 -05:00
Mike Blumenkrantz 75ff919036 more correctly handle dnd completion for wl
* always send cancel when drag is !accepted
* always null e_comp_wl->drag_source
2017-02-10 17:24:13 -05:00
Mike Blumenkrantz b568e7abb1 simplify _e_comp_wl_data_device_drag_finished() slightly 2017-02-10 17:24:13 -05:00
Mike Blumenkrantz 1f7bd4b83d 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-10 17:24:13 -05:00
Mike Blumenkrantz 0acea1a2b1 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-10 17:24:13 -05:00
Mike Blumenkrantz c6216d7c1e 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-10 17:24:13 -05:00
Mike Blumenkrantz 7350a9c891 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-10 17:24:13 -05:00
Mike Blumenkrantz 00329d6f29 force mouse-out on wl clients during delete if mouse.in is set
#TheDisappointer
2017-02-10 17:24:13 -05:00
Mike Blumenkrantz e3d0fdbf67 only unset current pointer cursor object if new one is being set
#TheDisappointer
2017-02-10 17:24:13 -05:00
Mike Blumenkrantz 0534c7ae6f 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-10 17:24:13 -05:00
Mike Blumenkrantz 12655becaa 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-10 17:24:13 -05:00
Mike Blumenkrantz 3d3e5e67fb plug list leak in luncher
==25839== 8,576 (6,432 direct, 2,144 indirect) bytes in 134 blocks are definitely lost in loss reco$
==25839==    at 0xE812A41: _eina_chained_mempool_alloc_in (eina_chained_mempool.c:212)
==25839==    by 0xE812CD4: eina_chained_mempool_malloc (eina_chained_mempool.c:324)
==25839==    by 0xE7CCFED: eina_mempool_malloc (eina_inline_mempool.x:90)
==25839==    by 0xE7CD241: _eina_list_mempool_list_new (eina_list.c:213)
==25839==    by 0xE7CE044: eina_list_append (eina_list.c:569)
==25839==    by 0x29E2CF07: _bar_check_for_duplicates (bar.c:58)
==25839==    by 0x29E30D7F: _bar_cb_exec_client_prop (bar.c:1281)
==25839==    by 0xDBD7AF6: _ecore_call_handler_cb (ecore_private.h:317)
==25839==    by 0xDBD8A85: _ecore_event_call (ecore_events.c:518)
==25839==    by 0xDBE1AEF: _ecore_main_loop_iterate_internal (ecore_main.c:2380)
==25839==    by 0xDBDF89D: ecore_main_loop_begin (ecore_main.c:1290)
==25839==    by 0x441C04: main (e_main.c:1093)
2017-02-10 17:24:13 -05:00
Mike Blumenkrantz 57edf1bbd8 remove E_Config->desktop_default_name
this is an easy format string attack vector which serves no purpose
that I can fathom. the commit log where it was added it also made
no mention of this, as it was done in a seemingly-unrelated feature
addition
2017-02-10 17:24:13 -05:00
Mike Blumenkrantz c3dd3cf828 wrap time module strftime calls more loosely when disabling -Wflags 2017-02-10 17:24:13 -05:00
Mike Blumenkrantz 641812918f add note in doc for "gadget_destroyed" callback re: callback ordering 2017-02-10 17:24:13 -05:00
Mike Blumenkrantz b876c055f5 remove callback for "gadget_destroyed" in pager
dead code
2017-02-10 17:24:13 -05:00
Mike Blumenkrantz 0266601a29 remove del callbacks for xkbswitch list config objects
==10821== Invalid write of size 8
==10821==    at 0x28168A4B: _list_del (e_mod_config.c:455)
==10821==    by 0x78F6C78: _eo_evas_object_cb (evas_callbacks.c:192)
==10821==    by 0xE597F3A: _event_callback_call (eo_base_class.c:1422)
==10821==    by 0xE598161: _efl_object_event_callback_legacy_call (eo_base_class.c:1491)
==10821==    by 0xE59BC8F: efl_event_callback_legacy_call (efl_object.eo.c:146)
==10821==    by 0x7932A4D: _efl_canvas_object_efl_object_event_callback_legacy_call (evas_object_main.c:1012)
==10821==    by 0xE59BC8F: efl_event_callback_legacy_call (efl_object.eo.c:146)
==10821==    by 0x78F7537: evas_object_event_callback_call (evas_callbacks.c:364)
==10821==    by 0x7932C9B: _efl_canvas_object_efl_object_destructor (evas_object_main.c:1042)
==10821==    by 0xE599F2A: efl_destructor (efl_object.eo.c:58)
==10821==    by 0x5033E3F: _elm_interface_atspi_accessible_efl_object_destructor (elm_interface_atspi_accessible.c:609)
==10821==    by 0xE599F2A: efl_destructor (efl_object.eo.c:58)
==10821==    by 0x511E8DB: _elm_widget_efl_object_destructor (elm_widget.c:5866)
==10821==    by 0xE599F2A: efl_destructor (efl_object.eo.c:58)
==10821==    by 0xE58D31E: _efl_del_internal (eo_private.h:248)
==10821==    by 0xE58D6E5: _efl_unref_internal (eo_private.h:323)
==10821==    by 0xE58F9CA: _efl_object_call_end (eo.c:620)
==10821==    by 0xE599203: efl_del (efl_object.eo.c:18)
==10821==    by 0x7932565: evas_object_del (evas_object_main.c:902)
==10821==    by 0x510EC99: _elm_widget_efl_canvas_group_group_del (elm_widget.c:461)
==10821==    by 0x7948FE8: efl_canvas_group_del (efl_canvas_group.eo.c:36)
==10821==    by 0x505ACC0: _elm_layout_efl_canvas_group_group_del (elm_layout.c:813)
==10821==    by 0x7948FE8: efl_canvas_group_del (efl_canvas_group.eo.c:36)
==10821==    by 0x7946ED7: evas_object_smart_del (evas_object_smart.c:1076)
==10821==    by 0x7933114: _efl_canvas_object_efl_object_destructor (evas_object_main.c:1095)
==10821==    by 0xE599F2A: efl_destructor (efl_object.eo.c:58)
==10821==    by 0x5033E3F: _elm_interface_atspi_accessible_efl_object_destructor (elm_interface_atspi_accessible.c:609)
==10821==    by 0xE599F2A: efl_destructor (efl_object.eo.c:58)
==10821==    by 0x511E8DB: _elm_widget_efl_object_destructor (elm_widget.c:5866)
==10821==    by 0xE599F2A: efl_destructor (efl_object.eo.c:58)
==10821==    by 0xE58D31E: _efl_del_internal (eo_private.h:248)
==10821==    by 0xE58D6E5: _efl_unref_internal (eo_private.h:323)
==10821==    by 0xE58F9CA: _efl_object_call_end (eo.c:620)
==10821==    by 0xE599203: efl_del (efl_object.eo.c:18)
==10821==    by 0x7932565: evas_object_del (evas_object_main.c:902)
==10821==    by 0x510EC99: _elm_widget_efl_canvas_group_group_del (elm_widget.c:461)
==10821==    by 0x7948FE8: efl_canvas_group_del (efl_canvas_group.eo.c:36)
==10821==    by 0x4F4D549: _elm_box_efl_canvas_group_group_del (elm_box.c:412)
==10821==    by 0x7948FE8: efl_canvas_group_del (efl_canvas_group.eo.c:36)
==10821==    by 0x7946ED7: evas_object_smart_del (evas_object_smart.c:1076)
==10821==    by 0x7933114: _efl_canvas_object_efl_object_destructor (evas_object_main.c:1095)
==10821==    by 0xE599F2A: efl_destructor (efl_object.eo.c:58)
==10821==    by 0x5033E3F: _elm_interface_atspi_accessible_efl_object_destructor (elm_interface_atspi_accessible.c:609)
==10821==    by 0xE599F2A: efl_destructor (efl_object.eo.c:58)
==10821==    by 0x511E8DB: _elm_widget_efl_object_destructor (elm_widget.c:5866)
==10821==    by 0xE599F2A: efl_destructor (efl_object.eo.c:58)
==10821==    by 0xE58D31E: _efl_del_internal (eo_private.h:248)
==10821==    by 0xE58D6E5: _efl_unref_internal (eo_private.h:323)
==10821==    by 0xE58F9CA: _efl_object_call_end (eo.c:620)
==10821==    by 0xE599203: efl_del (efl_object.eo.c:18)
==10821==  Address 0x2c731708 is 184 bytes inside a block of size 456 free'd
==10821==    at 0x4C2ED4A: free (vg_replace_malloc.c:530)
==10821==    by 0x28165F69: _free_data (e_mod_config.c:249)
==10821==    by 0x49D92E: _e_config_dialog_free (e_config_dialog.c:156)
==10821==    by 0x546D2F: e_object_free (e_object.c:119)
==10821==    by 0x546F4B: e_object_unref (e_object.c:152)
==10821==    by 0x546B5E: e_object_del (e_object.c:60)
==10821==    by 0x49E233: _e_config_dialog_cb_dialog_del (e_config_dialog.c:333)
==10821==    by 0x546B34: e_object_del (e_object.c:58)
==10821==    by 0x4AA23C: _e_dialog_cb_key_down (e_dialog.c:357)
==10821==    by 0x78F6CB4: _eo_evas_object_cb (evas_callbacks.c:199)
==10821==    by 0xE597F3A: _event_callback_call (eo_base_class.c:1422)
==10821==    by 0xE598161: _efl_object_event_callback_legacy_call (eo_base_class.c:1491)
==10821==    by 0xE59BC8F: efl_event_callback_legacy_call (efl_object.eo.c:146)
==10821==    by 0x7932A4D: _efl_canvas_object_efl_object_event_callback_legacy_call (evas_object_main.c:1012)
==10821==    by 0xE59BC8F: efl_event_callback_legacy_call (efl_object.eo.c:146)
==10821==    by 0x78F7537: evas_object_event_callback_call (evas_callbacks.c:364)
==10821==    by 0x7906AD8: _canvas_event_feed_key_down_internal (evas_events.c:3112)
==10821==    by 0x7909281: _evas_canvas_event_key_cb (evas_events.c:3960)
==10821==    by 0xE597E57: _event_callback_call (eo_base_class.c:1399)
==10821==    by 0xE598161: _efl_object_event_callback_legacy_call (eo_base_class.c:1491)
==10821==    by 0xE59BC8F: efl_event_callback_legacy_call (efl_object.eo.c:146)
==10821==    by 0x65FDE63: _direct_key_updown_cb (ecore_evas.c:4664)
==10821==    by 0x65FDFC9: _ecore_evas_input_direct_cb (ecore_evas.c:4692)
==10821==    by 0x6813D6E: _ecore_event_evas_key (ecore_input_evas.c:429)
==10821==    by 0x6814A8D: ecore_event_evas_key_down (ecore_input_evas.c:707)
==10821==    by 0xDBD7AF6: _ecore_call_handler_cb (ecore_private.h:317)
==10821==    by 0xDBD8A85: _ecore_event_call (ecore_events.c:518)
==10821==    by 0xDBE1AEF: _ecore_main_loop_iterate_internal (ecore_main.c:2380)
==10821==    by 0xDBDF89D: ecore_main_loop_begin (ecore_main.c:1290)
==10821==    by 0x441BB4: main (e_main.c:1093)
==10821==  Block was alloc'd at
==10821==    at 0x4C2FA50: calloc (vg_replace_malloc.c:711)
==10821==    by 0x28165773: _create_data (e_mod_config.c:182)
==10821==    by 0x49DBBC: _e_config_dialog_go (e_config_dialog.c:204)
==10821==    by 0x49D4E9: e_config_dialog_new (e_config_dialog.c:80)
==10821==    by 0x28165625: _xkb_cfg_dialog (e_mod_config.c:141)
==10821==    by 0x49EACF: e_configure_registry_call (e_configure.c:72)
==10821==    by 0x314400C3: _e_mod_run_cb (e_mod_main.c:165)
==10821==    by 0x53DA23: _e_menu_active_call (e_menu.c:2045)
==10821==    by 0x53F7CC: _e_menu_cb_mouse_up (e_menu.c:2778)
==10821==    by 0xDBD7AF6: _ecore_call_handler_cb (ecore_private.h:317)
==10821==    by 0xDBD8A85: _ecore_event_call (ecore_events.c:518)
==10821==    by 0xDBE1AEF: _ecore_main_loop_iterate_internal (ecore_main.c:2380)
==10821==    by 0xDBDF89D: ecore_main_loop_begin (ecore_main.c:1290)
==10821==    by 0x441BB4: main (e_main.c:1093)
2017-02-10 17:24:13 -05:00
Mike Blumenkrantz 97f1c83712 simplify xkbswitch rule parsing, ensure resource freeing
ref 0fd251c437

CID 1368345
2017-02-10 17:24:13 -05:00
Stephen 'Okra' Houston 671f881e42 Luncher/Batman: Don't access an invalid icon structure. 2017-02-10 16:22:49 -06:00
Derek Foreman 1fe5b56500 Replace some ecore_time_get users with ecore_loop_time_get
I'm confident these sites can use loop time safely, and they're
frequent callers.
2017-02-10 15:18:19 -06:00
Stephen 'Okra' Houston 089b0b248d Use an event rect to better handle mouse events in cpumonitor. 2017-02-10 14:34:31 -06:00
Davide Andreoli a2644259b2 sysinfo gadget: remove frames in popups 2017-02-10 21:23:55 +01:00
Stephen 'Okra' Houston 73495d6347 Sysinfo Gadgets: Allow for vertical themes for all sysinfo gadgets
This is in preparation for themers in the future.
2017-02-10 11:59:47 -06:00
Stephen 'Okra' Houston 327f9bc68f Sysinfo gadgets: Prevent info popup from getting stuck. 2017-02-10 11:37:30 -06:00
Stephen 'Okra' Houston 762879bf5c Batman - Don't destroy the popup on hide. 2017-02-10 11:15:02 -06:00
Derek Foreman 391c833a8d Remove tests for wayland damage_buffer presence
We now depend on a version of wayland that has these, so we don't
need to handle the case where it's not available anymore.
2017-02-10 10:06:00 -06:00
Carsten Haitzler e1c3120689 e - wayland - fix double-resize if e wants a different initial size
let's say you sue tiling or some module and it wants a window by
default to maximize or fill the screen or be size XxY ... this stops
the client first having a buffer smaller (or larger) and then sizing
down rendering 2 times (one of the renders is pointless). this makes
initial buffer render/show seamless as it should be in wayland.
2017-02-10 19:23:43 +09:00
Carsten Haitzler ef6c178a17 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-10 08:33:34 +09:00
Stephen 'Okra' Houston 1f6baaf283 Cpumonitor: Add a similar popup to memusage. 2017-02-09 16:22:22 -06:00
Stephen 'Okra' Houston 8547164c16 Pager and Batman: Use pages in config popup and standardize look. 2017-02-09 11:14:03 -06:00
Stephen 'Okra' Houston 5489f690cc Batman: Don't show time left in the popup when battery is charged. 2017-02-09 10:21:52 -06:00
Stephen 'Okra' Houston 67a59e5df5 Luncher: Determine if client icon is an evas_object_image or edje_object. 2017-02-08 17:44:25 -06:00
Derek Foreman 2021480748 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-08 13:25:30 -06:00
Stephen 'Okra' Houston b994562776 Batman - Add the config popup to configure batman. 2017-02-08 13:08:14 -06:00
Stephen 'Okra' Houston 75cbcf5b47 Batman - Don't show hard to read and redundant text in the gadget itself - Move it to a popup on left click. 2017-02-08 08:57:35 -06:00
Chris Michael 63a9bae282 fix potentially uninitialized variables
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-02-07 13:18:19 -05:00
Chris Michael b535aefaad wl_drm: Fix potentially uninitialized variable
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-02-07 13:18:19 -05:00
Stephen 'Okra' Houston ed1d8ac971 Luncher: Don't update and show the preview on client del unless the preview exists. 2017-02-07 11:48:09 -06:00
Chris Michael 90c120985a minor formatting fix
NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-02-07 11:09:54 -05:00
Chris Michael 8cb4a92ab5 minor formatting fix
NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-02-07 11:09:54 -05:00
Chris Michael 76cbf61616 minor formatting fix
NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-02-07 11:09:49 -05:00
Derek Foreman 4cf555f36e Replace all timer_reset with timer_loop_reset
Another sed bomb - didn't occur to me first time around to
check for this.  Cleans up more clock_gettime calls.
2017-02-06 15:59:25 -06:00
Stephen 'Okra' Houston 9344c828c6 Wireless: Don't autoclose left click popup in order to be on the same page with other gadgets. 2017-02-06 13:38:50 -06:00
Stephen 'Okra' Houston e41dfc7d5b Luncher: Remove closed clients from the preview popup if visible, and close the popup if no more clients are active.
This fixes T5097
2017-02-06 11:12:43 -06:00
Stephen 'Okra' Houston a89afe4186 Luncher - Free hashes at the appropriate time. 2017-02-06 10:45:58 -06:00
Stephen 'Okra' Houston e6a8cea364 Enlightenment - Fix Coverity issues CID 1369051 and 1369052 2017-02-06 09:46:44 -06:00
Derek Foreman 73aecd73ab Replace all timer_add with timer_loop_add
So yeah, I've literally used sed to replace every occurrence of
ecore_time_add() with ecore_timer_loop_add() because I'm reasonably
confident that no part of E has a legitimate need for timer based on the
exact current time.

It would be really nice if I'm not wrong. :)

The reason for this is the incredible spew of clock_gettime() calls I'm
seeing on an ARM system (that should have a vdso for gettime, but...)
This can amount to thousands of system calls per second.

 #YOLO
2017-02-03 15:52:28 -06:00
Stephen 'Okra' Houston 4e9335547f Sysinfo - Netstatus gadget - Fix netstatus calculation. 2017-02-03 15:21:09 -06:00
Mike Blumenkrantz 036bcc1f67 hide wl client cursors when set_pointer is passed a null surface 2017-02-03 15:13:45 -05:00
Mike Blumenkrantz ee4a861f90 use 1x1 for unsized (internal) clients
this was a typo
2017-02-03 15:13:45 -05:00
Mike Blumenkrantz d566b54049 simplify mouse-out cursor reset for wl clients
this is handled by e_pointer_object_set()
2017-02-03 15:13:45 -05:00
Mike Blumenkrantz c68ca50ced make e_pointer_object_set() a no-op when passing the existing cursor 2017-02-03 15:13:45 -05:00
Mike Blumenkrantz 8144cd0cda use e_pointer_show() when updating wl-drm seat caps to enable pointer
prev function doesn't handle canvas pointers
2017-02-03 15:13:45 -05:00
Mike Blumenkrantz 83f0a68291 add e_pointer_show() 2017-02-03 15:13:45 -05:00
Mike Blumenkrantz 0fd251c437 free string pointer in xkbswitch parsing
CID 1368345
2017-02-03 15:13:45 -05:00
Mike Blumenkrantz e2f8d2ba69 implement pointer-constraints v1
xwayland nyi
2017-02-03 15:13:45 -05:00
Mike Blumenkrantz 85aaa64f11 ignore intercepted mouse events for non-wl compositing 2017-02-03 15:13:45 -05:00
Mike Blumenkrantz 30f1b8b9c3 generically handle relative motion eventing for non-featureful backends 2017-02-03 15:13:45 -05:00
Mike Blumenkrantz 501efaf357 add flag for comp screen iface to indicate relative motion eventing 2017-02-03 15:13:45 -05:00
Mike Blumenkrantz 186cf73294 implement relative-pointer v1 2017-02-03 15:13:45 -05:00
Al netstar Poole b6b143bf0c Make sysinfo gadgets work with BSD 2017-02-02 15:48:48 -06:00
Stephen 'Okra' Houston f7d09d6002 Sysinfo Gadget: Don't set aspect to 1:1 out of the box. Let edje determine aspect. 2017-02-02 15:42:05 -06:00
Stephen 'Okra' Houston 43530648c5 Sysinfo Gadget - Cpumonitor gadget resize callback needs to be removed after resize to prevent looping. 2017-02-02 15:03:49 -06:00
Derek Foreman 0a91a24573 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-02 12:03:51 -06:00
Davide Andreoli 5007293f99 sysinfo: fix popup position when using the cumulative sysinfo gadget 2017-01-30 22:46:27 +01:00
Davide Andreoli ff24863007 sysinfo: do not use autoclose on popups
This make the popups behave like the clock gadget popup
Also the autoclose ability in this case was quite broken
2017-01-30 22:40:27 +01:00
Davide Andreoli 5153321f0c mem gadget: adjust a little bit the values calculation
Now the gadget show EXACTLY the same values of the free command on my machine,
but note: I found at least 3 different implementation of procpc so your values could be a bit different.
2017-01-30 21:23:23 +01:00
Stephen Houston aeda6dfac6 Enlightenment - Sysinfo Gadget - Size cpumonitor correctly wrt to bryce. 2017-01-29 22:49:31 -06:00
Carsten Haitzler 1f87c6d805 e sys - make timeout for sys loging 3 instead of 15 seconds
this shortens logout timeout for "apps still hanging around" to 3
seconds meaning that within 3 seconds something should complain that
logout is taking too long so you know your logout request actually
went through... and any app not responding in 3 seconds is likely
"bad" (swapped out, hung on blocking i/o or something or doing a "are
you sure" dialog thing).
2017-01-30 12:57:23 +09:00
Carsten Haitzler b71f1be074 e dialog - fix unreszable dialogs to not be 1x1
so i see non-resizable dialogs end up 1x1... this fixes that.
2017-01-30 12:57:23 +09:00
Davide Andreoli cb6fedc6cb mem gadget: fix a typo 2017-01-29 14:49:17 +01:00
Davide Andreoli 6eaefe37fc mem gadget: try to improve values calculation
It's hard to mimic "free" output parsing /proc/meminfo... we should really use sysinfo.h
directly (like free does).

btw, on my system now the values are really near the "free" output
2017-01-29 14:42:09 +01:00
Al Poole 55a7d4feed Fixes issues w/battery and batman living together
Summary:
The problems were that both sysctl implementations defined public accessable fields named bat.

The static definition moves into the file scopes.

The E_FREE calls are fixing a use after free.

Reviewers: zmike!, bu5hm4n

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D4629
2017-01-29 12:47:15 +01:00
Davide Andreoli abd60cca9a mem gadget: implemented a new info popup
It now show lots more usefull information.
The actual values still need to be adjusted, the goal is to show the exact same values of the "free" command
2017-01-29 10:35:19 +01:00
Marcel Hollerbach b0271f3a2b cpuclock: NULL status if its freed
This fixes a lot of valgrind warnings when using the editors.
2017-01-29 00:27:26 +01:00
Marcel Hollerbach 2dc5981034 gadgets: free that data when notify and main is done
otherwise one of the two callbacks will use possible freed memory.
2017-01-29 00:27:17 +01:00
Marcel Hollerbach 738f6d8f6b e_gadget: fix destroying of drop_objects
keys of pointer hashes are represent as void** so you just get a pointer
to where the pointer can be found. This now dereferences the pointer so
the correct value is used.

This fixes T5136.
2017-01-28 23:02:40 +01:00
Davide Andreoli adc5fa6c8b mem gadget: pass the new fetched info to the theme
in case a themer want to show more info inside the gadget
2017-01-28 20:49:05 +01:00
Davide Andreoli 921af28813 mem gadget cleanup: rename vars
no functional changes
2017-01-28 19:18:08 +01:00
Davide Andreoli d1cb369623 mem gadget: formatting, fit into 80 cols
no functional changes
2017-01-28 18:02:58 +01:00
Davide Andreoli 1c8ca780da mem gadget: improve proc info fetching
* collect more info than just 2 percentage
* improve performance by parsing proc only onece every loop
* use active memory to calc percentage, now the value is near the other mem tools I have
2017-01-28 17:52:56 +01:00
Carsten Haitzler b55ce098bf e thumb - support signal emits and desk pan msgs for thumbs
this in theory allows pan desk thumbs to work... but hey ... they are
broken anyway... :)

@fix
2017-01-28 16:08:46 +09:00
Carsten Haitzler 1caf626322 e_thumb header - remove tabs 2017-01-28 12:59:33 +09:00