Commit Graph

345 Commits

Author SHA1 Message Date
Carsten Haitzler 0187eb5fe6 winlist - add list window miniatures option you can turn off 2021-04-04 12:50:24 +01:00
Carsten Haitzler 7ca3f8f612 efm - option for display of dates explicitly and not in nice-human form 2021-03-10 10:06:53 +00:00
Carsten Haitzler 4b87781bae scaling - remove custon x application dpi and move to central scaling
now have a base dpi (75) which is multiplied by the scale factor and
then set in both xft.dpi and xsettings. also a checkbox to turn
setting of this on or off so e can be told to not touch these at all.
2020-11-29 18:52:17 +00:00
Carsten Haitzler 3793619dae x - input - separate touchpad and mouse settings
you can have different accel for mouse vs touchpad and different
natrual scrolling settings etc. this splits that up.
2020-11-15 23:54:21 +00:00
Carsten Haitzler 0bf06c5e1e x input dev config - go direct to drivers not button mappings
unless. its an old evdev only etc. system - synaptics and libnput can
do thison their own. it's a bit of a mess, but it works.
2020-11-15 16:19:08 +00:00
Carsten Haitzler 05b0ff59a8 x - add xinput device watching and beginnings of configuring them 2020-11-14 20:48:09 +00:00
Carsten Haitzler 7f2ea7af8b e winlist - add large mode and deprecate some old condig like geom
this adds a live exposé style set of windows in large mode and 2d
navigation, allows it to stay up so you can bind to a single key or
mouse button to bring up and keep thre unbtil dismissed etc. ... this
requires theme changes and for now these changes have only been added
to the flat theme branch in efl - they will become default in the
future, so dont use this and expect it to work unless you also try the
flat theme default from the flat branch in efl. see
https://phab.enlightenment.org/T6726 for details on that.

this is not complete. it has some TODO items at the top with XXX: but
.. it's good enough now to share.

@feat
2020-11-03 11:20:06 +00:00
Carsten Haitzler afb6ea1b22 desklock - remove custom desklock command. solves comment in bug report
fixes T5978
@fix

now you can't make things weird by having an external lock command -
solves that unsolvable race... :) the other iseu i think is not relaed
to e and smellslike old garbage fb content either
xorg/kms/driver/kernel or something - i have seen junk onresume
sometimes but its a fb from like hours ago even so i smell it might be
that. this solves the other issue brought up by not making it possible
2020-10-09 12:25:26 +01:00
Carsten Haitzler 048a40414f remove offline+presentation mode - this has confused people
i've seen various people get confused as to why their screen won't
blank and never heard of anyone using offline mode. i think this can
retire and just disabkling blanking manually or as presentation/media
tools do these days... they ask to suspend screensaver anyway. yes it
also affects notifications - but that is a good question - if you want
these or not? may as well simplify.
2020-10-05 09:20:05 +01:00
Alastair Poole 2c70e9648d xsettings: unbreak config and use standard naming.
Reviewed-by: Christopher Michael <devilhorns@comcast.net>
Differential Revision: https://phab.enlightenment.org/D12150
2020-09-18 10:59:55 -04:00
Alastair Poole 9f33fbf62e xsettings: Allow for custom DPI setting.
Until a wayland/X11 solution allow setting a custom DPI in
Settings -> Application Theme -> X Application Settings
2020-09-17 16:50:24 +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
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 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
Elyes HAOUAS 153f479d3f tree-wide: fix typos all over the place
Fix some typos

Differential Revision: https://phab.enlightenment.org/D11778
2020-05-14 12:04:51 +02: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
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 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 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 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 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
Michael Bouchaud (yoz) 5cded14b76 screensaver: Allow to set hibernate on blank into blanking setup
Summary:
This patch introduce an alternative to suspend on blank.
Hibernate on blank.

@fix T1886
@features

Reviewers: zmike!, devilhorns

Subscribers: cedric

Tags: #enlightenment-git

Maniphest Tasks: T1886

Differential Revision: https://phab.enlightenment.org/D7602
2019-05-16 13:50:27 +01:00
Michaël Bouchaud (yoz) 3ab092a61c conf_interaction: Support tap-to-click with pointer device
Summary:
Allow to setup tap-to-click feature with libinput pointer device.

