Commit Graph

7644 Commits

Author SHA1 Message Date
Mike Blumenkrantz 488ece76a6 do not add deleted clients to tasks gadgets 2016-03-28 12:59:34 -04:00
Mike Blumenkrantz d7f7eb9448 redo wayland client unignore mechanism
wayland clients were previously set as ignored until they obtained
a shell surface in order to avoid early execution of things like placement.

this had no effect.

the ignore must last until the first commit, at which point surfaces have been
sized and can be placed accurately without needing to move the surface around
a lot of times due to resize/frame adjust/birthdays
2016-03-24 16:43:32 -04:00
Marcel Hollerbach 19db5f256c e_xkb: init before e_comp_wl init
for the case e_xkb gets initialized, we need to init it before ecore_drm
is called, otherwise ecore_drm will create his own context and keymap,
which will be overriden a few moment later when e_xkb is initializied.
So by calling e_comp_wl_input_keymap_set before ecore_drm_init the
correct context and keymap is set and no useless elements are created.

The mainproblem is that the comp_type is set when the compositor is
already running, so we have to pass the type at the init to the e_xkb
to tell for which kind of compositor we are running.
2016-03-24 20:54:03 +01:00
Marcel Hollerbach a7c659e258 wl: remove useless calls to e_comp_wl_input_keymap_set
those calls are not needed anymore since they will be overriden by e_xkb
init which takes place a few calls later
2016-03-24 20:54:03 +01:00
Marcel Hollerbach ab4e4e17cb e_comp_wl: allow variants and options for keyboard settings
Also set options and variants to the rule names struct.
There is no need to use strdup here the values are just freed in the
end.
2016-03-24 20:54:03 +01:00
Carsten Haitzler 1b73bedd4d e mod: cpufreq - handle the case where cpu has zero freqs - dont crash
it can be that if you remove setuid bits on cpufreq binary we can end
up with zero freqs on bsd. this causes a crash.

@fix
2016-03-24 12:17:35 +09:00
Mike Blumenkrantz 3dd8ce38e7 remove lots of impossible null checks from pager move callback
CID 1237302
2016-03-22 15:21:04 -04:00
Mike Blumenkrantz 1098abfb6e use snprintf for string handling in batget
CID 1039801
2016-03-22 15:10:50 -04:00
Mike Blumenkrantz 750aa4644a rework systray theme applying code
potentially the most overoptimized string handling code I've ever seen.

CID 1039843
2016-03-22 12:23:51 -04:00
Mike Blumenkrantz 403e86d67c use snprintf for string handling in batget
CID 1039801
2016-03-22 12:06:27 -04:00
Mike Blumenkrantz c82f9ca55a avoid null deref in during pager_plain dnd
CID 1237302
2016-03-22 11:55:38 -04:00
Mike Blumenkrantz 1c3b45e984 use zone geometry when clamping evry gadget popup to gadget's screen
fix T3238
2016-03-18 13:53:28 -04:00
Mike Blumenkrantz 7c054f272b disable wizard mouse binding page's next button if all modifiers are disabled
this breaks the user experience!
2016-03-16 14:33:06 -04:00
Mike Blumenkrantz 9eba966126 reduce wizard connman timeout timer to 0.5s
dbus is not this slow.
2016-03-16 14:32:15 -04:00
Mike Blumenkrantz 604bf1ea4e fix stringshare usage in wizard language page (010)
lang is not stringshared, and if it were then add/ref should always
be called before del
2016-03-16 13:01:09 -04:00
Mike Blumenkrantz 160fb71af0 set wizard page names, print to stderr every time a page is advanced 2016-03-16 12:55:19 -04:00
Mike Blumenkrantz c0f7e4cb4d do not reset the wizard got_desktops flag when setting the default system lang
this does not trigger any efreet cache rebuilds and will result in the user
being forced to sit through the full duration of the wait timer: currently 7.0s

this gets triggered multiple times throughout the wizard.

