Commit graph

269 commits

Author SHA1 Message Date
Julien Danjou
5770b56af0 allow negativ coords 2008-01-05 13:01:40 +01:00
Nikos Ntarmos
3bd36a4749 use default config file on parsing errors 2008-01-05 09:24:43 +01:00
Julien Danjou
a4c09d142c add support for x,y coords supplying in widgets 2008-01-04 22:05:52 +01:00
Julien Danjou
1d08ed45a8 add new_become_master option to disable new client becoming automaticaly master 2008-01-04 17:53:28 +01:00
Julien Danjou
d25d5b921f add sloppy_focus option to allow click-to-focus 2008-01-04 14:40:26 +01:00
Julien Danjou
a69b5dfc40 add option to show appicons in tasklist 2008-01-03 19:21:36 +01:00
Julien Danjou
817aab0450 cosmetic 2008-01-03 17:09:45 +01:00
Julien Danjou
a06d739dfb add align option to tasklist 2008-01-03 16:05:39 +01:00
Julien Danjou
7c716e0ec0 add align option to focustitle 2008-01-03 16:04:16 +01:00
Julien Danjou
ec53f3d070 add align option to textbox 2008-01-03 16:02:41 +01:00
Julien Danjou
c4e88f9928 add new tasklist widget 2008-01-03 12:39:28 +01:00
Julien Danjou
9fc22e9e4e remove some get_phys_screen() calls 2008-01-02 17:41:03 +01:00
Julien Danjou
437bc5c22c add 2008 copyright notice 2008-01-02 16:59:43 +01:00
Julien Danjou
1b48166ad5 add resize option to iconbox 2008-01-02 14:59:15 +01:00
Julien Danjou
aff5e13590 use NULL value by default 2008-01-02 14:39:14 +01:00
Julien Danjou
d402ae8f69 optimize rule usage 2008-01-02 12:44:18 +01:00
Julien Danjou
346a383258 implement xproperty rule matching (FS#5) 2008-01-02 12:23:01 +01:00
Julien Danjou
0cf4ff6d9f implement not_master rules option (FS#6) 2008-01-02 12:00:36 +01:00
Julien Danjou
4f65aa8f51 rework headers inclusion 2008-01-01 18:02:36 +01:00
Julien Danjou
bb06e80199 simplify some stuff, cosmetic 2008-01-01 16:29:58 +01:00
marco candrian
0945e3ad34 additonal settings for the progressbar 2008-01-01 16:29:53 +01:00
Julien Danjou
f7f6951957 allow to have several statusbar 2007-12-30 21:00:34 +01:00
Julien Danjou
64e44421dd allow to set statusbar width 2007-12-30 18:55:46 +01:00
Julien Danjou
643407b5ea allow to set the statusbar height 2007-12-30 18:54:17 +01:00
Julien Danjou
427858460f add CFGF_NO_TITLE_DUPES to screen and tag sections 2007-12-30 18:38:05 +01:00
Julien Danjou
5599027361 add CFGF_NO_TITLE_DUPES flag to widgets sections 2007-12-30 18:36:18 +01:00
Julien Danjou
75c7d04adf allow textbox to have special width 2007-12-30 14:49:03 +01:00
Julien Danjou
814b66fddb remove useless checks 2007-12-29 21:37:12 +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
bf5d5fa17e add support for fg/bg colors and dedicated font for focustitle widget 2007-12-29 19:39:46 +01:00
Julien Danjou
360d9023a4 allow textbox widgets to have their own font 2007-12-29 16:04:06 +01:00
Julien Danjou
f9aff4ef40 don't die for parsing errors, set up a minimal conf 2007-12-27 23:28:33 +01:00
Julien Danjou
a22a308e60 split screen section parsing in another static fct 2007-12-27 23:18:50 +01:00
Julien Danjou
a1f5e2ee22 add support for _NET_DESKTOP_NAMES 2007-12-27 19:11:18 +01:00
Julien Danjou
3de4814910 add support for _NET_CURRENT_DESKTOP 2007-12-27 18:42:20 +01:00
Julien Danjou
502f502e23 add support for _NET_NUMBER_OF_DESKTOPS 2007-12-27 18:26:50 +01:00
Julien Danjou
c900e37843 add mouse bindings to status bar 2007-12-27 15:49:00 +01:00
Julien Danjou
382c5ceb5e missing CFG_END 2007-12-27 14:10:16 +01:00
Julien Danjou
7be6a97972 change "default" in textbox to "text" and set it to a good default 2007-12-27 00:16:29 +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
ddbdbb2ed3 new width: progressbar 2007-12-23 14:27:56 +01:00
Julien Danjou
8c898256b1 new widget: add support for netwmicon 2007-12-22 19:32:47 +01:00
Julien Danjou
1bc6d1dc2f cosmetic 2007-12-22 16:25:22 +01:00
Julien Danjou
3f3748d4bd new widget to draw icons from PNG image 2007-12-22 15:37:43 +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
cbf5c474c1 Documentation generation fixes.
- Fix many instances of incorrect and incomplete doxygen annotations.
- Teach doxygen not to complain when it comes accross gcc __attribute__
specifications.
- Turn off graph generation by default.
- Make doxygen quiet, so we can actually see warnings when they occur.
2007-12-19 10:42:24 +01:00
Aldo Cortesi
9bb28772ed Make textbox foreground and background configurable. 2007-12-19 10:41:50 +01:00
Aldo Cortesi
ce556ec743 The preferred line length is 80 characters. 2007-12-18 11:27:26 +01:00
Aldo Cortesi
965cbb7e0b Continue to simplify interfaces that require arguments in globalconf.
Today I focus on screen.c.
2007-12-18 11:26:39 +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
Aldo Cortesi
ff84907b38 Use WidgetList for lookups, rather than recreating the data. 2007-12-17 18:21:59 +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
5923c90aaa Solidify widgets.
Factor out common initialisation into a common_new function. Copy the section
title into the Widget title attribute.
2007-12-16 12:57:47 +01:00
Aldo Cortesi
65fd8d48f0 The beginnings of a more flexible widget configuration.
The problem is as follows. In the end, different types of widget are going to
have distinct configurable options. This means that we need to have a
different section type for every widget type, if we are ever to make the
configuration nice. In fact, a configuration syntax like this would suit us
very well:

    textbox name {
        foo = bar
    }
    focuslist name2 {
        bar = voing
    }

This is all very well, but libconfuse has a limitation - there is no "nice"
way to retrieve the order of disparate sections (i.e. sections of different
types), and order is important to us. This patch goes to some effort to
retrieve the section order by extracting an array of widgets, and sorting them
based on line number.
2007-12-16 12:57:03 +01:00
Aldo Cortesi
6e8b1383fe Various doc comment fixes. 2007-12-16 12:13:07 +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
Julien Danjou
aacb020564 rename statusbar functions 2007-12-14 20:10:52 +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
b9320be372 add spiral and dwindle layouts (fibonacci) 2007-12-14 17:05:29 +01:00
Julien Danjou
84bb954004 rename statusbar uicb and add uicb_statusbar_set_position 2007-12-14 15:52:52 +01:00
Julien Danjou
6241354fec prefix eprint() with awesome: 2007-12-13 15:20:42 +01:00
Julien Danjou
11effcd7af remove awesome: for warn() calls 2007-12-13 14:03:55 +01:00
Julien Danjou
b313f266c8 cosmetic 2007-12-13 12:15:42 +01:00
Aldo Cortesi
c9dc57c756 Add a way to define key bindings in bulk, like this:
keylist
    {
        modkey = {"Mod4"}
        command = "client_tag"
        keylist = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }
        arglist = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }
    }

