Commit graph

234 commits

Author SHA1 Message Date
Julien Danjou
ab8d95f13d rework include 2008-01-29 11:27:14 +01:00
Julien Danjou
d9298f6edb rename get_current_tags to tags_get_current() 2008-01-29 08:31:13 +01:00
Julien Danjou
6a05197297 add tag_view_byinde() 2008-01-23 08:45:02 +01:00
Julien Danjou
668702b777 move list.h and util.[ch] to common/ 2008-01-21 18:14:59 +01:00
Julien Danjou
6e4d13c9dc add a new cache system for arrange()ing 2008-01-21 16:31:15 +01:00
Julien Danjou
5f72c9f056 use tag_list_next_cycle() 2008-01-21 16:31:15 +01:00
Julien Danjou
3b1526ea5b store screen in tag 2008-01-21 16:31:15 +01:00
Julien Danjou
67c155c0dd add tag_view() function 2008-01-21 16:31:15 +01:00
Julien Danjou
2592d3032c add more functions to manipulate tags 2008-01-21 16:31:15 +01:00
Julien Danjou
4ee9cdcd67 make tag_view_prev and next to by cycling 2008-01-21 16:31:14 +01:00
Julien Danjou
94197429e5 tag_client_with_rule() only tag is a rule match 2008-01-21 16:31:14 +01:00
Julien Danjou
47ee745425 rewrite client_manage() 2008-01-21 16:31:14 +01:00
Julien Danjou
f700e483d6 rename TagClientLink to tag_client_node_t 2008-01-21 16:31:14 +01:00
Julien Danjou
6fc766a847 clean some tag stuff 2008-01-21 16:31:14 +01:00
Julien Danjou
45ac9d24f4 rename tag_view to tag_view_byindex 2008-01-21 16:31:14 +01:00
Julien Danjou
654fba9b5e insert and use rule_matching_client() 2008-01-21 16:31:14 +01:00
Julien Danjou
29740269ec rename is_tag_match_rules() to tag_match_rule() 2008-01-21 16:31:14 +01:00
Julien Danjou
628ce3e7ad use list functions for TagClientLink 2008-01-21 16:31:14 +01:00
Julien Danjou
99e54ef971 use list functions for Tag 2008-01-21 16:31:13 +01:00
Julien Danjou
c248d9afca resize with floating geom when setting floating 2008-01-17 10:08:20 +01:00
Julien Danjou
f7ea8a1c50 invalidate cache on tag switching 2008-01-11 16:01:10 +01:00
Julien Danjou
bbc94b97f8 fix some cache flags 2008-01-09 09:59:45 +01:00
Julien Danjou
a1205efc20 move toggle floating function to layout.c and fix problem when moving with mouse tiled windows 2008-01-07 13:38:26 +01:00
Julien Danjou
58c8912e33 Revert "force windows to tile mode" - it's useful afterall to not consider "no value" as "false"
This reverts commit 81afe81b4e.

Conflicts:

	event.c
2008-01-07 00:36:45 +01:00
Julien Danjou
81afe81b4e force windows to tile mode 2008-01-07 00:28:27 +01:00
Julien Danjou
29a5cda54f fix some weird conditions with fullscreen/max/arrange 2008-01-06 23:27:47 +01:00
Julien Danjou
4fbce766bf add auto option to float in rules 2008-01-06 22:21:23 +01:00
Julien Danjou
af708d2fbc Rewrite everything about client geoemtry, resize, etc. 2008-01-06 20:36:39 +01:00
Julien Danjou
70a3114dba use Area as arg for client_resize 2008-01-05 20:19:59 +01:00
Julien Danjou
163acc8624 use Area to store window geoms 2008-01-05 19:38:50 +01:00
Julien Danjou
8978f0837e break on detach or for() will fail to assign ->next 2008-01-04 17:08:30 +01:00
Nikos Ntarmos
e79fdcb22e uicb_tag_view not working correctly with null argument
uicb_tag_view(...) hasn't been working correctly since tag_view(...)
came into existence. The problem is that saveawesomeprops(...),
arrange(...) and ewmh_update_net_current_desktop(...) need to be called
for a NULL argument as well, but these were moved to tag_view(...).