embarrassing.jpg
2016-03-16 12:54:17 -04:00
Mike Blumenkrantz ffdc31a8c2 attempt to use left-aligned label text in wizard 2016-03-16 12:24:18 -04:00
Mike Blumenkrantz 9715b6cd7c add new wizard page to change default modifiers for global mouse bindings
this is a default feature of enlightenment which is not obvious to all new
users and, with the default modifier being Alt, may interfere with some
application behavior. this informs users of the feature's existence and
allows for easily changing the modifier(s)
2016-03-16 12:24:14 -04:00
Mike Blumenkrantz dbb63f890d improve time gadget screen positioning 2016-03-14 14:27:15 -04:00
Mike Blumenkrantz 1fd9d8eee5 break out xwl init/shutdown into static functions for reuse internally
calling modapi functions like this causes symbol collision and randomly
calls corresponding functions for other modules
2016-03-12 11:15:42 -05:00
Mike Blumenkrantz f1bccff8e1 Revert "fix xwayland compile with 1.18 eo"
This reverts commit 2ec02258ec.
2016-03-12 10:43:13 -05:00
Mike Blumenkrantz d2cc427505 grab comp input on wizard start
without this, windows can randomly grab keyboard input and prevent
fast forwarding
2016-03-11 17:19:32 -05:00
Mike Blumenkrantz 9c829d5f25 redo wizard to use elm 2016-03-11 17:19:32 -05:00
Mike Blumenkrantz 14ad1892aa redo wizard's gl testing mechanism
Xorg.$.log is not a reliable source of information for a variety of reasons,
using the readily-available evasgl is much safer and more portable
2016-03-11 17:19:32 -05:00
Mike Blumenkrantz 1b475da50e handle wireless module existence in related wizard page 2016-03-11 17:19:32 -05:00
Mike Blumenkrantz eb58e2ca70 remove eldbus init/shutdown calls from the codebase
this is handled by e_msgbus
2016-03-11 17:19:32 -05:00
Mike Blumenkrantz 40ebdb60d4 remove library checks for a number of modules along with useless defines
most of these date back from before efl was a unified tree or enlightenment itself
could be optionally built with things like dbus support
2016-03-11 17:19:32 -05:00
Mike Blumenkrantz 53d64276b4 resolve harmless coverity reports in time module
CIDs 1352837, 1352846
2016-03-10 11:28:34 -05:00
Mike Blumenkrantz 0b69c40d92 resolve harmless coverity reports in wireless module
CIDs 1352825, 1352826, 1352827
2016-03-10 11:21:11 -05:00
Mike Blumenkrantz c95f3347ae flatten return of strcmp to bool value
CIDs 1352821, 1352822
2016-03-10 11:08:48 -05:00
Mike Blumenkrantz fcf3bf8a5c remove show callback from evry win on deletion
==22088== Invalid read of size 1
==22088==    at 0x2C9FE7B1: _evry_cb_show (evry.c:3046)
==22088==    by 0x5BE9918: _eo_evas_object_cb (evas_callbacks.c:65)
==22088==    by 0x69A16F4: _eo_base_event_callback_call (eo_base_class.c:715)
==22088==    by 0x69A3041: eo_event_callback_call (in /usr/lib/libeo.so.1.17.99)
==22088==    by 0x5BEA0B3: evas_object_event_callback_call (evas_callbacks.c:240)
==22088==    by 0x5C2577C: evas_object_inform_call_show (evas_object_inform.c:12)
==22088==    by 0x5C1ED24: _show (evas_object_main.c:1360)
==22088==    by 0x5C1EADA: _evas_object_efl_gfx_base_visible_set (evas_object_main.c:1313)
==22088==    by 0x575D80A: efl_gfx_visible_set (in /usr/lib/libefl.so.1.17.99)
==22088==    by 0x5C1EA58: evas_object_show (evas_object_main.c:1291)
==22088==    by 0x479FCF: _e_comp_intercept_show_helper (e_comp_object.c:1616)
==22088==    by 0x47A02A: _e_comp_intercept_show (e_comp_object.c:1630)
==22088==  Address 0x17621591 is 81 bytes inside a block of size 120 free'd
==22088==    at 0x4C2AE6B: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==22088==    by 0x2C9F95A8: _evry_window_free (evry.c:993)
==22088==    by 0x2C9F8065: evry_hide (evry.c:366)
==22088==    by 0x2C9FB9A2: _evry_cb_key_down (evry.c:1926)
==22088==    by 0x8F6ED4A: _ecore_call_handler_cb (ecore_private.h:316)
==22088==    by 0x8F6FC92: _ecore_event_call (ecore_events.c:518)
==22088==    by 0x8F7A15A: _ecore_main_loop_iterate_internal (ecore_main.c:2339)
==22088==    by 0x8F784A8: ecore_main_loop_begin (ecore_main.c:1284)
==22088==    by 0x4403F6: main (e_main.c:1087)
==22088==  Block was alloc'd at
==22088==    at 0x4C2BBD5: calloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==22088==    by 0x2C9F8D7D: _evry_window_new (evry.c:758)
==22088==    by 0x2C9F772D: evry_show (evry.c:177)
==22088==    by 0x2C9F711C: _e_mod_run_defer_cb (e_mod_main.c:537)
==22088==    by 0x8F75267: _ecore_call_task_cb (ecore_private.h:282)
==22088==    by 0x8F7574E: _ecore_idle_enterer_call (ecore_idle_enterer.c:174)
==22088==    by 0x8F7A05B: _ecore_main_loop_iterate_internal (ecore_main.c:2261)
==22088==    by 0x8F784A8: ecore_main_loop_begin (ecore_main.c:1284)
==22088==    by 0x4403F6: main (e_main.c:1087)
2016-03-09 14:25:16 -05:00
Mike Blumenkrantz 2ec02258ec fix xwayland compile with 1.18 eo 2016-03-09 13:13:45 -05:00
Mike Blumenkrantz d44de2e192 add window maximize animation
this has been implemented and working well in desksanity for a couple years,
and it's a trivial thing to bring over now that efx is available
2016-03-08 18:06:36 -05:00
Chris Michael d49f60dd8a don't have to hook the ecore_evas resize callback here as that should
be handled by elm now

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-03-08 16:09:55 -05:00
Carsten Haitzler 0d9af6c3d6 e xkbswitch: don't free layouts that are just pointed to in instances
we free the instance layout even though tthis is never duplicated but
jhust set to point to the current_layout. don't free it as this causes
a double-free. this fixes a crash here.

