Commit Graph

20342 Commits

Author SHA1 Message Date
Carsten Haitzler 34a427e2a1 e init splash - remove almost all status strings as they are not needed
since now we basically bring everything up THEN start rendering once
we hit the main loop there is no point having init splash strings
anymore. it is no longer an external process. until e's compositor is
up you will see nothing anyway. if it is up these days we've finished
init as a smoothing out of startup has move everything before main
loop starts. so this code is all kind of useless, thus remove. cleanup
code.
2019-10-14 22:59:37 +01:00
Carsten Haitzler b3e7009d65 systray - allow multiple
now we no longer have xmbed, allow multiple instances.

fixes T8370
2019-10-14 10:21:43 +01:00
Carsten Haitzler fca53bbd3f e invert to set env var for fussy aborts as opposed to inverse
better stability for users.
2019-10-13 23:15:12 +01:00
Carsten Haitzler 1ff2b77bc4 comp show helper - make it a non-critical err
this stops an abort which is better for the user experience and is
recoverable.

fixes T8318
2019-10-13 23:12:02 +01:00
Carsten Haitzler 1a867c180d e alert - use the provided font ttf for the alert
this enforces the look i wanted, and also makes this work when no sans
or mono font exist.
2019-10-09 18:47:16 +01:00
Carsten Haitzler acee84c8eb bz5 - ensure we unref bluez dbus objects to free them 2019-10-08 23:20:26 +01:00
Carsten Haitzler a0fc5a7c30 ckpasswd: remove warning of unused var 2019-10-08 08:48:30 +01:00
Carsten Haitzler 5f4697fd7d e - add polkit module to add an auth agent into e
new feature - polkit auth agent support partly in core (need to have
the pam setuid root auth tool respond via dbus) and partly a module
(the agent dbus protocol handling and setup as well as auth gui). this
took me a while even with all the docs to work out how polkit works...
it was really fussy and its data structs are an extra pain in the butt
to craft with eldbus, but i managed it. not everything is supported
but the core basics are there and this can be built on.

right now the gui is really basic, but does the job.
2019-10-08 01:38:54 +01:00
Carsten Haitzler c7d0d6e6c9 e - wl dmabuf - handle versioning for modifiers
this syncs with what weston does in handling versioning for modifiers.
2019-09-30 22:07:46 +01:00
Carsten Haitzler f8bda510a7 e randr - fix plug/unplug of external screen
it seems some logic to stop internal screen fake plug/unplugs from
interfering were hurting external screen plug/unplug. fix makes that
work again.
2019-09-28 18:44:08 +01:00
Carsten Haitzler 6d8a1bd3fe kill e process before alert in non-x uses 2019-09-27 19:29:14 +01:00
Carsten Haitzler fed69a7380 alert - move to using full efl stack for it
still have a problem - cant work in wl drm/kms mode because e still
holds the ownership/lock on the console, but using full efl to draw
the alert and even blink it...

