Commit Graph

12657 Commits

Author SHA1 Message Date
Carsten Haitzler 9abcae15f6 comp fps debug - show separate input and output fps 2020-08-17 18:22:12 +01:00
Carsten Haitzler 1f4c6b41d8 e comp - remove obsolete comp render animator and lock fps options 2020-08-17 18:22:11 +01:00
Alastair Poole 2027734141 conf_randr: List modes using double scan correctly.
As we can detect for double scan (since randr 1.2), list the mode
as valid, and also ensure the refresh rate is displayed correctly.
Each line is rendered twice, doubles the dot clock, so divide the
settings view by 2 so that it makes "sense". Can always add
flags to settings if deemed necessary.
2020-08-15 16:54:22 +01:00
Carsten Haitzler 94ad423d6e e screen restore - properly show/hide windows on current desk 2020-07-29 11:43:26 +01:00
Carsten Haitzler 73d305d2a8 client - restore to added zone if were there before
rememebr zone randr id where clients were if forced off a zone. if a
zone is added check clients with that zone id - if they have it then
restore them there. thbis will get loat if you move those clients
between zones after they are dumped on the other zone or you change
their virtual desktop etc.
2020-07-28 19:47:10 +01:00
Carsten Haitzler 02707fd2ef fullscreen handling - restore fs state if forced out by focus
much better behavior this way...
2020-07-28 19:47:10 +01:00
Carsten Haitzler 8c06fc454c e alert - use same exit codes as e for explicit restart/logout
be consistent.
2020-07-27 11:15:21 +01:00
Marcel Hollerbach 4678fa60c2 Introduce gesture recognition
This is currently using libinputs gesture recognition. And offers a
config screen to setup new gestures.

1. No default gesture bindings are setup

2. When libinput is not available the module is not going to be loaded,
   and nothing is recognited.+

3. Only swipe gestures are recognized yet.

4. For now, you are required to be part of the input group, otherwise we cannot
   get the libinput events. (See Todo 1)

5. The visual representation is not really good. In terms of UI, it is
   visually showing a value coming from left to right, which is
   indicating a direction, which is not always the direction of the
   gesture, which is kind of bad. More improvements needed here.

Some things that still can be done:

1. The whole libinput things should be handled by elput, either with the
   input group hack, or logind, or simply by root. The ideal idea would
   be that e_sys is creating the elput context, which also listens for new
   devices etc.. When all this is done, and it recognizes a new device, it
   can simply sent a message from e_sys to e, that there is some new
   device, with a opened fd. (However, this all needs to be locked up in a
   way that e_sys cannot be abused)
