Commit Graph

23455 Commits

Author SHA1 Message Date
Carsten Haitzler 3cb7d8868f bluez5 - finally add signals to show global adapter state
this adds signals that go to the bz5 gadget object so you know if you
have a bt adatper on at all, if any are powered on, scanning, visible
etc.
2018-07-16 21:10:43 +09:00
Davide Andreoli 38ae2285ec PackageKit gadget: fix hiding of progbar in bryce
This seems to me more an hack than a fix, but this is how
elm works :(

ref T7119
2018-07-09 22:36:55 +02:00
Mike Blumenkrantz 5365493788 avoid adding render updates for deleted clients after animation completes
Summary:
in the case where deletion is deferred to preserve a window animation this
codepath may be triggered by a deleted client, at which point no render update
should occur in order to avoid compositor errors

ref f78eb3c108
fix T5203

Reviewers: ManMower, devilhorns

Reviewed By: devilhorns

Subscribers: netstar, cedric

Tags: #enlightenment-git

Maniphest Tasks: T5203

Differential Revision: https://phab.enlightenment.org/D6367
2018-06-25 06:54:47 -04:00
Mike Blumenkrantz a6277f4f6d resolve a number of cases where a null object was passed to efl functions
Summary:
these are all harmless but will trigger error messages from efl

ref T7030

Depends on D6315

Reviewers: ManMower, devilhorns

Reviewed By: devilhorns

Subscribers: cedric

Tags: #enlightenment-git

Maniphest Tasks: T7030

Differential Revision: https://phab.enlightenment.org/D6316
2018-06-19 12:01:43 -04:00
Mike Blumenkrantz bc9bccb2b6 make e_comp_object_frame_icon_update() have a bool return for success
Reviewers: ManMower, devilhorns

Reviewed By: devilhorns

Subscribers: cedric

Tags: #enlightenment-git

Differential Revision: https://phab.enlightenment.org/D6315
2018-06-19 11:58:25 -04:00
Daniel Zaoui 49459b6b72 Battery: fix the battery status when some battery devices are not valid
It happens that some devices are considered as batteries, even if they
cannot be charged or used as a power supply for the laptop.
The ELAN device deals with the touchpad and is a "battery". When looking
at the udev info, it appears that there is no technology present as
well as the basic battery info (energy levels).

P: /devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-0/i2c-ELAN24CC:00/0018:04F3:24CC.0003/power_supply/hid-0018:04F3:24CC.0003-battery
E: DEVPATH=/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-0/i2c-ELAN24CC:00/0018:04F3:24CC.0003/power_supply/hid-0018:04F3:24CC.0003-battery
E: POWER_SUPPLY_CAPACITY=1
E: POWER_SUPPLY_MODEL_NAME=ELAN24CC:00 04F3:24CC
E: POWER_SUPPLY_NAME=hid-0018:04F3:24CC.0003-battery
E: POWER_SUPPLY_ONLINE=1
E: POWER_SUPPLY_PRESENT=1
E: POWER_SUPPLY_SCOPE=Device
E: POWER_SUPPLY_STATUS=Discharging
E: SUBSYSTEM=power_supply

The issue with that kind of devices is that it confuses the battery
gadget. Since two batteries are present, the total capacity is divided
by 2, resulting in the gadget displaying only 50% when the battery is
fully charged.
To avoid this, we check that the battery technology is known.

@fix
2018-06-05 00:30:47 +03:00
Carsten Haitzler f345721897 client opacity hint handling in x - fix handling to do 0-ffffffff right
e was not properly handling the opacity hint in its 0-0xffffffff
range. in one case it converted e's color value to this range but just
with << 24 which is wrong as it then ignors the next 24 lower value
bits, so it should fill the next 3 bytes with repeats of the same
value to do this right, but far worse is on READING the value it just
used the value as-is as if it were a 0-ff (0-255) alpha value that we
use in evas and didnt "thunk it down" with val >> 24. this resulted in
renoise menus being blank as renoise set the opacity value on its
menu windows and e happily made them transparent thanks to this.

this fixes that.

not to peolpe fro the above. bitshifting DOWN is ok, but bitshifting
UP leaves the lower bits all 0 and you should fill this range with
repetitions of the value to properly scale in integert space with
bitshifts. :)