this drops xcb requirement too.
2019-09-27 07:13:24 +01:00
Carsten Haitzler 754e56f68c e build fix - make uuid an explicit dep of gadget loader
fix build break thanks to latest 1.23 bet bleeding edge efl.
2019-09-25 18:45:31 +01:00
Carsten Haitzler e69a27a81c e comp - tell user about invalid env var options
it seems people are using these env vars so we should tell them if
they have invalid options.
2019-09-24 01:17:08 +01:00
Carsten Haitzler 2c91a2c24d backlight - update timer on power plug/unplug
this ensures a different timeout can be applied if you plug or unplug
power.
2019-09-21 23:04:09 +01:00
Carsten Haitzler 2747af8e07 mixer - try not to create notifications for no change in volume 2019-09-20 13:48:31 +01:00
Carsten Haitzler c16a58d75f warn - silence invalid alignment warning
these potrs are to structs we malloc thus will be universally aligned
for all data so... not valid. throw in a void * cast to do that.
2019-09-20 10:54:12 +01:00
Carsten Haitzler 6cb25300f1 e desk - remove unused vars 2019-09-20 10:47:23 +01:00
Carsten Haitzler 95328255b1 wiz - remove e module src support as .libs dirs no longer exist
it wouldnt work anyway and i removed it for e modules themselbves
already - now fix this for wizard too as it'd not work anyway.
2019-09-20 10:47:23 +01:00
Carsten Haitzler 17e375c5a7 wizard - comp - fix checking of gl/hw accel
using just evas_gl_new() will lead to almost always using just
software rendering... because often osmesa is not installed and e will
start in software rendering by default until it switches properly
after the wizard. this appropriately checks in an x path vs. wayland
path in different ways as to if we should do gl by default and ALWAYS
offers a checkbox to the user, just the default value/state of that
checkbox depends on what is detected and a user can override.
2019-09-20 10:47:23 +01:00
Carsten Haitzler 822680869f e comp - remove the disable/fast effects
for fast we probably should look at something like having a multiplier
on edj transitions and set it to 0 to make it instant. this would be
much better and able to apply to ALL effects... so let's remove this
way for now. as for no shaodws and other stuff - moving to wl cant
control CSD and even then it's a theme look ant feel - a "flat theme
withotu any shadows" would just not have them. probably not a checkbox
to have here.
2019-09-20 10:47:18 +01:00
Carsten Haitzler f89cb93829 e - bump config version properly in src
this doesnt resulti n a looping of wiz - but does result in a "version
too new of config" complaint and issues... so fix.
2019-09-19 19:29:28 +01:00
Carsten Haitzler 3e4ff27c19 pager - more direct config from right click menu 2019-09-19 19:20:41 +01:00
Carsten Haitzler 11c0fb01bd pager/desks - stop using numeric N,M if no name is set - be blank 2019-09-19 18:37:52 +01:00
Carsten Haitzler 1783c32839 backlight - add battery timeout in addition to regular dim timeout
this allows for a shorter timeout when on battery vs when on ac for
backlight dimming. this is actually important so when on ac dimming
can interrupt minimally bur when on battery it can be much more
aggressive.
2019-09-18 18:59:54 +01:00
Carsten Haitzler b8afba1e49 startup smoothing - smoothen startup with preload and defer to loop start
this moves a bunch of things that were being don after loop starts to
before so they don't interrupt framerate as well as launch a thread
that preloads file(s) - for now just edj theme files so stuff is
pre-cached by the time loop starts later so we don't stall s much
leading to smoother startup/fade in and better framerate. it's really
visible (especially on my rpi3).
2019-09-14 18:47:20 +01:00
Carsten Haitzler 0d00264ca6 e desklock - only stay locked first restart after crash if locked 2019-09-11 15:22:55 +01:00
Carsten Haitzler d961e31436 blanking - special timeout immediately and force dpms todo
make special timeout universal and in all cases. cleaner with better
power management as we turn off bakclights earlier in some cases etc.
2019-09-11 10:56:21 +01:00
Carsten Haitzler 14a30c74b0 blue4 - remove. obsolete now and bluez5 has replaced it 2019-09-11 09:50:05 +01:00
Carsten Haitzler b4cfada8e8 module and config - remove pointless config vars that have no use
we dont need to delay module loading anymore so remove allof this -
priority too shouldn't be necessary as well and was just a workaround.
this remvoes all of that removing some e module api's and module
struct members as well as some global config fields. it also ensures
all config files are up to date as well.
2019-09-10 17:58:30 +01:00
Carsten Haitzler 0aea2d23a7 connman - add dialog letting user know the connman service is not there 2019-09-05 17:22:06 +01:00
Carsten Haitzler ec1ee3ff42 winlist - use new geom key navigate action util 2019-09-05 00:19:31 +01:00
Carsten Haitzler 48c4ea17f2 e - fix up resize/move by kbd to work again
this used to work years ago ... it seems tihave broken. this fixes it
all up to work again so you can bind a move/resize of a window tothe
kbd and then use arrow keys etc. like you used to....

@fix
2019-09-04 19:17:12 +01:00
Carsten Haitzler 2430b36b84 e comp object - fix null comp win access on move begin
don't crash.

@fix
2019-09-04 13:34:05 +01:00
Davide Andreoli 1d5202f866 PackageKit: fix count of available updates on fedora
seems on fedora the type of updates are reported differently
from debian and archlinux based distro