@fix
2016-03-08 13:45:59 +09:00
Mike Blumenkrantz 9589ec7d54 stack time gadget popups on POPUP layer 2016-03-07 11:34:17 -05:00
Mike Blumenkrantz 21a6a600c3 add button to desklock config dialog for configuring gadgets
the current security policy for this is based on two points:
1) don't add gadgets to your lockscreen that you don't want on your lockscreen
2) see #1

future improvements here will probably add gadget info to show what risks a gadget
may incur when placed on the lockscreen
2016-03-04 14:23:44 -05:00
Mike Blumenkrantz dad9160ffa add new time module with clock gadgets
this is the successor to the clock module/gadget. it uses separate config files
and theme groups from the "clock" module.
2016-03-04 14:23:44 -05:00
Mike Blumenkrantz 24fe43d735 add new wireless module/gadget
this is the successor to the connman module/gadget. it does not use
or depend on econnman.
2016-03-04 14:23:44 -05:00
Mike Blumenkrantz f527e6c8fb add new start gadget
this is identical to the old one so it will just be merged into the existing module
2016-03-04 14:23:44 -05:00
Mike Blumenkrantz d3fe687ada add a namespaced version of efx
this will eventually be merged into the efl tree but the current release
cycle is not a good time for it
2016-03-04 14:23:44 -05:00
Chris Michael 993f387433 don't define variables that we are not going to use
If our efl version is not >= 1.18, then the rotations and orient
variables here end up being unused. This patch just moves those
variables (and their usage) inside the 1.18 version check

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-03-01 10:22:21 -05:00
Mike Blumenkrantz d6802e9c42 use uint instead of int for eina_list_count() return in cpufreq (trivial)
CID 1267212
2016-02-29 10:43:02 -05:00
Mike Blumenkrantz d8f0bea57a prevent potential null deref during pager (plain) window drag
CID 1237302
2016-02-29 10:43:02 -05:00
Mike Blumenkrantz 1e1754466d use dblequal for double comparisons in edgebindings config 2016-02-29 10:43:02 -05:00
Mike Blumenkrantz f723b88d50 use strbuf instead of strcat in edgebinding string synthesis
CID 1039800
2016-02-29 10:43:02 -05:00
Mike Blumenkrantz fcac68958e use strbuf instead of strcat in keybinding string synthesis
CIDs 1039798, 1039799
2016-02-29 10:43:02 -05:00
Mike Blumenkrantz 91eede9577 strcpy -> strncpy in evry files plugin 2016-02-29 10:43:02 -05:00
Mike Blumenkrantz c5ff37e56e use strbufs instead of strcat in fwin navbars
CIDs 1039794, 1039795, 1039796
2016-02-29 07:55:37 -05:00
Mike Blumenkrantz bbd4d2fbae force changed when adding or removing keyboard layouts in config
fix T3208
2016-02-26 16:45:44 -05:00
Mike Blumenkrantz 71a85b7d08 update winlist ui when using directional window selection
fix T3152
ref b1378ce77b
2016-02-26 16:37:52 -05:00
Derek Foreman 6f3e670f75 Fix xdg-shell destructors
_e_shell_surface_destroy() is already the implementation's destructor, so
it'll be called when the surface is destroyed anyway.  What we have to do
here is just call wl_resource_destroy(resource) - which will call that
function for us.

It'll also do us the favor of actually destroying the resource and
removing it from the client's resource list so we won't get a SECOND call
to _e_shell_surface_destroy() on client exit.
2016-02-18 12:31:31 -06:00
Gustavo Lima Chaves 92eb0572e2 e/quickaccess: Make "Skip window list" a quickaccess behavior option too. 2016-02-16 14:19:04 -02:00
Carsten Haitzler be1b11ca28 e - video bgs - allow selection of video files for wallpapers
this allows video files to be played for wapapers - they loop and run
indefinitely. it is a special video object that shares the same source
across all outputs, so if you have the same video set, on 2 screens
(or desktops) then it's only decoded once and uses proxies to
ducplicate. this works in the pager too (it uses proxies).

this is for amusement and fun and ... because we can. :)
2016-02-05 18:35:49 +09:00
Mike Blumenkrantz a2279cf119 remove efl version check macros in xwayland dnd handlers 2016-02-04 12:58:37 -05:00
Chris Michael 04e108dbac correctly wrap 1.18 API function calls
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-02-04 11:19:56 -05:00
Chris Michael b88e8b7a4d wrap 1.18 drm rotation functions around #ifdefs
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-02-04 11:17:48 -05:00
Chris Michael 04ea946f3d Add support for configuring output rotations
When running under DRM, this patch adds support for getting the
supported rotations of an output, listing them in the Screen Setup
dialog, and adds the ability to set a rotation on a given screen

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-02-04 09:16:02 -05:00
Mike Blumenkrantz fe5d2e6e61 add bool return for mouse-based E_Action callbacks
in many cases, a mouse action's callback will fail to execute as a result of multiple
objects being under the pointer at the time of the event. in this case,
the callback should be able to determine whether action callback processing should
continue.

