summaryrefslogtreecommitdiff
path: root/openbox/place.c
AgeCommit message (Collapse)Author
2014-10-28Fix an if statement getting moved into a loop it shouldn't haveMikael Magnusson
Found by coverity code analysis.
2014-10-06Move common gravity application to screen.cMikael Magnusson
2014-10-06Fix negative relative coordinate placementMikael Magnusson
2014-04-10Avoid initializing a VLA of 0 lengthMikael Magnusson
2014-04-10Declare variables at start of blocks in place.cMikael Magnusson
2013-09-09Add a strict option to the ToggleShowDesktop actionDana Jansens
When the strict option is used, normal windows are not able to show themselves while showing the desktop.
2013-08-11Allow specifying only one of width and height in per-app settings sizeMikael Magnusson
Fixes bug 5819.
2013-04-23We forgot to count the dock in LeastOverlapMikael Magnusson
2012-10-06Allow application rules to control window size (Fix bug 4661)Dana Jansens
Use the following in your per-app rules: <size> <width>A</width> <height>B</height> </size> A and B can be integer values to specify a size in pixels. They can also be percentages or fractions to be relative to the size of the monitor the window is placed on.
2012-10-06Make LeastOverlap placment replace the behaviour of Smart and address style nitsDana Jansens
2012-10-06LeastOverlap placement option (Fix bug 5385)Ian Zimmerman
Adds a new placement algorithm that finds a place on the monitor that overlaps the least amount of windows as possible. Original patch by Ian Zimmerman <itz@buug.org>. Port to Openbox 3.5 by David Vogt <dv@adfinis.c>.
2011-10-16respect the active/mouse options for monitor placement, and use ↵Dana Jansens
ObMonitorPlace for per-app too
2011-10-16Allow per-app settings to pick a monitor for a window without choosing a ↵Dana Jansens
position in it.
2011-10-16Add "active" and "primary" options to the <monitor> placement option for ↵Dana Jansens
per-app settings (bug #5180)
2011-10-16it would seem this cannot return NULL nowDana Jansens
It will get the primary monitor if there is not monitor under the pointer. But assert so it's clear something went wrong if this does happen. Note that there was previously no check for the return value even though the comment claimed there should be.
2011-01-24fix segfault for placing windows without a groupDana Jansens
2011-01-24Big changes to placement across multiple monitors.Dana Jansens
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.
2010-05-17Add support for using relative expressions in move and resize actionsMikael Magnusson
Have MoveResizeTo use config_parse_gravity_coord instead of duplicating it locally Allow MoveResizeTo positions and sizes and per app positions to be relative to screen size Rename to config_parse_relative_number so it can be used for sizes too Add relative numbers to width/height in MoveResizeTo Add relative numbers to MoveRelative Add relative numbers to ResizeRelative, these are for the client size, not screen size
2010-04-16use const Rect* not Rect const*Dana Jansens
2010-02-12remove a bunch of g_new()/g_free() by returning Rect const*'s from screen ↵Dana Jansens
area functions when possible
2010-02-12use g_slice_new() instead of g_new() part 2Dana Jansens
2010-02-12using g_slice_new() instead of g_new() part 1Dana Jansens
2010-01-14If a window places itself at (0,0) and there are struts there, assume it is ↵Dana Jansens
a bug. Also allow oldschool fullscreen windows that cover all monitors on a multihead setup to work properly Added a test 'oldfullscreen' that makes a oldschool fullscreen window
2010-01-10allow application rules to place transient/dialog/splash windows, and allow ↵Dana Jansens
application rules to match only on the role or type if you wish.
2009-12-11Merge branch 'backport' into workDana Jansens
Conflicts: openbox/config.c openbox/event.c openbox/prop.c openbox/prop.h openbox/screen.c openbox/screen.h
2009-12-09Add a primaryMonitor config option, where the focus-cycle and keychain ↵Dana Jansens
popups will appear
2008-02-07Merge branch 'backport' into workDana Jansens
Conflicts: openbox/config.c
2008-02-03allow you to force the position of windows with rc.xml's per-app settings ↵Dana Jansens
with the force="yes" attribute
2008-01-31make ob_debug use the g_log system, and make openbox log messages to..a log ↵Dana Jansens
file ! this will help everyone since most people do not run openbox in a terminal..
2008-01-27replace the <active> placement option with <placeOn>active/mouse/any</placeOn>Dana Jansens
2008-01-11make a GravityPoint and GravityCoord data structures for those --x, ++y type ↵Dana Jansens
values
2008-01-11add an <active> option for window placement, to try force new windows on the ↵Dana Jansens
active monitor (for xinerama)
2007-09-04Fix shadowed variablesMikael Magnusson
2007-08-06more clear code?Dana Jansens
2007-08-07Fix another memleakMikael Magnusson
2007-08-03place windows in the largest area not the widest one, reverts to 3.4.2 ↵Dana Jansens
behavior so the dock doesn't screw up placement
2007-07-17remove trailing whitespaceMikael Magnusson
2007-07-15a number for placing windows, to keep them on screen, but let you place them ↵Dana Jansens
off-screen 1. when a window is not on any monitor, don't just ignore it, stick it on the first monitor arbitrarily (rather than the closest monitor - room for improvement?) 2. when placing a window with per-app settings, don't rudely force it back on screen fully.
2007-07-15don't use freed memory as the coordinates to place windowsDana Jansens
2007-07-11merge r7699 from 3.4-working, (let per-app settings override program ↵Mikael Magnusson
specified position but not user specified)
2007-06-22add the moveto actionDana Jansens
2007-06-13add center option to placement sectionMikael Magnusson
2007-06-13dont fallback to undermouseDana Jansens
2007-06-13xinerama support like crazy for struts and everything else too. this ↵Dana Jansens
probably crashes but its been way too long without a commit.
2007-06-13ignore the dock in placing as a last resortDana Jansens
2007-06-13some typosDana Jansens
2007-06-13plug memory leaks from the new strut codeDana Jansens
2007-06-13very cool struts. partial struts actually are partial struts now. possibly ↵Dana Jansens
way broken with xinerama?
2007-06-12i dont think people shade windows with the intention of having them hidden ↵Dana Jansens
by stuff. also bug fix.
2007-06-12try place under the mouse when theres no free space? maybe thats dumbDana Jansens