thanks Simon for reporting and testing
2019-09-01 07:51:50 +02:00
Alastair Poole 38ee777a1c e_xsettings: Set appropriate font sizes.
This sets GTK+/Qt font sizes appropriately by converting
from pixels to point.
2019-08-27 23:09:51 +01:00
Carsten Haitzler e49f4f8de1 e menu - fix type for setting fill to wrong obj... 2019-08-22 19:50:14 +01:00
Carsten Haitzler 02957edfe9 e gadgcon popup - actually for reals smooth out show
now it actually does look smooth. i oopsed in my last attempt.
2019-08-22 08:21:39 +01:00
Carsten Haitzler c29dd0f5cf everything- ensure we dont skip over past end of string for fuzzy match 2019-08-20 23:55:17 +01:00
Carsten Haitzler b7d2ac57b0 freeze/that - use a bit more to cut out unwanted events 2019-08-20 08:42:55 +01:00
Carsten Haitzler 9f5fa6d00f gadcon popup - smooth out show just a little by deferring to next loop
so this is kind of a hack, but a neat one - defer the object show
until the next loop to skip the time involved in object creation thus
starting nay animation after this has happened.
2019-08-18 09:45:08 +01:00
Carsten Haitzler b7d8916701 efm: ensure progress popup is visible with min calc and hint set
we never calc'd min size and set min size hint - fix that and set it...
@fix
2019-08-15 09:55:12 +01:00
Carsten Haitzler a2c1e59cb5 cpufreq - pstate - support incr of 5 percent to allow for better control
some intel cpu's only go down to 20%, some down to 10% min state....
so let's do this in lots of 5% to allow for some future cpu's. now
it's not just 0, 25, 50, 75, 100 it's worth making it a real loop to
save on code too. this allows me to actually control the cpu's i see
at the detail level i see they can be controlled at.
2019-08-11 22:47:28 +01:00
Carsten Haitzler 67da43ee36 e hints - fix beyond end of array fetch and segv
asan found this one.

@fix
2019-08-10 13:34:32 +01:00
Carsten Haitzler a172d930da tiling - ignore min size for layout of tree to avoid insta-floats
so some clients just cant tile due to min size and this leads to
really bad results so pass the problem back to the user to go resize
them up to fit. this probably needs far more extensive layout logic.
the data struct is a tree but perhaps it needs to flatten out into a
table to make layouting more sane. but that's the future. for now be
less bad today.
2019-08-10 10:57:09 +01:00
Carsten Haitzler e11eb90231 tiling - on not fit error use name get util and translated strings
if we use the util func we do get a title... and als use translation
too for this notification. Also increase timeout so people can read it
and notice it.
2019-08-10 08:38:27 +01:00
Carsten Haitzler 265c306874 tiling - avoid infinite loop of not fit - toggle float, not fit, toggle
this actually just blows the stack soon enough... so short circuit it.
2019-08-10 08:32:11 +01:00
Carsten Haitzler 2aae421d7a any dialog - nicety - emot focusd/unfocused sigs to base
makes for nicer themes... simple.
2019-08-10 00:48:39 +01:00
Carsten Haitzler 6134ac44cf tiling - disable last frame adj - this blocks resizing entirely...
for me this seems to improve things... drastically... fixes resizing
int iling whne no borders selected.
2019-08-09 22:18:14 +01:00
Carsten Haitzler 758894bc9c tiling config -fix use after free crash on change of config 2019-08-09 14:13:17 +01:00
Carsten Haitzler 2158d46dba e comp obj - edje messages - also send on size change
so sned only if bx/y/xx/yy or size changed
2019-08-09 10:01:21 +01:00
Carsten Haitzler fdd472879b xkb - make basic variant null now and handle in wl too the same as x
now russian works for me. :)

fixes T7979

@fix
2019-08-09 09:50:33 +01:00
Carsten Haitzler 855c7028c4 xkb core - make layotu set safer by udp before we free
this should fix another possible crash vector.

@fix
2019-08-09 00:40:18 +01:00
Carsten Haitzler 7c4e58a2fc xkb - module - fix use after free - duplicate layout info instead
instead of referring to what migh tbe deleted under us - make a dup of
it to tsatore locally. fixes segv on kbd layout change

@fix
2019-08-09 00:39:19 +01:00
Carsten Haitzler ac6ceb0b99 reduce getenv calls by only getting once
we do egetvn's quite frequently and this is more costly than
remembering once and getting it once... fix that in some cases.
2019-08-08 23:54:09 +01:00
Carsten Haitzler 78c26e5f8d e comp - dont send messages uselessly with same values to theme
when border changes send then but not all the time. this drops some
mebryo overhead i was seening.
2019-08-08 23:53:18 +01:00
Carsten Haitzler f76627a6be e comp - reorder alpha native etc. surface sets to avoid crashes
this also avoids spurious texture uploads so it should be an
optimization too, but more importantly... thisis a fix. it fixes T8021

