Julien Danjou
f467fed598
use LayoutArrange and Uicb type into config.h ; move some functions from layout.c to client.c
2008-01-01 17:37:16 +01:00
Julien Danjou
f7f6951957
allow to have several statusbar
2007-12-30 21:00:34 +01:00
Julien Danjou
1021f86e24
rework draw stuff
...
- remove display from DrawCtx
- add Drawable in statusbar
2007-12-30 12:26:11 +01:00
Robert Millar
eb65306127
Custom netwm icons, scaling icons!
...
I hacked together support for custom netwm icons set in the rules
section of .awesomerc, and for iconboxes and netwm icons to be scaled
to fit into the statusbar. It could probably be done a bit more
cleanly than I've done it, though :)
Rob
2007-12-29 21:30:37 +01:00
Julien Danjou
360d9023a4
allow textbox widgets to have their own font
2007-12-29 16:04:06 +01:00
Julien Danjou
e0c1472249
windows that start in Withdrawstate are skipped in focus list
2007-12-28 13:43:47 +01:00
Julien Danjou
14909f47a9
move tclink in awesomeconf
2007-12-28 11:34:35 +01:00
Julien Danjou
f93a441da7
remove Display from Client struct
2007-12-27 23:10:43 +01:00
Julien Danjou
6b448c1aeb
cosmetic
2007-12-27 17:13:44 +01:00
Julien Danjou
c900e37843
add mouse bindings to status bar
2007-12-27 15:49:00 +01:00
Julien Danjou
33add50256
store location and width of each widgets
2007-12-27 11:35:45 +01:00
Julien Danjou
91cc5a4618
use image instead of symbols for layouts
2007-12-27 00:13:44 +01:00
Julien Danjou
d5d9439777
add support for Urgency hint
2007-12-23 15:16:10 +01:00
Julien Danjou
a981d984a2
remove ScreenInfo typedef and move Area into screen.h
2007-12-23 09:55:46 +01:00
Aldo Cortesi
5f079ef73e
Clean get_screen_info and get_display_info.
...
Besides making these functions much nicer to use, this fixes a number of
things:
- Clients now don't have to free the returned structures.
- The ScreenInfo allocated by XineramaQueryScreens should be freed with XFree,
not p_delete.
This patch also introduces an abstract Area type that will be very useful.
2007-12-23 09:53:50 +01:00
Aldo Cortesi
7190e4fa48
Change awesome_config -> AwesomeConf.
...
All other struct definitions in the project follow this naming convention.
2007-12-19 10:43:02 +01:00
Aldo Cortesi
ce556ec743
The preferred line length is 80 characters.
2007-12-18 11:27:26 +01:00
Aldo Cortesi
205f2c55ca
Make "Statusbar statusbar" the in VirtScreen "Statusbar *statusbar". This is
...
more consistent with the rest of the interface, and will make our life easier
when we have mulitiple statusbars per screen.
2007-12-18 11:26:18 +01:00
Aldo Cortesi
4723ab3627
This patch is a first draft of independently targetable textboxes, and a
...
protocol to speak to them. Given a textbox widget definition like this:
textbox mail {
default = 0
}
textbox time {}
We can update the boxes individually by going:
echo 0 tell_widget mail 10
echo 0 tell_widget time 12:01
Text boxes will dynamically resize to fit their contents. A textbox can be
cleared by going:
echo 0 tell_widget name
A text-box containing no text will take up 0 space in the bar, i.e. it will not
be visible at all
Textboxes now supersede statusbar_set_text, so this call has been removed.
2007-12-17 18:22:05 +01:00
Julien Danjou
f0f522bd47
move things around
...
- rename parse_config to config_parse
- move KeyModList and ButtonList in their own functions
- move LayoutsList in layout.c
- move static fcts around in config.c
2007-12-16 13:24:12 +01:00
Aldo Cortesi
8880a3804e
Simplify widget draw interface.
2007-12-16 12:54:42 +01:00
Aldo Cortesi
2f74c079aa
Massive, massive interface refactoring.
...
The big change here is that we now keep our configuration structure in a global
variable called globalconf. This radically simplifies many interfaces, since
passing awesomeconf everywhere is no longer necessary. There are also more
subtle interface effects - now we can reliably identify a screen from just a
screen ID, rather than an awesomeconf, screenid tuple.
Overall, this patch makes most of the interfaces in awesome much nicer to use -
enjoy!
Yes, this is a huge patch, but since a lot of the refactoring was done
systematically using vim macros, splitting this up would have been very hard.
2007-12-16 12:12:48 +01:00
Aldo Cortesi
ec80635cbc
Fix compilation warning related to parsing of statusbar widgets config.
...
Also make the code surrounding this problem more legible, and remove
Widget_ptr, which just confuses the issue.
2007-12-16 12:00:00 +01:00
Julien Danjou
602f921559
first try to get widget configurable
2007-12-15 18:21:02 +01:00
Aldo Cortesi
76ddf235ac
Widget-ise the statusbar.
...
We now have the beginnings of a flexible widget structure for the statusbar.
For now, there is no behavioural change, and the interface is a bit crude, but
watch this space!
2007-12-15 10:15:42 +01:00
Aldo Cortesi
a6bb5abfef
Remove stubs for reloadconfig.
...
- reloadconfig never worked properly. There were a number of circumstances
under which it would crash awesome.
- reloadconfig always leaked memory, because our cleanup process was never
perfect. Making it perfect would be Hard.
- Just exec-ing awesome over the top of itself is an OK solution. Maybe we
should add a uicb_restart to do this so users don't have to think about
uicb_exec.
2007-12-15 09:46:28 +01:00
Julien Danjou
df2a8e1b1d
add a focus history
2007-12-14 21:51:54 +01:00
Julien Danjou
bb1381abc2
make tags a linked list instead of array
2007-12-14 19:05:30 +01:00
Julien Danjou
b03cdbd877
remove nlayouts
2007-12-14 17:57:05 +01:00
Julien Danjou
078d224b46
use a linked list for handling tag <-> client relationship
2007-12-14 14:29:32 +01:00
Julien Danjou
425f89bada
remove dual-config: awesomerc is now preprocessed and compiled in awesome
2007-12-13 11:16:43 +01:00
Julien Danjou
5fa67c23df
split awesomeconf and screen config
...
a.k.a the big post-2.0 blind commit
2007-12-11 20:56:51 +01:00
Julien Danjou
5e5d711b09
fix comment in config.h
2007-12-10 13:43:28 +01:00
Julien Danjou
8dadb8b5df
switch urxvt to xterm
2007-12-10 12:31:00 +01:00
Julien Danjou
49d904b024
remove useless config comment
2007-12-10 11:55:00 +01:00
Julien Danjou
e70dad3f02
add a default configuration when running awesome without configuration file
2007-12-10 11:54:00 +01:00
Nathan Hüsken
9524f15478
Adding padding
2007-11-28 11:00:48 +01:00
Julien Danjou
e43df90214
remove mouse modkey
2007-11-14 19:50:30 +01:00
Julien Danjou
7a919a76fb
mouse button clicks on windows are now configurable
2007-11-14 17:18:16 +01:00
Julien Danjou
9f21fb3c9e
rules are now stored in a linked list
2007-11-12 19:25:10 +01:00
Julien Danjou
f70424487e
screen can now be specified in rules
2007-11-12 18:21:03 +01:00
Julien Danjou
0c5c5ce426
remove nkeys: keys is now a linked list
2007-11-12 17:22:40 +01:00
Julien Danjou
ef7034b0b8
use linked list instead of tabs for mouse bindings
2007-11-12 13:21:28 +01:00
Julien Danjou
05e102a49a
mouse clicks on root window are now configurable
2007-11-12 10:55:21 +01:00
Julien Danjou
0753ed5fb5
statusbar drawable is no more stored but dynamicaly created; this fix a problem with statusbar on right
2007-11-11 22:27:00 +01:00
Julien Danjou
05dad60786
experimental support for status bar to be on right or left
2007-11-11 18:59:11 +01:00
Julien Danjou
0bee56e27d
mouse buttons are now configurable for click on layout symbols
2007-11-11 16:01:49 +01:00
Julien Danjou
99370f0ccd
mouse buttons are now configurable for click on title bar
2007-11-11 15:55:13 +01:00
Julien Danjou
a75c7f694a
mouse buttons are now configurable for click on tag names
2007-11-11 15:40:01 +01:00
Julien Danjou
ceb6cc797a
ncol is now configurable per tag
2007-11-11 11:55:20 +01:00
Julien Danjou
59f377526f
nmaster is now configurable per tag
2007-11-11 11:53:10 +01:00
Julien Danjou
32b098796e
mwfact is now configurable per tag
2007-11-11 11:48:26 +01:00
Julien Danjou
1004cefa2f
Remove current tab support
...
We will add a real new one later.
2007-11-10 10:45:32 +01:00
Julien Danjou
602d92d8b2
move statusbar_default_position in Statusbar struct
2007-11-10 10:17:54 +01:00
Nikos Ntarmos
983d2d72a6
implement uicb_reloadconfig
2007-10-31 11:37:38 +01:00
Nikos Ntarmos
bf90028edb
modify parse_config() to not take display and screen as arg
2007-10-30 14:57:00 +01:00
Julien Danjou
001f430c0c
remove global client_sel, use tag's client_sel
2007-10-26 23:19:13 +02:00
Julien Danjou
9d507dc50c
rewrite get_current_tag_number() in get_current_tag()
2007-10-26 22:15:26 +02:00
Nikos Ntarmos
4db1146f6c
Remember the focused window on tag changes
...
a. Adds a get_current_tag_number function to allow for above updates
and teaches get_current_layout(...) and arrange(...) to use it.
b. Adds an extra client_sel entry in struct Tag, updated on
focus(...), manage(...), and unmanage(...), and used in arrange(...).
2007-10-25 20:20:13 +02:00
Julien Danjou
47b3ea3356
cleanup header files
...
remove old dwm comments
2007-10-23 16:37:36 +02:00
Julien Danjou
e47e1a4a23
remove unmapped attribute
...
this fix a bug when fast-switching between tags and dropping
some windows management as we should not.
Use window_getstate() (moved from awesome.c's getstate()) instead.
2007-10-23 16:32:55 +02:00
Julien Danjou
71b7860ba3
cosmetic and documente Bool-s attribute in Client
2007-10-22 11:21:27 +02:00
Julien Danjou
03681846fa
remove useless isbanned attribute on Client
2007-10-19 15:42:48 +02:00
Julien Danjou
7a921fbc5e
remove ftview attribute
2007-10-19 15:41:20 +02:00
Julien Danjou
842eed01c0
remove current_layout, insert get_current_layout() to get it dynamicly
2007-10-16 22:33:15 +02:00
Julien Danjou
14ea2dc0ae
minimal tab support
2007-10-15 16:28:36 +02:00
Julien Danjou
a74ca1d1de
tabswidth is 4 not 6
2007-10-15 13:56:24 +02:00
Julien Danjou
4e0acfa99a
add coding style stuff
2007-10-15 13:40:52 +02:00
Julien Danjou
4a7acf821e
remove Regs struct, use Rules
2007-10-15 12:40:45 +02:00
Nikos Ntarmos
23bbe21428
float lowering
2007-10-12 17:15:08 +02:00
Julien Danjou
daee37199b
move #define of config file name in config.c
2007-10-12 13:09:59 +02:00
Julien Danjou
b89779677e
remove snext from Client struct
2007-10-12 11:43:07 +02:00
Julien Danjou
17cf2c230d
remove display as arg of layouts
2007-10-11 23:35:45 +02:00
Julien Danjou
c4e130d7d9
remove Display as param for uicb
2007-10-11 23:32:29 +02:00
Julien Danjou
c3986a5937
sel is no more extern
2007-10-11 23:12:05 +02:00
Julien Danjou
12ef66b79a
clients list is no more global
2007-10-11 21:50:32 +02:00
Julien Danjou
445479cf8b
use Cairo for rendering square instead of Xlib
2007-10-10 19:59:14 +02:00
Julien Danjou
e733af41ec
remove drawcontext everywhere
2007-10-10 14:09:36 +02:00
Julien Danjou
f57d275df1
move font to awesomeconf
2007-10-10 13:34:25 +02:00
Julien Danjou
2d0526696c
move cursors in awesome config
2007-10-10 13:29:46 +02:00
Julien Danjou
1a755ff245
simplify color handling
2007-10-10 13:07:12 +02:00
Julien Danjou
0f75c91fe7
remove x and y attributes from DC
2007-10-09 22:35:44 +02:00
Julien Danjou
355d3aad5f
remove drawcontext `w' attribute
2007-10-09 22:33:00 +02:00
Julien Danjou
c4b1867a4d
remove h attribute of drawcontext
2007-10-09 22:29:44 +02:00
Julien Danjou
de45017b5d
switch to libconfuse instead of libconfig
2007-10-08 18:45:05 +02:00
Julien Danjou
3046af6f54
new feature: add option to center pointer on focused client
2007-10-08 14:26:43 +02:00
Julien Danjou
97a2085705
cosmetic: remove lines with empty spaces at end
2007-10-03 17:26:14 +02:00
Julien Danjou
272f4b1c2a
Xft support
2007-10-01 19:22:57 +02:00
Julien Danjou
9c747d1986
store display in awesomeconf
2007-10-01 15:31:43 +02:00
Julien Danjou
8c531e2a81
store phys_screen
2007-10-01 15:23:05 +02:00
Julien Danjou
9dad2fd85c
add -c option to specify configuration file
2007-09-26 21:22:30 +02:00
Julien Danjou
595eba78d7
create a Tag struct type and use it
2007-09-24 15:37:52 +02:00
Julien Danjou
d967edfec9
remove screen from layouts arrange() arg
2007-09-18 19:53:52 +02:00
Julien Danjou
dcec6aa749
remove screen arg from uicb*
2007-09-18 19:53:52 +02:00
Julien Danjou
c3bb58f47a
stop making awesomelibconf global and store screen number in awesome_configs
...
we strdup elems and p_delete them in cleanup
2007-09-16 23:13:34 +02:00
Julien Danjou
58abf74d43
spawn X client in the right head and add screen arg to layouts
2007-09-16 01:36:26 +02:00
Julien Danjou
933b0413ea
add screen arg to uicb*
2007-09-16 01:05:43 +02:00
Julien Danjou
e4e8a2966f
get_display_info take screen and screen is stored in statusbar struct
2007-09-15 23:04:04 +02:00
Julien Danjou
6a11f10764
move drawable to statusbar struct
2007-09-15 14:58:41 +02:00
Julien Danjou
bc3f70e0fa
add uicb_setncols(), clean config, really use config in tile.c
2007-09-15 13:04:36 +02:00