@fix
2018-06-02 16:35:39 +09:00
Alastair Poole 8ee7cf979f fileman: remove temporary fix.
Efreet should now properly unmap the correct address.
The unmap was causing a SIGBUS. Removing this bogosity.
Won't affect e22.
2018-06-01 14:37:44 +01:00
Alastair Poole e2d449348f Revert "module loading: use global symbols with BSDs and local with Linux."
This shouldn't be necessary now.
This reverts commit 28ad7b337c.
2018-05-28 10:33:26 +01:00
Carsten Haitzler 91463a9621 e wizard - fix symbol linking for pages by exposing syms explicitly
wizard module was relying on implicit symbol linking for pages. since
i chnaged dlopens to be local this broke page loading. this local
dlopen change is all about not leaking symbols into the global table
which is good/right, but this stops the wixzard setup from working, so
move to explicitly exposing symbols to the modules in a struct.
2018-05-27 22:53:10 +09:00
Alastair Poole 28ad7b337c module loading: use global symbols with BSDs and local with Linux.
The symbol table fix on Linux doesn't translate well on BSD.
Adding code to use the older behaviour with the BSD systems
and retaining the new preferred behaviour when using dlopen(3)
on Linux.
2018-05-27 12:37:18 +01:00
Carsten Haitzler 0c61b092bb bluez5 - remember pwr and pairable states and restore them on adapt add
bluez wont remember powered state for adapyters so for usability, do
it for bluez so users get their last state as you might expect.
2018-05-21 22:41:14 +09:00
Carsten Haitzler 7c6702e2fd mixer - fix exe handler del and handle to stop crashes after mixer run
running emixer from the mixer module popup was resulting in crashes.
it was this exe event handler handle and leaving a dangling garbage
ptr after it was deleted.

@fix
2018-05-19 00:58:03 +09:00
Carsten Haitzler ab1360c224 emxier desktop - fix categories to match well known cat names
Audio is not a well known/valid one. AudioVideo is. fixes T5076

@fix
2018-05-18 21:45:20 +09:00
Carsten Haitzler 401becb78e bluez5 - add support to unblock rfkill if bt adatper power is on
so users will be mucho displeased and bewildered when the bt adatper
is powered on but nothing happens... it ends up that with some bt adatpers
it will be rfkill blocked by default. this is highly unfriendly. at
least if you have bluez5 module loaded and configured the adatper to
be powered on... i see no reason why it shouldn't be unblocked if the
adatper is powered on. i have considerted making it an option but for
now can't think of good reasons to really do that.
2018-05-18 21:45:20 +09:00
Carsten Haitzler 4723f7e4a7 add rfkill actions to sysactions.conf - necessary for bluez
so bluez itself wont go rfkill block or unblock the bt device. you
have to rfkill unblock separately if it's blocked. this is needed to
make bluez at a minimum work right. possibly should be added to
connman too. but this is the first step.
2018-05-18 21:45:20 +09:00
Carsten Haitzler f20762a82d meson - fix dir_sysconf to be under the prefix as it was not
dir_sysconf was set to "etc". not even a /.  this meant
enlightenment_sys couldnt find/load sysactions.conf as it used a
non-relocatable fixed location due to security (setuid root) reasons.
2018-05-18 21:45:20 +09:00
Carsten Haitzler 5a1e9a995c e laptop lid fixes to bring back behavior and trim down glitches
so i spent a few days lopening and closing the lids of a few laptops,
plugging and unplugging external screens in, plugging and unplugging
ac power and doing lots of combinations of these. this led to a whole
slew of interrealted issues that were pretty hard to detangle into
just single issues, so this is all one blob.

this fixes:

1. if a lid close gets a monitor unplug from x or e's randr wants to
unplug then this lead to slow unsuspend or lid open times as e was
reconfirguring the screens entireluy on lid open. dont do that. just
keep things as is, unless we have an external display, then reconfigure.

2. we had 2 systems monitoring for a wake. a poller and a systemd
event. this was redundant and lead to interesting things in the debug
output, so clean that up and on systemd systsems use the systemd wake
events

3. some systems dont shut down their screens on lid close, so they
stay open until screensaver timeouts kick in. bad. so also force the
screen to go off on lid close (if the lid screen is the only one we
have).

4. x seems to have a bug where if you force dpms off etc. to turn the
screen on, it still thinks it's of and wont dpms off again after that
until you eother give some input to have the wake event make the dpms
system in x think its now time to go on, or you toggle dpms on and
off, so i found toggling tricks x into thinking the right thing.

this makes some debugging also be consistent with printfs.

all in all i have a pretty well supported laptop doing swimmingly with
e and a not so well designed (acpi dsdt - missing many events like
acpi battery ones, ac power change acpi events, missing logic to power
off a closed screen in firmware or hardware and leaving it to sw...
not this laptop has a tocuh panel and extra fun points awarded since
the touch panel doesnt shut off on lid close... AND it reprots touch
events when it closes  as it touches the keys/case... hooray! that has
another work-around local to my system, as efl has no mechanism to do
this).