@feature

Reviewers: devilhorns, zmike

Reviewed By: devilhorns

Subscribers: cedric, zmike

Tags: #enlightenment-git

Differential Revision: https://phab.enlightenment.org/D7845
2019-01-31 09:10:57 -05:00
Carsten Haitzler e4339f4819 bryce - improve usability from code and user by having std right menu
now right click on any gagdte in bryce and they ALL have a menu that
allows removal of the gagdte bar or the gadget as well as access to
gadget settings AND the ability for gadgets to extendthis menu like
lunhcer does per icon. now it's standard behavior everywhere which is
much easier to use and discover. it also removes code from every
gadget to do their own "button 3" handling as its handled centrally
making the code in gadgets simpler.

this is part of my effort to improve usability (mostly discoverability
and accessibility of settings/features).

also  long press left mouse gets u gadget right click menu

this has to move many modules/gadgets actions to mouse up instead of
mouse down so the bryce has a chance to trap the events first and set
hold flags. but now long press for 0.5 sec and bryce menu come sup
(with left mouse .. so touch friendly).

in addition move context menu hanbdling to e_gadget instead of in
bryce and in e_gadget. a context callback is called so different
systems can still do different things. this should probably change to
always pop up a mnenu and simple call populate callbacks for site
owner specific content.

all in all it makes the new gagdtes more consistent, easier to use
(without a right mouse button), doesn't need special action bindings
etc. etc.
2018-10-11 16:25:10 +01:00
Carsten Haitzler 839d7f4dc2 e blanking - offer option to not use dpms
so a new bug in a gpu driver. if dpms is enabled, wakeup doesn't
happen. mouse doesn't do anything, rendering doesn't happen... i can
use the keyboard and ctrl+alt+enmd restart e or killall -HUP
enlightenment and e restarts and renders ... but nothing appears.
interestingly if i let it timeout again and wake it up a second
time... things render (but e is confused it seems and mouse input
doesnt work until i restart e). it's some kind of xorg/driver bug here
with this dpms - no dpms and all is fine. all e does with regards to
dplms is enable or disbale it (and set the timeouts) so e isn't doing
antyhign special otherwise with dpms on vs off ... so somethnig deeper
down the stack here, but to get a desktop that works at least for now,
add an option to not use dpms.
2018-07-17 13:19:48 +09:00
Carsten Haitzler 2e5be79c45 bluez5 support - a new module with gadget etc.
Summary:
bluez4 support is now basically dead. nothing ships it anymore. bluez5
is a new api that is rather different so new code. also a new gui with
more complete features etc.

not everything is done as i'd like. need:

1. many more icons for device types (60-70 maybe?)
2. a few specific custom icons for some action buttons (like
pair/unpair)
3. icons for group headers
4. gadget status - the gagdte itself displays zero status. it's a
button to display a popup. that's all.

Reviewers: zmike!

Subscribers: devilhorns, cedric

Tags: #enlightenment-git

Differential Revision: https://phab.enlightenment.org/D6148
2018-05-18 21:45:20 +09:00
Carsten Haitzler ab88e01afa edge flip while dragging with alt - fix to work again
this fixes when you drag a wqindow to screen edge and it flips if you
use alt+drag as opposed to just dragging titlebar around without alt.
it fixes it by updating your config to allow "any modifier" for edge
flips which is actually correct.

@fix
2018-04-01 14:29:38 +09:00
Mike Blumenkrantz fef7941083 set elm profile to match e profile during startup
this is actually broken, as is entire the concept of using mixed e+elm configs.
if a user manually changes the profile, e.g., for a single app, then this will
overwrite the global profile name. similarly, setting the profile in this manner
overwrites the global profile, causing all existing apps to switch to that profile
2017-08-25 14:47:10 -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 d0c5fb465b support connected standby (non-s3 sleep/freeze) that new lpatops sport
this requires we have to force dpms on to reduce power. to avoid
glitches with the pointer staying around in x we need to support
suspending it too so it hides cleanly like the screen dims or undims.
also use the new powersave freeze mode to do this.

note that i've tested this on s3 supporting laptops and non-s3 and it
"works for me". it may require more testing and work. there is more to
power saving than just this as well but for now that's out of scope as
you have to mess with linux device autosuspend timeouts and a bunch
more (wowlan ... blahblah).