@fix

yay yay yay
2019-08-08 20:44:14 +01:00
Carsten Haitzler 64ffda59ec e sys - if decklock on suspend is set and systemd says we suspend, lock
if systemd suspended and we hand't triggered it, and desklock on
suspend is enabled, then lock there and then because we need to. of
course you need systemd/logind... but hey... i guess without you live
with less... :) fixes logic hole

@fix
2019-08-08 09:56:04 +01:00
Carsten Haitzler 7ab9466f77 everything - fix string index mishandle that causes segv's
also ensure we nuke time rhandles too - spotted that. this is a real
issue asan found and yomi first pointed at. reproduced, found, fixed.

@fix
2019-08-08 09:24:10 +01:00
Carsten Haitzler fd26c7b224 evry - handle invalid chars in filters nicely and stop string walking
possible issue lurking if a utf8 char sequence has invalid content ...
avoid it.
2019-08-07 21:16:12 +01:00
Carsten Haitzler 8884f27975 e wl - fix borders to keep cutouts working
in soem cases a client has no csd and then border l/r/t/b/ are all 0
so artifically keep 1 at 1... to keep cutouts working.

still need to solve blending still being on though.
2019-08-07 21:15:00 +01:00
Carsten Haitzler d4340cb168 e wl pixmap - use id not xwin
copy & paste failure here. fix. found by asan.
@fix
2019-08-07 16:51:41 +01:00
Carsten Haitzler cbd507fb13 appmenu gadget - size items properly so they can be seen 2019-08-07 00:49:26 +01:00
Carsten Haitzler df0a64dc7a e dbusmenu - fix cross referencing from e menus created from debus menu
this stops crashes when e menu si still up when the dbus menu backing
it has changed/gone away... by referencing the dbusmenu to hang about
like a bad smell while the e gui menu is up until it's dismissed. this
fixes a real segv i saw with steam.

@fix
2019-08-07 00:43:47 +01:00
Carsten Haitzler 2b0735da58 connman - set var to defined value - less warnings 2019-08-06 21:01:26 +01:00
Carsten Haitzler f1b0e638f1 systray - dont prunt null name which is usless
fixes warning and removes always null string.
2019-08-06 20:58:57 +01:00
Carsten Haitzler 3c3e5f3b88 randr - use ints for mode info w/h as we want signed ints for a diff
fixes warning too.
2019-08-06 20:55:54 +01:00
Carsten Haitzler d0dc774673 efm - fix missing format strings in error reporting
fix CID 1403934
fix CID 1403923
2019-08-06 20:03:06 +01:00
Carsten Haitzler c1f73110ac wl input - use eina mkstemp to handle umask right
fix CID 1403927
2019-08-06 19:58:26 +01:00
Carsten Haitzler 78102717ae connman agent - handle theoretical missing requirement and name strings
fix CID 1076319
2019-08-06 19:29:46 +01:00
Carsten Haitzler 52dde8d541 wl - handle null parent safely for subsurfs
fix CID 1403920
2019-08-06 19:23:25 +01:00
Carsten Haitzler e96cff8503 xwayland dnd - handle names not being allocated
fix CID 1403921
2019-08-06 19:20:03 +01:00
Carsten Haitzler 8c76ff3e32 gadget runner - check ptr return before deref
fix CID 1403925
2019-08-06 19:13:50 +01:00
Carsten Haitzler c9356a3f8c wl drag start - check source ptr consistently
fix CID 1403926
2019-08-06 19:11:24 +01:00
Carsten Haitzler 3a581f888d xwayland - handle negative return failure for abs socket create
fix CID 1403929
2019-08-06 19:05:36 +01:00
Carsten Haitzler 96ae312d6e mixer pulse - handle alloc failure better and dont access null
fix CID 1403930
2019-08-06 19:00:46 +01:00
Carsten Haitzler e41d5e11bb e sys l2ping - report errors on fcntl failure
fix CID 1403933
2019-08-06 18:55:28 +01:00
Carsten Haitzler dccf124ff3 mixer backend - fix null checks to cover all uses
fix CID 1403937
2019-08-06 18:53:30 +01:00
Carsten Haitzler b30daea12c e client - check picmap type to be one of the only 2 valid ones
fix CID 1403938
2019-08-06 18:51:08 +01:00
Carsten Haitzler 490e532aa3 comp wl - fix check of source mime types
we dont always assume it's there.

