Go to file
Gregor Best f119a5869f Fix focus tracking on tag viewing
The original reason for this patch was the following:
When focusing a client and hiding that by unviewing all of its tags
and then trying to set the urgent hint on that client got wrongly
ignored.

It also (slightly) changes behaviour when viewing tags: If a new client
is made visible by viewing a tag, and that client comes before the
currently focused one in the focus list, it is focused instead of the
current one.

Signed-off-by: Gregor Best <gbe@ring0.de>
Signed-off-by: Julien Danjou <julien@danjou.info>
2013-05-22 15:02:24 +02:00
build-utils build: use back quote instead of $() 2009-01-16 17:15:10 +01:00
common Draw: fix some Imlib warnings 2013-05-22 15:02:23 +02:00
icons Add icons in dist tarball and in default statusbar 2008-03-25 16:59:51 +01:00
layouts Remove useless include 2008-03-23 15:52:20 +01:00
widgets tasklist: add tags as cache element (FS#227) 2008-07-28 17:18:42 +02:00
.gitignore [doc] Add rcskeleton to gitignore 2008-04-08 09:18:50 +02:00
AUTHORS Enhance AUTHORS file 2008-04-23 10:52:12 +02:00
BUGS BUG's page 2008-04-18 19:33:58 +02:00
LICENSE chance license to GPLv2 2007-09-12 14:29:51 +02:00
Makefile.am [doc] Initial rc skeleton generator 2008-04-08 08:18:19 +02:00
README [doc] Add GTK+ possibility 2008-04-03 09:34:18 +02:00
STYLE Fix STYLE file to reflect current style [CORRECTIVE] 2008-03-24 07:49:33 +01:00
UPGRADE add UPGRADE to dist 2008-02-02 18:13:55 +01:00
autogen.sh Honor GIT_DIR setting when determining version 2008-01-30 09:22:45 +01:00
awesome-client.1.txt [doc] Fix some typos, modify a few descriptions 2008-04-11 07:34:45 +02:00
awesome-client.c [awesome-client] Add some more code documentation 2008-03-31 14:18:27 +02:00
awesome-menu.1.txt [doc] Fix some typos, modify a few descriptions 2008-04-11 07:34:45 +02:00
awesome-menu.c awesome-menu: make autocomplete behaviour configurable (FS#336) 2008-10-03 08:59:46 +02:00
awesome-message.1.txt [doc] Fix some typos, modify a few descriptions 2008-04-11 07:34:45 +02:00
awesome-message.c Do not start to OpenDisplay before reading command line options 2008-03-25 16:56:47 +01:00
awesome.1.txt [doc] Fix some typos, modify a few descriptions 2008-04-11 07:34:45 +02:00
awesome.c awesome: define SUN_LEN if not already defined 2009-01-16 15:36:09 +01:00
awesome.doxygen.in [doc] Generate doc for widgets/layouts/common 2008-05-02 10:55:46 +02:00
awesome.h simplify unmanage code 2008-01-06 21:57:53 +01:00
awesomerc.5.txt [doc] Fix some typos, modify a few descriptions 2008-04-11 07:34:45 +02:00
awesomerc.in Revert "awesomerc: fix xterm -e in case of others terms" 2008-08-02 18:32:19 +02:00
client.c Fix a small compiler warning 2013-05-22 15:02:23 +02:00
client.h Add client_seturgent and a bit more ICCCM compatibility 2013-05-22 15:02:22 +02:00
config.c [config] Add support for mouse button 8 and 9 2008-05-28 07:30:30 +02:00
config.h Remove useless ; after DO_SLIST macro 2008-03-23 15:52:17 +01:00
configure.ac build: check for connect in socket lib 2009-01-16 17:14:37 +01:00
event.c [event] Fix handling of keysym/keycode in event_handle_keypress. 2008-05-02 14:23:58 +02:00
event.h [events] Stop handling LeaveNotify events 2008-04-03 13:17:33 +02:00
ewmh.c Fixed bug #232 - give floating dialogs of maximised windows focus 2008-07-23 09:04:27 +02:00
ewmh.h rework include 2008-01-29 11:27:14 +01:00
focus.c [doc] Fix some typos, modify a few descriptions 2008-04-11 07:34:45 +02:00
focus.h Remove useless ; after DO_SLIST macro 2008-03-23 15:52:17 +01:00
layout.c [focus] Backport `Rewrite focus handling on arrange' from awesome-3 2008-05-25 11:26:51 +02:00
layout.h Update various copyrights 2008-03-23 15:52:19 +01:00
mouse.c mouse: fix client snapping 2008-08-18 11:06:17 +02:00
mouse.h Update various copyrights 2008-03-23 15:52:19 +01:00
placement.c [placement] Smart pl. only use visible floating windows 2008-04-03 09:04:57 +02:00
placement.h add under_mouse placement aglo 2008-02-13 18:14:34 +01:00
rules.c Add missing includes 2008-03-23 15:52:20 +01:00
rules.h Update various copyrights 2008-03-23 15:52:19 +01:00
screen.c [doc] Add a bunch of documentation 2008-04-08 09:45:48 +02:00
screen.h Store physical screen id in statusbar and client, change get_phys_s() to screen_virttophys() 2008-03-23 15:52:22 +01:00
statusbar.c [doc] Fix some typos, modify a few descriptions 2008-04-11 07:34:45 +02:00
statusbar.h [widgets] Use statusbar name in widget_tell (FS#144) 2008-04-03 14:00:46 +02:00
structs.h [config] Store keysym or keycode (FS#64) 2008-05-02 11:12:53 +02:00
tag.c Fix focus tracking on tag viewing 2013-05-22 15:02:24 +02:00
tag.h Clean EWMH desktop calls 2008-03-23 15:52:22 +01:00
titlebar.c titlebar: unmap when going to Off position (FS#156) 2009-04-01 16:53:27 +02:00
titlebar.h [titlebar] Add proper interface to set titlebar position 2008-04-24 22:58:25 +02:00
uicb.c uicb: check before overwriting DISPLAY (FS#318) 2009-03-15 09:50:56 +01:00
uicb.h Add uicb_restart to restart awesome with the real command line 2008-03-23 15:52:22 +01:00
widget.c [widgets] allow NULL for 'command' (FS#175) 2008-04-23 08:49:31 +02:00
widget.h [widgets] New emptybox widget 2008-03-31 10:15:38 +02:00
window.c [config] Store keysym or keycode (FS#64) 2008-05-02 11:12:53 +02:00
window.h Normalize some window functions protos 2008-03-23 15:52:22 +01:00

README

awesome
=======
awesome is an extremely fast, small, and dynamic window manager for X.

Requirements
------------
In order to build awesome itself, you need header files and libs of:
  - Xlib, Xinerama, Xrandr
  - libconfuse >= 2.6
  - cairo
  - pango and pangocairo
  - Imlib2
    or
  - GTK+ (use --with-gtk with ./configure)

In order to build the awesome man pages, you need these tools:
  - asciidoc (recent version)
  - xmlto (recent version)
  - docbook XSL stylesheets

In order to build the source code reference, you need these tools:
  - doxygen
  - graphviz

Building and Installation
-------------------------
If building from git sources, run "./autogen.sh". When autoreconf has
finished, you can follow the following instructions for building a dist
tarball.

After extracting the dist tarball, run "./configure --help" and figure out
what you might want to adapt for your system. Then run ./configure with the
proper parameters, and build and install:

  ./configure [...]
  make
  make install # might need root permissions

If you're using gcc as your compiler and do not want awesome's default set
of warning flags, add AWESOME_CFLAGS="" to your "make" lines.

The source code reference can be built with "make doc".

Running awesome
-----------
Add the following line to your .xinitrc to start awesome using startx
or to .xsession to start awesome using gdm/kdm/xdm...:

    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 ~/.awesomerc file.
An example is provided in the sources.