Commit Graph

20461 Commits

Author SHA1 Message Date
Carsten Haitzler a3ae1b0ac2 e auth - use our memclear and fill it out with modern zeroing methods
so memset_s still doesn't get detected (add a check anyway), but there
are other alternatives, so detect and use them if found
(explicit_bzero, explicit_memset) in addition to the generally
"practically works" memset ptr method we had and.. just to be extra
safe add an asm memory barrier to this fallback. also.. mlock the
passwd memory in lokker (if it doesn't work - don't worry - there is
nothing we can do, so we did our best) to avoid this memory gettign
swapped etc.
2020-02-18 10:29:43 +00:00
Carsten Haitzler 276eb5b091 pager - remove unsued vars from segv fix 2020-02-16 12:45:26 +00:00
Carsten Haitzler 20aaa9464b pager - new gad - fix segv on vdesk size config change
match old pager gadget logic as it's happy to not crash when the
virtual desktop count config changes

@fix
2020-02-16 01:18:23 +00:00
Carsten Haitzler 4fcd1a989c e - scale pointer by scale factor properly... 2020-02-15 15:33:02 +00:00
Carsten Haitzler d524673f96 e system ddc - add optional sleep multiplier api - new in libddc
add ability to find it at any rate...
2020-02-14 11:02:42 +00:00
Carsten Haitzler 8f535e523f backlight - removed useless bits of backlight config dialog
unused or not useful or commented out code - remove.
2020-02-13 18:21:40 +00:00
Christopher Michael a8afd46a82 e_main: Remove unused variables 2020-02-13 12:13:42 -05:00
Carsten Haitzler 71cbbeff27 e start - clean up xdg runtime dir in e_start not e if created in estart 2020-02-13 16:06:44 +00:00
Carsten Haitzler eba37f40a6 backlight - on get fails, also retry a few times
so sometimes i see gets fail, especially on wakeup, so retry.
2020-02-10 08:09:47 +00:00
Carsten Haitzler 346969eb90 todo - add magnifier 2020-02-09 13:59:12 +00:00
Carsten Haitzler 559a7737a7 e sytem - dont add null hash items 2020-02-08 09:52:39 +00:00
Carsten Haitzler fcacbe8a4f ddc - work around some probe fails, missing timer handle, etc.
beating on ddc support to make it solid. dealing with some bad screens
that don't respond, a libddcutil that was doing a printf messing up
the message stream from e_system to e .... and more.
2020-02-07 19:56:01 +00:00
Carsten Haitzler d7325c3aad ddc - use return val of system to decide to usleep or not 2020-02-07 13:36:09 +00:00
Carsten Haitzler 78b73fb1a7 when backlight devices change, ensure they are restored to normal level
this ensures things like on login e setsup backlights fine - also on
monitor add/plug-in as when e's backlight init happens it may not see
all screens or devices yet.
2020-02-07 10:49:15 +00:00
Carsten Haitzler ee59cec585 ddc - add small delay after modprobe to allow module to init in bg... 2020-02-07 10:48:54 +00:00
Carsten Haitzler 1cfd1f4242 backlight - add workaround monitor wakeups silently ignoring val sets
so if monitor is buys waking up from dpms, it may not be bothering to
do what we asked... but the sets of the propety say they succeed, so
use the get at the end of a fade in run to see if we get the target
brightness within some delta and it's one of our standard brightnesses
(1.0, normal or dim) and retry a few times until we succeed or give
up. this ensures on wakupe your monitors end up at their target
brightness even with some hiccups as opposed to stay dim. not much we
can do about iffy hardware or libddcutil (not sure which is to blame)
other than do workarounds like this.

also add logging so you can see what is being asked and if it succeeds
or fails according to libddcutil.
2020-02-07 10:24:59 +00:00
Carsten Haitzler 57e8805005 ddc - fix animation blocked by slow ddc response with multi screen
just by luck the queue "play catchup" happens to have a classic
scheduling issue. one screen always wins, the other always loses as we
play catch-up in the request queue so one is starved of "scheduling
slots" while the othe rgets them all. this fixes that by moving the
entire request queue into the thread work queue in one go so they all
get an equal chance. now botjh my desktop monitors dim smoothly on
idle like my laptop... smooooooooood
2020-02-06 19:47:04 +00:00
Carsten Haitzler eab2a34ef3 backlight - add ddc support via libddcutil
This adds ddc monitor control and glues it into the backlight system.
A result of this is now backlgiht control gadgets work screen by
screen and even on desktop monitors as well as on a laptop panel. If
you now put a backlight gadget on a shelf on each screen... it will
control THAT screen's backlight.

