Commit Graph

494 Commits

Author SHA1 Message Date
Mike Blumenkrantz 4ec22df15f check for different types of load errors during startup image load tests
in the case where files are not found (possibly not installed/corrupted),
attempt to continue starting and not brick a running session
2017-07-20 17:18:33 -04:00
Mike Blumenkrantz 74613ff0fd only set qt theme override env vars if option to do theme matching is enabled 2017-07-14 18:40:50 -04:00
Carsten Haitzler f43d2b881c e blanking - add new special "locked timeout" that can be shorter
this allows you to have a different timeout when locked thats much
shorter to save screen/power more unless you log in.

@feature
2017-07-14 09:43:29 +09:00
Carsten Haitzler 69f757edad further fixes to screensaver/banking with window states like fullscreen
this is a further fix for T5464 to actually make the intended option
work at all. what was there was broken. now it works. init order was
wrong - screensaver was relying on event id's from e_client socde that
were not initted yet AND the handlers didnt account for "dont blank
when fullscreen window is there" at all. @fix
2017-05-07 14:35:14 +09:00
Mike Blumenkrantz cfc538ca55 remove all unnecessary efl version checks
the version of efl required by configure is already higher than these checks
2017-02-24 14:15:38 -05:00
Mike Blumenkrantz e39b6601b0 make 'after_restart' variable global
this allows the compositor to detect (accurately) whether it is a new
instance
2017-02-24 14:15:38 -05: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
Mike Blumenkrantz 30b25f16d1 remove extra SLEEP prints during startup on non-release builds
this was useful for startup profiling, but there are better methods available now

partially reverts 2850c28167
2016-12-19 10:59:14 -05:00
Michaël Bouchaud (yoz) 06ea6cadbd E_Client: add an abstraction api to control volume by app
This api give the possibility to add sink to an E_Client and control the volume
or the mute state of the sinks associated with this E_Client.

@features
2016-10-27 21:54:39 +02:00
Simon Lees (SUSE) 98f5c62291 Also set QT_STYLE_OVERRIDE
Qt 5.7 has introduced an extra enviornment var for getting Qt/KDE
apps to follow gtk theming so we will export that alongside the
one that we already support.

Thanks to AJSlye for finding reporting and figuring this out.
2016-09-13 13:54:11 +09:30
Carsten Haitzler 796f50820a askpass env var - dont use 32byte buffer for path but use stringshare
use stringshare to have no limit on askpass path.
2016-08-16 16:16:05 +09:00
Carsten Haitzler 18aab4be01 e askpass - also set SSH_ASKPASS like with sudo
this means that is ssh runs with no tty/terminal available then it can
ask for a password with the same gui as for sudo that e provides.
2016-08-16 16:01:57 +09:00
Carsten Haitzler 8d780c7fb5 e sudo gui support - add askpass util for sudo askpass support
this gives e by default sudo gui support with an askpass util that
sudo can use as well as setting the env var correctly so it will be
used by sudo.

@feature
2016-08-13 17:39:17 +09:00
Mike Blumenkrantz 7ebaa1ffb3 make init fail if a dbus session connection cannot be created
typically this indicates a broken session manager or someone trying to run
a wayland session without using dbus-launch
2016-05-09 13:30:40 -04:00
Mike Blumenkrantz ef1772b8cb implement wl client session recovery
another small feature patch brought to you by insomnia

 #SamsungFeatures
2016-05-05 15:47:55 -04:00
Mike Blumenkrantz c3700297d7 remove explicit edje_init/shutdown calls
elm already handles this
2016-04-25 12:55:21 -04:00
Mike Blumenkrantz 536a3a7ff6 make startup/restart app exec timing protocol-specific
this allows different display protocols to start their applications at
different times to ensure that any initialization has completed prior to
starting anything requiring a window

fix T3475
2016-04-18 15:27:47 -04:00
Mike Blumenkrantz 48fbfa2908 reduce efl version req to 1.17.0, make new gadget stuff 1.7.99+ at runtime 2016-04-11 15:15:51 -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
Mike Blumenkrantz 6e032ce35d add bryces: new shelf replacement
see e_bryce.h
2016-03-04 14:23:44 -05:00
Mike Blumenkrantz d26c49b3ce add new gadget system
see e_gadget.h
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
Mike Blumenkrantz a424542459 disable emotion_shutdown during shutdown procedure
this manually iterates main loop and is guaranteed to trigger unexpected
behaviors and/or crashes
2016-02-27 14:19:28 -05:00
Mike Blumenkrantz 493f6f595b Revert "e - restart window positioning - fix it"
This reverts commit d0229b3652.