@fix
2018-05-18 21:45:20 +09:00
Carsten Haitzler b00477c1e5 input method conf dialog - fix filtering of imc's to search path
if exe is not a full path it'd be filtered out... so fix and do a path
search to show imc's that can work.

@fix
2018-05-18 21:45:20 +09:00
Carsten Haitzler 757f7a7279 module loading - use local symbols to avoid symbol table clashes
the mod init/shutdown syms already are bad infesting the global sym
table. keep modules local/isolated and we'll be better off.
2018-05-18 21:45:20 +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
Mike Blumenkrantz 05d3f2d393 move config/ to data/config/
Summary:
this is part of the datadir distribution, it should not be in a different
directory than the rest of the datadir distribution

the gnu coding standards (https://www.gnu.org/prep/standards/html_node/Directory-Variables.html)
define 'datadir' as:

The directory for installing idiosyncratic read-only architecture-independent
data files for this program. This is usually the same place as ‘datarootdir’,
but we use the two separate variables so that you can move these program-specific
files without altering the location for Info files, man pages, etc.

This should normally be /usr/local/share, but write it as $(datarootdir).
(If you are using Autoconf, write it as ‘@datadir@’.)

The definition of ‘datadir’ is the same for all packages, so you should install your
data in a subdirectory thereof. Most packages install their data under $(datadir)/package-name/.

while this text has no clear requirement or suggestion for a corresponding
repository layout, projects typically employ a certain consistency in their
repository layout both for ease of maintenance and ease of learning for new
contributors.

this project has both a data/ directory, which contains the datadir distribution,
as well as the config/ directory, which also contains the datadir distribution.
this complicates matters both for active maintainers/developers who must
remember that the repository and build tree layouts have this exception,
and for new contributors who will initially be confused by this exception

other well-organized open source projects, such as wayland, have chosen to not
use a data/ directory. these projects have the datadir distribution in the base
directory of the repositor, which is a fine practice as it maintains consistency
for the project since all the files for the datadir distribution are in the same
directory.

by applying this patch, the project will move towards a more easily readable and
learnable layout. current and future developers will no longer need to wonder why
this directory is outside of the data/ directory, and anyone attempting to reference
these files from the source/build trees will be able to do so more easily

ref D6013

Reviewers: cedric, raster, bu5hm4n

Reviewed By: raster

Subscribers: devilhorns

Tags: #enlightenment-git

Differential Revision: https://phab.enlightenment.org/D6154
2018-05-15 15:30:14 +02:00
Mike Blumenkrantz dd2436ec69 update arcconfig key:values for new phabricator api
Summary:
https://secure.phabricator.com/book/phabricator/article/arcanist_new_project/
the previous values here are no longer valid and will fail when used
with git-phab
Depends on D6154

Reviewers: cedric, raster, bu5hm4n

Reviewed By: bu5hm4n

Subscribers: devilhorns

Tags: #enlightenment-git

Differential Revision: https://phab.enlightenment.org/D6155
2018-05-11 09:47:20 +02:00
Derek Foreman 3e196c1c61 compile against stable EFL again
E should probably continue to build against released EFL older than
the current interface name changes.
2018-04-25 11:06:12 -05:00
Carsten Haitzler f3498ee82c compile again after efl change interface names... 2018-04-25 14:37:49 +09:00
Stephen Houston fa3d86ac84 Remove/mark unused variables to avoid warnings. 2018-04-19 10:18:46 -05:00
Stephen Houston 7c422a7374 This partially reverts ab88e01afa "edge flip while dragging with alt - fix to work again"
This commit broke e's config and therefore broke gadget key modifiers, gadget loading, among other things.  This reverts the changes in config/* that broke this.
2018-04-19 09:50:31 -05:00
Derek Foreman 898af13d6b Defer initial xdg configure for iconified wayland clients
Under wayland, if a client declares itself iconified before its first
commit, we should wait until it's no longer iconified before sending it
a configure.  This way it can avoid uselessly rendering buffers that
will never be displayed.

ref T6834
2018-04-18 13:04:31 -05:00
Carsten Haitzler 7cceed1337 e thumb - be consistent and use safe run for restarting thumbnailer
fix inconsistency in using ecore_exe_run and the e_util wrapper...

@fix
2018-04-12 20:56:46 +09:00
Carsten Haitzler 6da22e22f8 e pan/scrollframe - fix garbage pan values that happen temporarily
during setup garbage pan positions can be set due to uninitialized
local variables. fix that to initialize.

@fix
2018-04-11 14:41:01 +09:00
Carsten Haitzler 20130aec91 efm - dont add null icons to list ... fixes segv
as per title. dont store null icons in the list - not intended to be
that way.

@fix
2018-04-11 14:38:55 +09:00
Carsten Haitzler da02b865f9 startup - fix management of timer pointer for startup timeout
fixes access of invalid timer pointer value on slow systems. (was
being caught with magic/invalid eiod before)

@fix
2018-04-11 14:37:57 +09:00
Carsten Haitzler f13b79c02b efm - fill in some media icon blanks which lead to generic icons
i found a thumbdrive i got a generic "whatever" file icon for...
because efm media type matching didnt find an icon name for it. fix
that.
2018-04-10 17:50:57 +09:00
Carsten Haitzler 8dcf7a8b0a e startup - support gnome autostart delay
support autostart delay - fixes T6785
2018-04-03 18:39:06 +09:00
maxerba 923578705d Updating all po files 2018-04-01 18:51:26 +02: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
Chris Michael cc17ff17e6 conf_randr: Use eina_stringshare_replace
Instead of deleteing a stringshare and re-adding it, just use
eina_stringshare_replace

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2018-03-29 10:56:45 -04:00
Carsten Haitzler 2695843659 e mouse bindings - fix wheel conflict check to check only dir 0
allows ylou to bund extra wheels for desktop switching ... much
better. no conflicts with signals :)
2018-03-28 18:25:47 +09:00
Carsten Haitzler 1738aa6cab e menus - when filtering for exe handle quotes, escapes etc.
handle quotes, escapes and so on for the shell command so you can do
things like Exec="ls" and it still work. this will also allow
executables with spaces in them as well with quotes or escapes as
backslash.

