Patch by Ingo Feinerer <feinerer@logic.at>:
the compilation of E16 fails on OpenBSD with following error message:
enlightenment-1.0.20/e16-1.0.20/eesh/main.c:90:4: error: use of undeclared identifier 'fd_set'
fd_set fd;
^
enlightenment-1.0.20/e16-1.0.20/eesh/main.c:227:2: warning: implicit declaration of function 'FD_ZERO' is invalid in C99 [-Wimplicit-function-declaration]
FD_ZERO(&fd);
^
This is because FD_SET lives in the sys/select.h header in OpenBSD.
This seems to be the case on newer Linux systems as well:
https://linux.die.net/man/3/fd_set
/* According to POSIX.1-2001 */
#include <sys/select.h>
XGrabKeyboard() may fail if Alert*() is called from a child process
during an activated passive key grab, e.g. due to a keybinding doing
an "exec some-prog", and execl(some-prog) fails.
If XGrabKeyboard() fails the GSOD will not receive key events and only
the pointer can be used to interact with the GSOD.
Therefore we now also grab all possible keys/modifiers which should
normally include the Fn keys we want, and to some degree ensure that
other keyboard input is caught and ignored.
However, it seems that passive key grabs without modifiers may be
activated (queued) and prevent further key events to the GSOD -
presumably not a major problem in practice.
It seems that sometimes there are rendering glitches when having a tiled
backround with 0 offsets and tile size less than screen size.
In this case the desktop pixmap would be smaller than the screen size and
we rely on the repeat picture attribute in the desktop picture to get it
tiled over the entire desktop window when compositing.
However, it seems that sometimes(?) the desktop window is not properly
repainted outside the top left tile.
To fix this we now always use a full-sized background pixmap when
compositing is enabled.
I think this is an X-server bug but I haven't been able to produce a
test case demonstrating the problem.
The leak only happens when a sound file is first loaded so the leakage
will not grow indefinitely.
Also eliminate global sample_stream and sample_length.
- If current opacity property value is 0 meaning default then use
actual current opacity.
- Don't go below 10%
- Going above 100 means use default (value = 0)
Do desk/area change before placing the window.
Otherwise desk/area slides get mixed up with window slide-ins.
Also add some comments about what goes on here.