#include "mouse.h"
#include "actions.h"
#include "translate.h"
-#include "hooks.h"
#include "client.h"
#include "screen.h"
#include "openbox.h"
gboolean config_place_center;
ObPlaceMonitor config_place_monitor;
+guint config_primary_monitor_index;
+ObPlaceMonitor config_primary_monitor;
+
StrutPartial config_margins;
gchar *config_theme;
copy_if(type, (ObClientType)-1);
copy_if(decor, -1);
copy_if(shade, -1);
+ copy_if(monitor, -1);
copy_if(focus, -1);
copy_if(desktop, 0);
copy_if(layer, -2);
gboolean x_pos_given;
while (app) {
- name_set = class_set = type_set = x_pos_given = FALSE;
+ x_pos_given = FALSE;
class_set = obt_parse_attr_string(app, "class", &class);
name_set = obt_parse_attr_string(app, "name", &name);
if (!g_ascii_strcasecmp(s, "mouse"))
settings->monitor = 0;
else
- settings->monitor = obt_parse_node_int(c) + 1;
+ settings->monitor = obt_parse_node_int(c);
g_free(s);
}
}
}
-static void parse_hook(xmlNodePtr node, gpointer d)
-{
- gchar *name;
- ObHook hook;
- xmlNodePtr n;
-
-
- if (!obt_parse_attr_string(node, "name", &name)) {
- g_message(_("Hook in config file is missing a name"));
- return;
- }
-
- hook = hooks_hook_from_name(name);
- if (!hook)
- g_message(_("Unknown hook \"%s\" in config file"), name);
- else {
- if ((n = obt_parse_find_node(node->children, "action")))
- while (n) {
- ObActionsAct *action;
-
- action = actions_parse(n);
- if (action)
- hooks_add(hook, action);
- n = obt_parse_find_node(n->next, "action");
- }
- }
-
- g_free(name);
-}
-
-static void parse_hooks(xmlNodePtr node, gpointer d)
-{
- xmlNodePtr n;
-
- if ((n = obt_parse_find_node(node->children, "hook")))
- while (n) {
- parse_hook(n, NULL);
- n = obt_parse_find_node(n->next, "hook");
- }
-}
-
/*
<keybind key="C-x">
config_mouse_threshold = obt_parse_node_int(n);
if ((n = obt_parse_find_node(node, "doubleClickTime")))
config_mouse_dclicktime = obt_parse_node_int(n);
- if ((n = obt_parse_find_node(node, "screenEdgeWarpTime")))
+ if ((n = obt_parse_find_node(node, "screenEdgeWarpTime"))) {
config_mouse_screenedgetime = obt_parse_node_int(n);
+ /* minimum value of 25 for this property, when it is 1 and you hit the
+ edge it basically never stops */
+ if (config_mouse_screenedgetime && config_mouse_screenedgetime < 25)
+ config_mouse_screenedgetime = 25;
+ }
n = obt_parse_find_node(node, "context");
while (n) {
else if (obt_parse_node_contains(n, "mouse"))
config_place_monitor = OB_PLACE_MONITOR_MOUSE;
}
+ if ((n = obt_parse_find_node(node, "primaryMonitor"))) {
+ config_primary_monitor_index = obt_parse_node_int(n);
+ if (!config_primary_monitor_index) {
+ if (obt_parse_node_contains(n, "mouse"))
+ config_primary_monitor = OB_PLACE_MONITOR_MOUSE;
+ }
+ }
}
static void parse_margins(xmlNodePtr node, gpointer d)
config_place_center = TRUE;
config_place_monitor = OB_PLACE_MONITOR_ANY;
+ config_primary_monitor_index = 1;
+ config_primary_monitor = OB_PLACE_MONITOR_ACTIVE;
+
obt_parse_register(i, "placement", parse_placement, NULL);
STRUT_PARTIAL_SET(config_margins, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
obt_parse_register(i, "menu", parse_menu, NULL);
- obt_parse_register(i, "hooks", parse_hooks, NULL);
-
config_per_app_settings = NULL;
obt_parse_register(i, "applications", parse_per_app_settings, NULL);