We can either add them back albeit only for the arg=NULL case, or move
these calls back into uicb_tag_view(...) and copy them over to
ewmh_process_client_message(...) and to all possible future users of
tag_view(...). The attached patch does the former.
2008-01-03 09:44:13 +01:00
Julien Danjou
5d9ef8b5d5 new uicb: tag_create 2008-01-02 17:10:32 +01:00
Julien Danjou
4f65aa8f51 rework headers inclusion 2008-01-01 18:02:36 +01:00
Julien Danjou
909f92d500 replace UICB_PROTO macro by a typedef 2008-01-01 17:25:48 +01:00
Julien Danjou
3216eb4d41 documente some functions and simplify client_saveprops() proto 2007-12-30 15:08:38 +01:00
Julien Danjou
f8300c5523 add support for _NET_CURRENT_DESKTOP messages 2007-12-28 22:16:27 +01:00
Julien Danjou
629f2efb83 bug fix in focus_get_latest_client_for_tags: restore tags on each roll 2007-12-28 12:48:42 +01:00
Julien Danjou
14909f47a9 move tclink in awesomeconf 2007-12-28 11:34:35 +01:00
Julien Danjou
48d9ea047f simplify is_client_tagged() proto 2007-12-27 23:05:34 +01:00
Julien Danjou
e95dc4b4cd simplify tag_client() and untag_client() proto 2007-12-27 22:43:59 +01:00
Julien Danjou
3de4814910 add support for _NET_CURRENT_DESKTOP 2007-12-27 18:42:20 +01:00
Julien Danjou
a95694c177 simplify proto 2007-12-27 14:02:27 +01:00
Julien Danjou
a48cefe53e remove calls to get_current_tag() 2007-12-27 11:53:23 +01:00
Julien Danjou
33add50256 store location and width of each widgets 2007-12-27 11:35:45 +01:00
Julien Danjou
a0e7aee072 introduce get_current_tags() and deprecate get_current_{tag,layout}() 2007-12-23 16:28:40 +01:00
Julien Danjou
d5d9439777 add support for Urgency hint 2007-12-23 15:16:10 +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
ce556ec743 The preferred line length is 80 characters. 2007-12-18 11:27:26 +01:00
Aldo Cortesi
b6bfd1a4d0 The arg to uicb_ functions is no longer const. 2007-12-17 18:19:44 +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
Julien Danjou
8b62669970 fix tag_view prev/next segfault 2007-12-15 13:35:15 +01:00
Julien Danjou
7327a92972 untag everything on rules applying 2007-12-15 09:02:49 +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
781ebc8882 move tag_client_with_rules() from client.c to tag.c 2007-12-14 16:40:08 +01:00
Julien Danjou
3a4fbce6f9 rename isvisible() to client_isvisible() and move it in client.c 2007-12-14 16:38:12 +01:00
Julien Danjou
213c839597 prefix some client functions with client 2007-12-14 16:05:10 +01:00
Julien Danjou
37a7116c92 we should reset client_sel on untag 2007-12-14 16:01:01 +01:00
Julien Danjou
078d224b46 use a linked list for handling tag <-> client relationship 2007-12-14 14:29:32 +01:00
Aldo Cortesi
2b5ba1f16f Improve the call signature of get_current_tag and get_current_layout. 2007-12-14 09:29:42 +01:00
Julien Danjou
5f811b1cf2 use VirtScreen arg for tag_client_with_current_selected() 2007-12-13 10:46:32 +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
Arnaud Fontaine
ece6bb27f3 check whether atoi success 2007-11-26 18:42:30 +01:00
Julien Danjou
51911613c5 handle uicb_client_toggletag() with no args or with i > ntags 2007-11-16 22:07:58 +01:00
Julien Danjou
d46f740a39 check for int value in uicb_tag_toggleview() 2007-11-16 22:03:26 +01:00
Julien Danjou
037d6aea59 fix bug with arg is NULL in uicb_client_tag() 2007-11-16 21:56:31 +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
0f2db7653d introduce new tag_client_with_current_selected() function to tag a client with currently selected tags 2007-11-14 10:00:15 +01:00
Julien Danjou
a0ea5bf734 move compileregs() from tag.c to rules.c 2007-11-13 22:45:46 +01:00
Julien Danjou
a07669c52c remove applyrules() function 2007-11-13 22:42:12 +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
Julien Danjou
8741fdba69 fix a bug in rule handling when screen is set 2007-11-12 21:53:05 +01:00
Julien Danjou
b76f216f69 forget a RULE_NOSCREEN occurence 2007-11-12 19:36:10 +01:00
Julien Danjou
adcadddc46 define RULE_NOSCREEN -1 2007-11-12 19:35:31 +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
8b048ec6fe tags uicb function does not take arg name anymore, but tag index number 2007-11-11 11:30:07 +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
Nikos Ntarmos
360f96b5fd stop centering mouse on move, just keep current coords 2007-11-09 19:22:42 +01:00
Julien Danjou
14e8c82a8a fix max() size restore, introduce volatile option to resize() 2007-10-29 15:24:10 +01:00
Julien Danjou
001f430c0c remove global client_sel, use tag's client_sel 2007-10-26 23:19:13 +02:00
Julien Danjou
d24413a75d rename resize() to client_resize() 2007-10-26 19:51:20 +02:00
Julien Danjou
530a6ef104 bugfix: save rx/ry/rw/rh when resizing a floating window 2007-10-25 13:57:02 +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
ccb7e89750 arrange() does not need Display as arg 2007-10-15 18:23:05 +02:00
Julien Danjou
3592e8e448 save and loadawesomeprops do not need display as arg 2007-10-15 18:14:43 +02:00
Julien Danjou
d263c89aa4 untab on floating 2007-10-15 17:20:17 +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
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
e733af41ec remove drawcontext everywhere 2007-10-10 14:09:36 +02:00
Julien Danjou
97a2085705 cosmetic: remove lines with empty spaces at end 2007-10-03 17:26:14 +02:00
Julien Danjou
17ec922077 bug fix: set not matched tags to False instead of nothing 2007-10-02 10:36:49 +02:00
Julien Danjou
8112ec2cca introduce move_client_to_screen to move a client in a new screen and tag it with good tags 2007-09-28 11:30:51 +02:00
Julien Danjou
ab738c9cab bug fix: XClassHint not copied correctly
Thanks Nikos Ntarmos <ntarmos@ceid.upatras.gr>
2007-09-28 10:46:34 +02:00
Julien Danjou
486dd410ca bug fix: apply selected layouts for tag in uicb_tag_view{next,prev}
Thanks Jordà Polo <jorda@ettin.org>
2007-09-27 16:24:42 +02:00
Julien Danjou
2c149b25d3 optimize a little isvisible() 2007-09-26 18:56:58 +02:00
Julien Danjou
935bcc7ce4 move Regs into tag.c 2007-09-24 18:02:03 +02:00
Julien Danjou
595eba78d7 create a Tag struct type and use it 2007-09-24 15:37:52 +02:00
Julien Danjou
40384806fd use a_strcmp() instead of strcmp() 2007-09-21 17:32:00 +02:00
Julien Danjou
03ee9ce9d1 rename some tag_view UI callback functions and add uicb_tag_viewprev uicb_tag_viewnext as bindable 2007-09-20 22:24:52 +02:00
Julien Danjou
4ef83a4e40 documentation update for tags 2007-09-20 22:02:57 +02:00
Julien Danjou
d9523d3436 simplify load/saveawesomeprops 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
30e7cf5b40 simplify arrange and restack 2007-09-18 19:53:46 +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
0539eaa4b0 is_visible check for screen 2007-09-16 14:56:08 +02:00
Julien Danjou
ab75756d62 remove a DefaultScreen() 2007-09-16 14:56:08 +02:00
Julien Danjou
933b0413ea add screen arg to uicb* 2007-09-16 01:05:43 +02:00
Julien Danjou
e91de5bfb9 restack and arrange take screen as arg 2007-09-15 23:17:59 +02:00
Julien Danjou
5c78f4785f load and save awesome props now take screen as arg 2007-09-15 22:40:52 +02:00
Julien Danjou
fe89aa31b0 create statusbar.c and move things from draw.c 2007-09-15 15:16:53 +02:00
Julien Danjou
2c6a71f358 add DC to uicb_*() args 2007-09-12 18:11:27 +02:00
Julien Danjou
de3fdc02d8 add DC to arrange() 2007-09-12 17:00:33 +02:00
Julien Danjou
7659289b9e chance license to GPLv2 2007-09-12 14:29:51 +02:00
Julien Danjou
9f56ade4e9 use more safe functions and update #inlcude 2007-09-11 14:00:49 +02:00
Julien Danjou
1ad4adf901 change compileregs proto, simplify 2007-09-10 17:07:07 +02:00
Julien Danjou
6f528063be rename jdwm to awesome 2007-09-10 12:06:54 +02:00
Julien Danjou
a4449818f3 remove useless string.h inclusion 2007-09-07 11:48:30 +02:00
Julien Danjou
1cd68afe28 documentation of uicb_view() 2007-09-07 11:42:13 +02:00
Julien Danjou
3ea28a69d7 make prop local and malloced 2007-09-07 11:26:27 +02:00
Julien Danjou
274f1270e6 add taglayouts in jdwmconf as tag_layouts 2007-09-06 21:53:45 +02:00
Julien Danjou
2ef846164c move prevtags in jdwmconf also 2007-09-06 19:09:09 +02:00
Julien Danjou
e5f2ed3f22 remove extern seltags, put it in jdwmconf 2007-09-06 19:05:26 +02:00
Julien Danjou
f7173bd79d first import 2007-09-05 20:15:00 +02:00