This requires libddcutil to be installed. That will require i2c
modules (i2c-dev specifically). This means that this is likely not
going to do anything useful on bsd's... unless libddcutil happens to
work there by chance.

so install ddcutil/libddcutil. ensure it's in ld.so.conf so setuid
root processes find it (as LD_LIBRARY_PATH won't help) and enjoy your
new funcky per-screen backlight controls... :)

@feature
2020-02-06 18:41:23 +00:00
Simon Tischer 19fe001f4f Backlight Gadget slider fixes
Summary:
What i have done:

  - Open slider will update using mouse wheel over light bulb
  - Open slider will update using keybindings
  - Slider shows now a value between 1 and 100 (no double value is displayed anymore)
  - Removed unnecessary code for shelf module
  - removed code for buggy popup using keybindings (may add later an option for showing popup on backlight change)

I am still learning. please consider :)

Greetings Simon

Reviewers: bu5hm4n, morlenxus, devilhorns, raster

Subscribers: cedric, zmike

Tags: #enlightenment-git

Differential Revision: https://phab.enlightenment.org/D11065
2020-02-06 14:18:53 +00:00
Carsten Haitzler 37f32ac73a backlight - new gad - use zone of gadget not current zone
this is correct and maatches the shelf gadget code that always uses
the zone of the shelf not "current zone" for backlight control.
2020-02-03 10:29:21 +00:00
Carsten Haitzler ee393a201f e backlight - restructure to have real per screen backlight
now it really does look for the right way to control per screen and
only use the new e_system back-end to query/list devices etc. ...

this now opens the door to adding ddc support to e_system then using
it from e_backlight.

i can't test this... yet - but this means in theory the backlight
gadget will control the backlight of the screen it is on...
2020-02-01 11:29:38 +00:00
Alastair Poole 7856939596 Revert "filepreview_widget: Show "Resolution" field when appropriate."
This reverts commit 555d64d5d5.

This is more fragile than I expected, reverting :/
2020-01-25 11:37:48 +00:00
Carsten Haitzler 0329696423 menu - handle invalid access to menu if already active
asan helped find this

@fix
2020-01-24 23:01:11 +00:00
Carsten Haitzler c9efd9c23d fix events on internal windows if placed on another desk with remembers
this fixes T8584

@fix
2020-01-24 19:50:15 +00:00
Carsten Haitzler 25699c1db7 move xdg env fixup/set set after e prefix determine 2020-01-23 08:24:49 +00:00
Carsten Haitzler 3f22a0c26d e - wallpaper gen - generate multiple resolutions for wallpapers
pre-scale a bunch of resolutions for generated wallpaper files that
intersect with common resolution sizes so e will automatically load
the nearest resolution to be more efficient on load to only decode
what is needed. a bi-product is that e now has a wallapper gen
tool that is simpler than writing your own edc files... :)

@feature
2020-01-22 20:39:19 +00:00
Carsten Haitzler 7323a97f2c e client sync rendering - disable some more sync handling to improve
rendering is so much less jerky and smooth now disabling this sync
handling. something has broken over time with wit and we're better off
without...
2020-01-20 17:06:54 +00:00
Carsten Haitzler bac870bf61 malloc.h - bsd does not like me including it... 2020-01-18 01:33:21 +01:00
Carsten Haitzler 1e2d589b14 csd - fix size hint handling and sizing to not be broken
gtk and efl can use csd. we kind of were copying gtk's but we got it
wrong... in efl. and in etoo as a result. this fixes it to use
min/bas/max size as covering the whole window including the insets.

@fix
2020-01-17 22:06:14 +00:00
Carsten Haitzler 13d721cea6 efm - add printf for eject req with info 2020-01-16 23:14:29 +00:00
Carsten Haitzler 5cc02d6467 Bring back e_sys just for mount, unmount and eject
This reverts commit a43869cdc0.

