70fef83e50
The code in drawin_moveresize() tries to be clever and only updates the drawing state of the drawable when it is resized, not when it is moved around. This used to be necessary because once upon a time, drawin_update_drawing() threw away all of the drawing state and thus forcing a repaint. These days it just calls drawable_set_geometry() as well and that function special-cases moves. So this old code in drawin_moveresize() is no longer necessary and actually caused problems. These problems occurred because drawin_update_drawing() is being clever and doesn't do anything for .visible = false drawins, because their drawing state will be updated once they become visible. However, not skipping drawable_set_geometry() means that this broke, because drawin_map() thought that the drawing state was up to date while in reality it wasn't. References: http://article.gmane.org/gmane.comp.window-managers.awesome/10852 Signed-off-by: Uli Schlachter <psychon@znc.in> |
||
---|---|---|
build-tests | ||
build-utils | ||
common | ||
icons | ||
lib | ||
luadoc | ||
manpages | ||
objects | ||
spec | ||
themes | ||
utils | ||
.gitignore | ||
AUTHORS | ||
BUGS | ||
CMakeLists.txt | ||
LICENSE | ||
Makefile | ||
PATCHES | ||
README.md | ||
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 | ||
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.md
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.
Reporting issues
Please report any issues you may find at https://awesome.naquadah.org/bugs/ . You can submit pull requests at https://github.com/awesomeWM/awesome .