2020-07-21 15:26:34 +02:00
Marcel Hollerbach 324b2661ce e_shelf: only reset autohide timer if we are not hidden
otherwise we might hide shelfs even if the calendar is shown, without
the possibility of reshowing them again.
2020-07-21 15:22:50 +02:00
Carsten Haitzler 9fcd087b85 exit codes - clean up and handle consistently
also x io error - exit as we must.
2020-07-20 14:21:20 +01:00
Alastair Poole 1c27438ecb config_modules: Show module description.
This has been collapsed for some time now. In modules settings
when selecting a module, its description will display as it did
previously.
2020-07-19 12:01:55 +01:00
Carsten Haitzler 15f049f777 e askpass - convert text to plain utf8 proeprly for passwd output
@fix
2020-07-15 14:40:17 +01:00
Carsten Haitzler 072fd2d741 e system - isolate stdio of commands we run so they dont pollute 2020-07-14 13:31:29 +01:00
Carsten Haitzler e0227cf536 e start - handle exit code for restart AND exit choices because of lib
so library somewhere is causing an exit(1) sometimes... this means i
lose my entire desktop. this is not e doing it... so it's some
dependency bug and this shouldn't happen - but it does and it causes
the entire login session to be losst, so treat an exit code ofr 0 as a
clean exit, and anything else as a bug to be handled like segfaults
etc. and restart e.
2020-07-12 09:58:06 +01:00
Carsten Haitzler ea5967e2a6 remove warnings of unused functions and vars 2020-07-08 17:32:54 +01:00
Carsten Haitzler 0b1c4100ef e gadgets - as per email to e-devbel - it's easier to fix old so rm new
new gadget infra--
2020-07-07 23:34:27 +01:00
Carsten Haitzler 979a8e8953 e exec - if an invalid exe is found - null it out 2020-07-01 13:25:09 +01:00
Carsten Haitzler dabda6154b desklock - remove autolock as its pointless as we can lock on blank
alsoit was inaccurate reling on polling (a poller) and thus wakeups
all the time ... so use the "lock on blanking" in timers instead... :)
less complexity to deal with in config anyway.
2020-06-30 12:14:23 +00:00
Carsten Haitzler 4fa3ca249b comp wl - blanking fix saver timeout if 0 - dont set it as its off at 0 2020-06-30 12:14:23 +00:00
Christopher Michael bc5f4e5635 e_comp_wl: Fix possible typo with function name 2020-06-29 09:07:04 -04:00
Carsten Haitzler 5c03da91a7 only call notidle if wl compiled in and wl on... 2020-06-28 20:23:07 +01:00
Carsten Haitzler db73bcabd9 e comp x - ensure animator works before fading in backlight 2020-06-28 15:29:22 +01:00
Carsten Haitzler f6e4be1005 e wl screen dimming.blanking/timeouts/lock handling redo/fixup
so there was a fair bit of stick-tape and chewing gum in putting the
wl screensaving in e_Screensaver.c ... it thus was very different to
the x stuff. it SHOULd have had e_comp_wl handle idle timeout like the
xserver did and then glue in the same way the x code did to be
conistsent. instead of trying to fix the chewing gum ball there in
e_Screensver.c to find the logic holes ... i made it work like the
code as indicated above. this now makes it work reliably. dim
reliably. lock reliably. it even doesnt exit on ctrl+alt+backspace
once desklock is up now to allow locks to really lock... (dont use
locks during dev then if you need ctl+alt+backspace).

at least now all this dpms/screensavwr/brightness/backlight/lock goop
is consistent between wl and x11 and wl seems reliabkle now (to me).

knock this off as an annoyance fixed.

@fix
2020-06-28 15:06:37 +01:00
Alastair Poole 8cc3bd7cdb e_start_main: Guard against malloc.h on BSD.
This fixes a build break on FreeBSD. Guarding as per other
blocks. These guards can be removed at a later stage as OpenBSD
has removed malloc.h and FreeBSD is in the process of
reintroducing it after a failed attempt to deprecate the header.
For consistency's sake keep these blocks identical within the
tree. We can nuke these later when FreeBSD make their minds up.
2020-06-24 23:45:29 +01:00
Carsten Haitzler 21200cb2f7 e init - stop listening to zone changes once init has been hidden 2020-06-22 08:16:46 +01:00
Carsten Haitzler 2c9405b92f fix preload of e icon when already loaded to show new icon
didn't stack right always. had if (x) not if (!x) ...
2020-06-21 23:54:17 +01:00
Carsten Haitzler ddc9ff7280 randr - add response timeout config value 2020-06-20 01:50:03 +01:00
Carsten Haitzler e8f5794b81 e xsettings - do not use long for 32bit types... it's WRONG
long varies by architecture... whoever decided C32 should be long...
was totally wrong. it varies between 32 and 64bit (on unixen).

@fix
2020-06-17 13:21:13 +01:00
Carsten Haitzler b55fa736ed randr - add option to ignore disconnects on specific screens...
work around kvm's that like to disconenct screens... be able to force
an ignore on disconnects on specific screens.
2020-06-15 22:27:34 +01:00
Carsten Haitzler c4ab23511e fix null edid more - found hole missed in last fix
adds more fix on top 80f92ee486
2020-06-14 14:00:48 +01:00
Carsten Haitzler 1b5d229855 e - increase timeout for efreetd responding to 20 sec
it seems some peole suffer from an unusually long scan time so account
for that.
2020-06-14 12:09:43 +01:00
Carsten Haitzler ce66161874 init - handle zone changes during startup/init 2020-06-14 00:33:44 +01:00
Carsten Haitzler 3e31c9ebf8 precache - add more prints to see when thread spawns for info 2020-06-13 22:56:54 +01:00
Carsten Haitzler 18c522fb24 Revert "e randr - x - only apply/modify randr if xurrent config not the same"
This reverts commit cf0a43b844.