see following patches
2016-02-08 14:51:21 -05:00
Carsten Haitzler d0229b3652 e - restart window positioning - fix it
so every time i restart e i have my windows all messed up. it's
INSANELY annoying and time consuming every single time having to move
a dozen or more windows back to where they should be just because i
restarted e. i've narrowed it down to 2 places. 1 which is trying to
handle "out of screen" windows and during startup it seems things are
not quite stable yet as the randr code figures things out until the
event storm settles down.

when this is then fixed - another bit of code just shuffles windows up
all the time by a titlebar whcih is also supremely annoying. this is
the code that adopes a new frame for a window.

so the nasty hack to avoid piles of pain right now is for the first 5
seconds of e's life - don't do this stuff. at least you can now use e
and not be annoyed to hell and back every restart.

yes a nicer fix may be better - but that's going to take a lot more
time and patience and until then - this will do.
2016-02-06 11:31:01 +09:00
Mike Blumenkrantz fc6458bccd re-add MANAGER context bindings
these bindings activate before any other handler can process the
corresponding event and will block all propagation of the event upon
activation

as an example, the alt+wheel default binding for flipping desks currently
passes through a number of event handlers prior to activating the binding,
meaning that it's possible for the wheel action to have unwanted effects
when these handlers cause actions before the binding stops the propagation.
using a MANAGER context instead ensures that this is not possible
2016-01-22 12:59:19 -05:00
Marcel Hollerbach b8dd1c5bcd e_main: init e_xkb before e_comp
otherwise e_xkb cannot guess what kind of compositor is running.
2016-01-14 18:37:27 +01:00
Simon Lees 14fdd71765 Set QT_QPA_PLATFORM theme to gtk2
Summary:
@fix the display / customisation of KDE5 apps.
KDE5 applications don't understand anything other then gnome or kde
They expect everyone else to set QT_QPA_PLATFORMTHEME to tell them how
to theme there apps otherwise they use a fallback mode which results in
missing icons and a inability to change the appearance of applications
see https://bugzilla.suse.com/show_bug.cgi?id=920792 for more info.
There are two sensible defaults for this variable, "kde" which will
make apps appear the same as they do if they are run in kde. and gtk2
which will make kde applications follow the gtk/gnome theme, we have
decided on choosing gtk2 as it means that kde/qt apps will follow the
app and icon theme set in the enlightenment settings dialog. Some users
who wish to use Qt apps without any gnome or gtk usage may choose to
install qt5ct and overwrite this variable with qt5ct and use that to
configure there Qt5 applications.

Reviewers: raster, zmike

Subscribers: jeffhoogland, cedric

Differential Revision: https://phab.enlightenment.org/D3498
2015-12-28 11:49:11 -05:00
Mike Blumenkrantz 660c7cb2e5 improve readability of E_FIRST_FRAME environment variable detection
functionality remains the same, but this is more clear for readers
2015-11-12 15:09:29 -05:00
Mike Blumenkrantz 29fb270450 move configure init after intl init has completed
gettext calls will not return the correct language string until after
setup has completed, leading to untranslatable strings

fix T2760
2015-10-05 13:09:38 -04:00
Mike Blumenkrantz bfbdf5106a move focus setting on restart into desk restore function
the focused client on restart needs to be set after desk states
have been restored in order to avoid focusing the wrong client
2015-09-21 19:19:15 -04:00
Mike Blumenkrantz 9ad208bfb8 add fallback loading of default theme on init
this should fix cases where whatever the user-set theme is doesn't provide
a required group by filling it in

fix T2210
2015-07-29 17:41:21 -04:00
Mike Blumenkrantz 4543e26ca6 remove e_screensaver_force_update()
this was just used to set up x11 screensaver stuff, which has now been
relocated to the related comp_init function
2015-07-27 15:54:15 -04:00
Mike Blumenkrantz 334e406cc5 fix compile from previous commit
I am not a smart man.
2015-06-30 15:51:29 -04:00
Mike Blumenkrantz b282ada5c8 disable uuid store
currently seems to fill logs with infinite error messages