I still need this for efm... i forgot... :( So bring back the bits we
need until it's no longer needed...
2020-01-16 23:13:52 +00:00
Carsten Haitzler 5ce778194d e_sys.c - remove old snprintf of enlightenment_sys cmd not used now 2020-01-16 20:21:20 +00:00
Carsten Haitzler 0308c7abce e_open - special case for dirs - if no explicit one set - use efm
enlightenment_open will use efm to show a dir unless you have explicit
config saying to use another handler for inode/directory mime types
2020-01-16 19:09:26 +00:00
Carsten Haitzler af0d44a57d mem trimming - have e trim its own memory every now and again
use malloc_trim() if it exists to do this every now and again
(idle_enterer if there isa gap > 10 sec since last clean cycle
so no added wakeups).
2020-01-16 15:33:37 +00:00
Carsten Haitzler 5b5c7c3cb3 e system - force a malloc trim regularly to keep back-end proc minimal 2020-01-16 12:09:49 +00:00
Carsten Haitzler 63ae3290fb e system - remove test tool as we can't use it anymore
it'll just be a fight between e and a cmdline tool - so no more test
tool needed. this is off the ground.
2020-01-16 11:59:12 +00:00
Carsten Haitzler 37620211e5 e restart - use new exit code 111 for restart by parent e_start 2020-01-16 10:54:20 +00:00
Carsten Haitzler 6210b12294 mtrack - declutter - remove as i'm probably the only one ot ever use it 2020-01-16 10:51:41 +00:00
Carsten Haitzler 96d920b707 eina statgen - move to using api not env var as we need new efl anyway 2020-01-16 10:51:04 +00:00
Carsten Haitzler 6373d5583b move xdg data dir fixup to e_start to esnure its set super-early
now everything e launched should agree on xdg data dir if hose os
doesn't set it (bad host os!) :)
2020-01-16 10:38:54 +00:00
Carsten Haitzler 7e47977d9a printf format macros - put them in the right places for no warnings 2020-01-15 19:06:24 +01:00
Carsten Haitzler 8a2c4ea70e cpuclock - fix default freq to be in khz as it should be - fix warn 2020-01-15 19:06:24 +01:00
Carsten Haitzler 8dd052e6e3 cpufreq - fix ifdefs for unused fucn on bsd 2020-01-15 19:06:24 +01:00
Carsten Haitzler cda79aff9e luncher bar - fix enum use for aspect hint to use evas, not edje one 2020-01-15 19:06:24 +01:00
Carsten Haitzler 2659285bb6 wizard page 120 - temp detect - fix up bsd ifdefs for unused vars 2020-01-15 19:06:24 +01:00
Carsten Haitzler c27b4490b9 music-player - init all struct fields in array - fix warn 2020-01-15 19:06:24 +01:00
Carsten Haitzler 745fbf0909 wireless - fully init all fields in struct to fix warn 2020-01-15 19:06:24 +01:00
Carsten Haitzler 58af9a7d8c wireless - explicit cast as types have same vals by design 2020-01-15 19:06:24 +01:00
Carsten Haitzler 628736a4a3 shot - add {} around subobj to fix warning 2020-01-15 19:06:24 +01:00
Carsten Haitzler e122b2855f e start - fix warning on unused params when ptracing 2020-01-15 19:06:24 +01:00
Carsten Haitzler 9c8661abe2 efx - valid casts to silence warnings - same enum vals by design 2020-01-15 19:06:24 +01:00
Carsten Haitzler 13e696ce46 efx - fix type return type - still same actual value (0) 2020-01-15 19:06:24 +01:00
Carsten Haitzler 0e715f89b1 e fx - cast explicitly as 2 enums have same values by design 2020-01-15 19:06:24 +01:00
Carsten Haitzler 9022620366 e_fx - explicit case as enums have same values explicitly 2020-01-15 19:06:24 +01:00
Carsten Haitzler 0f1e2862a6 e win - fix recursive symbol typo
amazing this didn't blow up before. missing e_ in front ad the macro
should have transformed this to wrap the e version of this func...
clang warning pointed this out. a real bug waiting to happen.

@fix
2020-01-15 19:06:24 +01:00
Carsten Haitzler 10c2d74a9b e system api - fix warning about buffer ptr get
binbuf buffers are universally aligned anyway...
2020-01-15 19:06:24 +01:00
Carsten Haitzler fcb7f3c1ec e pointer -fix cast alignement warning
these will be aligned due to how evas works... so just silence this
2020-01-15 19:06:24 +01:00
Carsten Haitzler ea75a4384d e hints - put in some casts to silence earnings - enums are same vals 2020-01-15 19:06:24 +01:00
Carsten Haitzler 72a2f7e8aa e system cpufreq - silence bsd warnings for unused params and ifdefs 2020-01-15 19:06:24 +01:00
Carsten Haitzler fb9948738b e system test - fix warnings about aligned types 2020-01-15 19:06:24 +01:00
Carsten Haitzler 72496cbfeb e system backlight - fix bsd size type for sysctl 2020-01-15 19:06:24 +01:00
Carsten Haitzler a290469b4e bryce - fix warning on sign comparison 2020-01-15 19:06:24 +01:00
Christopher Michael ad68b07404 e_int_config_comp: Disable OpenGL options when selecting Software engine
This patch disables OpenGL radios & checks when a user selects
Software as the rendering engine.

ref T8553
2020-01-15 09:36:01 -05:00
Christopher Michael 16040d4492 e_int_config_comp: Disable VSync checkbox if we are using Software
engine

ref T8553
2020-01-15 09:20:35 -05:00
Christopher Michael 754a2d4f93 e_int_config_comp: Don't enable VSync checkbox if we are using
software engine

ref T8553
2020-01-15 09:03:23 -05:00
Christopher Michael 468c46d850 e_int_config_comp: Don't display vsync checkbox if opengl is not
supported.

ref T8553
2020-01-15 09:00:48 -05:00
Carsten Haitzler ac4323b453 fileman module - fix warning about constness of ptrs
noisy warning so we can see real bugs. no real bug fixed here.
2020-01-15 11:33:55 +00:00
Carsten Haitzler 5ec8fee280 e_randr2 - fix screen change detection to look at right prev screen 2020-01-15 11:33:55 +00:00
Carsten Haitzler 15a5a49835 e main - use exit code 111 to have e_start parent process restart e
this means no leaked fd's between restarts too. cleaner. it also
encorces "die with parent" for enlightenment_start too as another
bonus in addition to its own fifo handling for singleton access per uid.

WARNING: you need to log out and log back in since the "protocol
expectations" (what exit codes do what and what parent and child
process are responsible for) changed so to get them both back in sync
you need to log out and in.
2020-01-15 11:33:55 +00:00
Carsten Haitzler a43869cdc0 e_sys -> move from enlightenment_sys to e_system 2020-01-15 11:33:55 +00:00
Carsten Haitzler 689dfde91b bluez5 - move from enlightenment_sys to e_system for l2ping and rfkill 2020-01-15 11:33:55 +00:00
Carsten Haitzler be8792a2ee sysinfo - cpuclock - migrate from custom suid to e_system like cpufreq 2020-01-15 11:33:55 +00:00
Carsten Haitzler 7aaf8f4feb cpufreq - move to use the new e_system cpufreq support from own suid exe 2020-01-15 11:33:55 +00:00
Carsten Haitzler f277ab71e7 e backlight - move to the new e system tool for backlight
no improvements like per screen brightness... but a straight
conversion to the new system tool which simplifies e backlight a lot.

