Private fork of https://github.com/awesomeWM/awesome
389a54e356
The code in property_update_wm_transient_for() looked at the transient_for relation before the new transient got set. However, the code is supposed to check if we get a loop after introducing this new transient_for. Thus, if we arrive back at the client that we started from, we can be sure that there is a cycle. Signal this by setting the loop counter high enough to abort the loop and make the rest of this function do nothing. No idea how I missed this case before nor why I cannot reproduce this on debian, but can reproduce it on Arch just fine. Reported-By: Kasimir Knallkopf at http://article.gmane.org/gmane.comp.window-managers.awesome/10415 Signed-off-by: Uli Schlachter <psychon@znc.in> |
||
---|---|---|
build-tests | ||
build-utils | ||
common | ||
icons | ||
lib | ||
luadoc | ||
manpages | ||
objects | ||
themes | ||
utils | ||
.gitignore | ||
AUTHORS | ||
BUGS | ||
CMakeLists.txt | ||
LICENSE | ||
Makefile | ||
PATCHES | ||
README | ||
STYLE | ||
awesome-version-internal.h.in | ||
awesome.c | ||
awesome.desktop | ||
awesome.doxygen.in | ||
awesome.h | ||
awesomeConfig.cmake | ||
awesomerc.lua.in | ||
banning.c | ||
banning.h | ||
color.c | ||
color.h | ||
config.h.in | ||
config.ld.in | ||
dbus.c | ||
dbus.h | ||
draw.c | ||
draw.h | ||
event.c | ||
event.h | ||
ewmh.c | ||
ewmh.h | ||
globalconf.h | ||
keygrabber.c | ||
keygrabber.h | ||
keyresolv.c | ||
keyresolv.h | ||
luaa.c | ||
luaa.h | ||
mouse.c | ||
mouse.h | ||
mousegrabber.c | ||
mousegrabber.h | ||
property.c | ||
property.h | ||
root.c | ||
screen.c | ||
screen.h | ||
selection.c | ||
selection.h | ||
spawn.c | ||
spawn.h | ||
stack.c | ||
stack.h | ||
strut.c | ||
strut.h | ||
systray.c | ||
systray.h | ||
xwindow.c | ||
xwindow.h |
README
awesome ======= awesome is a highly configurable, next generation framework window manager for X. Building and installation ------------------------- After extracting the dist tarball, run: make This will create a build directory, run cmake in it and build awesome. After building is finished, you can install: make install # you might need root permissions Running awesome --------------- You can directly select awesome from your display manager. If not, you can add the following line to your .xinitrc to start awesome using startx or to .xsession to start awesome using your display manager: exec awesome In order to connect awesome to a specific display, make sure that the DISPLAY environment variable is set correctly, e.g.: DISPLAY=foo.bar:1 exec awesome (This will start awesome on display :1 of the host foo.bar.) Configuration ------------- The configuration of awesome is done by creating a $XDG_CONFIG_HOME/awesome/rc.lua file. An example configuration named "awesomerc.lua.in" is provided in the source. Troubleshooting --------------- In most systems any message printed by awesome (including warnings and errors) are written to $HOME/.xsession-errors. If awesome does not start or the configuration file is not producing the desired results the user should examine this file to gain insight into the problem.