as an example, when attempting to execute an action which only activates for
client objects, if the passed object is not a client then the callback should return
false to indicate that it was not able to perform the action for the given object,
allowing further actions to be attempted on this object
2016-02-03 18:09:18 -05:00
Chris Michael c692381f2e add missing EINA_UNUSED for _xkb_changed_state function
This function does not use the event parameter, so mark it as unused

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-01-25 14:02:48 -05:00
Mike Blumenkrantz 6e3b9763b0 remove e_bindings_key_up_event_find, rename other one to e_bindings_key_event_find
key up and key down are identical, having two functions here is misleading
2016-01-25 12:38:45 -05:00
Mike Blumenkrantz c637c70f1c add extra param to e_bindings_key_down_event_find() to return found binding
this should match the corresponding mouse binding function
2016-01-25 12:27:54 -05:00
Mike Blumenkrantz 6d45baa510 do not shortcut access of Efreet_Desktop->x hash in fileman
this subverts thread safety and also (now) avoids return data validation

fix T3096
2016-01-25 11:29:55 -05:00
Mike Blumenkrantz edba13322a disable bindings during wayland screenshot operations
recursive action activation is very bad.
2016-01-22 16:31:07 -05:00
Mike Blumenkrantz 446f9c4b68 defer screenshot action execution using a job
the drm screenshot action forcefully iterates the main loop, causing
the current loop (which triggered the action) to return after the screenshot
action has ended. during this time, it's possible for other actions to also
trigger, including triggering subsequent screenshot actions, so it's necessary
to defer the execution of the action until after the initial loop which triggered
the action has returned

 #Recursion
2016-01-22 16:25:32 -05:00
Mike Blumenkrantz 542079d841 move all wayland extension implementations into e_comp_wl_extensions.c
e_comp_wl.c getting a bit hard to manage already, future extension additions
are going to make it a lot worse
2016-01-22 16:25:29 -05:00
Mike Blumenkrantz df5106f1cb ship tiling module edj file
this never gets edited, no point in compiling it every build
2016-01-22 16:25:29 -05:00
Mike Blumenkrantz f54bf1ec60 allocate E_Shell_Data for all xdg surfaces (popups)
this crashes if the shell surface does not have shell data
2016-01-21 17:21:31 -05:00
Mike Blumenkrantz e3f829ace7 more correctly handle evry mouse detection on wayland
in this case, mouse events which are not originating from the internal
window are for the screen, and these coords can be used for determining
"mouse out". if the mouse event comes from the window, it is inside the window.

ref 7c661b54a9
2016-01-19 13:49:10 -05:00
Mike Blumenkrantz 0df8c94572 set want_focus for xdg popup surfaces on creation
these types of surfaces should grab focus as early as possible, and
setting the flag at this time ensures that it will be handled during
the next client eval
2016-01-19 13:45:08 -05:00
Mike Blumenkrantz d52fffeec9 call xdg surface map when creating a surface for visible internal windows
if windows are created during startup, they will attempt to show themselves
before xdg surface operations are available, leading to a scenario where they
will never successfully map themselves. if the elm win object is visible, this
indicates a mapped internal window, so directly call the map function at this
time to make the window visible
2016-01-19 13:43:06 -05:00
Marcel Hollerbach 1c7cd941d0 xkbswitch: change icon if E_EVENT_XKB_CHANGED is emitted 2016-01-18 22:14:45 +01:00
Marcel Hollerbach bd7136ade1 xkbswitch: enable module for wayland 2016-01-18 22:14:45 +01:00
Mike Blumenkrantz 262b303984 use 2/3 screen size for wl output (nested) compositor size
1/4 screen size is a compositor for ants
2016-01-18 14:52:11 -05:00
Mike Blumenkrantz de59970690 set zone-based name on lokker comp objects
allows identification of desklock objects in events
2016-01-15 19:24:29 -05:00
Derek Foreman 3304ea7b6c Remove inappropriate usage of %m
Summary:
printf %m stringifies and prints errno.  This is actually hugely confusing
if used in error messages after failures that don't set errno.

You may get "Success", or you may get an errno that was harmless ages
ago.

Some of the functions followed by %m have only some error paths that
set errno, or make multiple system calls that can set errno
independently - knowing the errno at failure time is unlikely to be
useful in these cases.

Reviewers: devilhorns, zmike

Reviewed By: zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3571
2016-01-14 12:41:47 -05:00
Mike Blumenkrantz e31a3cc378 make ibar config pointer EINTERN 2016-01-14 10:31:03 -05:00
Carsten Haitzler 81d2596209 e randr - fix randr dialog to do restore right again
post e20 commit that allowe dradnr dialog to come up for a specifci
streen broke restore option - now this fixes it.
2016-01-11 09:01:55 +09:00
Mike Blumenkrantz d1d30029d1 select mixer popup sink after popup has been fully initialized
attempting to select too early results in callbacks being triggered
before various widgets are available
2016-01-08 12:05:41 -05:00
Chris Michael 370b6a03e3 Update wl_weekeyboard for ecore_evas_wayland_window_get2 function rename
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-01-08 10:37:42 -05:00
Carsten Haitzler e1369a24bd per-desk profiles - move to per screen and use elm derived profiles
this removes the per desktop profile config and replaces it with a
per-screen one that is tied to a specific display so it is far more
logical than per desktop. this allows e to set up different scaling
per screen for apps that use elementary for example via this derived
profile.

