Commit graph

138 commits

Author SHA1 Message Date
Marco Peereboom
601c699a89 Bump version for snap 2009-02-03 22:19:40 +00:00
Marco Peereboom
fd728cbbe4 *sigh* fix corner case where windows were being mapped from a different
workspace after alt-q.
2009-02-03 22:04:50 +00:00
Marco Peereboom
1b589d81a4 Add gimp as a full floating app and fix missing floaters. 2009-02-03 21:50:16 +00:00
Marco Peereboom
914f1c9d34 Add M-S-i for windows-envy multiscreen support. This calls an external
script that does the xrandr magic.
2009-02-03 16:37:56 +00:00
Ryan McBride
3c99b00a53 Better, hopefully math-exception-free logic for multi-column stacker, and
fix off-by-two error in stack width calculations.
2009-02-03 14:49:40 +00:00
Ryan McBride
80969cf8c2 Add M-S-, and M-S-. keybindings to add and remove columns (vertical stack)
or rows (horizontal stack) from the stacking (non-master) area.
2009-02-03 13:13:30 +00:00
Ryan McBride
ec9567149f More cleanup found while debugging my last silly mistake.
- don't ask for Xrandr events until we've set up the screens
- don't use an iterator for more than one thing at a time
- we don't need to handle RRNotify messages
- Move some bits around to fix compile on certain non-OpenBSD platforms
- Other cleanup and de-obfuscation
2009-02-03 06:45:53 +00:00
Marco Peereboom
f5f7f0d8ee Oops from mcbride and some style and a comment. 2009-02-03 06:38:25 +00:00
Ryan McBride
08390e53a1 Subscribe to xrandr events, and update our regions dynamically.
Keep a list of old regions around to reuse the region to ws mapping (and
other parameters later)
2009-02-03 05:08:27 +00:00
Marco Peereboom
e9824be628 Check if we are changing workspaces and only unmanage the window if we
are not.
2009-02-03 02:21:01 +00:00
Marco Peereboom
9603301049 Oops do some focus magic just as before. Note this is still hosed due to
enternotify but that is an older issue.
2009-02-03 00:54:35 +00:00
Marco Peereboom
a7d3c9fae6 Add quirk for retarded dialog window sizes and make firefox use it.
Do not resize dialogs unless retarded.
Add unmanager_window so that windows that are unmapped and are transient
are no longer managed; xpdf needs this and other apps dont seem to care.
2009-02-03 00:50:01 +00:00
Ryan McBride
97f28c42c7 Support user-defined regions. Lets you split monster monitors into multiple
regions, or override scrotwm's multi-head autodetection (such as on video
drivers that do multihead without telling X).