it'd be betetr to use the new system also to read backlight value and
list lightss etc ... but for now this is a good first stage.
2020-01-15 11:33:55 +00:00
Carsten Haitzler f57572b678 e system - add new uber setuid tool to replace all the previous ones
so e has had a bit of a mess of setuid root tools to do things that
are essential to maintaing a functioning desktop/laptop/tablet/phone
like device like shutting it down or suspending or sqizzling the cpu
governor or messing with the backlight or... you get the idea.

this has been spread around enlightenment_sys and other special
purpose tools. this now unifies it into a single "always there"
enlightenment_system backend setuid root slave process whose job it is
to do all these things via a stdio protocol in an organized way. this
means latency to do something is lower, but at the expense of
consuming ram and a lurking process. unfortunately the lurking will be
needed soon when i add ddc support to make it even vaguely efficient,
so it's a cost i guess we have to pay now. we'll need this in future
as well for some stats collection and more.

still need to port existing code to use this instead of the existing stuff,
and then remove of the old stuff.
2020-01-15 11:33:49 +00:00
Carsten Haitzler dda50e8d87 shot + efm - add efm action to show dir so if same dir is open it shows
and if there is not the same dir upa  new win is created and shown.
... shot uses this to avoid shot dir duplication.
2020-01-09 00:26:45 +00:00
Carsten Haitzler 73e3911874 e randr x - fix mouseto use new ecore x api to force screen bound limits
use ecore_x_root_screen_barriers_set() new in efl git, thus bumping to
1.23.99 as a requirement for e.
2020-01-07 14:22:47 +00:00
Carsten Haitzler 54afb369f8 shot - wheel zoom - zoom around mouse cursor coords with ctrl+wheel zoom 2020-01-06 11:08:36 +00:00
Carsten Haitzler b7c5fd2a0b pager_plain - remove module and migrate people to just plain pager
let's not keep 2 plager gadgets ... one only - yes. it's mini
previews. it's easier to maintain this way.
2020-01-05 20:35:39 +00:00
Carsten Haitzler 14e7a5c362 shot - fix padded shots out of comp bounds...
clip to comp area so we dont end up with blank areas.
2020-01-05 17:25:15 +00:00
Carsten Haitzler 7d960b12f8 shot - auto-choose a zoom that nicely fits the shot in up to 1 to 1 2020-01-05 17:14:43 +00:00
Carsten Haitzler 812ca88938 shot - make crop handles biger and easier to see in corner cases 2020-01-05 14:35:59 +00:00
Carsten Haitzler d23615046b shot - fix crop out of bounds issue 2020-01-05 12:56:36 +00:00
Carsten Haitzler 0da185b911 shot - remove debug printf. 2020-01-04 16:16:19 +00:00
Carsten Haitzler 32754cff9f shot - zoom - go back to 1/4 zoom by default
for fullscreen shots this makes so much more sense.
2020-01-04 16:15:13 +00:00
Carsten Haitzler f32ac2d1a9 shot always save shots to your users new shots dir and show dir on save
when you select save from shot now it always saves to your user shots
dir (~/.e/e/shots) and then opens up this fir for you to browse/see/dnd
out of etc. etc. for easier quick and fast access to what you just
saved. also you keep a history of your shots (you do get to clean it up
yourself when you save... no auto-cleaning - i decided not to bother
as realistically it's just more config to swizzle and mystery deletion
of files that some user has to figure out how and why it happens and
where to go change the config - just delete the ones you don't want
anymore - simple and easy.)
2020-01-04 16:10:48 +00:00
Carsten Haitzler 5ad9734c9a randr - dont save instantly inline - comp may not be up. defer in job
save in a job later ... not instantly. as ave may involve an error
which may involve a dialog coming up which if compis not up yet...
boom.