this fixes T6787
@fix
2018-03-27 18:59:33 +09:00
Carsten Haitzler 851acc7ff7 desklock - pass lock state info to e_start to lock on crash restart
is e crashes, catches it and restarts while locked you end up
unlocked. this lets enlightenment_start know this lock down state and
it sets an env var to ensure locking happens on restart after recovery.
2018-03-23 17:18:00 +09:00
Al Poole 6de4f5aa59 AUTHORS: use netstar's real name. 2018-03-22 15:38:43 +00:00
Derek Foreman 687fd79d25 Fix recent typo in mirror object alpha setting
ref 6a04bfb0ff
2018-03-21 15:54:12 -05:00
Derek Foreman bc3f3c16b7 Fix single frame broken render on wayland client opaque region change
Turns out this is called too late in the render pass and a single frame
can occur with the old border setting.  This can lead to nasty flicker
artifacts.
2018-03-21 14:19:39 -05:00
Derek Foreman 6a04bfb0ff Move alpha set for mirrors out of pixels_get callback
the pixels_get callback fires too late for this to work properly, so
set it in e_comp_object_dirty() instead.
2018-03-21 14:17:16 -05:00
Derek Foreman 0907d6c9d0 Remove useless pixels_dirty_set from mirror_pixels_get
This is implicit at the end of render.
2018-03-21 14:14:52 -05:00
Derek Foreman 989497ded1 Revert no-longer required pulseaudio hack for wayland
The problem this solved is now handled elsewhere.

Reverts what's left of commit 6eefae4822
2018-03-20 12:25:50 -05:00
Carsten Haitzler a1994536a4 move from data_home/apps/defaults.list to config_home/mimeapps.list
this moves to the newer mimeapps.list file in ~/.config from the older
defaults.list. it also provides a migration (copy file ovr if target
doesnt exist on e startup).

this fixes T6784

@fix
2018-03-20 20:36:56 +09:00
Carsten Haitzler 55c8ac4625 e desklock pam error - go back to previous text
since we had translations of this, go back to the prior text so we
keep these. also dont show if using a personal password. related to
fixing T6779
2018-03-20 19:31:12 +09:00
Carsten Haitzler 76eeffa2f6 build - make pam a requirement on non-bsd unless disabled
this shou,ld provide a compile failure for when no pam headers are
found and thus pam not enabled if we need pam for auth (i.e. linux).
so it'll be harder to foot-shoot now.also an add-on fix to T6779
2018-03-20 18:53:15 +09:00
Carsten Haitzler a77951f823 desklock - make it fail to lock on non-bsd platforms if no pam support
if no pam support detected at build time, dont even lock to begin
with. this should fix T6779

yes - even better is making pam a requirement for building and to be
optionallhy disabled, but then even if disabled we still need this check.

this has been a long long long standing bug in e. i think this is why
we had some reports of "any password unlocks e" - because it was built
without pam support and before auth was always succeeding without pam.
now it is always FAILING instead (which is probably better).

@fix
2018-03-20 18:42:18 +09:00