This patch also modifies the example awesomerc to use the new syntax. Should
be fully backwards compatible.
2007-12-13 11:50:21 +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
ecf6f6ebbb save default configuration file on first run without conf file 2007-12-13 11:04:48 +01:00
Julien Danjou
6e01126101 honor aspect ratio by default 2007-12-13 10:16:41 +01:00
Aldo Cortesi
c7a4a54b47 Use warn function throughout project. 2007-12-13 09:59:46 +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
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
db22906ba0 add CFG_END for mouse bindings where missing in config parser
Thanks rcs.
2007-11-22 10:48:09 +01:00
Julien Danjou
0fa1b4c822 move UicbList in uicb.c 2007-11-15 14:41:03 +01:00
Julien Danjou
dae3bcd2c7 remove _ on view_prev and view_next to be homogeneous 2007-11-14 21:38:25 +01:00
Julien Danjou
e43df90214 remove mouse modkey 2007-11-14 19:50:30 +01:00
Julien Danjou
d9e5346048 print unknown command in config files on stderr 2007-11-14 18:28:28 +01:00
Julien Danjou
938850a487 rename setlayout to tag_setlayout 2007-11-14 18:19:00 +01:00
Julien Danjou
7c533b8b40 rename screen uicb correctly 2007-11-14 18:16:43 +01:00
Julien Danjou
895c3848eb rename uicb_*mouse to uicb_client_*mouse 2007-11-14 18:14:23 +01:00
Julien Danjou
85adc07d19 rename uicb_set* to uicb_tag_set* since they apply on tags 2007-11-14 18:12:33 +01:00
Julien Danjou
aee9cdf8cb prefix a bunch of uicb with client_ 2007-11-14 18:10:51 +01:00
Julien Danjou
6c0608660d rename view_tag* names to tag_view* 2007-11-14 18:07:38 +01:00
Julien Danjou
4ca7059efc rename uicb_view to uicb_tag_view 2007-11-14 18:07:38 +01:00
Julien Danjou
bfde2f3211 rename uicb_toggletag to uicb_client_toggletag 2007-11-14 18:07:38 +01:00
Julien Danjou
10391f3190 rename uicb_toggleview to uicb_tag_toggleview 2007-11-14 18:07:38 +01:00
Julien Danjou
f4390bfc3e rename uicb_togglefloating to uicb_client_togglefloating 2007-11-14 18:07:38 +01:00
Julien Danjou
5b0987bb28 rename uicb_tag to uicb_client_tag 2007-11-14 18:07:38 +01:00
Julien Danjou
455ef2e1d7 rename uicb_swap{prev,next} to uicb_client_swap{prev,next} 2007-11-14 18:07:35 +01:00
Julien Danjou
8b933e196b rename uicb_settrans to uicb_client_settrans 2007-11-14 17:52:49 +01:00
Julien Danjou
b594731fc2 rename uicb_moveresize to uicb_client_moveresize 2007-11-14 17:51:22 +01:00
Julien Danjou
c5ee95992c rename uicb_killclient to uicb_client_kill 2007-11-14 17:50:16 +01:00
Julien Danjou
7a919a76fb mouse button clicks on windows are now configurable 2007-11-14 17:18:16 +01:00
Julien Danjou
cfa31c399d introduce mouse.[ch] files and move uicb_mouse*() to them 2007-11-13 22:57:57 +01:00
Julien Danjou
2fb7b4d69a fix Rule linked list handling in config
it seems that I was interrupted when I was coding new Rule handling in linked list
2007-11-13 22:29:33 +01:00
Julien Danjou
06dc3ba221 add new rules.c file with new functions for using Rule-s struct 2007-11-13 21:41:57 +01:00