@fix
2020-01-04 16:10:48 +00:00
Carsten Haitzler 04d395f2dd in the event of e_comp evas being null ... dont just fall over and die
@fix
2020-01-04 16:10:43 +00:00
Carsten Haitzler 6fddd05d95 e env - set E_HOME_DIR to e's config dir (~/.e/e/ normally) 2020-01-04 16:07:00 +00:00
Carsten Haitzler aaea7865ef shot - remove unused code 2020-01-04 13:48:01 +00:00
Carsten Haitzler 1a7565b970 shot - fix return type of timer 2020-01-04 13:39:05 +00:00
Carsten Haitzler 40fb1bce22 shot - add delay button in shot dialog to try again with a delay
also adds an action you can bind with an explicitly provided delay
time for customization in bindings if you always use the same timeout.

@feature
2020-01-03 22:03:57 +00:00
Carsten Haitzler b34728858c shot - add 4 more draw tools - outline box and circle foot and silly walk 2020-01-03 20:17:35 +00:00
Carsten Haitzler 90fb244615 shot - make zoom reset actually go to 1:1 again 2020-01-03 18:38:43 +00:00
Carsten Haitzler 16a065fe2b shot - edit - add more zoom slots and center zooming 2020-01-03 18:33:44 +00:00
Carsten Haitzler a6cc86af44 e - stop trapping inlined windows - they shouldnt be 2020-01-03 17:44:37 +00:00
Carsten Haitzler 7da3ba0bc5 shot tmp.
shot - add shot editor with arbitrary cropping and drawing tools

We don't need padded vs other shot of window now as u can remove the
padding with a single click in the editor now, so remove that (comment
it out).

The editor allows you to click on each screen, on a window (and click
again on a window to remove the padding area for the crop so its
snugly around the window).

You can zoom in and out and scroll around.

You can add lines with an arrow, double-arrowed lines, plain lines
with no arrows, some clipart (e-logo, mallocs, pointing finger... just
having some fun) and some fun "text boxes" like though bubbles,
speecvh bubbles, just plain text with a darking outline, a plain
entry-styled text box and you can select the colors for the text and
background area as well.

It's inksape-like in that the items you draw are objects that can then
be modified or deleted. modifying them raises them and places some
controls on/over/around the object.

And you can still save and share the results.

Fun times!

@feat
2020-01-03 16:43:13 +00:00
Carsten Haitzler 1f7c6cc07c Batman gadget upower typo fixes
Summary: this fixes two typo errors in batman.h and batman_upower.c

Reviewers: bu5hm4n, raster

Reviewed By: raster

Subscribers: cedric, zmike

Tags: #enlightenment_gadgets

Differential Revision: https://phab.enlightenment.org/D10964
2020-01-03 16:43:13 +00:00
Carsten Haitzler 322bbc8c03 ibar - change Setup button in config to Contents 2020-01-02 13:09:59 +00:00
Carsten Haitzler 7ba0d0f996 shot - reduce code a bit 2020-01-02 13:09:59 +00:00