we were losing refs to buffers when clients quit and surface were
deleted thus causing junk and errors in binding these now deleted
buffers as fds now were invalid. keep them around longer until hide
anim is done. this is callback-hell...
@fix
this can serve as a market - irrespective of icccm state that the
window is not visible. still - some apps like chrome/chromium. set
this so they are happier but this has side-ffects which are
client-local problems.
fixes T8923 ... i hope (seems to). ... but with side effects
@fix
meson didnt look for environ thus it was never found and defined. this
is a fallback for having no clearenv() so essentially no os work
talking about is in this situation anymore.
so - it seems on some hardware and./or os combinations the list of bt
adapters is empty from bluez5 entirely if the adapter is rfkilled off.
this means e doesnt see it at all - has no idea it's there. bz doesnt
expose it. without that we can't turn it on even. so - if our bt
adapter list is empty, then assume this is an error and manually list
rfkillable devines and forcibly unblock them ot make them appear in
bulez5... not so much a bug fix as a system brokenness workaround with
bz5 just ignoring rfkill bnlocked devices and not even telling us
about them.
@fix
With this:
- Support for gestures in X *and* wayland. Wayland does not require the
libinput group hack
- Hotplugging support thanks to udev support
This requires a new rebuild of efl.
it's generic infra where you can get a general waveform (44.1khz
stereo floats per strea) for playback (sink inputs), output (sinks)
and inputs (sources). the emix gui will put a vu meter (actually it's
not a vbu meter - it's a peak sample measure over any frame period)
with a progress bar there. very useful now.
@feat
this will allow us to have specific icon for different sinks - eg a
screeen for hdmi sinks etc. - need to build a "database" in
sink-icons.txt over time. format is:
glob|icons-name
glob2|icon-name2
...
where glob/glob2 are file globs to match the strng of a sink name and
icon-name/icon-name2 are the naime of the icon in the elm icon theme
for xdg/fdo standard icons or extended icon names we added in the elm
theme. add more lines as needed. first match "wins" so put most
specific matches at the front and least specific at the end.
we didnt properly do formats/modifiers. this meant that qwhen
something like the rpi4 started using interesting ones we ended up
with garbage pixels. this fixes that - uses new evas gl feature so
will need efl git master and eventiually efl 1.26 (already do anyway)
@fix
mixer popup SAVED the def mixer but never SET it... and this led to a
bunch of issues when getting gixed. now its saved and set. NOW the
mixer popup has a quick way to select the output sink (device). handy
if uyou use usb audio for heapdhones but on board audio for speakers
for example (or hdmi audio or something).
@fix
Setting the MOUSE_DOWN callback before
edje_object_signal_message_process improves the reliabilty of the
event. I don't understand why that could be interfering but this
is more-or-less a cosmetic change.
Summary:
Same is already done for sinks.
emixer: Add support to set default sink
emixer: Add support to set default source
emixer: gadget: Update UI to follow pulseaudio default sink changes
Reviewers: devilhorns
Subscribers: abrouwers, netstar, cedric, zmike
Tags: #enlightenment-git
Differential Revision: https://phab.enlightenment.org/D12247
This never worked properly, is unsupported by upstream wayland, and
just general clutter so let's remove it. There are no plans to support
this and is just extra overhead...
do big ops like big copies of 3 or 5gb files over to an nfs mount or a
slow thumbdrive... the os can happily store it all in RAM. but then
any stats on that file still being flushed stall - definitely on nfs.
this leads to much badness. so sync ever 0.2 sec OR every 512k worth
of writes to stay interactive. it's a big worse for perf and maybe a
bit worse on wear but it's far more usable.
@opt
so simple version: if firefox does CSD then when u press its minimize
(iconify) button it ASSUMES it will be iconified. it ASSUMES WM_STATE
will transition to iconic annd then back. it will cease rendering lots
of things when it thinks it is iconified when it isn't - e was
refusing because e wants windows tyo stay with live content so in ibar
and winlist and so on they keep showing updates). this assumption that
a wm will always iconify you when asked is wrong. a wm can refuse. so
basically firefox is brokne in its assumptions and logic. so work
around it but this leads to other fun things like clients stopping
rendering when iconified... as they now are told theya have been
iconified.
We can hide the e client frame during a uniconify if the user is
trigger happy (like me). It would be better if the effect could
be reversed during the iconify event.
This commit fixes an issue where e_entry_dialog would have a giant
entry widget and looked incredibly stupid.
This commit also fixes another issue where it was possible to close the
dialog behind the entry (ie: parent dialog) and the entry dialog would remain
open (eg: Add a shelf, the Shelf Name dialog shows up, and it was possible to
close the Shelf Settings dialog behind it)
By default, desktops should (realistically) be assigned some form of
name so that they are not blank. This Fixes the issue of no Desktop
labels in the Virtual Desktop menu, and also fixes the issue mentioned
in the below ticket where "Show on Specific Desktop" dialog would not
show any type of description for the desktops when trying to place a
shelf.
NB: Uses the format of Desktop X,Y (ie: Desktop 0,1)
Fixes T8838
@fix
when u switch songs with popup the album art flickered on/off a few
times because mnpris props updated multilpe times. this ignores new
art url changes if they are the same file/url to avoid flickers.
now music-control can automatically find any mpris provider if its in
a glob domain like org.mpris.MediaPlayer2.* or web browsers like
org.mpris.MediaPlayer2.chromium.* and org.mpris.MediaPlayer2.firefox.*
... as well as the explicit list it has still. if it doesnt have a
provider it polls every 5 sec to look for one.
Summary: On high resolution displays, "everything" was too small. so increase the values to make it bigger if needed
Reviewers: devilhorns, raster
Reviewed By: raster
Subscribers: cedric, zmike
Tags: #e_modules
Differential Revision: https://phab.enlightenment.org/D12193
As this was reported with no reproduction method - like a "one off" I
can't be sure this is it and fixes it, but looking for agent->msg and
it becoming a wild crazy pointer. So either it was left there from
long ago and has since been forgotten bhy asan and is thus wild, or ..
memory was scribbled over with junk. in the latter case... who knows.
in the former, this may fix that.
@fix
on other screens the menus were ... wrong - coords were not right
(previous commit)b ut then scroll-to-fix also moved them badly. this
is now fixed too.
@fix
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.
initial "how do i size and lay this out" is a fuzzy algo that tries to
stuff all the windows into a single screen with several rows of
windows (in large mode). it has to trade off sizing for a squarish
layout with mu;ltiple rows so does some passes and tries and bisecting
etc. - the problem is each stage goes and does a lot of object changes
re-laying them out and querying them. this is expensive. this does a
row length calc on its own without the objects to save a whole lot of
overhead.
in theory i could actually skip almost all the object stuf and make
more assumptions and reduce the object fiddliong to just an initial
"how much fluff around a window item in the list and how much fluff
around the winlist (like padding/title and so on) and then just do
some raw math (and even flatten into arrays for cache friendliness).
but it's fast enough right now without a lot of changes. can always
revisit this in future.
otherwise we just get warnings all day. this is a bug and efl
plastered over it and didnt die by being nice - but we shiouldnt keep
the bad code...
@fix
this mens fwin's key handling should always be called after efm's own
internal handling and dispatching. also the final deletion will also
now be deferred in a job to "after all of this".
fix segv on ctrl+w
if the list of device names is the same with a devices update event
then assume its the same as before and dont go probing all their
properties which takes time and round-trips which is not good.
1. use max valu in the get and store it once a get has been done so it
will get backlight level right on unsuaul monitors that do not use
0->100
2. detect as an error dinfing 2 screesn with the same edid and log it
3. use ddca_enable_sleep_suppression() to try speed up things a bit to
sleep less inside ddcutil
found hot spot was not being tracked right as callbacks for obj moves
arent in sync with getting part geom - so get geom of the swallowed
obj itself. then hot geom is right and the hot limitign ensures a bad
theme design with out of bound hot geom wont lead to bland cursors
@fix
this uses new efl functions so ... you need a git efl now (and
eventually 1.26). this sets Xft.dpi to match the xsettings dpi etc.
etc. ... so it all matches up.
if e' x applications setitnghs (xsettingvs) is off - then just
calculate an xsettings dpi val from core scale. also use randr info
for dpi if possible instead of "core x" and "core wl". wprkds around
broken core dpi in x.
check if ecore_x_window_prop_window_get == 1 to know if its managed...
and u have to check the window it points to and check it has a
property on it too that has itself as the win id...
@fix
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
was using this to see if these is lagf between wakeup form suspend and
fading the screen in - i see no lag. keep debug here for others to see
and reports what they say
we call ping_schedule anyway. we want this as timeout may vary.. then
dont return true to repeat the timer we have... saves having loooots
of timers going off.
@fix
the systray gadget code didnt deal with this case of menu up but item
vanishes. quite bad. now the menu is freed and hiddtne/popped down
when the item is removed.
fixes T8842
@fix
dell handler inside handler func then add a new one ofr the same thing
that does the same thing... infinite loop. only run hanlders after the
loop of hanlders is handled by flagging as just_added and skip those
(removing that flag after handlers list pass).
@fix