ref T2532
2015-06-30 15:50:04 -04:00
Stefan Schmidt bbc744490b e_main: Initialize UUID store during E startup
I have been running with this enabled for a while and it should not make
trouble but if it does simply reverting this one if totally fine while I'm
away.
2015-06-29 17:02:12 +02:00
Mike Blumenkrantz 2654b7e3e7 move X idle flusher to comp_x 2015-06-25 20:04:31 -04:00
Chris Michael 27a11e0c46 Properly fix T2182 (add a --version option to enlightenment)
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-18 14:41:45 -04:00
Chris Michael e5b654cf9e allow starting enlightenment with the valgrind option again
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-18 14:22:26 -04:00
Chris Michael 0a94e8ba71 enlightenment: Make E build again with EFL from git
sed -i 's/EAPI/E_API/g'

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-07 15:13:10 -04:00
Mike Blumenkrantz 2fc7b0169c move colorclass config to use elm infra, redo cc dialog to use new editor
this will allow all colorclasses present in the current theme to be edited
instead of only the hardcoded ones in the module. it will also require
completely new translations, for which translators will need to read the edc
files of the default theme (cleverly located in another repo) and provide
translations to the _translate() callback in the theme module

the editor currently lacks indicators for active/type on the colorclass
list, but this can be added in time. meanwhile, a large amount of code is
no longer duplicated or maintained in this repo
2015-04-06 15:26:36 -04:00
Mike Blumenkrantz c727545bb2 remove E_Comp->num
num is always 0
2015-03-20 14:59:19 -04:00
Mike Blumenkrantz 58447e9508 completely remove E_Manager
the final step in flattening all the canvas/screen apis
2015-03-19 16:53:32 -04:00
Mike Blumenkrantz 471dcb24cb __UNUSED__ -> EINA_UNUSED
this has been bugging me forever. __UNUSED__ is no longer a valid macro here.
2015-03-18 18:09:09 -04:00
Yomi b5ed3c9fea change DESKTOP env setting on startup
Summary:
From Enlightenment 17 to Enlightenment.

Seems e17 keeps popping up...
rEdb6aeef2b1a9c831fa0901e499dd8f73ff733836
rEec1cd25cfe666665b9e5641c91d3ad1fd2f9f11c

Reviewers: zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2147
2015-03-12 18:55:47 -04:00
Mike Blumenkrantz 691c5187c2 exit immediately if any unrecognized arg is passed on startup
ref T2182
2015-03-06 14:57:58 -05:00
Chris Michael 6e34bc32a0 don't install SIGBUS handler if we are running wayland-only
Wayland shm sets up a sigbus handler for catching invalid shm region
access. If we setup our sigbus handler here, then the wl-shm sigbus
handler will not function properly

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-03-03 09:54:23 -05:00
Manuel Bachmann a5a27dee14 build: allow building in pure Wayland mode (no xcb, no ecore-x)
Summary:
We should be building Enlightenement with "--enable-wayland-only"
even if xcb, ecore-x... are not present. The Evas wayland-shm
engine will then be a prerequisite, though.

E_Alert being too much X11-oriented, let us disable it completely
before it is ported.

Also, do not require the X11 rendering engines at runtime.

Reviewers: stefan, devilhorns

Reviewed By: devilhorns

Subscribers: stefan_schmidt, stefan

Projects: #enlightenment-git

Differential Revision: https://phab.enlightenment.org/D1986
2015-02-25 09:33:40 +01:00
Mike Blumenkrantz 4aa4c64508 ensure no duplicate XDG paths are prepended during startup
the previous patch(es) had a number of issues which made them unsuitable for general use:

* only checking "/usr" and "/usr/local" paths, despite this only being accurate if e was installed into /usr or /usr/local

* only checking if the paths were at the beginning of the string, when it's possible that they could be anywhere

* failure to also check XDG_CONFIG_DIRS

* improper formatting: this is a bit of a nitpick, but there are no correct instances of 'strcmp(a, b) == 0' in the e codebase.
2015-01-29 16:01:25 -05:00
Mike Blumenkrantz fbde0824d1 Revert "Do not add /usr/share twice for XDG_DATA_DIRS"
This reverts commit e3eda1d690.

hardcoding directory paths is not a solution that I want to see used for this issue.
2015-01-29 12:43:20 -05:00