this of course is slightly problematic for e itself since it now uses
elm - as this will cause e to go kind-of-crazy with differing profiles
as it fights with itself and elm if 2 screens have different profiles.
this requires elm to be fixed to allow custom profiles per window.

this also currently won't switch profile of a window when you
reconfigure screens.

@feature

xx
2016-01-08 21:54:31 +09:00
Mike Blumenkrantz 26ab47f679 simplify and clarify winlist directional selection action code
in the case where no prev/next direction is specified a navigational
direction will always be specified

CID 1347403
2016-01-07 15:19:20 -05:00
Mike Blumenkrantz 2381280cc2 remove defines for various beta api in other places 2016-01-06 13:01:38 -05:00
Chris Michael acb1875af0 Fix issue of nested compositors not working with Ecore_Wl2 library
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-01-05 13:18:13 -05:00
JengHyun Kang bdb462e19f Set cached xkb context/keymap
Summary:
Set xkb context and keymap to Ecore_Drm.
         In enlightenment (used in wayland with drm backend), keymap is used only one.
         So for avoid unnecessary open keymap files, set cached context and keymap.
         But for this, enlightenment must compile keymap before init ecore_drm.
         So I changed booting sequence also.

Test Plan: Distinguish time between before and after during add a keyboard device.

Reviewers: raster, devilhorns, zmike

Subscribers: cedric, input.hacker, ohduna

Differential Revision: https://phab.enlightenment.org/D3504
2016-01-05 13:07:27 -05:00
Tom Hacohen 0381a7b06f Tiling: tile windows with "Static" gravity.
I can't find anything in the specs that would imply those shouldn't be
tiled. This may cause placement bugs, but I don't think that'd be the
case, as we ignore application placement when tiling anyway.

@fix
2016-01-04 14:06:13 +00:00
Chris Michael bc716aae54 Add missing function prototype for e_winlist_direction_select
This function is being used inside e_mod_main, but the function
prototype was never exposed which lead to implicit declaration
warnings when building winlist module

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2015-12-24 16:58:39 -05:00
Toan Pham b1378ce77b enhance winlist next window selection
Summary:
The original next window selection of winlist is weak.  It searches the next window with the following conditions:

1.  Next non-overlaped window in the direction of user's selection (up,down,right,left).
2.  The next window has to be the closest window from the currently selected window (calculated from shortest distance from each window's border, in the direction of selection)
3.  the second distant requirement is this:
      delta2_next = abs(ec_orig->x - ec_orig->w / 2 - ec->x + ec->w/2);
    * Which I believe is a mistake, should be:
      delta2_next = abs(ec_orig->x + ec_orig->w / 2 - ec->x + ec->w/2);

These two conditions are weak, and they sometimes can result in unexpected selection to the user.

The enclosed patch enhances the next window selection: 1) A next window selection can be the window that's overlapping with the in-focused window.  2)  calculates the next window from the center of the currently focused window to the next window, and it also takes into account directionality (a window that's farther in the direction of selection has a better chance of being selected then a window that's closer in the direction of selection, but offset-ed in the lateral direction.)

Test Plan:
1.  Create 4 key binds for "next window to left, right, up, down".
2.  Open up 4 different windows and position them in odd/random positions.
3.  Try to navigate to each window (with the winlist shortcut keys) before this patch.
4.  Try with this patch, and evaluate if the window selection is more **PREDICTABLE**.

Reviewers: zmike

Subscribers: cedric

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

I fixed the weridness and it behaves much more reliably now with
"tall" or "wide" windows. also fixed some formatting etc. etc. - this
now works better and now if u alt+tab AND then use arrow keys while
holding alt... it'll navigate around geometrically rather nicely.

so big fixes and good for pointing out the simpleness of the original
code. :)

  - raster

@feat
2015-12-22 19:05:04 +09:00
Mike Blumenkrantz e4b41a9dee add E_BINDING_CONTEXT_LAST as sentinal enum value
also remove suspicious-but-unused E_BINDING_CONTEXT_NUMBER define
in mousebindings
2015-12-21 12:46:44 -05:00
Derek Foreman 1965c7965e emix: Rename parameter bool to mute
Summary: Broke my wayland build because something included stdbool.h

Reviewers: devilhorns, zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3467
2015-12-18 16:42:30 -05:00
Marcel Hollerbach f174008a83 mixer: only save state if not in init
If we are calling emix_config_save_state_get while in init, we are
freeing the list emix_config_save_state_restore is iterating over.
This leads to crashes.