This seems to cause some issues on restore at startup.
2020-06-13 22:56:40 +01:00
Carsten Haitzler b519c44c67 pager+thumb - speed up thumb generation and pager aspect
pager didnt reset aspect after setting min size. fixed. also improve
thumb generation by having no artifical delays. use idle enterer + job
wakeups instead. now thumbs appear almost instantly.

also remove initial pager popup on starup that is just not needed.

fixes T8314
@fix
2020-06-13 16:22:07 +01:00
q66 fd9a798376 meson: fix fnmatch dependency lookup
The previous version didn't really make sense whatsoever, also
it was unused.
2020-06-11 02:44:55 +02:00
q66 9fc310db63 try linking against execinfo when execinfo.h is present
This should fix build on systems where execinfo.h is present
but the APIs are implemented in a separate library - commonly
a case on the BSDs as well as on non-glibc libcs and so on.
2020-06-11 02:37:26 +02:00
q66 6e87988071 e_util_suid: need signal.h on some libcs 2020-06-10 21:13:41 +02:00
Carsten Haitzler ed1d9ea62c e backlight - fix initial restore of backlight after previous fix
no edid fix broke initial restore. fix it.
2020-06-10 12:34:21 +00:00
Carsten Haitzler 80f92ee486 e backlight - handle screens with no edid
this fixes backlight support on my pinephone...

@fix
2020-06-10 11:05:13 +00:00
Carsten Haitzler a91ba4e1a8 exec - dont run null exec commands
fixes T7133

@fix
2020-06-09 22:11:32 +01:00
Carsten Haitzler 1aad79dbe7 init splash - make it default as it no longer needs an option
it used ot be a separate process to run to hide e starting in the bg
on a slow hdd loading modules etc. but due to compisitng and other
changes its all internal now, so keep it on always as it guarantees a
better smoother experience with less complexity to maintain.
2020-06-09 15:54:58 +01:00
Carsten Haitzler cf0a43b844 e randr - x - only apply/modify randr if xurrent config not the same
so if already the same - leave it as-is.
2020-06-07 00:57:13 +01:00
Carsten Haitzler 74815ebc9b e start - save 24k of stack that gets touched then never again.
use less stack with smaller "just big enough" alloca'd string buffers.
as e_start hangs around looking after e all day, using a bit less mem
is a good thing.

@opt
2020-06-07 00:54:57 +01:00
Carsten Haitzler 71b5cb3e7c xsettings - always use decimal for format for float prints
snprintf will use locale and maybe print 10,24 instead of 10.24 ...
thus use a custom routine to specially do this always by hand without
mssing with locale.

@fix
2020-06-05 11:21:20 +01:00
Carsten Haitzler 3fdd7d3118 e sys - also force e to exit on halt or reboot after a timeout.
also log more on what is going on...
2020-05-30 21:56:29 +01:00
Carsten Haitzler eb61b825e4 suspend/hibernate - add a small delay before doing the deed
allow any pending frames to pop out of the pipeline before we
sleep
2020-05-30 21:56:29 +01:00
Carsten Haitzler af63443e19 sys - fix non-systemd code patch for suspend/resume handling/tracking
so in the non-systemd case there was a current e sys action stored and
never cleared. e keeps thinking it is in the midddle of an action as
it was not cleared. the systemd code path was different and didn't
suffer from this. this fixes that so the non-systemd path works too.

@fix
2020-05-28 23:07:56 +01:00
Carsten Haitzler 596def7806 e system - storage - improve mount/umount code to enforce simple std
all dirs owned by root - so can't be exploited. this code is not
acessible at this point so no actual issues. it still needs testing.
until other work is done it won't be tested yet.

fixes T8671 further comments on umount check.
2020-05-28 11:24:32 +01:00
Carsten Haitzler a018f8273f e randr x - move pointer to a visible screen coord if outside screens
on reconfigure if we find the pointer outside the screen region bounds
it can get caught there until a warp forces it in. this is due to the
barriers i added i think. this fixes that

@fix
2020-05-27 14:17:07 +01:00