Compare commits

...

442 Commits
4.8 ... 6.0

Author SHA1 Message Date
26445a0dc9 bump version to 6.0 2011-12-19 15:38:30 +01:00
b5068e32e9 add sloppy monitor focus 2011-11-15 20:16:58 +01:00
f099d2d5b5 new default colour scheme 2011-11-06 20:36:23 +01:00
80a9da555e calculate window/monitor intersection 2011-11-06 20:31:29 +01:00
d21026f0a1 honour fullscreen hint on map 2011-11-06 20:30:06 +01:00
e5a1e77351 testing Brians multiscreen issue fix 2011-11-04 20:02:35 +01:00
8262d9e663 make ewmh dialog windows float 2011-11-02 12:01:28 +00:00
90af1ced3c allow 0 nmaster 2011-10-31 20:09:27 +01:00
5ccd42f807 fix big-border corner case 2011-10-30 12:14:34 +01:00
1586b7a02d added keyrelease remark to TODO 2011-10-29 10:57:27 +02:00
2420071f4c improve tile spacing 2011-10-28 23:45:12 +01:00
04c26574b8 add nmaster binds to manpage 2011-10-26 12:16:25 +01:00
b1a28ae1da apply nmaster patch 2011-10-25 20:40:46 +01:00
f68a01cd76 apply resize hints in floating layout 2011-10-25 20:08:08 +01:00
2b625eb73e hide clients to the left, not the right 2011-10-25 20:01:18 +01:00
0f1f30daca applied Connors cleanup patch of Eckehards proposed fix of applyrules(), thanks everyone involved 2011-08-15 18:44:12 +02:00
dec4850d05 applied Connors and Valentins patch to improve the unmapnotify handling of broken clients 2011-08-08 16:55:06 +00:00
0de4197cc5 applied Peter Hartlichs nice interim Xinerama and map fix patches, for debugging purposes I also added his transient test driver 2011-07-29 20:01:22 +02:00
a372248b80 applied anonymous code cleanup patch 2011-07-27 19:59:10 +02:00
69e7d7dfd3 added a marker for the flash fullscreen issue 2011-07-24 10:41:43 +01:00
c99fe7dd7d changed sleep 20 into sleep 1 in example script as suggested by Snader_LB 2011-07-20 18:56:10 +00:00
d6670a800d applied Connors aesthitic buf fix in tile(), thanks 2011-07-20 18:45:40 +00:00
6288c44697 applied Peters magic float mode bugfix 2011-07-20 18:36:15 +00:00
d5c5c52b30 applied lolilolicon's floating center patch, further investigation wrt his second issue reported needed 2011-07-20 18:33:19 +00:00
d0b4575bf4 thanks to recursions on IRC for his remark 2011-07-20 18:30:51 +00:00
03518ce49e Added tag 5.9 for changeset dd74622a4785 2011-07-10 21:25:23 +01:00
cd8bb06af5 enabled release flags 2011-07-10 21:24:17 +01:00
3150a8a1be applied Peters wintoclient/wintomon optimisation in enternotify() 2011-07-10 21:22:22 +01:00
b3c5f5435a removed unneeded offset recalculation, thanks Jukka, let's see if this breaks some other client 2011-07-10 21:18:50 +01:00
a692bdcf2b undo the focus optimisation patch for 5.9 2011-07-10 21:12:05 +01:00
d83454f6b7 applied Peters two patches, please test hg tip, if nothing breaks this is 5.9 2011-07-09 07:57:10 +01:00
27b0142203 applied Garys patch in a slightly modified way 2011-07-02 11:02:22 +02:00
867ba36030 applied Nicolas Capit's patch as interim solution until the multiscreen support is reworked in 6.0 2011-07-01 17:56:53 +01:00
e83f36db10 fixed scroll lock (thanks bogdan) 2011-06-27 20:12:42 +01:00
212f417e44 fix numlock (thanks mikhail) 2011-06-27 19:35:11 +01:00
3a392b8558 making enternotify less focus hungry 2011-06-25 09:07:28 +01:00
92fe06b501 applied Andreas Amann's patch from Oct 2010, thanks 2011-06-24 21:02:32 +01:00
6cf29bff33 applied Rudys barwidth patch, thanks Rudy 2011-06-17 20:22:54 +01:00
60c06a7cb4 don't check for monocle layout in zoom() exit condition 2011-06-14 22:28:16 +01:00
1147546122 Thanks for the pedantic review :) 2011-06-14 05:51:21 +01:00
d384cee751 fixing some minor issues, next week is dwm-5.9 release time 2011-06-11 08:33:20 +01:00
5c710cf89c rm draw.c from 5.9 branch 2011-06-04 23:02:00 +01:00
8a111c181e fix typo 2011-06-04 10:18:54 +01:00
2255bf46a0 cleaner drawing 2011-06-04 10:17:25 +01:00
04797343db update draw.c 2011-05-21 20:26:26 +01:00
e7d41cc188 added draw.h, draw.c 2011-05-20 19:10:26 +01:00
22d8818850 applied Evil_Bobs cleanup patch 2011-05-12 14:16:33 +00:00
6784429c3c applied another minor change to the README 2011-04-27 15:55:18 +00:00
37fea84de8 applied Thomas' README patch 2011-04-27 12:38:59 +00:00
c14d293e51 applied Jack's mplayer fullscreen patch 2011-04-26 08:13:39 +00:00
79b1657a19 missed declaration 2011-04-15 08:13:06 +00:00
d24837f1ad minor fix of the NetActiveWindow multi-monitor flaw, slight rearrangement 2011-04-15 08:12:20 +00:00
3c2d303c0e applied Peter/Andreas NetActiveWindow patch in a slightly modified version 2011-04-14 13:46:25 +00:00
1e20a0f78a applied Brendan MacDonell's WM_TAKE_FOCUS patch, thanks Brendan! 2011-04-12 20:19:32 +00:00
96f9855248 applied another patch of Hiltjo, thanks 2011-03-25 14:06:46 +00:00
3c48858ffa applied Hiltjos' BUGS patch from 23 Mar, sorry took a while :) 2011-03-25 13:57:54 +00:00
dd46d5b588 applied Hiltjo's multimon mouse-based resize fix 2011-03-23 08:58:57 +00:00
0bc4e41ebd applied anonymous patch, I don't think the reversed array access has semantic side-effects 2011-01-07 16:05:22 +00:00
703c4dd253 added a todo 2010-12-02 10:16:47 +00:00
b68528d85d applied Hiltjo's cleanup patch 2010-11-19 11:53:59 +00:00
a644baf674 applied Hiltjo's tiny cleanup fix 2010-09-27 07:53:44 +00:00
c1f8688bfa applied Hiltjo's tiny cleanup patch, thanks! 2010-09-25 13:39:08 +00:00
bea4dd2490 does this make a difference? 2010-09-11 19:00:18 +00:00
83d10be1c1 added TODO and bumped version to 5.9 2010-08-24 13:13:20 +01:00
1529058f27 applied Hiltjo Posthuma's line saver patch 2010-08-23 17:25:53 +01:00
36311d88af applied Hiltjo Posthuma's double-XineramaQueryScreens() patch, thanks Hiltjo! 2010-07-25 09:58:25 +01:00
f1a2a3c850 Added tag 5.8.2 for changeset a043f0800805 2010-06-04 11:41:16 +01:00
ee734fae6b increased version 2010-05-30 10:03:09 +01:00
62d3caa999 implemented better fullscreen handling, please test 2010-05-30 10:02:56 +01:00
4c9b397ff9 Added tag 5.8.1 for changeset 1ed1e75c9c2e 2010-05-29 12:48:18 +01:00
5c6545adf5 removing Sylvain's patch because it breaks more than it fixes unfortunately, re-issuing a bugfix release 5.8.1 2010-05-29 12:48:11 +01:00
a704b1ee34 Added tag 5.8 for changeset 60ea8fed13ab 2010-05-28 11:43:44 +01:00
f83d61dfe8 removed DEBUG code and added 2010 to the copyright list 2010-05-27 08:20:42 +01:00
c6180949a7 applied Sylvain Laurent's EWMH fullscreen state patch, simplified his patch a bit 2010-05-27 08:19:08 +01:00
1973ab0643 added the related bug reported by voltaic 2010-04-11 18:42:32 +01:00
427053f8d1 pretty printing bugs a bit 2010-04-01 22:34:46 +01:00
a88e0373ef selmon optimisation is needed 2010-04-01 19:39:24 +01:00
aa9f2be24e more debug output, experimental focus optimisation 2010-04-01 00:14:15 +01:00
c53b29e60b quick typo fix 2010-03-31 23:27:30 +01:00
d6bdd03d91 it's debug season for upcoming dwm 5.8, so only use this if you really want to run experimental code or debug code 2010-03-31 23:24:22 +01:00
1144e98394 another bug report 2009-11-25 13:56:17 +00:00
7671d03a90 removed misleading comment, thanks Romain Bertrand 2009-11-24 09:31:17 +00:00
bc554d45d8 added nsz's last bug corner case 2009-11-23 08:13:18 +00:00
ac4caea921 added BUGS, next version is 5.8 2009-10-31 11:45:56 +00:00
161f2d921b Added tag 5.7.2 for changeset 15761ac5e2f1 2009-09-27 20:20:14 +01:00
210378f198 applied Ryan Zheng's patch and re-releasing 5.7.2 2009-09-27 20:20:10 +01:00
7879616a75 Added tag 5.7.1 for changeset 48c3f87c335d 2009-09-27 10:31:20 +01:00
9e8dd3479d fixed the layout symbol bug reported by Nibble (but using a different approach as he suggested)
- optimised drawbar() and arrange() handling for multiple monitors, arrange only arranges the relevant monitors when applicable, same with drawbar
- need to release 5.7.1
2009-09-27 10:31:14 +01:00
0b72be924d Added tag 5.7 for changeset 257403d4cd96 2009-09-26 19:52:04 +01:00
91e902f7fe switching to release flags 2009-09-22 20:34:03 +01:00
30fed9a211 implemented nn < n case, k-zed please recheck 2009-09-22 20:33:42 +01:00
c45d46ad9a use buffer instead of pointer for mon->ltsymbol 2009-09-22 09:53:11 +01:00
6f55de8310 added missing scan 2009-09-22 09:16:48 +01:00
07ad298133 implemented different version of updategeom 2009-09-21 19:51:17 +01:00
f0a4845e7d added TODO to updategeom in order to implement a decent version of it soon 2009-09-19 11:52:16 +01:00
82ec7a7ed4 new experimental updategeom() additions that should avoid several problems with Xinerama, this is EXPERIMENTAL and might break something, the algorithms in use are quite complex and cumbersome, patches and comments welcome 2009-09-18 21:18:00 +01:00
e7300e0f6f implemented dynamic layout symbol stuff 2009-09-16 15:59:54 +01:00
c3feffa1e2 applied Tony Lainson's config.def.h patch 2009-09-15 13:50:41 +01:00
956a430054 update 2009-09-08 13:33:58 +01:00
01056b6636 hard-core destruction 2009-09-08 13:30:18 +01:00
eb260b1a41 renaming isdestroyed into destroyed 2009-09-08 13:18:05 +01:00
7fe81359d4 sync when a client is being killed 2009-09-08 13:16:54 +01:00
a3a859b4e9 added isdestroyed flag to unmanage 2009-09-08 13:13:03 +01:00
9c066c24b3 always updategeom when root is configured 2009-09-07 11:46:02 +02:00
0a668922a4 another small optimisation 2009-08-18 15:59:38 +01:00
5762964232 also update title if the client is on an unfocused monitor 2009-08-18 15:42:55 +01:00
cba6b211c2 applied nsz's dwm.1 patch, also added wmname 2009-08-16 21:39:24 +01:00
42750a621b applied Jukka's cosmetic patch 2009-08-16 08:18:54 +01:00
8ef465d592 applied Jukka's sigchld patch 2009-08-16 08:18:25 +01:00
33fe200b52 added merged patch of anydot and Neale 2009-08-13 10:45:59 +01:00
91fffb3f7d fixed nn declaration 2009-07-27 12:01:58 +01:00
1fa31efebf Added tag 5.6.1 for changeset e47a47bd3ed4 2009-07-26 14:02:28 +01:00
244addb3f4 applied nsz patch 2009-07-21 10:57:54 +01:00
c13be8d620 updategeom fix for same geom screens 2009-07-21 08:57:04 +01:00
dc39ae8568 applied nsz' man page comment, thanks! 2009-07-20 17:08:34 +01:00
966d76a428 merge 2009-07-20 16:40:32 +01:00
7151bf8329 removed Standard input hint 2009-07-20 16:39:42 +01:00
dfecd46190 merge 2009-07-18 11:28:31 +01:00
5bc4db0f76 applied nsz' dwm.1 fixes, thanks Szabolcs! 2009-07-18 11:28:03 +01:00
999d6e795f removed misleading comment 2009-07-17 15:28:07 +01:00
636075297c merge 2009-07-17 13:35:44 +01:00
6877a00033 it's all nsz's hard investigation effort, hail nsz! ;) 2009-07-17 13:35:17 +01:00
0927d635bc Added tag 5.6 for changeset 555070221577 2009-07-14 19:07:53 +01:00
450b08dde2 final style fixes 2009-07-14 16:26:04 +01:00
da80487c07 removed int cast in TAGMASK as suggested by nsz 2009-07-14 16:04:07 +01:00
d9779c06fc some stylistic changes 2009-07-14 16:01:14 +01:00
20996c6c5a removed obsolete BUG 2009-07-13 12:51:00 +01:00
8dc9fcf1b9 mark broken clients as broken 2009-07-12 22:49:06 +01:00
fc21dd4b7e fixing updatetitle 2009-07-12 22:34:29 +01:00
758b100d12 extended rule to apply monitors if set up accordingly 2009-07-09 21:52:17 +01:00
8420fb1ced reverting to optimised compiler options, current state seems stable 2009-07-09 20:49:48 +01:00
f6128a16f9 extended man page to mention number of visible windows 2009-07-09 20:11:33 +01:00
87526be6f0 added client number printing right of layout symbol 2009-07-09 19:58:58 +01:00
565050ac51 removed monsyms, useless 2009-07-09 11:29:01 +01:00
5e408d8ff6 restricting number of mons by length of monsyms 2009-07-09 11:21:06 +01:00
1724f7fa43 introducing const where it might make some sense 2009-07-08 18:59:20 +01:00
3e6fe6b541 no that's definately better 2009-07-08 17:24:39 +01:00
6620615ab9 some minor changes 2009-07-08 17:05:20 +01:00
61c3095f2f die if malloc sizeof(Monitor) fails 2009-07-08 16:05:36 +01:00
a72dc2fec2 applied Mate's patch, added Mate to LICENSE 2009-07-06 20:12:47 +01:00
8b17f5517b some cleanups 2009-07-02 20:56:23 +01:00
cd96232f7e hotfix 2009-07-02 20:38:56 +01:00
a9e145fe6d changed focusmon/tagmon to work on prev/next instead (-1/+1), changed shortcuts to Mod1-, Mod1-. and Mod1-Shift-, Mod1-Shift-. 2009-07-02 20:37:26 +01:00
5dd92c7655 removed some empty lines 2009-07-02 18:40:04 +01:00
52bd69c2a4 interactive resizals allow display dimensions again 2009-07-02 18:30:01 +01:00
ca376970db more sensible 2009-07-02 16:48:54 +01:00
8352f2b3a8 hmm, can't decide on the default monitor symbol set 2009-07-02 16:47:00 +01:00
d4bfde79f3 update 2009-07-02 16:44:57 +01:00
7ac8c1d4e1 introduced monitor symbols 2009-07-02 16:41:52 +01:00
16e1ef5d40 minor fix 2009-07-02 14:42:06 +01:00
1d729384d1 several bugfixes 2009-07-01 19:15:20 +01:00
25c1eb28f9 some minor fix if xinerama is disabled, still some odd behavior in there 2009-07-01 17:08:10 +01:00
d719cc9a0e updated year ranges 2009-06-30 20:20:33 +01:00
9cde6570cc fixed usage of sx, sy, sw, sh 2009-06-30 20:15:31 +01:00
e408ca97d8 don't draw monitor number, if there is just one monitor 2009-06-30 20:00:11 +01:00
183dc670a3 fixed order of transient monitor applicaion and rule application 2009-06-30 19:56:19 +01:00
25947bcfdb hotfix 2009-06-30 19:45:25 +01:00
1ddfc571ae several simplifications 2009-06-30 19:39:59 +01:00
21cd59a630 play safe 2009-06-30 15:56:32 +01:00
6cbe47d481 applied a collection of Christof Musik patches, and fixed an issue reported by waistcoats on IRC 2009-06-30 15:51:09 +01:00
029655bb22 some cleanup handling for index based mon search 2009-06-27 18:50:50 +01:00
27db9d4448 using mon in function names for consistency reasons 2009-06-27 18:42:10 +01:00
176408afa8 fixed several issues with focus handling via mouse, also added sending clients to the right monitor they belong to after mouse moves/resizals 2009-06-27 18:39:03 +01:00
64674c395b fixed focusmon brokeness 2009-06-27 17:38:18 +01:00
b9dee2c6f1 tag fix 2009-06-26 16:41:27 +01:00
a73ff905b0 typo fix 2009-06-25 11:17:42 +01:00
e3f0445df1 assign selected tags of target monitor to client when tagmon is performed (less obtrusive imho) 2009-06-25 11:10:19 +01:00
ab06f7444b added some TODOs, some other focus fixes 2009-06-24 20:04:18 +01:00
a2a3590979 disabled XINULATOR code for now 2009-06-24 19:52:09 +01:00
e8aafb8e91 made bar based monitor switching working 2009-06-24 19:51:41 +01:00
18b1312449 several other focus fixes, introduced unfocus() 2009-06-24 19:45:47 +01:00
80ee95473b some focus fixes 2009-06-24 15:37:32 +01:00
454a04acdf fixed title rendering on non-active screen 2009-06-24 13:51:45 +01:00
891831fe62 fixed getclient brokeness 2009-06-24 12:48:01 +01:00
cdb8e27453 some hotfix cleanup related to wild selmon-> destruction 2009-06-24 11:14:51 +01:00
5c4913e983 some restack fixes, still odd behavior if n>1 on unmanaging clients 2009-06-23 19:09:30 +01:00
fa5ae54bbb added some dual head simulator code 2009-06-23 19:00:32 +01:00
7de534192c simplified left over re-assignment 2009-06-23 17:39:42 +01:00
54dc0d542c fixed tagmon, re-using detach/detachstack and attach/attachstack 2009-06-23 17:34:20 +01:00
913333f518 simplified ISVISBLE and nexttiled 2009-06-23 17:20:33 +01:00
d702f39274 moved clients/stack/sel to Monitor, that's a per monitor structure from now on 2009-06-23 17:17:25 +01:00
0d8671a5ad declare buf only if XINERAMA support is used 2009-06-23 16:29:32 +01:00
38e9b67026 if compiled without XINERAMA support assume 1 monitor by default (n = 1) 2009-06-23 16:28:37 +01:00
a3bbdb1b7b some more refactoring, bar toggle fixes 2009-06-22 20:29:59 +01:00
d53ceee682 hotfixes 2009-06-22 18:13:05 +01:00
78f56672b5 changes monitor structure to be a list 2009-06-22 14:58:08 +01:00
c2fff604a7 we need a tagset per monitor, removed tagset declaration from config.h 2009-06-20 17:02:55 +01:00
6644a6aa2e some minor fixes regarding the new xinerama support 2009-06-20 16:18:02 +01:00
3da2453997 several fixes through ISVISIBLE change (takes Monitor into account) 2009-06-20 15:51:34 +01:00
2ce37bc69e experimental xinerama support, two new actions, Mod1-w/e and Mod1-Shift-w/e 2009-06-20 15:10:04 +01:00
f27ccc5c60 introduction of Monitor for better Xinerama support, work in progress 2009-06-19 20:15:15 +01:00
2dbfda72f0 removed MAXTAGLEN 2009-05-29 09:29:22 +01:00
7df39f3fc7 next version will be 5.6, shortened some very long lines 2009-04-20 11:03:33 +01:00
0b45199cec Added tag 5.5 for changeset deaa276abac1 2009-04-18 12:49:34 +01:00
3632d7132f applied Marc Andre Tanners showhide patch, the removal of ntiled 2009-03-19 13:06:15 +00:00
565697087b applied Gottox' patches, and also removed usegrab 2009-03-17 19:53:00 +00:00
ea0008cba2 applied the patch I missed from Gottox, thanks mate! 2009-03-03 11:22:16 +00:00
af508c2e82 applied Gottox' resizehints patch, thanks Gottox! 2009-03-02 10:43:48 +00:00
f0d1d5206f some NULL fixes 2009-02-21 19:20:11 +00:00
1c80c05587 override_redirect is Bool 2009-02-21 19:15:30 +00:00
1e350be229 applied Gottox' adjustborder removal patch (thanks!) 2009-02-21 19:12:46 +00:00
1a26389e2b applied nsz' remark 2009-02-14 11:21:24 +00:00
bf9da23f07 fix of typo, thx to Enno Gottox Boland 2009-02-12 17:26:12 +01:00
2373940215 Added tag 5.4.1 for changeset 85a78d8afa0f 2009-02-08 12:11:35 +00:00
90687482ad fixed an issue reported by Nibble, also fixed s/2008/2009/ 2009-02-08 12:11:22 +00:00
5ab627c06c Added tag 5.4 for changeset 8b7836a471f8 2009-02-08 09:47:02 +00:00
76d7e80fc4 avoid reverting the border if it's not necessary (avoids some flashing on view()) 2009-02-08 09:46:23 +00:00
af8049bce8 spotted missing spaces 2008-12-20 12:02:14 +00:00
2bb51b3246 reverting some border patches 2008-12-20 00:02:56 +00:00
b16d8282be changed adjustborder to be a macro 2008-12-19 23:56:00 +00:00
fef4614772 applied yiyus applyrules() patch 2008-12-19 23:41:31 +00:00
be39dddcc5 implemented noborder for 1 client in the view 2008-12-17 21:25:32 +00:00
6d209b9b29 made status script example of .xinitrc more useful 2008-12-13 20:20:26 +00:00
57a0788bd8 ok, using signal.h for portability reasons 2008-12-13 17:44:29 +00:00
3ad906eede removed unnecessary closure of stdin reported by Frederic Chardon, thx 2008-12-13 17:27:48 +00:00
0be9fb8797 added sys/signal.h inclusion for BSD compliance 2008-12-13 16:35:34 +00:00
62a491e36d re-applied Neale's spawn patch, credited Neale in LICENSE 2008-12-12 19:55:03 +00:00
0b5dcf229f applied Neale Pickett's xprop status reading patch, updated README and dwm.1 accordingly 2008-12-12 19:49:06 +00:00
fda92f46aa applied yiyus fix 2008-12-06 16:20:14 +00:00
a62ea4062f fix 2008-12-06 11:22:30 +00:00
7dc28d130f Added tag 5.3.1 for changeset 335301ed102f 2008-12-06 09:33:58 +00:00
fbce733532 integrated yiyus clearurgent refactoring 2008-12-06 09:32:32 +00:00
e7572804fa reverted spawn 2008-12-06 09:16:48 +00:00
ed1bef1241 Added tag 5.3 for changeset 4004d6116035 2008-12-04 20:23:08 +00:00
2b047e460b added Neale Pickett's spawn patch, thanks Neale 2008-12-04 20:15:00 +00:00
5f74dc5e78 applied Gottox' comment fix (thanks) 2008-11-16 13:22:24 +00:00
ea8a4ca46a several changes towards 5.3, XINERAMA is disabled by default, introduced usegrab Bool for grabbing the server during mouse-based resizals/movements (disabled by default), continued debugging tile() with resizehints == True and a lot of terminals supporting resizehints, still no optimal solution, I need to think about it, considering recursive algorithm for the space optimization 2008-10-19 12:59:18 +01:00
4883a06221 removed NOBORDER(broken and badly used), introduce WIDTH/HEIGHT macros for computing client size with border added, fixes bug announced by sergey_m 2008-10-15 18:08:24 +02:00
4dea5324c0 Added tag 5.2 for changeset e4bcaca8e6ef 2008-09-09 20:47:01 +01:00
53cac17692 using malloc() instead of calloc() and sticking to static initializer and struct assignment, not using *c = (Client){}; right now to avoid some ugly gcc warning, possibly a gcc bug since we are using -std=c99 2008-09-08 22:24:05 +01:00
83abfc05eb applied XGetWMNormalHints fix 2008-09-07 09:53:59 +01:00
862b0d541d I prefer doing the check in showhide 2008-09-06 09:34:49 +01:00
c1c6fdc5d8 applied Donald Chai's showhide patch in slightly modified ways 2008-09-06 09:21:32 +01:00
9a4d07d9de applied Martin Hurton's checkotherwm simplification 2008-09-06 08:59:51 +01:00
30410108eb applied Peter Hartlichs aspect revert fix 2008-09-02 22:36:06 +01:00
753e0e048e applied Gottox' grabkey patch 2008-09-02 18:47:01 +01:00
d15d4ba45a applied yiyus tagbar patch 2008-09-01 22:18:50 +01:00
815f9c054d merged merge 2008-09-01 08:22:11 +00:00
addc52c948 fixed 2008-08-29 11:29:42 +01:00
26f41c9055 checking result of XGetClassHint, removed some obsolete lines in initfont() 2008-08-29 10:13:47 +01:00
73ec124ae9 merged my changes 2008-08-27 15:03:35 +01:00
ec11a3470c introduced NOBORDER macro to hide the nasty - 2 * c->bw in various calculations, moved tagset to config.def.h 2008-08-27 12:52:44 +01:00
4b3b597da3 WM_NAME is builtin atom 2008-08-25 11:43:45 +02:00
288cf78b18 grabbuttons() and grabkeys() are now independent from prior numlockmask initialization 2008-08-25 09:44:23 +01:00
6411aa921b reverted some resize() changes, reverted setlocale removal 2008-08-25 09:37:39 +01:00
db5db8806f applied Peter Hartlich's patch regarding aspect calculation with slight modifications 2008-08-23 09:54:55 +01:00
258c338030 removed artifact from wmii 2008-08-23 09:33:05 +01:00
85da537856 changed grabkeys, removed initmodmap 2008-08-23 09:31:28 +01:00
2b4157eccd applied Peter Hartlich's initmodmap patch 2008-08-23 09:26:11 +01:00
0f26de991f applied fix of toggletag by Jan Kaliszewski 2008-08-22 15:26:30 +02:00
840f937a98 Martin Hurtons typo fix 2008-08-18 19:28:57 +01:00
6975a7e31a fixed error I did when applying Martin Hurton's drawtext patch 2008-08-18 19:23:03 +01:00
47f63dce55 applied Martin Hurtons resizemouse patch 2008-08-18 19:19:15 +01:00
02a8ca95cf applied Martin Hurton's movemouse() patch 2008-08-18 18:23:39 +01:00
2ce50a9cad using None instead of 0 for trans 2008-08-18 10:22:46 +01:00
bfa5869da1 abc... 2008-08-18 10:21:24 +01:00
087a55f8d3 removed the i = textnw... as remarked by Martin Hurton 2008-08-18 10:16:36 +01:00
6d7285fd6e applied Martin Hurton's scan() patch with slight modifications 2008-08-18 10:14:51 +01:00
69c7b4b0ba changed order of variables in drawtext 2008-08-18 10:00:10 +01:00
97699e5b1b applied Martin Hurton's drawtext() patch 2008-08-18 09:55:36 +01:00
2dc7f42fd7 applied Martin Hurton's view() simplification, not checking arg 2008-08-18 09:49:44 +01:00
9f3a5cb754 making a comment more explicit 2008-08-18 09:39:52 +01:00
b48fa3f101 removed setlocale() stuff, not necessary if Xmb in use 2008-08-18 09:31:55 +01:00
051a404b66 added a comment about FAQ regarding mfact meaning 2008-08-18 09:11:15 +01:00
d8d733c34f added some comments regarding FAQ about s{x,y,w,h}, w{x,y,w,h}, b{y,h,lw} 2008-08-18 09:10:21 +01:00
bb01e5a16f initialize trans with 0 2008-08-18 08:57:34 +01:00
06f7eed103 fix of XGetTransientForHint in manage() 2008-08-14 22:35:52 +02:00
0ffa6d1393 applied cleanup from M. Hurton and S. Nagy 2008-08-14 12:36:49 +02:00
15ce143620 fixes using arg->i instead of arg->ui 2008-08-12 21:24:40 +02:00
63d7190231 applied Johannes Hofmann's patch, please test 2008-08-04 17:39:36 +01:00
b279cef670 made readin a config.h variable 2008-08-02 19:12:15 +01:00
6254ef9dc7 Added tag 5.1 for changeset ce355cea9bb8 2008-07-29 19:19:00 +01:00
4a2902efe4 forcing fullscreen windows to bw=0, though most fullscreen apps are broken anyways 2008-07-29 11:32:22 +01:00
6fad4c49f1 potential crash fix if xinerama behaves broken, though I doubt it 2008-07-18 20:18:45 +01:00
78f0f8595f make hg tip compilable with default config 2008-07-18 10:57:32 +02:00
7ecadcee39 local use of xidx is useless, got rid of it, falling back to screen 0 if pointer query fails for whatever reason 2008-07-16 18:39:48 +01:00
c86ed46a1b got rid of compile time xidx configuration, querying mouse pointer instead 2008-07-16 18:33:51 +01:00
9086f98068 reverted uint redefinition 2008-07-16 18:17:42 +01:00
9aa4a9043d applied anydot's urgency hint patch, thanks! 2008-07-13 18:08:55 +01:00
d5893f55be renamed eprint die 2008-07-03 17:05:56 +01:00
f529d41ca1 simplified detach() 2008-07-03 10:58:35 +01:00
45768ee04b removed aux* stuff from Client 2008-07-02 11:54:36 +01:00
a6d23fb61c removed useless comment 2008-07-02 11:19:02 +01:00
bf76cefe47 minor fix to view() 2008-07-02 11:06:46 +01:00
9bb0f20515 applied Frederik Ternerot's grabbuttons patch with slight modifications 2008-07-01 19:26:17 +01:00
2431ae7df7 locale update 2008-06-30 09:57:45 +01:00
829b6b57e7 removed useless characters 2008-06-24 12:40:48 +01:00
7b4c512e62 applied James Turner's dwm.1 patch, thanks James! 2008-06-23 08:59:19 +01:00
7f7c3140a9 fix of monocle 2008-06-22 09:33:49 +01:00
277155cf77 another merge 2008-06-22 09:29:35 +01:00
0c38ec7cd6 does this fix anything? 2008-06-22 09:29:06 +01:00
deef4c9bfd fixed Gottox' buttonpress/ClkTagBar code 2008-06-21 13:49:43 +01:00
b86c818599 applied Gottox' ClkTagBar patch 2008-06-20 16:52:07 +01:00
c2a916bf30 made arrange again like it was once 2008-06-19 14:58:19 +01:00
2bd46d1ce6 fix 2008-06-19 14:13:07 +01:00
6e0ce46365 use sel instead of seeking the list 2008-06-19 14:07:55 +01:00
c853d5e9bb resize should apply if !banned 2008-06-19 14:01:40 +01:00
31da0b7525 applied Gottox patch 2008-06-19 12:28:56 +01:00
12ea925076 untested monocle 2008-06-19 11:38:53 +01:00
79ecbeca7e non-zero 2008-06-19 09:11:11 +01:00
cf98ea2a9c Added tag 5.0 for changeset 06eb9644e2da 2008-06-18 18:22:54 +01:00
d8fad9bf7a branch merge 2008-06-17 11:20:18 +01:00
f25cc5678f tiled layout resizehints should be respected by default 2008-06-17 11:19:17 +01:00
5a92420fce restored y-coordinate fixing of client windows 2008-06-17 09:57:13 +01:00
ae1d865ac0 s/tags ref/tags mask/ 2008-06-15 23:27:08 +02:00
1ce173402f updated man page regarding Mod1-m 2008-06-15 18:59:52 +01:00
a06b9193c7 minor fixes towards 5.0 2008-06-15 10:52:57 +01:00
43bb77a569 removed explicit warp in movemouse 2008-06-14 15:15:15 +01:00
e3da222c1e removed scroll-wheel based focussing on window title clicks 2008-06-14 11:25:42 +01:00
66608a60fe fix of swapped focusstack mouse buttons 2008-06-14 11:23:16 +01:00
b6aa84e51b removed the ButtonPressMask for root windows as well 2008-06-14 11:22:22 +01:00
9ff5143acb removed root window click handling 2008-06-14 11:21:50 +01:00
1edf6a7866 removed font and color definitions 2008-06-14 10:38:18 +01:00
4db2f44277 minor fix 2008-06-13 17:37:43 +01:00
1f1a132784 fixed tag click handling, however ClkRootWin doesn't work for me 2008-06-12 23:04:55 +01:00
512541bfbd update 2008-06-12 16:37:03 +01:00
709da0b858 some bugfixes of the patch application yesterday 2008-06-12 13:10:14 +01:00
5cd65f8cd8 integrated yiyus mouse.diff (though the bar click handling is slightly broken, I'm to tired to debug it now, yiyus could you please?) 2008-06-11 20:41:28 +01:00
e3838e8585 made Xinerama screen index customizable 2008-06-11 19:55:07 +01:00
016dca4f69 removed trailing spaces reported by Soleen 2008-06-11 19:47:20 +01:00
8f052596b2 crash fix 2008-06-11 19:42:24 +01:00
9463d5354b made lt visible again in config.def.h 2008-06-11 17:01:30 +01:00
d662f98d89 added nsz' patch 2008-06-11 14:10:18 +01:00
e5a965a274 added SHCMD support for pipe-based commands due the new spawn() versio 2008-06-11 13:20:17 +01:00
5d422bb1ce using foo layout during cleanup (suggested by Gottox), add Arg->v handling for togglelayout() suggested by anydot 2008-06-11 10:26:57 +01:00
38a43c2dcc lt will point to a foo-layout during cleanup now (Gottox' suggestion), and togglelayout respects Arg->v 2008-06-11 10:25:02 +01:00
c56533615f integrated Peter Hartlich's patch, removed const char *c from union, simplified togglelayout 2008-06-11 09:34:00 +01:00
a8e0772c4d applied anydot's patchset.diff 2008-06-11 09:12:06 +01:00
98e7950be8 final version -- Gottox verified it using the test driver 2008-06-09 11:24:33 +02:00
88e6eb4a3a revert of introduced problem 2008-06-09 11:05:20 +02:00
0840c1367c applied nsz' textnw patch thank you 2008-06-09 10:26:01 +02:00
077d3e435b updated the for-loop with Gottox' proposal 2008-06-09 10:05:40 +02:00
d26b60b43e minor change 2008-06-06 11:49:31 +02:00
32f36ab2d5 applied nsz's patches (many thanks!) 2008-06-04 11:49:46 +02:00
08bcf721b4 small change to drawtext 2008-06-02 12:19:02 +02:00
fc578c57e4 fixed the tile() issue with xpdf 2008-06-01 17:51:22 +01:00
c8eaab21b6 using anydot's memcpy-approach in drawtext, however it still looks awkward to me 2008-06-01 17:41:15 +01:00
c26e22ccee Gottox' drawtext simplification 2008-06-01 11:58:19 +01:00
c2784e4a38 applied noviewprev.diff, fix.diff and unusedflags.diff 2008-06-01 10:54:02 +01:00
6e9387793b fix 2008-05-31 17:37:13 +01:00
92f3c181c3 lt->arrange in mfact 2008-05-31 17:05:28 +01:00
d589f7679a isfixed implies isfloating 2008-05-30 23:03:03 +01:00
75690c808d applied nibbles fixes, slightly modified 2008-05-29 18:42:53 +01:00
fde58d5e63 applied yiyus tip patch from tue 2008-05-29 18:22:51 +01:00
e1002745fa core dump fix in cleanup 2008-05-28 10:45:18 +01:00
940a4cc6c6 updated the initial comment to reflect the use of bit arrays 2008-05-26 11:43:51 +01:00
64243ab05b slight changes 2008-05-26 11:42:02 +01:00
32c5046635 removed bx and bw, unnecessary 2008-05-26 10:28:18 +01:00
6c8618f502 renamed domax into ismax 2008-05-26 10:13:51 +01:00
9189f7a12d simplified tile() 2008-05-26 10:10:33 +01:00
2d4faae522 removed Layout->updategeom, unnecessary 2008-05-26 09:54:34 +01:00
5d2385b636 removed TEXTW 2008-05-26 09:45:34 +01:00
0fe2e783e9 applied yiyus domax patch with slight modifications 2008-05-26 09:39:57 +01:00
cd3d83f571 replaced isvisible with a macro 2008-05-22 14:15:30 +01:00
0a9ef560c0 removed emallocz 2008-05-22 14:10:00 +01:00
0528a37c79 s/int/uint/ in config.h 2008-05-22 14:02:31 +01:00
56b2fece9e removed debug output, sanitized tag limit check 2008-05-22 13:35:45 +01:00
9f569fac74 setmfact argument was wrong 2008-05-22 12:00:50 +01:00
48d0c56eac Key.mod is uint, Client.[old]bw is int 2008-05-22 11:50:18 +01:00
825d6cb93a s/unsigned long/ulong/ 2008-05-22 11:16:23 +01:00
f852504014 s/nextunfloating/nexttiled/, changed zoom() behavior 2008-05-22 11:12:22 +01:00
c3fa9e879f s/unsigned int/uint/ 2008-05-22 11:10:08 +01:00
8e05f6c592 s/void */const void */ 2008-05-22 11:08:07 +01:00
39d1ecd5b0 applied Gottox bitmask + void *arg patch 2008-05-22 11:04:19 +01:00
103fb58a44 some minor fixes 2008-05-19 20:29:57 +01:00
5f55af40ae simplification 2008-05-19 20:13:24 +01:00
f806a17692 reverted dist target in Makefile 2008-05-19 20:08:31 +01:00
822101dd5b merged tile.c again into dwm.c 2008-05-19 20:07:12 +01:00
6bdef73a4f take bar into account 2008-05-19 17:27:30 +01:00
234b12eb73 be more polite to clients which like to appear outside the window area, but still on the screen 2008-05-19 17:23:49 +01:00
bd4deaebfc fixed comment 2008-05-19 15:36:45 +01:00
499315c22c fix 2008-05-19 15:09:16 +01:00
f22d047d41 make it easier for the user, if Xinerama support is given, always use the screen 0 as window area/bar area, everything else can be used for floating clients 2008-05-19 15:05:46 +01:00
4a5c8d84db improving space usage if master is left of stack (default) 2008-05-19 14:44:53 +01:00
71365a524f only snap within window area 2008-05-19 13:41:58 +01:00
3afca3e6a1 s/DEFGEOM/CUSTOMGEOM/ 2008-05-19 13:37:46 +01:00
bdc80bdad6 update 2008-05-19 13:32:43 +01:00
64707da963 updatetilegeom should be fine for setmfact 2008-05-19 12:42:26 +01:00
549726869b recent changes, introduced togglebar, changed some defines into variable declarations where possible 2008-05-19 12:34:54 +01:00
42cb2bd3be new stuff 2008-05-17 14:51:12 +01:00
585294ce0f removed the <M> togglelayout call 2008-05-17 14:50:37 +01:00
a864a82b34 s/tilegeom/updatetilegeom/ 2008-05-17 14:48:04 +01:00
bd67a82fb5 removed monocle for now 2008-05-17 14:46:06 +01:00
14d8d828ab removed the exact focus mechanism of next/prev window 2008-05-17 14:41:41 +01:00
4246affc15 moved all tile()-related stuff into tile.c which is included from config.def.h, the default dwm is now nearly independent from the arrange() algorithm in use 2008-05-17 14:38:22 +01:00
42c4b31003 removed tileh, renamed tilev into tile again, removed counttiles, tilemaster 2008-05-17 14:23:05 +01:00
a785a0d712 removed Layout->isfloating 2008-05-17 14:17:18 +01:00
489ac07e83 removed reapply() -- unnecessary 2008-05-17 14:06:41 +01:00
349d768b57 renamed setlayout into togglelayout 2008-05-17 14:04:27 +01:00
6dfa7cac56 removed temporary wildcard handling 2008-05-15 10:51:37 +01:00
71681c21a5 added wild-card handling for tags 2008-05-15 10:47:26 +01:00
704781875c applied nsz's another style patch 2008-05-14 11:24:35 +01:00
d7cc0f6416 applied nsz's style.diff patch 2008-05-13 14:33:02 +01:00
6b79f3f326 just added a comment 2008-05-13 11:27:20 +01:00
446fa8c671 minor fixes 2008-05-11 20:27:01 +01:00
fa244aa7fb having monocle on Mod1-m 2008-05-11 20:25:24 +01:00
7ac4f8a4af hotfix 2008-05-11 20:22:20 +01:00
7eb26288fc removed Geom stuff, introduced updategeom() again, still view is somewhat broken? 2008-05-11 20:20:53 +01:00
93a4fe1052 cleaned up config.def.h 2008-05-11 14:54:45 +01:00
5602f44b29 implemented exact focus next, if arg != NULL to focus{next,prev} 2008-05-11 14:40:37 +01:00
b848f4bda8 applied the proposal by nsz 2008-05-06 15:52:44 +01:00
86c4797f2c applied JUCE patch 2008-05-06 15:13:36 +01:00
c094ed2473 simplification of view() as proposed by anydot 2008-04-27 18:36:11 +01:00
bfd6079a15 applied yiyus tagset patch 2008-04-27 18:33:31 +01:00
7f70d90219 applied yiyus fgeom patch 2008-04-27 18:22:52 +01:00
858251de46 applied dfenze drawtext simplifications 2008-04-27 18:00:45 +01:00
d26c28c1e7 this is the correct way 2008-04-20 19:09:30 +01:00
b6335776e4 copyright notice is in LICENSE 2008-04-20 19:09:00 +01:00
c059625128 applied Ph's seltags-simplification with some modifications 2008-04-20 18:35:11 +01:00
874837f653 applied Ph's MIN/MAX patch, nice work! 2008-04-20 18:28:21 +01:00
5fa559dbfc applied Ph's patch regarding geom and lt initialization 2008-04-20 18:23:59 +01:00
146ff227fe applied Gottox' applyrules() fix 2008-04-20 18:17:33 +01:00
bb0a328978 geometry fix proposed by Jukka 2008-04-08 11:49:35 +01:00
721b208478 applied applyrules-fix by Jukka, thank you Jukka! 2008-04-07 09:05:41 +01:00
6229ed20c2 fix 2008-04-05 19:04:53 +01:00
940240e5e6 applied the proposed monocle patch from the mailinglist 2008-04-05 18:23:31 +01:00
08c596ed10 next version is 5.0 2008-04-04 11:15:37 +01:00
9ce6abb95c Added tag 4.9 for changeset 22c669b2dd36 2008-04-03 21:57:32 +01:00
0e21794e02 yet another cleanup 2008-04-03 14:39:19 +01:00
d477fb6927 some cleanup changes 2008-04-03 14:38:58 +01:00
3d6630b7d2 uncommented dual layout in preparation of dwm 4.9 2008-04-02 22:18:09 +01:00
c982bb1389 applied Peter Hartlich's simplification patch of setmfact and his revival of MFACT, appliead Janness Hofmann's simplification of grabbuttons() -- thanks guys! 2008-04-02 22:10:55 +01:00
6cf73e706a aspects hints seem broken for fullscreen apps 2008-04-01 15:46:00 +01:00
a520ba3c0b removed uneccessary line 2008-03-31 10:09:48 +01:00
0c71b16b92 bugfix 2008-03-25 09:41:14 +00:00
00c28a7ef2 setmfact should not have any effect if in floating layout 2008-03-24 14:31:02 +00:00
5a3a2d6b63 minor fix 2008-03-24 14:24:57 +00:00
a355782a77 revival of mfact and setmfact 2008-03-24 14:23:28 +00:00
20cd336087 setlayout and setgeom are now togglable again 2008-03-24 13:49:19 +00:00
a6a216f28c geom indicator and layout indicator is only displayed if there are several geoms/layouts 2008-03-24 13:33:32 +00:00
2c2063bc75 hotfix of idxoftag 2008-03-22 16:53:37 +00:00
e6ede461a9 blw/bgw calculation bugfix 2008-03-22 12:47:12 +00:00
6877205e9d updated configurenotify 2008-03-19 09:27:17 +00:00
fb5f99d935 minor bugfix in applyrules 2008-03-17 23:45:46 +00:00
7ebab7533a added sample of {grow,shrink}master to config.def.h 2008-03-17 17:33:25 +00:00
9fa5ca3538 renamed c->border into c->bw, fixed monocle to subtract c->bw from each h/w value 2008-03-17 16:29:50 +00:00
fe6b0c0fc1 geoms are now drawed in the status bar 2008-03-17 16:26:06 +00:00
aa2395b6a8 removed the string-based setgeom approach, introduced a new Geom type instead and a helper macro 2008-03-17 14:56:11 +00:00
dba22848c7 made the string-based setgeom working 2008-03-15 14:17:42 +00:00
33b1960220 some experimental state DO NOT USE THIS, I plan to have a nicer interface to change geometries 2008-03-14 17:17:08 +00:00
e237b2a76f some changes towards 4.9 2008-03-14 14:35:45 +00:00
dd9ee6d248 Added tag 4.8 for changeset 607015ddb091 2008-03-13 16:56:11 +00:00
12 changed files with 1707 additions and 1450 deletions

19
.hgtags
View File

@ -51,3 +51,22 @@ e0ec0d5d8b1ef3ee04a83c7c0fee5853aa2ac6a6 4.3
2acc60d6dfe28c101a8cd44a8aa710a38ae3607c 4.5
bcd7e18e196a00cc2e97ff3a4a58f3cdaba13856 4.6
d6d3085307d8d98b8b012b669e858fd787befeb1 4.7
607015ddb091d49cbd3457af41713691aa69f4d6 4.8
22c669b2dd3673785c3476b9976da21e8783f745 4.9
06eb9644e2dad7667d97495eb7d7bc62aa0429e8 5.0
ce355cea9bb89e162f61913737a46908cdfa7e45 5.1
e4bcaca8e6ef13d2c3b81f1218ad15e5da4d68bd 5.2
4004d61160355d869a7d2672561caad440751ba0 5.3
335301ed102fec9b1a15d06bfa0184d53b38fa54 5.3.1
8b7836a471f8f9ee61bec980df00971888d76343 5.4
85a78d8afa0fe8b106a8223b5327e5bddb5dd5e3 5.4.1
deaa276abac17ca08fbeb936916e4c8292d293a4 5.5
5550702215773aad462f22a774dced9b87437c51 5.6
e47a47bd3ed42fd3cf023572147b75ebc2adef82 5.6.1
257403d4cd962cac03344a871ea56cc742bae38e 5.7
48c3f87c335d6606e55fbae97267fa6b39ca56e0 5.7.1
15761ac5e2f1e9010900f891616a24a22d82f128 5.7.2
60ea8fed13ab750c6717f2764cbf9c13bb6f0d0a 5.8
1ed1e75c9c2e395a2c475b52657a430bd95070c7 5.8.1
a043f08008051ca02ae87eb170cd066d8c8315a0 5.8.2
dd74622a4785e55658b05b36834fa0c41084a8c1 5.9

69
BUGS Normal file
View File

@ -0,0 +1,69 @@
---
18:17 < Biolunar> when i change my resolution in dwm (to a smaller one) and then back to the native, the top bar is not repainted. that's since 5.7.2, in 5.6 it worked fine
18:19 < Biolunar> is it just happening to me or a (known) bug?
18:24 < Biolunar> and in addition, mplayers fullscreen is limited to the small resolution after i changed it back to the native
reproducible with xrandr -s but not with --output and --mode, strange
---
yet another corner case:
open a terminal, focus another monitor, but without moving the mouse
pointer there
if there is no client on the other monitor to get the focus, then the
terminal will be unfocused but it will accept input
---
Donald Allen reported this:
starting emacs from dmenu in archlinux results in missing configure of emacs, but mod1-space or mod1-shift-space fix this problem. this problem is new and did not happen in 1.6 xorg servers
Starting emacs from xterm doesnt show this problem, he uses tag 8 for emacs
---
2009/12/7 Alexandr Krylovskiy <wing_AT_tversu.ru>:
> Fullscreen mode with flash applications (youtube, for example) doesn't
> work properly neither in tiled nor in floating mode.
> Fullscreen window closes immediately after opening.
This is a known bug (for some curiosity I received the same report via
privmail from 2 other people within one week, really strange).
The quick fix is commenting out the code in lines 817/818 in hg tip
dwm. I cannot confirm this has no side effects (I think it does) and I
will address this issue shortly with a real fix.
---
SDL seems to not like non-reparenting WMs:
> I would like to mention SDL problems, however SDL is not crucial to
> me anymore; people that really care about it should speak up and
> propose dwm / SDL patch or cooperation scheme in that matter.
Patching SDL, bugging them?
---
voltaic reports this:
When I use two monitors, one larger in resolution than the other, the
bar is drawn using the smaller x-dimension on both screens. I think
what's happening is that there are two bars drawn, but the short bar
is always on top of the long bar such that I can't see the information
under the short bar. If I switch to the small screen, hide the short
bar, and then switch to the large screen, the long bar is drawn
correctly.
A similar problem occurs when I have started dwm on a small resolution
monitor (laptop screen) and then I switch to a large external display.
When I do this, the bar itself is drawn for the original smaller
resolution, but the information to be printed on the bar is
right-aligned for a longer bar. So what I see is a bar that has the
right hand side of it cut-off. See attached screenshot.
I am using standard options for xrandr such as --output VGA1 --auto, etc.
---

35
LICENSE
View File

@ -1,27 +1,32 @@
MIT/X Consortium License
© 2006-2008 Anselm R Garbe <garbeam at gmail dot com>
© 2006-2007 Sander van Dijk <a dot h dot vandijk at gmail dot com>
© 2006-2007 Jukka Salmi <jukka at salmi dot ch>
© 2007 Premysl Hruby <dfenze at gmail dot com>
© 2007 Szabolcs Nagy <nszabolcs at gmail dot com>
© 2007 Christof Musik <christof at sendfax dot de>
© 2006-2011 Anselm R Garbe <anselm@garbe.us>
© 2007-2011 Peter Hartlich <sgkkr at hartlich dot com>
© 2010-2011 Connor Lane Smith <cls@lubutu.com>
© 2006-2009 Jukka Salmi <jukka at salmi dot ch>
© 2007-2009 Premysl Hruby <dfenze at gmail dot com>
© 2007-2009 Szabolcs Nagy <nszabolcs at gmail dot com>
© 2007-2009 Christof Musik <christof at sendfax dot de>
© 2009 Mate Nagy <mnagy at port70 dot net>
© 2007-2008 Enno Gottox Boland <gottox at s01 dot de>
© 2008 Martin Hurton <martin dot hurton at gmail dot com>
© 2008 Neale Pickett <neale dot woozle dot org>
© 2006-2007 Sander van Dijk <a dot h dot vandijk at gmail dot com>
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the
and/or sell copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.

View File

@ -1,5 +1,5 @@
# dwm - dynamic window manager
# © 2006-2007 Anselm R. Garbe, Sander van Dijk
# See LICENSE file for copyright and license details.
include config.mk
@ -35,7 +35,7 @@ clean:
dist: clean
@echo creating dist tarball
@mkdir -p dwm-${VERSION}
@cp -R LICENSE Makefile README config.*.h config.mk \
@cp -R LICENSE Makefile README config.def.h config.mk \
dwm.1 ${SRC} dwm-${VERSION}
@tar -cf dwm-${VERSION}.tar dwm-${VERSION}
@gzip dwm-${VERSION}.tar

8
README
View File

@ -38,11 +38,11 @@ the DISPLAY environment variable is set correctly, e.g.:
In order to display status info in the bar, you can do something
like this in your .xinitrc:
while true
while xsetroot -name "`date` `uptime | sed 's/.*,//'`"
do
echo `date` `uptime | sed 's/.*,//'`
sleep 1
done | dwm
sleep 1
done &
exec dwm
Configuration

4
TODO Normal file
View File

@ -0,0 +1,4 @@
- add a flag to Key to execute the command on release (needed for commands
affecting the keyboard grab, see scrot -s for example)
- add updategeom() hook for external tools like dzen
- consider onscreenkeyboard hooks for tablet deployment

View File

@ -1,151 +0,0 @@
/* See LICENSE file for copyright and license details. */
/* appearance */
#define BORDERPX 1
#define FONT "-*-terminus-medium-r-normal-*-14-*-*-*-*-*-*-*"
#define NORMBORDERCOLOR "#cccccc"
#define NORMBGCOLOR "#cccccc"
#define NORMFGCOLOR "#000000"
#define SELBORDERCOLOR "#0066ff"
#define SELBGCOLOR "#0066ff"
#define SELFGCOLOR "#ffffff"
/* tagging */
const char tags[][MAXTAGLEN] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" };
Rule rules[] = {
/* class:instance:title substr tags ref isfloating */
{ "Firefox", tags[8], False },
{ "Gimp", NULL, True },
{ "MPlayer", NULL, True },
{ "Acroread", NULL, True },
};
/* layout(s) */
#define RESIZEHINTS True /* False - respect size hints in tiled resizals */
#define SNAP 32 /* snap pixel */
Layout layouts[] = {
/* symbol function isfloating */
{ "[]|", tileh, False }, /* first entry is default */
{ "[]=", tilev, False },
{ "><>", floating, True },
{ "[M]", monocle, True },
};
void
setanselmgeoms(void) {
/* screen dimensions */
sx = 0;
sy = 0;
sw = DisplayWidth(dpy, screen);
sh = DisplayHeight(dpy, screen);
/* bar position */
bx = sx;
by = sy;
bw = 1280;
bh = dc.font.height + 2;
/* window area */
wx = sx;
wy = sy + bh;
ww = sw;
wh = sh - bh;
/* master area */
mx = wx;
my = wy;
mw = 1280;
mh = 800 - bh;
/* tile area */
tx = 1280;
ty = 0;
tw = sw - 1280;
th = sh;
/* monocle area */
mox = mx;
moy = my;
mow = mw;
moh = mh;
}
void
anselmgeoms(const char *arg) {
setgeoms = setanselmgeoms;
setgeoms();
updatebarpos();
setlayout("[]|");
}
void
defgeoms(const char *arg) {
setgeoms = setdefaultgeoms;
setgeoms();
updatebarpos();
setlayout("[]=");
}
/* key definitions */
#define MODKEY Mod1Mask
Key keys[] = {
/* modifier key function argument */
{ MODKEY, XK_p, spawn,
"exec dmenu_run -fn '"FONT"' -nb '"NORMBGCOLOR"' -nf '"NORMFGCOLOR"' -sb '"SELBGCOLOR"' -sf '"SELFGCOLOR"' -x 0 -y 0 -w 1280" },
{ MODKEY|ShiftMask, XK_Return, spawn, "exec uxterm" },
{ MODKEY, XK_a, anselmgeoms, NULL },
{ MODKEY, XK_d, defgeoms, NULL },
{ MODKEY, XK_j, focusnext, NULL },
{ MODKEY, XK_k, focusprev, NULL },
{ MODKEY, XK_r, reapply, NULL },
{ MODKEY, XK_Return, zoom, NULL },
{ MODKEY, XK_Tab, viewprevtag, NULL },
{ MODKEY, XK_m, setlayout, "[M]" },
{ MODKEY, XK_f, setlayout, "><>" },
{ MODKEY, XK_v, setlayout, "[]=" },
{ MODKEY, XK_h, setlayout, "[]|" },
{ MODKEY|ShiftMask, XK_space, togglefloating, NULL },
{ MODKEY|ShiftMask, XK_c, killclient, NULL },
{ MODKEY, XK_0, view, NULL },
{ MODKEY, XK_1, view, tags[0] },
{ MODKEY, XK_2, view, tags[1] },
{ MODKEY, XK_3, view, tags[2] },
{ MODKEY, XK_4, view, tags[3] },
{ MODKEY, XK_5, view, tags[4] },
{ MODKEY, XK_6, view, tags[5] },
{ MODKEY, XK_7, view, tags[6] },
{ MODKEY, XK_8, view, tags[7] },
{ MODKEY, XK_9, view, tags[8] },
{ MODKEY|ControlMask, XK_1, toggleview, tags[0] },
{ MODKEY|ControlMask, XK_2, toggleview, tags[1] },
{ MODKEY|ControlMask, XK_3, toggleview, tags[2] },
{ MODKEY|ControlMask, XK_4, toggleview, tags[3] },
{ MODKEY|ControlMask, XK_5, toggleview, tags[4] },
{ MODKEY|ControlMask, XK_6, toggleview, tags[5] },
{ MODKEY|ControlMask, XK_7, toggleview, tags[6] },
{ MODKEY|ControlMask, XK_8, toggleview, tags[7] },
{ MODKEY|ControlMask, XK_9, toggleview, tags[8] },
{ MODKEY|ShiftMask, XK_0, tag, NULL },
{ MODKEY|ShiftMask, XK_1, tag, tags[0] },
{ MODKEY|ShiftMask, XK_2, tag, tags[1] },
{ MODKEY|ShiftMask, XK_3, tag, tags[2] },
{ MODKEY|ShiftMask, XK_4, tag, tags[3] },
{ MODKEY|ShiftMask, XK_5, tag, tags[4] },
{ MODKEY|ShiftMask, XK_6, tag, tags[5] },
{ MODKEY|ShiftMask, XK_7, tag, tags[6] },
{ MODKEY|ShiftMask, XK_8, tag, tags[7] },
{ MODKEY|ShiftMask, XK_9, tag, tags[8] },
{ MODKEY|ControlMask|ShiftMask, XK_1, toggletag, tags[0] },
{ MODKEY|ControlMask|ShiftMask, XK_2, toggletag, tags[1] },
{ MODKEY|ControlMask|ShiftMask, XK_3, toggletag, tags[2] },
{ MODKEY|ControlMask|ShiftMask, XK_4, toggletag, tags[3] },
{ MODKEY|ControlMask|ShiftMask, XK_5, toggletag, tags[4] },
{ MODKEY|ControlMask|ShiftMask, XK_6, toggletag, tags[5] },
{ MODKEY|ControlMask|ShiftMask, XK_7, toggletag, tags[6] },
{ MODKEY|ControlMask|ShiftMask, XK_8, toggletag, tags[7] },
{ MODKEY|ControlMask|ShiftMask, XK_9, toggletag, tags[8] },
{ MODKEY|ShiftMask, XK_q, quit, NULL },
};

View File

@ -1,93 +1,105 @@
/* See LICENSE file for copyright and license details. */
/* appearance */
#define BORDERPX 1
#define FONT "-*-terminus-medium-r-normal-*-14-*-*-*-*-*-*-*"
#define NORMBORDERCOLOR "#cccccc"
#define NORMBGCOLOR "#cccccc"
#define NORMFGCOLOR "#000000"
#define SELBORDERCOLOR "#0066ff"
#define SELBGCOLOR "#0066ff"
#define SELFGCOLOR "#ffffff"
static const char font[] = "-*-terminus-medium-r-*-*-16-*-*-*-*-*-*-*";
static const char normbordercolor[] = "#444444";
static const char normbgcolor[] = "#222222";
static const char normfgcolor[] = "#bbbbbb";
static const char selbordercolor[] = "#005577";
static const char selbgcolor[] = "#005577";
static const char selfgcolor[] = "#eeeeee";
static const unsigned int borderpx = 1; /* border pixel of windows */
static const unsigned int snap = 32; /* snap pixel */
static const Bool showbar = True; /* False means no bar */
static const Bool topbar = True; /* False means bottom bar */
/* tagging */
const char tags[][MAXTAGLEN] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" };
static const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" };
Rule rules[] = {
/* class:instance:title substr tags ref isfloating */
{ "Firefox", tags[8], False },
{ "Gimp", NULL, True },
{ "MPlayer", NULL, True },
{ "Acroread", NULL, True },
static const Rule rules[] = {
/* class instance title tags mask isfloating monitor */
{ "Gimp", NULL, NULL, 0, True, -1 },
{ "Firefox", NULL, NULL, 1 << 8, False, -1 },
};
/* layout(s) */
#define RESIZEHINTS True /* False - respect size hints in tiled resizals */
#define SNAP 32 /* snap pixel */
static const float mfact = 0.55; /* factor of master area size [0.05..0.95] */
static const int nmaster = 1; /* number of clients in master area */
static const Bool resizehints = True; /* True means respect size hints in tiled resizals */
Layout layouts[] = {
/* symbol function isfloating */
{ "[]=", tilev, False }, /* first entry is default */
{ "[]|", tileh, False },
{ "><>", floating, True },
{ "[M]", monocle, True },
static const Layout layouts[] = {
/* symbol arrange function */
{ "[]=", tile }, /* first entry is default */
{ "><>", NULL }, /* no layout function means floating behavior */
{ "[M]", monocle },
};
/* key definitions */
#define MODKEY Mod1Mask
Key keys[] = {
/* modifier key function argument */
{ MODKEY, XK_p, spawn,
"exec dmenu_run -fn '"FONT"' -nb '"NORMBGCOLOR"' -nf '"NORMFGCOLOR"' -sb '"SELBGCOLOR"' -sf '"SELFGCOLOR"'" },
{ MODKEY|ShiftMask, XK_Return, spawn, "exec uxterm" },
{ MODKEY, XK_j, focusnext, NULL },
{ MODKEY, XK_k, focusprev, NULL },
{ MODKEY, XK_r, reapply, NULL },
{ MODKEY, XK_Return, zoom, NULL },
{ MODKEY, XK_Tab, viewprevtag, NULL },
{ MODKEY, XK_m, setlayout, "[M]" },
{ MODKEY, XK_f, setlayout, "><>" },
{ MODKEY, XK_v, setlayout, "[]=" },
{ MODKEY, XK_h, setlayout, "[]|" },
{ MODKEY|ShiftMask, XK_space, togglefloating, NULL },
{ MODKEY|ShiftMask, XK_c, killclient, NULL },
{ MODKEY, XK_0, view, NULL },
{ MODKEY, XK_1, view, tags[0] },
{ MODKEY, XK_2, view, tags[1] },
{ MODKEY, XK_3, view, tags[2] },
{ MODKEY, XK_4, view, tags[3] },
{ MODKEY, XK_5, view, tags[4] },
{ MODKEY, XK_6, view, tags[5] },
{ MODKEY, XK_7, view, tags[6] },
{ MODKEY, XK_8, view, tags[7] },
{ MODKEY, XK_9, view, tags[8] },
{ MODKEY|ControlMask, XK_1, toggleview, tags[0] },
{ MODKEY|ControlMask, XK_2, toggleview, tags[1] },
{ MODKEY|ControlMask, XK_3, toggleview, tags[2] },
{ MODKEY|ControlMask, XK_4, toggleview, tags[3] },
{ MODKEY|ControlMask, XK_5, toggleview, tags[4] },
{ MODKEY|ControlMask, XK_6, toggleview, tags[5] },
{ MODKEY|ControlMask, XK_7, toggleview, tags[6] },
{ MODKEY|ControlMask, XK_8, toggleview, tags[7] },
{ MODKEY|ControlMask, XK_9, toggleview, tags[8] },
{ MODKEY|ShiftMask, XK_0, tag, NULL },
{ MODKEY|ShiftMask, XK_1, tag, tags[0] },
{ MODKEY|ShiftMask, XK_2, tag, tags[1] },
{ MODKEY|ShiftMask, XK_3, tag, tags[2] },
{ MODKEY|ShiftMask, XK_4, tag, tags[3] },
{ MODKEY|ShiftMask, XK_5, tag, tags[4] },
{ MODKEY|ShiftMask, XK_6, tag, tags[5] },
{ MODKEY|ShiftMask, XK_7, tag, tags[6] },
{ MODKEY|ShiftMask, XK_8, tag, tags[7] },
{ MODKEY|ShiftMask, XK_9, tag, tags[8] },
{ MODKEY|ControlMask|ShiftMask, XK_1, toggletag, tags[0] },
{ MODKEY|ControlMask|ShiftMask, XK_2, toggletag, tags[1] },
{ MODKEY|ControlMask|ShiftMask, XK_3, toggletag, tags[2] },
{ MODKEY|ControlMask|ShiftMask, XK_4, toggletag, tags[3] },
{ MODKEY|ControlMask|ShiftMask, XK_5, toggletag, tags[4] },
{ MODKEY|ControlMask|ShiftMask, XK_6, toggletag, tags[5] },
{ MODKEY|ControlMask|ShiftMask, XK_7, toggletag, tags[6] },
{ MODKEY|ControlMask|ShiftMask, XK_8, toggletag, tags[7] },
{ MODKEY|ControlMask|ShiftMask, XK_9, toggletag, tags[8] },
{ MODKEY|ShiftMask, XK_q, quit, NULL },
#define MODKEY Mod1Mask
#define TAGKEYS(KEY,TAG) \
{ MODKEY, KEY, view, {.ui = 1 << TAG} }, \
{ MODKEY|ControlMask, KEY, toggleview, {.ui = 1 << TAG} }, \
{ MODKEY|ShiftMask, KEY, tag, {.ui = 1 << TAG} }, \
{ MODKEY|ControlMask|ShiftMask, KEY, toggletag, {.ui = 1 << TAG} },
/* helper for spawning shell commands in the pre dwm-5.0 fashion */
#define SHCMD(cmd) { .v = (const char*[]){ "/bin/sh", "-c", cmd, NULL } }
/* commands */
static const char *dmenucmd[] = { "dmenu_run", "-fn", font, "-nb", normbgcolor, "-nf", normfgcolor, "-sb", selbgcolor, "-sf", selfgcolor, NULL };
static const char *termcmd[] = { "uxterm", NULL };
static Key keys[] = {
/* modifier key function argument */
{ MODKEY, XK_p, spawn, {.v = dmenucmd } },
{ MODKEY|ShiftMask, XK_Return, spawn, {.v = termcmd } },
{ MODKEY, XK_b, togglebar, {0} },
{ MODKEY, XK_j, focusstack, {.i = +1 } },
{ MODKEY, XK_k, focusstack, {.i = -1 } },
{ MODKEY, XK_i, incnmaster, {.i = +1 } },
{ MODKEY, XK_d, incnmaster, {.i = -1 } },
{ MODKEY, XK_h, setmfact, {.f = -0.05} },
{ MODKEY, XK_l, setmfact, {.f = +0.05} },
{ MODKEY, XK_Return, zoom, {0} },
{ MODKEY, XK_Tab, view, {0} },
{ MODKEY|ShiftMask, XK_c, killclient, {0} },
{ MODKEY, XK_t, setlayout, {.v = &layouts[0]} },
{ MODKEY, XK_f, setlayout, {.v = &layouts[1]} },
{ MODKEY, XK_m, setlayout, {.v = &layouts[2]} },
{ MODKEY, XK_space, setlayout, {0} },
{ MODKEY|ShiftMask, XK_space, togglefloating, {0} },
{ MODKEY, XK_0, view, {.ui = ~0 } },
{ MODKEY|ShiftMask, XK_0, tag, {.ui = ~0 } },
{ MODKEY, XK_comma, focusmon, {.i = -1 } },
{ MODKEY, XK_period, focusmon, {.i = +1 } },
{ MODKEY|ShiftMask, XK_comma, tagmon, {.i = -1 } },
{ MODKEY|ShiftMask, XK_period, tagmon, {.i = +1 } },
TAGKEYS( XK_1, 0)
TAGKEYS( XK_2, 1)
TAGKEYS( XK_3, 2)
TAGKEYS( XK_4, 3)
TAGKEYS( XK_5, 4)
TAGKEYS( XK_6, 5)
TAGKEYS( XK_7, 6)
TAGKEYS( XK_8, 7)
TAGKEYS( XK_9, 8)
{ MODKEY|ShiftMask, XK_q, quit, {0} },
};
/* button definitions */
/* click can be ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, or ClkRootWin */
static Button buttons[] = {
/* click event mask button function argument */
{ ClkLtSymbol, 0, Button1, setlayout, {0} },
{ ClkLtSymbol, 0, Button3, setlayout, {.v = &layouts[2]} },
{ ClkWinTitle, 0, Button2, zoom, {0} },
{ ClkStatusText, 0, Button2, spawn, {.v = termcmd } },
{ ClkClientWin, MODKEY, Button1, movemouse, {0} },
{ ClkClientWin, MODKEY, Button2, togglefloating, {0} },
{ ClkClientWin, MODKEY, Button3, resizemouse, {0} },
{ ClkTagBar, 0, Button1, view, {0} },
{ ClkTagBar, 0, Button3, toggleview, {0} },
{ ClkTagBar, MODKEY, Button1, tag, {0} },
{ ClkTagBar, MODKEY, Button3, toggletag, {0} },
};

View File

@ -1,5 +1,5 @@
# dwm version
VERSION = 4.8
VERSION = 6.0
# Customize below to fit your system
@ -10,20 +10,24 @@ MANPREFIX = ${PREFIX}/share/man
X11INC = /usr/X11R6/include
X11LIB = /usr/X11R6/lib
# Xinerama
XINERAMALIBS = -L${X11LIB} -lXinerama
XINERAMAFLAGS = -DXINERAMA
# includes and libs
INCS = -I. -I/usr/include -I${X11INC}
LIBS = -L/usr/lib -lc -L${X11LIB} -lX11
LIBS = -L/usr/lib -lc -L${X11LIB} -lX11 ${XINERAMALIBS}
# flags
CFLAGS = -Os ${INCS} -DVERSION=\"${VERSION}\"
LDFLAGS = -s ${LIBS}
#CFLAGS = -g -std=c99 -pedantic -Wall -O2 ${INCS} -DVERSION=\"${VERSION}\" -DWORK
CPPFLAGS = -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
#CFLAGS = -g -std=c99 -pedantic -Wall -O0 ${INCS} ${CPPFLAGS}
CFLAGS = -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS}
#LDFLAGS = -g ${LIBS}
LDFLAGS = -s ${LIBS}
# Solaris
#CFLAGS = -fast ${INCS} -DVERSION=\"${VERSION}\"
#LDFLAGS = ${LIBS}
#CFLAGS += -xtarget=ultra
# compiler and linker
CC = cc

108
dwm.1
View File

@ -19,14 +19,14 @@ layout applied.
Windows are grouped by tags. Each window can be tagged with one or multiple
tags. Selecting certain tags displays all windows with these tags.
.P
dwm contains a small status bar which displays all available tags, the layout,
the title of the focused window, and the text read from standard input. A
floating window is indicated with an empty square and a maximised
floating window is indicated with a filled square before the windows
title. The selected tags are indicated with a different color. The tags of
the focused window are indicated with a filled square in the top left
corner. The tags which are applied to one or more windows are indicated
with an empty square in the top left corner.
Each screen contains a small status bar which displays all available tags, the
layout, the title of the focused window, and the text read from the root window
name property, if the screen is focused. A floating window is indicated with an
empty square and a maximised floating window is indicated with a filled square
before the windows title. The selected tags are indicated with a different
color. The tags of the focused window are indicated with a filled square in the
top left corner. The tags which are applied to one or more windows are
indicated with an empty square in the top left corner.
.P
dwm draws a small border around windows to indicate the focus state.
.SH OPTIONS
@ -36,8 +36,10 @@ prints version information to standard output, then exits.
.SH USAGE
.SS Status bar
.TP
.B Standard input
is read and displayed in the status text area.
.B X root window name
is read and displayed in the status text area. It can be set with the
.BR xsetroot (1)
command.
.TP
.B Button1
click on a tag label to display all windows with that tag, click on the layout
@ -55,19 +57,34 @@ click on a tag label adds/removes that tag to/from the focused window.
.TP
.B Mod1\-Shift\-Return
Start
.BR xterm.
.BR uxterm (1).
.TP
.B Mod1\-,
Focus previous screen, if any.
.TP
.B Mod1\-.
Focus next screen, if any.
.TP
.B Mod1\-Shift\-,
Send focused window to previous screen, if any.
.TP
.B Mod1\-Shift\-.
Send focused window to next screen, if any.
.TP
.B Mod1\-b
Toggles bar on and off.
.TP
.B Mod1\-t
Sets tiled layout.
.TP
.B Mod1\-f
Applies floating layout.
Sets floating layout.
.TP
.B Mod1\-m
Applies monocle layout.
Sets monocle layout.
.TP
.B Mod1\-v
Applies vertical tiled layout.
.TP
.B Mod1\-h
Applies horizontal tiled layout.
.B Mod1\-space
Toggles between current and previous layout.
.TP
.B Mod1\-j
Focus next window.
@ -75,6 +92,18 @@ Focus next window.
.B Mod1\-k
Focus previous window.
.TP
.B Mod1\-i
Increase clients in master area.
.TP
.B Mod1\-d
Decrease clients in master area.
.TP
.B Mod1\-l
Increase master area size.
.TP
.B Mod1\-h
Decrease master area size.
.TP
.B Mod1\-Return
Zooms/cycles focused window to/from master area (tiled layouts only).
.TP
@ -87,34 +116,23 @@ Toggle focused window between tiled and floating state.
.B Mod1\-Tab
Toggles to the previously selected tags.
.TP
.B Mod1\-r
Re-applies tagging rules to all windows.
.TP
.B Mod1\-Shift\-[1..n]
Apply
.RB nth
tag to focused window.
Apply nth tag to focused window.
.TP
.B Mod1\-Shift\-0
Apply all tags to focused window.
.TP
.B Mod1\-Control\-Shift\-[1..n]
Add/remove
.B nth
tag to/from focused window.
Add/remove nth tag to/from focused window.
.TP
.B Mod1\-[1..n]
View all windows with
.BR nth
tag.
View all windows with nth tag.
.TP
.B Mod1\-0
View all windows with any tag.
.TP
.B Mod1\-Control\-[1..n]
Add/remove all windows with
.BR nth
tag to/from the view.
Add/remove all windows with nth tag to/from the view.
.TP
.B Mod1\-Shift\-q
Quit dwm.
@ -124,7 +142,7 @@ Quit dwm.
Move focused window while dragging. Tiled windows will be toggled to the floating state.
.TP
.B Mod1\-Button2
Zooms/cycles focused window to/from master area. If it is floating (but not fixed) it will be toggled to the tiled state instead.
Toggles focused window between floating and tiled state.
.TP
.B Mod1\-Button3
Resize focused window while dragging. Tiled windows will be toggled to the floating state.
@ -134,19 +152,19 @@ code. This keeps it fast, secure and simple.
.SH SEE ALSO
.BR dmenu (1)
.SH BUGS
The status bar may display
.BR "EOF"
when dwm has been started by an X session manager like
.BR xdm (1),
because those close standard output before executing dwm.
.P
Java applications which use the XToolkit/XAWT backend may draw grey windows
only. The XToolkit/XAWT backend breaks ICCCM-compliance in recent JDK 1.5 and early
JDK 1.6 versions, because it assumes a reparenting window manager. As a workaround
you can use JDK 1.4 (which doesn't contain the XToolkit/XAWT backend) or you
can set the following environment variable (to use the older Motif
backend instead):
.BR AWT_TOOLKIT=MToolkit .
JDK 1.6 versions, because it assumes a reparenting window manager. Possible workarounds
are using JDK 1.4 (which doesn't contain the XToolkit/XAWT backend) or setting the
environment variable
.BR AWT_TOOLKIT=MToolkit
(to use the older Motif backend instead) or running
.B xprop -root -f _NET_WM_NAME 32a -set _NET_WM_NAME LG3D
or
.B wmname LG3D
(to pretend that a non-reparenting window manager is running that the
XToolkit/XAWT backend can recognize) or when using OpenJDK setting the environment variable
.BR _JAVA_AWT_WM_NONREPARENTING=1 .
.P
GTK 2.10.9+ versions contain a broken
.BR Save\-As

2531
dwm.c

File diff suppressed because it is too large Load Diff

42
transient.c Normal file
View File

@ -0,0 +1,42 @@
/* cc transient.c -o transient -lX11 */
#include <stdlib.h>
#include <unistd.h>
#include <X11/Xlib.h>
#include <X11/Xutil.h>
int main(void) {
Display *d;
Window r, f, t = None;
XSizeHints h;
XEvent e;
d = XOpenDisplay(NULL);
if (!d)
exit(1);
r = DefaultRootWindow(d);
f = XCreateSimpleWindow(d, r, 100, 100, 400, 400, 0, 0, 0);
h.min_width = h.max_width = h.min_height = h.max_height = 400;
h.flags = PMinSize | PMaxSize;
XSetWMNormalHints(d, f, &h);
XStoreName(d, f, "floating");
XMapWindow(d, f);
XSelectInput(d, f, ExposureMask);
while (1) {
XNextEvent(d, &e);
if (t == None) {
sleep(5);
t = XCreateSimpleWindow(d, r, 50, 50, 100, 100, 0, 0, 0);
XSetTransientForHint(d, t, f);
XStoreName(d, t, "transient");
XMapWindow(d, t);
XSelectInput(d, t, ExposureMask);
}
}
XCloseDisplay(d);
exit(0);
}