@fix T2942
@fix T2906
2015-12-18 13:21:08 +01:00
Marcel Hollerbach d9e01e851f alsa: fix a valgrind warning
Valgrind was warning about the values not initialized
2015-12-18 13:20:48 +01:00
Chris Michael e40033be0a Fix type of size fields for E_Shell_Data
In the xdg_surface_configure_send function, the size params
(width/height) come in as int32_t. This patch makes the E_Shell_Data
fields for width & height match those (else we end up with compiler
warnings when comparing int32_t to uint32_t).

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2015-12-15 10:20:33 -05:00
Mike Blumenkrantz 6831544d71 use current box geometry for calculating desktop ibar/ibox sizing
desktop gadgets don't have minimum size set from parent objects, so
it's necessary to use the current object geometry in order to correctly
size these gadgets since the top-most widget is from elm

fix T2907
2015-12-11 16:17:57 -05:00
Lukasz Stanislawski b49e918be9 conf_apps: fix add/remove screen lock applications.
Summary:
Fix missmatched paths between desklock and conf_applications module to
enable adding/removing screen lock applications with a dialog.

Test Plan:
Settings=>Apps=>Screen lock/unlock application
           Veryfy if apps are correctly added to config.

Reviewers: zmike, cedric

Subscribers: cedric, seoz

Differential Revision: https://phab.enlightenment.org/D3436
2015-12-11 09:24:13 -05:00
Mike Blumenkrantz bfd11c68ca add wayland shell private data for managing shell-specific data
also cache xdg configure infos and avoid sending duplicate events
2015-12-10 13:24:55 -05:00
Mike Blumenkrantz 1e615c9917 do not apply x11 randr iface in wl-x11 if running nested in x11
http://i.imgur.com/S7G0O96.gif
2015-12-10 11:54:50 -05:00
Mike Blumenkrantz a03f80a845 init ecore-x during wl-x11 init to ensure DISPLAY is set 2015-12-10 11:34:15 -05:00
Marcel Hollerbach 903099c021 e_randr2: Add NULL check
e crashed for me when starting the screen configure tool.
Adding the NULL check here fixes that.
2015-12-10 11:43:54 +01:00
Mike Blumenkrantz eb9ba4af6a fix wl-x11 make/install rules to not include nonexistent DATA files 2015-12-09 13:50:39 -05:00
Chris Michael f5741f1cb4 Fix using global ewd variable by making it part of e_comp_wl
ref T2919

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-09 13:16:48 -05:00
Mike Blumenkrantz f005ac9bff create wl client connection during compositor init, use in shot module
fixes shot module

ref T2919
2015-12-09 13:16:48 -05:00
Chris Michael 7c335dc02f Port wl_fb module to use Ecore_Wl2 Library
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-09 13:16:48 -05:00
Chris Michael a6553cfca9 Port wl_weekeyboard to use Ecore_Wl2 library
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-09 13:16:48 -05:00
Chris Michael 74cd89636b Don't leak eina_iterator in shot module
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-09 13:16:48 -05:00
Chris Michael 6e7ae13f53 Fix formatting of wl_weekeyboard module
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-09 13:16:48 -05:00
Chris Michael 9e8d0cc426 Port shot module to use ecore_wl2 library
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-09 13:16:48 -05:00
Stefan Schmidt a44a21ffd8 modules/geolocation: fix indent not following E coding style
Fix some wrong indents I just introduced as well as some older ones.
2015-12-09 15:11:57 +01:00
Stefan Schmidt 482cc68899 modules/geolocation: Add support for new speed and heading properties
Available since Geoclue 2.2.0. Display them in the popup if available.
2015-12-09 12:36:40 +01:00
Stefan Schmidt 3549d39676 modules/geolocation: Update xml protocol spec to match the 2.2.0 release
This add two new properties: speed and heading. Having our eldbus boiler code
generated against this new protocol spec file.
2015-12-09 11:05:49 +01:00
Mike Blumenkrantz 7a15b12d44 reshuffle all notifications on a notification merge
improves layout when a notification's size changes due to merged text
being larger than original text
2015-12-07 18:02:21 -05:00
Carsten Haitzler ecca33310d e randr - feature fix that allows config to jump to specific screen
as part of another fix for having e just pop up the screen config
dialog when a new screen is detected that isn't configured, allow
config dialog for randr to get screen output name via input params

@fix
2015-12-07 19:52:41 +09:00
Mike Blumenkrantz a08ac02e82 add config option for allowing sticky windows to receive focus reverts
since forever, sticky windows have not been allowed to receive focus after
various events, eg. desk flip or window close. in some workflows, however,
this may actually be desired behavior

disabled by default

fix T2837
2015-11-30 16:27:04 -05:00
Derek Foreman 81ff082e0d Stop using MIN macros when choosing versions for wayland resources
Summary:
libwayland-server.so will post an error if the requested version
is higher than the supported one anyway, so there's no point in
doing this.

Using MIN() to pick versions is a client side idiom.

 #kansas

Reviewers: zmike, devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3385
2015-11-26 20:12:47 -05:00
Stefan Schmidt 7ed2381722 pulse backend: correct declaration of function with no parameters
We have to use void in a function declaration if we want no function
parameters. Using just empty parenthesis means the function takes an
unspecified number of parameters.