i need to find the source of the intermittent wakeups too in e. there
is a long lived timeout (8-ish seconds?) but more specifically e keeps
waking up from fd's and then reading /sys stuff about battery - some
event is causing us to do this... maybe to suspend this or make
battery checking very rare when in freeze mode (or screen off) etc.

so this fixes some glitches as well as supports a new way of sleeping
"alive" when hardware literally doesnt support normal s3 sleep... so
kind of a fix with a feature.
2017-07-10 10:18:50 +09:00
Mike Blumenkrantz 57edf1bbd8 remove E_Config->desktop_default_name
this is an easy format string attack vector which serves no purpose
that I can fathom. the commit log where it was added it also made
no mention of this, as it was done in a seemingly-unrelated feature
addition
2017-02-10 17:24:13 -05:00
Stephen 'Okra' Houston 35e9501637 Enlightenment: Whitelist and autoload the sysinfo gadgets. 2017-01-25 16:24:53 -06:00
Stephen 'Okra' Houston 46ae444069 E_Config: Auto load luncher if ibar is enabled and bump config. 2016-12-14 11:52:10 -06: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
Mike Blumenkrantz 863a50acbb bump config version, add mouse/wheel bindings for manipulating gadgets/bryces
this copies the user's current bindings for moving/resizing/menu on a window
and applies them to gadget-related objects for UX coherency
2016-03-04 14:23:44 -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
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
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
Sung-Jin Park 6826608961 (1) e_config.c/e_comp_wl.c: add code for making repeat values configurable
(2) e.src(s): add keyboard.repeat_delay, keyboard.repeat_rate into e.src files

Summary:
As of now, the default values of repeat delay/rate are being set in e_comp_wl.c.
Those values need to be configurable and will be used in e_comp_wl_init().
The limit of each of the values is defined from -1 to 1000. (maximum 1s).
If one of the two is negative, it means default repeat delay/rate are going to be used.
(e.g. delay:400, rate:25)

Test Plan:
N/A

Signed-off-by: Sung-Jin Park <input.hacker@gmail.com>

Reviewers: raster, stefan_schmidt, gwanglim, devilhorns, zmike

Subscribers: Jeon, ohduna, cedric

Differential Revision: https://phab.enlightenment.org/D3364
2015-11-30 14:05:10 -05:00
Carsten Haitzler f0ea0c94ca e config - cache sizes in config don't actually work, so remove
remove several config vars in advanced performance that frankly don't
work (unless you change them int he dialog). they are not set up on
startup or not even used at all. remove things that don't work anymore!

@fix
2015-09-22 14:06:40 +09: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 dedf4cd896 remove manager references in desk name/profile configs 2015-03-19 17:10:26 -04:00
Mike Blumenkrantz a94668927c remove shelf manager/container references in config 2015-03-19 17:03:44 -04:00
Mike Blumenkrantz b6eb319146 remove manager/container id from bg/wallpaper things 2015-03-19 16:54:50 -04:00
Sebastian Dransfeld 764755eb9f e: Add preferred desktop environment for apps
In preferences we show which external applications can be used for
setting preferences. If several desktop environments are installed, this
list will have several duplicates, as there can be many different apps
for setting a preference.

With this setting we can filter out for one desktop_environment.

@feature
2014-09-18 10:51:42 +02:00
Mike Blumenkrantz 369ff9c2b9 use_shaped_win can indeed be removed entirely! 2014-08-11 20:30:59 -04:00
Mike Blumenkrantz 1080b3d5d7 bump config version, update p16 module users to regular p
come on.
2014-08-06 14:18:54 -04:00
Carsten Haitzler 5c8710ded3 fix screen blanking while fullscreen window is up - work again
@fix - this fixes T1019 - when a window is fullscreen the display just
NVER can blank no mater what. it's hrdcoded, and wrong to enforce. if
an app wants to display screensaver - there is the xscreensaver extn -
or maybe supporting an explicit property on a window would work
better, but just equating fullscreen == never blank is wrong. it's an
option now. off by default.
2014-03-01 08:04:09 +09:00
Mike Blumenkrantz e86dc53ddc feature: per-screen desklock logo visibility config
T613
2014-02-21 17:18:57 -05:00