summaryrefslogtreecommitdiff
path: root/openbox/config.c
diff options
context:
space:
mode:
authorIan Zimmerman <itz@buug.org>2012-09-30 20:51:01 -0400
committerDana Jansens <danakj@orodu.net>2012-10-06 21:56:56 -0400
commit4d2ccf19168a4089a6a0de0109610479ec6d5507 (patch)
tree27cae89a72bdc4e1831a4adf5bc752f0ac87faca /openbox/config.c
parent01f62ded2fe289fe245f4f05b5825f4bdcbe1dc3 (diff)
LeastOverlap placement option (Fix bug 5385)
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>.
Diffstat (limited to 'openbox/config.c')
-rw-r--r--openbox/config.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/openbox/config.c b/openbox/config.c
index 0d9eb689..1a3e6ddf 100644
--- a/openbox/config.c
+++ b/openbox/config.c
@@ -581,9 +581,13 @@ static void parse_placement(xmlNodePtr node, gpointer d)
node = node->children;
- if ((n = obt_xml_find_node(node, "policy")))
+ if ((n = obt_xml_find_node(node, "policy"))) {
if (obt_xml_node_contains(n, "UnderMouse"))
config_place_policy = OB_PLACE_POLICY_MOUSE;
+ else if (obt_xml_node_contains(n, "LeastOverlap"))
+ config_place_policy = OB_PLACE_POLICY_LEASTOVERLAP;
+
+ }
if ((n = obt_xml_find_node(node, "center")))
config_place_center = obt_xml_node_bool(n);
if ((n = obt_xml_find_node(node, "monitor"))) {