We had it correct for most declarations and this series fixes it for
the rest.

Thanks for the sparse semantic parser for pointing this out.
2015-11-26 18:10:47 +01:00
Mike Blumenkrantz 913e04bda7 declare xwayland functions prior to using them
#CompileFail
2015-11-24 15:46:10 -05:00
Mike Blumenkrantz 70c6dc30d1 use separate handler for x11 fatal errors when using xwayland
a fatal error with xwayland is not a fatal error for the compositor,
so this should not result in a dead session
2015-11-24 15:34:42 -05:00
Mike Blumenkrantz ba53e6937b fix all shadow warnings in msgbus module
ref cdb436ee86
2015-11-24 12:01:01 -05:00
Carsten Haitzler 255d227ac8 e - efm - rate limit dbus requests to open dirs or files to avoid dos
in a wayland wold we dont want to trust clients on the other side of a
dbus connection - so rate limit what you can do with efm dbus requests

@fix
2015-11-24 22:07:53 +09:00
Carsten Haitzler cdb436ee86 e msgbus - move almost all of core dbus methods to msgbus module
for security reaons, all the dbus methods that allow you to mess with
e are now in the msgbus module - load at your own risk. this is
irrelevant in x11, but in wayland this matters as wayland is actually
secure.

this also disables restart and shutdown dbus methods still in core.
they are there but non-functional due to possibly being able to be
abused in a wayland universe to "dos attack" the wm.

@fix
2015-11-24 22:07:46 +09:00
Mike Blumenkrantz a3266d5d89 ref clients while a wayland shell surface exists
in the case where a client is deleted, it's possible that the shell
surface may persist longer than the duration of the normal client delete
cycle, so it's necessary to ensure that the client will continue to exist
until the shell surface has been destroyed
2015-11-20 15:04:07 -05:00
Mike Blumenkrantz d659b86478 remove fwin popup size hint change callback on win deletion
this callback also crashes if called during delete
2015-11-20 09:16:21 -05:00
Mike Blumenkrantz b2706afe06 ensure fwin efm delete callback does not trigger crash
if this is called during fwin delete, dereferencing the passed data
will result in a crash
2015-11-20 09:09:38 -05:00
Mike Blumenkrantz 90071799a8 block task gadget refills while a drag is active
it's impossible to use a pager effectively with a task gadget due to
the constant resizing of the tasks gadget during any kind of window move
2015-11-19 15:34:19 -05:00
Stafford Horne 9bfd684e43 e/imc: fix issue with input method import segv and small window size
Summary:
The imc import dialog at "Settings > Language > Input Method Settings >
Import .." had issue where the size was almost zero.  When trying to
close the window it would SEGV.

The SEGV seems to be do the with dialog->cdata not being set.

The resize issue I am not so sure, but I upgraded to ELM and if fixed
the issue.

Test Plan:
Open "Settings > Language > Input Method Settings > Import ..."
 - The size should not be really small
 - When closing it should not cause E to SEGV
After applying the patch the above issues are fixed.

Reviewers: zmike

Subscribers: cedric, seoz

Differential Revision: https://phab.enlightenment.org/D3353
2015-11-19 12:46:58 -05:00
Carsten Haitzler e5f56f95e9 e mixer fix - fix default mixer to pulse if there
this makes e use the correct mixer backend if pulse is available as
opposed to using alsa going behind pulses back.

@fix
2015-11-14 10:14:30 +09:00
Kai Huuhko a785df425c L10N: Update Finnish translations
Includes translations from Launchpad.
2015-11-14 02:36:01 +02:00
Mike Blumenkrantz 52866a300a do not refill all tasks bars when a sticky window changes desks 2015-11-12 17:34:42 -05:00
Mike Blumenkrantz e140ccb0d1 install emixer icon to $(datadir)/pixmaps instead of /icons
fix T2834
2015-11-12 12:42:13 -05:00
Mike Blumenkrantz 3ad521ab9c ensure that all mixer volumes resolve to the appropriate gadget icon
reported by Jef91 in #e
2015-11-11 11:54:58 -05:00
Vivek Ellur dbfa9682bb Fix null dereference issue
Summary:
@Fix
possible null dereference issue while referencing cs2->id. So added a condition
to check it

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

Reviewers: zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3309
2015-11-10 12:26:48 -05:00
Vivek Ellur 54a613eda9 Fix memory leak issue
Summary:
@Fix

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

Reviewers: zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3307
2015-11-10 12:26:40 -05:00
Carsten Haitzler 3195b760ee ibar - fix shutdown if ibar client menu is up
valgrind pointed out a referencing issue with the ibar client menu on
hover and if e is shut down while this is up. it ends up referencing
an already deleted ibar icon, so delete the menu objects that
reference the icon if icon is deleted.

@fix
2015-11-10 19:06:57 +09:00
Stafford Horne fe4cd15782 e/desk_wallpaper: Fix setting wallpaper from within Virtual Desk dialog
Summary:
It seems this was missed when doing the manager/container id removal
back in march.  The param validation was failing and causing the "Set"
button to not work in "Screen > Virtual Desktops > Click to Change
wallpaper".