Also a big step towards dynamic Xrandr support.
2009-02-01 11:59:40 +00:00
Ryan McBride
4cd489c8fd Silence format string warnings with debug enabled;
"Window" is not int (%d), it's unsigned long (%lu).
2009-02-01 10:05:25 +00:00
Marco Peereboom
0337f0c525 Add lock screen 2009-02-01 05:29:43 +00:00
Marco Peereboom
07e24994b8 Bump version for snap 2009-02-01 04:03:40 +00:00
Marco Peereboom
48f1a28fef no {} around DNPRINTF. 2009-02-01 03:04:45 +00:00
Ryan McBride
ef200b93d6 Put transient windows into the current workspace, regardless of any
inherited window properties.
2009-02-01 01:45:43 +00:00
Ryan McBride
06013e8ce9 Drag tiled windows to floating; toggle windows between floating and tiled
with M-t. Also some backend fixups; stack all tiled windows first, then
floating windows, so order in the list doesn't matter.
2009-02-01 01:39:25 +00:00
Marco Peereboom
e00144a6bf Make resize smarter so that M-M3 resizes the window without centering it
and M-S-M3 keeps the old behavior.
2009-01-30 20:59:20 +00:00
Marco Peereboom
e3ef1c7f36 Add version to bar when M-S-v is pressed. We will need it to debug at
some point.
2009-01-30 20:16:01 +00:00
Marco Peereboom
63d5e9bd53 Fix a silly crash 2009-01-30 03:51:01 +00:00
Marco Peereboom
cb242b5abd Fix smaller than possible resize. 2009-01-29 22:31:27 +00:00
Marco Peereboom
21a5aa39eb Add move window as well. 2009-01-29 22:15:15 +00:00
Marco Peereboom
0cde83bdc3 Move mouse back onto the border to retain focus on resized window. 2009-01-29 21:41:00 +00:00
Marco Peereboom
0139236e71 Resize transient & floating windows with alt-mouse3. Keeps the window in
the middle of the screen because I am not sure if that isn'y what we wnat
yet.  For mplayer it is nice to keep it in the middle.
2009-01-29 21:38:49 +00:00
Marco Peereboom
a2a8bae91b Move class names into ws_win; this will make debug easy because now we
can print the name of the window as well.
2009-01-29 20:35:01 +00:00
Marco Peereboom
de65c2a567 Add class code so that we can quirk certain apps.
Add beginnings of propertynotify to deal with property changes.
2009-01-29 20:27:11 +00:00
Marco Peereboom
737b7f3980 Make full screen actually full screen and move window so that border is out
of sight.
2009-01-28 21:14:08 +00:00
Marco Peereboom
741c46afdc KNF
Add cvs tag as a string that is printed at startup.
2009-01-28 20:58:39 +00:00
Marco Peereboom
a912ad3965 open /dev/null on stdin during spawn. pointed out by mcbride and it fixes
mplayer when launched from firefox and when firefox was launched from dmenu
Also move focus to the bottom of manage_window.
2009-01-28 17:46:55 +00:00
Marco Peereboom
541344a40a Move some more declarations to where they belong. 2009-01-28 04:45:45 +00:00
Marco Peereboom
c405976b2d Bump version to roll a snap 2009-01-28 03:29:33 +00:00
Marco Peereboom
134554a043 Prevent acessing pointer that has been freed.
Still one weird focus bug leftover where when the last window in a ws gets
destroyed and if there is a window on the alternate screen it gets focus.
2009-01-27 21:30:18 +00:00
Marco Peereboom
ae6a9b20ce Add cycle through regions; aka move pointer.
Fix bug where windows from another ws remained mapped after restart.
Fix focus bug where sometimes the pointer was NULL.
2009-01-27 19:56:47 +00:00
Marco Peereboom
e4c8351e9b Add screenshot_app to conf 2009-01-27 16:18:10 +00:00
Marco Peereboom
32b3198dcd Do screenshots and add example script for it. 2009-01-27 07:36:49 +00:00
Marco Peereboom
ececcd0a8e Bad mcbride leaking memory and char * in the wrong spot. 2009-01-27 06:50:57 +00:00
Marco Peereboom
b7dbe34497 Move int back where it belongs. 2009-01-25 21:48:06 +00:00
Ryan McBride
fa06bf8d4b Adjust window sizes to match height and width increment hints.
Minimizes wasted space on xterms.
2009-01-25 17:56:01 +00:00
Ryan McBride
5bdf52a032 Support placing the master area on the opposite side. 2009-01-25 10:54:16 +00:00
Ryan McBride
f92c9ed072 Replace the vertical_stack() and horizontal_stack() logic with one
function that rotates appropriately.
2009-01-25 10:43:20 +00:00
Marco Peereboom
b9f59efc8d MapRaised in max_stack to bring window into focus. 2009-01-25 03:12:34 +00:00
Marco Peereboom
2a214e3e6c Add initial screenshot support 2009-01-25 01:46:44 +00:00
Ryan McBride
6d08df4744 Add support for passing variables up to X11 via window properties; done by
hooking XCreateWindow and friends via LD_PRELOAD. Used now to make sure that
windows come up in the workspace they were spawn()'d from, but more soon.

Code to do the nasty borrowed with thanks from Enlightenment.
2009-01-24 17:57:26 +00:00
Marco Peereboom
ed1dbfa144 Remove stray SWM_DEBUG 2009-01-23 22:51:39 +00:00
Marco Peereboom
7088da1fd1 Add bar delay 2009-01-23 22:50:38 +00:00
Ryan McBride
7ab5dbd429 Remember which workspace we assign windows to via window properties. 2009-01-23 01:01:48 +00:00
Marco Peereboom
238662f027 Fix segfault on linux; from nicm 2009-01-22 23:06:45 +00:00
Marco Peereboom
6ca5cd2ca7 No idea how this new = 1 bug snuck in but make it 0 so that windows draw
properly.  Since I am still hounding a positioning bug with respect to
dialog windows leave some shitty debug in here albeit disabled.
2009-01-22 22:57:30 +00:00