openbox/openbox
Dana Jansens 95535e8623 Big changes to placement across multiple monitors.
Add a Primary option for which monitor to place new windows on.  Make "Active" the default instead of "Any", which is just totally crazy.

When a window is being placed in the FOREGROUND, use a monitor chosen in
  the following order:
  1. same monitor as parent
  2. primary monitor if placement=PRIMARY
     active monitor if placement=ACTIVE
     pointer monitor if placement=MOUSE
  3. primary monitor
  4. other monitors where the window has group members on the same desktop
  5. other monitors where the window has group members on other desktops
  6. other monitors

When a window is being placed in the BACKGROUND, use a monitor chosen in the
  following order:
  1. same monitor as parent
  2. other monitors where the window has group members on the same desktop
   2a. primary monitor in this set
   2b. other monitors in this set
  3. other monitors where the window has group members on other desktops
   3a. primary monitor in this set
   3b. other monitors in this set
  4. other monitors
   4a. primary monitor in this set
   4b. other monitors in this set

Decide to focus the new window before placing it, so we know if it will be
  placed in the foreground or background.

Always choose a single monitor, then place on it, rather than possibly moving
  to a "backup" monitor.  Unpredictable monitor placement is horrible.
2011-01-24 14:19:22 -05:00
..
actions Fix 3.4 compatibility for SendToDesktop 2010-09-16 17:24:11 +02:00
actions.c update the user-interaction timestamp when running a (non-interactive) action on the focused window 2011-01-24 14:19:22 -05:00
actions.h pass an input context to the interactive input function 2010-02-11 14:39:09 -05:00
client.c Big changes to placement across multiple monitors. 2011-01-24 14:19:22 -05:00
client.h add a function client_is_oldfullscreen() that determines if a window is an "oldschool fullscreen window" or not. use this throughout. and allow oldschool fullscreen windows to move to 0,0 even with a strut there. 2010-03-01 16:32:27 -05:00
client_list_combined_menu.c add cleanup functions to the client list menus that removes everything from them when they are not being shown (saves iterating thru the list uselessly when a client is unmanaged) 2010-05-11 19:01:46 -04:00
client_list_combined_menu.h 1) translate all of openbox's output 2007-04-23 17:56:35 +00:00
client_list_menu.c add cleanup functions to the client list menus that removes everything from them when they are not being shown (saves iterating thru the list uselessly when a client is unmanaged) 2010-05-11 19:01:46 -04:00
client_list_menu.h 1) translate all of openbox's output 2007-04-23 17:56:35 +00:00
client_menu.c Added shade-icon to client-menu 2010-02-21 16:35:30 +01:00
client_menu.h () -> (void) also in .h files, and fix a place that gave arguments when it shouldn't have. 2008-02-15 16:47:10 +01:00
config.c Big changes to placement across multiple monitors. 2011-01-24 14:19:22 -05:00
config.h Add support for using relative expressions in move and resize actions 2010-05-17 19:31:21 -04:00
debug.c if openbox isn't running, show messages on the console rather than just losing them (like when another WM is running) 2010-01-14 16:53:32 -05:00
debug.h () -> (void) also in .h files, and fix a place that gave arguments when it shouldn't have. 2008-02-15 16:47:10 +01:00
dock.c less redundant calls to screen_update_areas() and client_move_onscreen() 2011-01-24 14:19:22 -05:00
dock.h Make the dock a context and add actions LowerDock and RaiseDock 2010-09-16 17:24:11 +02:00
event.c Fixing commit 066a15d7aa64eaa0. Don't ever use CurrentTime as event_curtime. 2011-01-24 14:19:22 -05:00
event.h don't steal focus if someone used a window within 1 second ago 2011-01-24 14:19:22 -05:00
focus.c event_curtime is replaced (publicly) by event_time() 2010-04-16 22:23:37 -04:00
focus.h add an option to next/previous window to only include hilited/flashing/urgent windows (feature req/bug #4341) 2010-04-16 21:32:31 -04:00
focus_cycle.c show the focus cycle popup's icons in linear order when cycling in linear order (bug #2319) 2010-04-16 21:32:37 -04:00
focus_cycle.h add an option to next/previous window to only include hilited/flashing/urgent windows (feature req/bug #4341) 2010-04-16 21:32:31 -04:00
focus_cycle_indicator.c Set up work for making a 3.5 prerelease. 2009-12-21 14:08:34 -05:00
focus_cycle_indicator.h Only update the focus cycle indicator when already visible in frame.c to avoid overriding bar=no 2008-11-19 17:14:44 +01:00
focus_cycle_popup.c show the focus cycle popup's icons in linear order when cycling in linear order (bug #2319) 2010-04-16 21:32:37 -04:00
focus_cycle_popup.h show the focus cycle popup's icons in linear order when cycling in linear order (bug #2319) 2010-04-16 21:32:37 -04:00
frame.c Revert "add XFlush to g_timeout callbacks" 2010-09-16 17:24:12 +02:00
frame.h Make the dock a context and add actions LowerDock and RaiseDock 2010-09-16 17:24:11 +02:00
framerender.c Set up work for making a 3.5 prerelease. 2009-12-21 14:08:34 -05:00
framerender.h 1) translate all of openbox's output 2007-04-23 17:56:35 +00:00
geom.h Add support for using relative expressions in move and resize actions 2010-05-17 19:31:21 -04:00
grab.c event_curtime is replaced (publicly) by event_time() 2010-04-16 22:23:37 -04:00
grab.h make menu input work with the new obt keyboard stuff. 2010-02-11 14:17:59 -05:00
group.c use g_slice_new() instead of g_new() part 2 2010-02-12 13:55:26 -05:00
group.h add support for _NET_WM_USER_TIME_WINDOW. round 1 ! ding. 2007-05-09 17:01:30 +00:00
keyboard.c Revert "add XFlush to g_timeout callbacks" 2010-09-16 17:24:12 +02:00
keyboard.h Don't handle input events on prompts if they should be used for a binding/menu instead. 2010-01-08 10:45:24 -05:00
keytree.c more using g_slice_new() instead of g_new() 2010-02-16 16:32:38 -05:00
keytree.h Remove double newlines. 2008-03-08 17:41:52 +01:00
Makefile update the build system, using a single Makefile.am for a sexyass non-recursive make. booyah! 2003-07-10 04:31:05 +00:00
menu.c Big rework of image.c and the image cache system. 2011-01-24 14:19:22 -05:00
menu.h add cleanup function for menus that fires when the menu is no longer visible 2010-05-11 19:01:33 -04:00
menuframe.c Revert "add XFlush to g_timeout callbacks" 2010-09-16 17:24:12 +02:00
menuframe.h make menu input work with the new obt keyboard stuff. 2010-02-11 14:17:59 -05:00
misc.h make control keys work in menus/dialogs/etc with the new obt code, using XLookup stuff 2010-02-11 15:07:08 -05:00
mouse.c Make the dock a context and add actions LowerDock and RaiseDock 2010-09-16 17:24:11 +02:00
mouse.h allow multiple contexts separated by space in a mouse binding 2010-05-17 19:31:51 -04:00
moveresize.c update the last user interaction timestamp during a move/resize of the focused window 2011-01-24 14:19:22 -05:00
moveresize.h let you specify the resize popup to be in a fixed place 2008-01-11 20:24:16 -05:00
mwm.h 1) translate all of openbox's output 2007-04-23 17:56:35 +00:00
openbox.c Handle STRING and COMPOUND_TEXT type text properties. 2011-01-24 14:19:21 -05:00
openbox.h Use GMainLoop instead of ObtMainLoop 2010-06-14 12:19:01 -04:00
ping.c Revert "add XFlush to g_timeout callbacks" 2010-09-16 17:24:12 +02:00
ping.h don't ping everything all the time. yay. ping when you close, and if it doesn't reply then show the kill prompt. also show a more correct prompt for windows connecting from non-local machines - ask to disconnect them from the X server. 2008-02-14 14:24:37 -05:00
place.c Big changes to placement across multiple monitors. 2011-01-24 14:19:22 -05:00
place.h Big changes to placement across multiple monitors. 2011-01-24 14:19:22 -05:00
popup.c Revert "add XFlush to g_timeout callbacks" 2010-09-16 17:24:12 +02:00
popup.h Use GMainLoop instead of ObtMainLoop 2010-06-14 12:19:01 -04:00
prompt.c Handle STRING and COMPOUND_TEXT type text properties. 2011-01-24 14:19:21 -05:00
prompt.h make obt translate keypress events to a valid utf8 character (note this makes openbox not compile) 2010-02-11 14:06:00 -05:00
resist.c use const Rect* not Rect const* 2010-04-16 11:37:21 -04:00
resist.h make the obt library branch compile again with all the changes merged in from backport 2008-01-20 01:36:56 -05:00
screen.c add function screen_compare_desktops() 2011-01-24 14:19:22 -05:00
screen.h add function screen_compare_desktops() 2011-01-24 14:19:22 -05:00
session.c use g_slice_new() instead of g_new() part 2 2010-02-12 13:55:26 -05:00
session.h Combine the Exit and SessionLogout actions 2009-11-24 19:36:18 -05:00
stacking.c Use g_list_find instead of weird bouncing loops 2011-01-24 14:19:22 -05:00
stacking.h keep stacking_list_tail a pointer to the tail of the stacking list 2010-06-14 12:19:01 -04:00
startupnotify.c Revert "add XFlush to g_timeout callbacks" 2010-09-16 17:24:12 +02:00
startupnotify.h () -> (void) also in .h files, and fix a place that gave arguments when it shouldn't have. 2008-02-15 16:47:10 +01:00
translate.c Merge branch 'backport' into work 2008-02-21 13:24:19 -05:00
translate.h This patch implements support for icons in user-defined menus into Openbox 2010-01-08 17:55:19 -05:00
window.c allow the res_class in WM_CLASS to mark a window as a dock app, if it is set to the string "DockApp" 2011-01-24 14:19:21 -05:00
window.h you can create dialog windows called "prompts" which have a message and some buttons! they don't do anything interesting yet. 2008-02-14 14:24:07 -05:00