gboolean config_focus_new;
gboolean config_focus_follow;
-gboolean config_focus_last;
guint config_focus_delay;
guint config_focus_raise;
-char *config_theme;
+ObPlacePolicy config_place_policy;
+
+gchar *config_theme;
gchar *config_title_layout;
-int config_desktops_num;
+gint config_desktops_num;
GSList *config_desktops_names;
gboolean config_redraw_resize;
gint config_mouse_threshold;
gint config_mouse_dclicktime;
-gboolean config_dialog_focus;
-gboolean config_dialog_desktop;
-
GSList *config_menu_files;
gint config_resist_win;
static void parse_key(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node,
GList *keylist)
{
- char *key;
+ gchar *key;
ObAction *action;
xmlNodePtr n, nact;
GList *it;
void *d)
{
xmlNodePtr n, nbut, nact;
- char *buttonstr;
- char *contextstr;
+ gchar *buttonstr;
+ gchar *contextstr;
ObUserAction uact;
ObMouseAction mact;
ObAction *action;
config_focus_new = parse_bool(doc, n);
if ((n = parse_find_node("followMouse", node)))
config_focus_follow = parse_bool(doc, n);
- if ((n = parse_find_node("focusLast", node)))
- config_focus_last = parse_bool(doc, n);
if ((n = parse_find_node("focusDelay", node)))
config_focus_delay = parse_int(doc, n) * 1000;
if ((n = parse_find_node("raiseOnFocus", node)))
config_focus_raise = parse_bool(doc, n);
}
+static void parse_placement(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node,
+ void *d)
+{
+ xmlNodePtr n;
+
+ node = node->children;
+
+ if ((n = parse_find_node("policy", node)))
+ if (parse_contains("UnderMouse", doc, n))
+ config_place_policy = OB_PLACE_POLICY_MOUSE;
+}
+
static void parse_theme(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node,
void *d)
{
}
if ((n = parse_find_node("stacking", node))) {
if (parse_contains("top", doc, n))
- config_dock_layer = OB_STACKING_LAYER_TOP;
+ config_dock_layer = OB_STACKING_LAYER_DOCK_ABOVE;
else if (parse_contains("normal", doc, n))
- config_dock_layer = OB_STACKING_LAYER_NORMAL;
+ config_dock_layer = OB_STACKING_LAYER_DOCK_NORMAL;
else if (parse_contains("bottom", doc, n))
- config_dock_layer = OB_STACKING_LAYER_BELOW;
+ config_dock_layer = OB_STACKING_LAYER_DOCK_BELOW;
}
if ((n = parse_find_node("direction", node))) {
if (parse_contains("horizontal", doc, n))
{
config_focus_new = TRUE;
config_focus_follow = FALSE;
- config_focus_last = TRUE;
config_focus_delay = 0;
config_focus_raise = FALSE;
parse_register(i, "focus", parse_focus, NULL);
+ config_place_policy = OB_PLACE_POLICY_SMART;
+
+ parse_register(i, "placement", parse_placement, NULL);
+
config_theme = NULL;
config_title_layout = g_strdup("NLIMC");
parse_register(i, "resize", parse_resize, NULL);
- config_dock_layer = OB_STACKING_LAYER_TOP;
+ config_dock_layer = OB_STACKING_LAYER_DOCK_ABOVE;
config_dock_pos = OB_DIRECTION_NORTHEAST;
config_dock_floating = FALSE;
config_dock_x = 0;