Test Plan:
1. Open "Screen > Virtual Desktops > Click to Change wallpaper"
2. Click "Set"
  - Expect that a wallpaper dialog be shown
  - Before this patch nothing happens

Reviewers: zmike

Subscribers: cedric, seoz

Differential Revision: https://phab.enlightenment.org/D3298
2015-11-07 22:52:21 -05:00
Mike Blumenkrantz d4614e1aad emit ibox icon signals to the internal edje object of the e_icon 2015-11-07 13:07:07 -05:00
Stafford Horne 0f2f21f201 e/conf_apps: Fix resizing of "Startup Application" dialog
Summary:
Currently the config dialog in Apps > Startup Applications does not properly
resized as one of the objects is not set to horizontal fill.

Test Plan: 1. Resize "Apps > Startup Applications", it should resize the list with the window

Reviewers: zmike

Subscribers: cedric, seoz

Differential Revision: https://phab.enlightenment.org/D3296
2015-11-07 12:11:49 -05:00
shorne 5f3278eba8 e/win_config: allow content of some dialogs to resize with the window
Summary:
Currently the dialogs in Winows > Window List Menu and Window Display are
resizable the their content does not resize.  This patch fixes that.

Test Plan: Open windows in window config dialog and ensure they can resize propertly

Reviewers: zmike

Subscribers: raster, cedric, seoz

Differential Revision: https://phab.enlightenment.org/D3275
2015-11-05 16:03:26 +09:00
Nicolas Aguirre a8bf439f88 Revert "Adds eglfs to Enlightenment"
This reverts commit ff1e7b5083.
2015-11-03 08:01:58 +01:00
Nicolas Aguirre 56c3dde5e6 Revert "wl_eglfs: enable gl acceleration, mouse, touchscreen and keyboard"
This reverts commit c99d46ae66.
2015-11-03 08:01:35 +01:00
Florent Revest c99d46ae66 wl_eglfs: enable gl acceleration, mouse, touchscreen and keyboard 2015-11-03 07:37:41 +01:00
Florent Revest ff1e7b5083 Adds eglfs to Enlightenment 2015-11-03 07:37:41 +01:00
Mike Blumenkrantz 1f42932ede clean up some systray leaks 2015-10-26 13:11:32 -04:00
Flavio Ceolin a524d165bc modules:mixer: Avoid pa backend from crash
Check the pulseaudio's context error and if info is not null before
get server's information.
2015-10-24 19:10:40 -02:00
Carsten Haitzler 7fb597a8ab e - ibar - fix clash when 2 icons of the same path get added somehow
i encontered a situation where the icon_hash contained a garbage entry
- had been freed already. the only way i can see this happening is if
the desktop file changed path during runtime thus the icon was never
removed from hash on free as string didnt match. store string used
when adding to hash so removal is guarannteed to work and also for
good measure protect against double-adding (and generate a new string
for storage using timestamp which should be unique).

so this fixes a crash i was just looping on.

@fix
2015-10-24 11:01:56 +09:00
Mike Blumenkrantz 18484e7eee completely remove access module
as promised almost a year ago, this module has been unmaintained to
the point where it cannot function in any way, and attempting to keep
it in the tree is a futile effort

this module can now be found at devs/discomfitor/e_module-access.git

ref 77717523f3
2015-10-22 13:52:31 -04:00
Mike Blumenkrantz 6eefae4822 add hacks to work around pulseaudio+xwayland integration deadlocks
enlightenment is (I think) the first wayland compositor to run with
in-process pulseaudio integration for audio playback and not just mixer
support. hooray.

this results in a fun issue: if DISPLAY is set, as it must be for x11
clients to function, pulseaudio will unconditionally attempt to use a
blocking socket connection to create a connection to the running xserver.
the only exception here is if x11 support has been compiled out of pulseaudio,
but probably no distro will do that ever.

so, what happens when the compositor thread tries to create a socket connection
to the xserver that the compositor thread has not yet started? absolutely nothing.
forever.

the easiest solution which continues to provide the key press sounds that everyone
loves is to ensure that the pulseaudio connection is created before DISPLAY is ever
set, namely in the xwayland module init.

this will now occur automatically now in the case when the mixer module detects
pulseaudio support.

TL;DR: don't disable mixer module if you use xwayland
2015-10-21 17:19:52 -04:00
Mike Blumenkrantz 07b778a396 do not use ecore-x functions in scale config while running in wayland 2015-10-21 14:20:24 -04:00
Thierry b9e793053d mouse_config: fix accel threshold and numerator limits.
man xset =>  If the `threshold' parameter is provided and 0, the
`acceleration' parameter will be used in the exponent of a more
natural and continuous formula, giving precise control for slow motion
but big reach for fast motion, and a progressive transition for motions
in between.  Recommended `acceleration' value in this case is 3/2 to 3,
but not limited to that range.
2015-10-16 13:29:19 -07:00
Mike Blumenkrantz dc872be2df check systray dbus name existence before attempting to recover session
in the case that a system error occurs the dbus method for returning the
session name can fail, leading to a null return

CID 1327399
2015-10-15 13:13:22 -04:00