fix CID 1403939
2019-08-06 18:45:58 +01:00
Carsten Haitzler 33ef4bc881 e comp wl - remove dead code
listener might maybe be null, but offer - never.

fix CID 1403945
2019-08-06 18:39:48 +01:00
Carsten Haitzler 1c893b064f wl dnd - check socketpair and fcntl return values
fix CID 1403951
2019-08-06 18:30:30 +01:00
Carsten Haitzler a536c8a6a2 e sys l2ping - check connect return for failures
fix CID 1403952
2019-08-06 18:21:29 +01:00
Carsten Haitzler 0a4f035fb6 wl dnd - fix more use after free
restructure code a bit to not fall into this trap as easily and remove
the falling into the trap where we use buf after freeing it.

fixes CID 1403924
2019-08-06 17:54:40 +01:00
Carsten Haitzler 3c7d93059b wl text input - handle out of mem and free half done struct
stgruct we alloced is not freed if a child element setup fails...
fixes a technical leak. coverity found it.

fix CID 1403931
2019-08-06 17:42:42 +01:00
Carsten Haitzler b03c0739db wireless mod - fix out of bound type array accesses
coverity pointed this out. certainly 1403948 is definitely possible if
no geometry matches succeed.

fix CID 1403948
fix CID 1403944
fix CID 1403928
2019-08-06 17:00:38 +01:00
Carsten Haitzler 031e868b65 efm min - copy in nul byte terminator so be sure
coverity was not happy with this but it's harmless to copy that extra
nul byte... so do it

fix CID 1403950
2019-08-06 14:53:59 +01:00
Carsten Haitzler ccd0da5f02 e sys l2ping - close socket fd on error to be clean
fix CID 1403954
2019-08-06 12:54:28 +01:00
Carsten Haitzler bb390716f5 ibox - make coverity happy by reordering free then list remove
fix CID 1403955
2019-08-06 12:40:08 +01:00
Carsten Haitzler 554026cfe6 ibox - make coverity happy by reordering free then list remove
fix CID 1403956
2019-08-06 12:36:22 +01:00
Carsten Haitzler 1fa7d4a07b wl dnd - fix theoretical buf leak coverity found
fix CID 1403957
2019-08-06 12:35:11 +01:00
Carsten Haitzler fa0608b50f tiling - use a tiling specific border if it exists in theme and cfg
if you set cfg not ot use nomral borders then use "tiling" if it
exists instead of "pixel" as thats probably the right thing to do...
2019-08-01 13:47:30 +01:00
Carsten Haitzler 5b5b3005f6 e menu - remove excessive events and eo calls from menu init
so dropping a bit of overhead/latency for e menus here - this isn't to
the extent of a cache for menu objects/items... but it's just nuking
useless calls to do things not used or that can be done in fewer calls
as well as ordering things to we don't emit events and handle them
multiple times or calc min size multiple times etc. etc. -
adds a test case we can enable for perf testing too.
2019-08-01 10:39:29 +01:00
Carsten Haitzler 1967257dc7 e menu - fix grab and ungrab and forced hide all with desklock
found a valgrind issue and an input issue all in one... this fixes
that with no more valgrind complaints and input works if e menu is up
whilst desklock kicks in.

@fix
2019-07-31 13:38:50 +01:00
Carsten Haitzler b88138cacb every - ensure all structs are zeroed out
valgrind spotted this, so fix.
2019-07-31 13:38:46 +01:00
Carsten Haitzler e1a528ac2d wiz - turn off taskbar by default due to ibar doing this already 2019-07-30 11:46:10 +01:00
Carsten Haitzler da4db1a29c e - support new statgen feature and turn it on for e
use the env var as this is "soft" and will do nothing if efl doesn't
have this... but it's worth it if it does.
2019-07-28 10:26:46 +01:00
Carsten Haitzler e9f00dacd1 e deskmirror - fix apply location to avoid access-after-free
this fixes T8082
@fix
2019-07-28 08:57:00 +01:00
Carsten Haitzler 48a83c733c bluez5 - track rfkill sysaction exe to tell user if something went wrong
IF we don't do this, the error will be "silent" and the user never
know. The user should know if things are configured incorrectly.
2019-07-23 00:20:58 +01:00
Carsten Haitzler 646fde45de module errors - also report to stderr immediately to aid in debug
delaying the module error may mean you never see it, so display
immediately on stderr
2019-07-19 10:55:30 +01:00