[packages/obconf] - up to 2.0.4 - removed openbox35 patch and compiled pl.mo locale file

baggins baggins at pld-linux.org
Tue Jan 21 12:20:16 CET 2014


commit dc40a9d26d14de91cd0b6068e6ebeca219739062
Author: Jan Rękorajski <baggins at pld-linux.org>
Date:   Tue Jan 21 12:19:46 2014 +0100

    - up to 2.0.4
    - removed openbox35 patch and compiled pl.mo locale file

 obconf-desktop.patch |   17 +-
 obconf.mo            |  Bin 13556 -> 0 bytes
 obconf.spec          |   18 +-
 openbox35.patch      | 1560 --------------------------------------------------
 4 files changed, 15 insertions(+), 1580 deletions(-)
---
diff --git a/obconf.spec b/obconf.spec
index fec4ef4..63c2aa3 100644
--- a/obconf.spec
+++ b/obconf.spec
@@ -1,18 +1,13 @@
-# TODO:
-# - update to 2.0.3 (temporary broken link)
-# - packaging compiled .mo is not upgradeable, drop it or include .po
 Summary:	Tool for configuring the Openbox window manager
 Summary(pl.UTF-8):	Narzędzie do konfiguracji zarządcy okien Openbox
 Name:		obconf
-Version:	2.0.3
-Release:	6
+Version:	2.0.4
+Release:	1
 License:	GPL v2+
 Group:		X11/Applications
 Source0:	http://icculus.org/openbox/obconf/%{name}-%{version}.tar.gz
-# Source0-md5:	b22e273721851dedad72acbc77eefb68
-Source1:	%{name}.mo
+# Source0-md5:	9271c5d2dc366d61f73665a5e8bceabc
 Patch0:		%{name}-desktop.patch
-Patch1:		openbox35.patch
 URL:		http://openbox.org/obconf/
 BuildRequires:	autoconf >= 2.54
 BuildRequires:	automake
@@ -40,7 +35,6 @@ zachowania okien.
 %prep
 %setup -q
 %patch0 -p1
-%patch1 -p1
 
 %build
 %{__libtoolize}
@@ -52,16 +46,12 @@ zachowania okien.
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT%{_datadir}/locale/pl/LC_MESSAGES
 
 %{__make} install \
 	DESTDIR=$RPM_BUILD_ROOT
 
-# install pl locale
-cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/locale/pl/LC_MESSAGES
-
 # no -> nb
-mv $RPM_BUILD_ROOT%{_datadir}/locale/{no,nb}
+%{__mv} $RPM_BUILD_ROOT%{_datadir}/locale/{no,nb}
 
 %find_lang %{name}
 
diff --git a/obconf-desktop.patch b/obconf-desktop.patch
index 4db5b59..2ea5bca 100644
--- a/obconf-desktop.patch
+++ b/obconf-desktop.patch
@@ -1,19 +1,24 @@
 --- obconf-2.0.3/obconf.desktop~	2008-01-26 07:25:09.000000000 +0100
 +++ obconf-2.0.3/obconf.desktop	2010-08-24 21:42:57.316255136 +0200
-@@ -1,13 +1,14 @@
+@@ -1,18 +1,20 @@
  [Desktop Entry]
 -Encoding=UTF-8
  Type=Application
  Name=Openbox Configuration Manager
+ Name[pt_BR]=Gerenciador de configurações do Openbox
+ Name[ru]=Менеджер настройки Openbox
  Name[zh_TW]=Openbox 組態管理器
 +Name[pl]=Zarządca ustawień Openboksa
- Comment=Openbox configuration manager
+ GenericName=Configuration Manager
+ GenericName[pt_BR]=Gerenciador de configurações
+ GenericName[ru]=Менеджер настройки Openbox
+ GenericName[zh_TW]=Openbox 組態管理器
++GenericName[pl]=Zarządca ustawień Openboksa
+ Comment=Tweak settings for Openbox
+ Comment[pt_BR]=Configure as opções do Openbox
+ Comment[ru]=Настройка Openbox
  Comment[zh_TW]=管理 Openbox 組態設定
 +Comment[pl]=Zarządca ustawień Openboksa
  Icon=obconf
  Exec=obconf %f
  Categories=Settings;DesktopSettings;GTK;
--MimeType=application/x-openbox-theme
-+MimeType=application/x-openbox-theme;
- StartupNotify=true
- Terminal=false
diff --git a/obconf.mo b/obconf.mo
deleted file mode 100644
index 3fd0148..0000000
Binary files a/obconf.mo and /dev/null differ
diff --git a/openbox35.patch b/openbox35.patch
deleted file mode 100644
index bfb53b6..0000000
--- a/openbox35.patch
+++ /dev/null
@@ -1,1560 +0,0 @@
-commit 42b0ea6c275835bee09e83a2e83dfb934825aa8a
-Author: Dana Jansens <danakj at orodu.net>
-Date:   Mon Dec 21 13:01:55 2009 -0500
-
-    Use the openbox 3.5 libs
-
-diff --git a/configure.ac b/configure.ac
-index bae2dfb..f9b0775 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -1,5 +1,5 @@
- AC_PREREQ([2.54])
--AC_INIT([obconf], [2.0.3], [http://bugzilla.icculus.org])
-+AC_INIT([obconf], [2.0.4], [http://bugzilla.icculus.org])
- AM_INIT_AUTOMAKE
- AC_CONFIG_SRCDIR([src/main.c])
- 
-@@ -20,7 +20,7 @@ ALL_LINGUAS=""
- AM_GNU_GETTEXT_VERSION(0.15)
- AM_GNU_GETTEXT([external])
- 
--PKG_CHECK_MODULES(OPENBOX, [obrender-3.0 >= 3.4.2 obparser-3.0 >= 3.4.2])
-+PKG_CHECK_MODULES(OPENBOX, [obrender-3.5 obt-3.5])
- AC_SUBST(OPENBOX_CFLAGS)
- AC_SUBST(OPENBOX_LIBS)
- 
-diff --git a/src/desktops.c b/src/desktops.c
-index d7e9811..f1f0021 100644
---- a/src/desktops.c
-+++ b/src/desktops.c
-@@ -156,7 +156,7 @@ static void desktops_read_names()
-         gchar *name;
- 
-         if (!xmlStrcmp(n->name, (const xmlChar*)"name")) {
--            name = parse_string(doc, n);
-+            name = obt_parse_node_string(n);
- 
-             desktop_names = g_list_append(desktop_names, name);
- 
-diff --git a/src/main.c b/src/main.c
-index 7083730..875b783 100644
---- a/src/main.c
-+++ b/src/main.c
-@@ -42,6 +42,8 @@ xmlDocPtr doc;
- xmlNodePtr root;
- RrInstance *rrinst;
- gchar *obc_config_file = NULL;
-+ObtPaths *paths;
-+ObtParseInst *parse_i;
- 
- static gchar *obc_theme_install = NULL;
- static gchar *obc_theme_archive = NULL;
-@@ -214,7 +216,8 @@ int main(int argc, char **argv)
-         exit_with_error = TRUE;
-     }
- 
--    parse_paths_startup();
-+    paths = obt_paths_new();
-+    parse_i = obt_parse_instance_new();
-     rrinst = RrInstanceNew(GDK_DISPLAY(), gdk_x11_get_default_screen());
- 
-     if (!obc_config_file) {
-@@ -230,10 +233,19 @@ int main(int argc, char **argv)
-     }
- 
-     xmlIndentTreeOutput = 1;
--    if (!parse_load_rc(obc_config_file, &doc, &root)) {
-+    if (!obt_parse_load_config_file(parse_i,
-+                                    "openbox",
-+                                    (obc_config_file ?
-+                                     obc_config_file : "rc.xml"),
-+                                    "openbox_config"))
-+    {
-         obconf_error(_("Failed to load an rc.xml. You have probably failed to install Openbox properly."), TRUE);
-         exit_with_error = TRUE;
-     }
-+    else {
-+        doc = obt_parse_doc(parse_i);
-+        root = obt_parse_root(parse_i);
-+    }
- 
-     /* look for parsing errors */
-     {
-@@ -290,7 +302,8 @@ int main(int argc, char **argv)
-     }
- 
-     RrInstanceFree(rrinst);
--    parse_paths_shutdown();
-+    obt_parse_instance_unref(parse_i);
-+    obt_paths_unref(paths);
- 
-     xmlFreeDoc(doc);
-     return 0;
-diff --git a/src/main.h b/src/main.h
-index 7d6303c..2c06630 100644
---- a/src/main.h
-+++ b/src/main.h
-@@ -19,19 +19,20 @@
- #ifndef obconf__main_h
- #define obconf__main_h
- 
--#include <openbox/render.h>
--#include <openbox/instance.h>
--#include <openbox/parse.h>
-+#include <obrender/render.h>
-+#include <obrender/instance.h>
-+#include <obt/parse.h>
-+#include <obt/paths.h>
- 
- #include <gtk/gtk.h>
- #include <glade/glade-xml.h>
- 
- extern GladeXML *glade;
--extern xmlDocPtr doc;
--extern xmlNodePtr root;
- extern RrInstance *rrinst;
- extern GtkWidget *mainwin;
- extern gchar *obc_config_file;
-+extern ObtPaths *paths;
-+extern ObtParseInst *parse_i;
- 
- #define get_widget(s) glade_xml_get_widget(glade, s)
- 
-diff --git a/src/mouse.c b/src/mouse.c
-index 68d9c55..831e2e5 100644
---- a/src/mouse.c
-+++ b/src/mouse.c
-@@ -19,7 +19,7 @@
- #include "main.h"
- #include "tree.h"
- #include "gettext.h"
--#include <openbox/parse.h>
-+#include <obt/parse.h>
- 
- static gboolean   mapping = FALSE;
- static xmlNodePtr saved_custom = NULL;
-@@ -206,9 +206,9 @@ static gint read_doubleclick_action()
- 
-     while (n) {
-         if (!xmlStrcmp(n->name, (const xmlChar*)"action")) {
--            if (parse_attr_contains("ToggleMaximizeFull", n, "name"))
-+            if (obt_parse_attr_contains(n, "name", "ToggleMaximizeFull"))
-                 ++max;
--            else if (parse_attr_contains("ToggleShade", n, "name"))
-+            else if (obt_parse_attr_contains(n, "name", "ToggleShade"))
-                 ++shade;
-             else
-                 ++other;
-diff --git a/src/preview.c b/src/preview.c
-index 7e463a8..a82cf15 100644
---- a/src/preview.c
-+++ b/src/preview.c
-@@ -23,7 +23,7 @@
- 
- #include <string.h>
- 
--#include <openbox/theme.h>
-+#include <obrender/theme.h>
- 
- #define PADDING 2 /* openbox does it :/ */
- 
-@@ -491,7 +491,8 @@ GdkPixbuf *preview_theme(const gchar *name, const gchar *titlelayout,
-                          RrFont *inactive_window_font,
-                          RrFont *menu_title_font,
-                          RrFont *menu_item_font,
--                         RrFont *osd_font)
-+                         RrFont *osd_active_font,
-+                         RrFont *osd_inactive_font)
- {
- 
-     GdkPixbuf *preview;
-@@ -505,7 +506,8 @@ GdkPixbuf *preview_theme(const gchar *name, const gchar *titlelayout,
- 
-     RrTheme *theme = RrThemeNew(rrinst, name, FALSE,
-                                 active_window_font, inactive_window_font,
--                                menu_title_font, menu_item_font, osd_font);
-+                                menu_title_font, menu_item_font,
-+                                osd_active_font, osd_inactive_font);
-     if (!theme)
-         return NULL;
- 
-diff --git a/src/preview.h b/src/preview.h
-index ff43766..772984b 100644
---- a/src/preview.h
-+++ b/src/preview.h
-@@ -21,7 +21,7 @@
- 
- #include <glib.h>
- 
--#include <openbox/font.h>
-+#include <obrender/font.h>
- #include <gdk/gdkpixbuf.h>
- 
- GdkPixbuf *preview_theme(const gchar *name, const gchar *titlelayout,
-@@ -29,6 +29,7 @@ GdkPixbuf *preview_theme(const gchar *name, const gchar *titlelayout,
-                          RrFont *inactive_window_font,
-                          RrFont *menu_title_font,
-                          RrFont *menu_item_font,
--                         RrFont *osd_font);
-+                         RrFont *osd_active_font,
-+                         RrFont *osd_inactive_font);
- 
- #endif
-diff --git a/src/preview_update.h b/src/preview_update.h
-index 1fe9674..5163174 100644
---- a/src/preview_update.h
-+++ b/src/preview_update.h
-@@ -1,7 +1,7 @@
- #ifndef obconf__preview_update_h
- #define obconf__preview_update_h
- 
--#include <openbox/render.h>
-+#include <obrender/render.h>
- #include <gtk/gtk.h>
- 
- void preview_update_all();
-diff --git a/src/theme.c b/src/theme.c
-index 093dc21..70206f9 100644
---- a/src/theme.c
-+++ b/src/theme.c
-@@ -193,7 +193,7 @@ void theme_load_all()
- 
-     {
-         GSList *it;
--        for (it = parse_xdg_data_dir_paths(); it; it = g_slist_next(it)) {
-+        for (it = obt_paths_data_dirs(paths); it; it = g_slist_next(it)) {
-             p = g_build_filename(it->data, "themes", NULL);
-             add_theme_dir(p);
-             g_free(p);
-diff --git a/src/tree.c b/src/tree.c
-index 2c0f2dc..2b39840 100644
---- a/src/tree.c
-+++ b/src/tree.c
-@@ -19,7 +19,7 @@
- #include "tree.h"
- #include "main.h"
- 
--#include <openbox/parse.h>
-+#include <obt/parse.h>
- #include <gdk/gdkx.h>
- 
- xmlNodePtr tree_get_node(const gchar *path, const gchar *def)
-@@ -28,7 +28,7 @@ xmlNodePtr tree_get_node(const gchar *path, const gchar *def)
-     gchar **nodes;
-     gchar **it, **next;
- 
--    n = root;
-+    n = obt_parse_root(parse_i);
- 
-     nodes = g_strsplit(path, "/", 0);
-     for (it = nodes; *it; it = next) {
-@@ -39,19 +39,19 @@ xmlNodePtr tree_get_node(const gchar *path, const gchar *def)
-         next = it + 1;
- 
-         /* match attributes */
--        c = parse_find_node(attrs[0], n->children);
-+        c = obt_parse_find_node(n->children, attrs[0]);
-         while (c && !ok) {
-             gint i;
- 
-             ok = TRUE;
-             for (i = 1; attrs[i]; ++i) {
-                 gchar **eq = g_strsplit(attrs[i], "=", 2);
--                if (eq[1] && !parse_attr_contains(eq[1], c, eq[0]))
-+                if (eq[1] && !obt_parse_attr_contains(c, eq[0], eq[1]))
-                     ok = FALSE;
-                 g_strfreev(eq);
-             }
-             if (!ok)
--                c = parse_find_node(attrs[0], c->next);
-+                c = obt_parse_find_node(c->next, attrs[0]);
-         }
- 
-         if (!c) {
-@@ -76,6 +76,15 @@ xmlNodePtr tree_get_node(const gchar *path, const gchar *def)
-     return n;
- }
- 
-+void tree_delete_node(const gchar *path)
-+{
-+    xmlNodePtr n;
-+
-+    n = tree_get_node(path, NULL);
-+    xmlUnlinkNode(n);
-+    xmlFreeNode(n);
-+}
-+
- void tree_apply()
- {
-     gchar *p, *d;
-@@ -84,15 +93,14 @@ void tree_apply()
-     if (obc_config_file)
-         p = g_strdup(obc_config_file);
-     else
--        p = g_build_filename(parse_xdg_config_home_path(), "openbox",
-+        p = g_build_filename(obt_paths_config_home(paths), "openbox",
-                              "rc.xml", NULL);
- 
-     d = g_path_get_dirname(p);
--    parse_mkdir_path(d, 0700);
-+    obt_paths_mkdir_path(d, 0700);
-     g_free(d);
- 
--    err = xmlSaveFormatFile(p, doc, 1) == -1;
--    if (err) {
-+    if (!obt_parse_save_file(parse_i, p, TRUE)) {
-         gchar *s;
-         s = g_strdup_printf("An error occured while saving the "
-                             "config file '%s'", p);
-@@ -158,7 +166,7 @@ gchar* tree_get_string(const gchar *node, const gchar *def)
-     xmlNodePtr n;
- 
-     n = tree_get_node(node, def);
--    return parse_string(doc, n);
-+    return obt_parse_node_string(n);
- }
- 
- gint tree_get_int(const gchar *node, gint def)
-@@ -169,7 +177,7 @@ gint tree_get_int(const gchar *node, gint def)
-     d = g_strdup_printf("%d", def);
-     n = tree_get_node(node, d);
-     g_free(d);
--    return parse_int(doc, n);
-+    return obt_parse_node_int(n);
- }
- 
- gboolean tree_get_bool(const gchar *node, gboolean def)
-@@ -177,5 +185,5 @@ gboolean tree_get_bool(const gchar *node, gboolean def)
-     xmlNodePtr n;
- 
-     n = tree_get_node(node, (def ? "yes" : "no"));
--    return parse_bool(doc, n);
-+    return obt_parse_node_bool(n);
- }
-diff --git a/src/tree.h b/src/tree.h
-index 39c96b3..62a20c8 100644
---- a/src/tree.h
-+++ b/src/tree.h
-@@ -19,10 +19,12 @@
- #ifndef obconf__tree_h
- #define obconf__tree_h
- 
--#include "openbox/parse.h"
-+#include <obt/parse.h>
- 
- xmlNodePtr tree_get_node(const gchar *path, const gchar *def);
- 
-+void tree_delete_node(const gchar *path);
-+
- gchar* tree_get_string(const gchar *node, const gchar *def);
- gint tree_get_int(const gchar *node, gint def);
- gboolean tree_get_bool(const gchar *node, gboolean def);
-commit 0e1a17d18a4ddc008463a4e5290f5748d416723f
-Author: Dana Jansens <danakj at orodu.net>
-Date:   Mon Dec 21 13:02:09 2009 -0500
-
-    Add the Inactive OSD font, and the primaryMonitor options
-
-diff --git a/src/appearance.c b/src/appearance.c
-index 293e43f..f130311 100644
---- a/src/appearance.c
-+++ b/src/appearance.c
-@@ -23,7 +23,7 @@
- 
- static gboolean mapping = FALSE;
- 
--static RrFont *read_font(GtkFontButton *w, const gchar *place);
-+static RrFont *read_font(GtkFontButton *w, const gchar *place, gboolean def);
- static RrFont *write_font(GtkFontButton *w, const gchar *place);
- 
- void appearance_setup_tab()
-@@ -49,24 +49,31 @@ void appearance_setup_tab()
-     g_free(layout);
- 
-     w = get_widget("font_active");
--    f = read_font(GTK_FONT_BUTTON(w), "ActiveWindow");
-+    f = read_font(GTK_FONT_BUTTON(w), "ActiveWindow", TRUE);
-     preview_update_set_active_font(f);
- 
-     w = get_widget("font_inactive");
--    f = read_font(GTK_FONT_BUTTON(w), "InactiveWindow");
-+    f = read_font(GTK_FONT_BUTTON(w), "InactiveWindow", TRUE);
-     preview_update_set_inactive_font(f);
- 
-     w = get_widget("font_menu_header");
--    f = read_font(GTK_FONT_BUTTON(w), "MenuHeader");
-+    f = read_font(GTK_FONT_BUTTON(w), "MenuHeader", TRUE);
-     preview_update_set_menu_header_font(f);
- 
-     w = get_widget("font_menu_item");
--    f = read_font(GTK_FONT_BUTTON(w), "MenuItem");
-+    f = read_font(GTK_FONT_BUTTON(w), "MenuItem", TRUE);
-     preview_update_set_menu_item_font(f);
- 
--    w = get_widget("font_display");
--    f = read_font(GTK_FONT_BUTTON(w), "OnScreenDisplay");
--    preview_update_set_osd_font(f);
-+    w = get_widget("font_active_display");
-+    if (!(f = read_font(GTK_FONT_BUTTON(w), "ActiveOnScreenDisplay", FALSE))) {
-+        f = read_font(GTK_FONT_BUTTON(w), "OnScreenDisplay", TRUE);
-+        tree_delete_node("theme/font:place=OnScreenDisplay");
-+    }
-+    preview_update_set_osd_active_font(f);
-+
-+    w = get_widget("font_inactive_display");
-+    f = read_font(GTK_FONT_BUTTON(w), "InactiveOnScreenDisplay", TRUE);
-+    preview_update_set_osd_inactive_font(f);
- 
-     mapping = FALSE;
- }
-@@ -185,14 +192,23 @@ void on_font_menu_item_font_set(GtkFontButton *w, gpointer data)
-     preview_update_set_menu_item_font(write_font(w, "MenuItem"));
- }
- 
--void on_font_display_font_set(GtkFontButton *w, gpointer data)
-+void on_font_active_display_font_set(GtkFontButton *w, gpointer data)
- {
-     if (mapping) return;
- 
--    preview_update_set_osd_font(write_font(w, "OnScreenDisplay"));
-+    preview_update_set_osd_active_font(write_font(w, "ActiveOnScreenDisplay"));
- }
- 
--static RrFont *read_font(GtkFontButton *w, const gchar *place)
-+void on_font_inactive_display_font_set(GtkFontButton *w, gpointer data)
-+{
-+    if (mapping) return;
-+
-+    preview_update_set_osd_inactive_font
-+        (write_font(w, "InactiveOnScreenDisplay"));
-+}
-+
-+static RrFont *read_font(GtkFontButton *w, const gchar *place,
-+                         gboolean use_default)
- {
-     RrFont *font;
-     gchar *fontstring, *node;
-@@ -207,9 +223,14 @@ static RrFont *read_font(GtkFontButton *w, const gchar *place)
-     mapping = TRUE;
- 
-     node = g_strdup_printf("theme/font:place=%s/name", place);
--    name = tree_get_string(node, "Sans");
-+    name = tree_get_string(node, use_default ? "Sans" : NULL);
-     g_free(node);
- 
-+    if (name[0] == '\0') {
-+        g_free(name);
-+        return NULL;
-+    }
-+
-     node = g_strdup_printf("theme/font:place=%s/size", place);
-     size = tree_get_string(node, "8");
-     g_free(node);
-diff --git a/src/main.c b/src/main.c
-index 875b783..f72976e 100644
---- a/src/main.c
-+++ b/src/main.c
-@@ -297,7 +297,8 @@ int main(int argc, char **argv)
-         preview_update_set_inactive_font(NULL);
-         preview_update_set_menu_header_font(NULL);
-         preview_update_set_menu_item_font(NULL);
--        preview_update_set_osd_font(NULL);
-+        preview_update_set_osd_active_font(NULL);
-+        preview_update_set_osd_inactive_font(NULL);
-         preview_update_set_title_layout(NULL);
-     }
- 
-diff --git a/src/obconf.glade b/src/obconf.glade
-index 81e926f..464acff 100644
---- a/src/obconf.glade
-+++ b/src/obconf.glade
-@@ -943,7 +943,7 @@ Omnipresent (On all desktops)</property>
- 		      <child>
- 			<widget class="GtkTable" id="table1">
- 			  <property name="visible">True</property>
--			  <property name="n_rows">5</property>
-+			  <property name="n_rows">6</property>
- 			  <property name="n_columns">2</property>
- 			  <property name="homogeneous">False</property>
- 			  <property name="row_spacing">3</property>
-@@ -1013,27 +1013,6 @@ Omnipresent (On all desktops)</property>
- 			  </child>
- 
- 			  <child>
--			    <widget class="GtkFontButton" id="font_display">
--			      <property name="visible">True</property>
--			      <property name="can_focus">True</property>
--			      <property name="show_style">True</property>
--			      <property name="show_size">True</property>
--			      <property name="use_font">True</property>
--			      <property name="use_size">False</property>
--			      <property name="focus_on_click">True</property>
--			      <signal name="font_set" handler="on_font_display_font_set" last_modification_time="Fri, 25 May 2007 16:03:23 GMT"/>
--			    </widget>
--			    <packing>
--			      <property name="left_attach">1</property>
--			      <property name="right_attach">2</property>
--			      <property name="top_attach">4</property>
--			      <property name="bottom_attach">5</property>
--			      <property name="x_options">fill</property>
--			      <property name="y_options"></property>
--			    </packing>
--			  </child>
--
--			  <child>
- 			    <widget class="GtkLabel" id="label94">
- 			      <property name="visible">True</property>
- 			      <property name="label" translatable="yes">_Active window title: </property>
-@@ -1152,7 +1131,7 @@ Omnipresent (On all desktops)</property>
- 			  <child>
- 			    <widget class="GtkLabel" id="label98">
- 			      <property name="visible">True</property>
--			      <property name="label" translatable="yes">_On-screen display: </property>
-+			      <property name="label" translatable="yes">Active _On-screen display: </property>
- 			      <property name="use_underline">True</property>
- 			      <property name="use_markup">False</property>
- 			      <property name="justify">GTK_JUSTIFY_LEFT</property>
-@@ -1162,7 +1141,6 @@ Omnipresent (On all desktops)</property>
- 			      <property name="yalign">0.5</property>
- 			      <property name="xpad">0</property>
- 			      <property name="ypad">0</property>
--			      <property name="mnemonic_widget">font_display</property>
- 			      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- 			      <property name="width_chars">-1</property>
- 			      <property name="single_line_mode">False</property>
-@@ -1197,6 +1175,76 @@ Omnipresent (On all desktops)</property>
- 			      <property name="y_options"></property>
- 			    </packing>
- 			  </child>
-+
-+			  <child>
-+			    <widget class="GtkLabel" id="label240">
-+			      <property name="visible">True</property>
-+			      <property name="label" translatable="yes">Inactive O_n-screen display: </property>
-+			      <property name="use_underline">True</property>
-+			      <property name="use_markup">False</property>
-+			      <property name="justify">GTK_JUSTIFY_LEFT</property>
-+			      <property name="wrap">False</property>
-+			      <property name="selectable">False</property>
-+			      <property name="xalign">1</property>
-+			      <property name="yalign">0.5</property>
-+			      <property name="xpad">0</property>
-+			      <property name="ypad">0</property>
-+			      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-+			      <property name="width_chars">-1</property>
-+			      <property name="single_line_mode">False</property>
-+			      <property name="angle">0</property>
-+			    </widget>
-+			    <packing>
-+			      <property name="left_attach">0</property>
-+			      <property name="right_attach">1</property>
-+			      <property name="top_attach">5</property>
-+			      <property name="bottom_attach">6</property>
-+			      <property name="x_options">fill</property>
-+			      <property name="y_options"></property>
-+			    </packing>
-+			  </child>
-+
-+			  <child>
-+			    <widget class="GtkFontButton" id="font_active_display">
-+			      <property name="visible">True</property>
-+			      <property name="can_focus">True</property>
-+			      <property name="show_style">True</property>
-+			      <property name="show_size">True</property>
-+			      <property name="use_font">True</property>
-+			      <property name="use_size">False</property>
-+			      <property name="focus_on_click">True</property>
-+			      <signal name="font_set" handler="on_font_active_display_font_set" last_modification_time="Mon, 21 Dec 2009 16:08:46 GMT"/>
-+			    </widget>
-+			    <packing>
-+			      <property name="left_attach">1</property>
-+			      <property name="right_attach">2</property>
-+			      <property name="top_attach">4</property>
-+			      <property name="bottom_attach">5</property>
-+			      <property name="x_options">fill</property>
-+			      <property name="y_options"></property>
-+			    </packing>
-+			  </child>
-+
-+			  <child>
-+			    <widget class="GtkFontButton" id="font_inactive_display">
-+			      <property name="visible">True</property>
-+			      <property name="can_focus">True</property>
-+			      <property name="show_style">True</property>
-+			      <property name="show_size">True</property>
-+			      <property name="use_font">True</property>
-+			      <property name="use_size">False</property>
-+			      <property name="focus_on_click">True</property>
-+			      <signal name="font_set" handler="on_font_inactive_display_font_set" last_modification_time="Mon, 21 Dec 2009 16:08:52 GMT"/>
-+			    </widget>
-+			    <packing>
-+			      <property name="left_attach">1</property>
-+			      <property name="right_attach">2</property>
-+			      <property name="top_attach">5</property>
-+			      <property name="bottom_attach">6</property>
-+			      <property name="x_options">fill</property>
-+			      <property name="y_options"></property>
-+			    </packing>
-+			  </child>
- 			</widget>
- 			<packing>
- 			  <property name="padding">0</property>
-@@ -1576,6 +1624,301 @@ Omnipresent (On all desktops)</property>
- 		  <property name="fill">True</property>
- 		</packing>
- 	      </child>
-+
-+	      <child>
-+		<widget class="GtkVBox" id="vbox86">
-+		  <property name="visible">True</property>
-+		  <property name="homogeneous">False</property>
-+		  <property name="spacing">6</property>
-+
-+		  <child>
-+		    <widget class="GtkLabel" id="label243">
-+		      <property name="visible">True</property>
-+		      <property name="label" translatable="yes"><span weight="bold">Primary Monitor</span></property>
-+		      <property name="use_underline">False</property>
-+		      <property name="use_markup">True</property>
-+		      <property name="justify">GTK_JUSTIFY_LEFT</property>
-+		      <property name="wrap">False</property>
-+		      <property name="selectable">False</property>
-+		      <property name="xalign">0</property>
-+		      <property name="yalign">0.5</property>
-+		      <property name="xpad">0</property>
-+		      <property name="ypad">0</property>
-+		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-+		      <property name="width_chars">-1</property>
-+		      <property name="single_line_mode">False</property>
-+		      <property name="angle">0</property>
-+		    </widget>
-+		    <packing>
-+		      <property name="padding">0</property>
-+		      <property name="expand">False</property>
-+		      <property name="fill">False</property>
-+		    </packing>
-+		  </child>
-+
-+		  <child>
-+		    <widget class="GtkHBox" id="hbox120">
-+		      <property name="visible">True</property>
-+		      <property name="homogeneous">False</property>
-+		      <property name="spacing">0</property>
-+
-+		      <child>
-+			<widget class="GtkLabel" id="label244">
-+			  <property name="visible">True</property>
-+			  <property name="label">    </property>
-+			  <property name="use_underline">False</property>
-+			  <property name="use_markup">False</property>
-+			  <property name="justify">GTK_JUSTIFY_LEFT</property>
-+			  <property name="wrap">False</property>
-+			  <property name="selectable">False</property>
-+			  <property name="xalign">0.5</property>
-+			  <property name="yalign">0.5</property>
-+			  <property name="xpad">0</property>
-+			  <property name="ypad">0</property>
-+			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-+			  <property name="width_chars">-1</property>
-+			  <property name="single_line_mode">False</property>
-+			  <property name="angle">0</property>
-+			</widget>
-+			<packing>
-+			  <property name="padding">0</property>
-+			  <property name="expand">False</property>
-+			  <property name="fill">False</property>
-+			</packing>
-+		      </child>
-+
-+		      <child>
-+			<widget class="GtkVBox" id="vbox87">
-+			  <property name="visible">True</property>
-+			  <property name="homogeneous">False</property>
-+			  <property name="spacing">6</property>
-+
-+			  <child>
-+			    <widget class="GtkHBox" id="hbox122">
-+			      <property name="visible">True</property>
-+			      <property name="homogeneous">False</property>
-+			      <property name="spacing">0</property>
-+
-+			      <child>
-+				<widget class="GtkLabel" id="label246">
-+				  <property name="visible">True</property>
-+				  <property name="label" translatable="yes">The primary monitor is where Openbox will place dialogs, such as the one used for cycling windows.</property>
-+				  <property name="use_underline">False</property>
-+				  <property name="use_markup">False</property>
-+				  <property name="justify">GTK_JUSTIFY_LEFT</property>
-+				  <property name="wrap">True</property>
-+				  <property name="selectable">False</property>
-+				  <property name="xalign">0</property>
-+				  <property name="yalign">0</property>
-+				  <property name="xpad">0</property>
-+				  <property name="ypad">0</property>
-+				  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-+				  <property name="width_chars">0</property>
-+				  <property name="single_line_mode">False</property>
-+				  <property name="angle">0</property>
-+				</widget>
-+				<packing>
-+				  <property name="padding">0</property>
-+				  <property name="expand">False</property>
-+				  <property name="fill">False</property>
-+				</packing>
-+			      </child>
-+			    </widget>
-+			    <packing>
-+			      <property name="padding">0</property>
-+			      <property name="expand">False</property>
-+			      <property name="fill">False</property>
-+			    </packing>
-+			  </child>
-+
-+			  <child>
-+			    <widget class="GtkHBox" id="hbox121">
-+			      <property name="visible">True</property>
-+			      <property name="homogeneous">False</property>
-+			      <property name="spacing">6</property>
-+
-+			      <child>
-+				<widget class="GtkLabel" id="label245">
-+				  <property name="visible">True</property>
-+				  <property name="label" translatable="yes">Primary _monitor:</property>
-+				  <property name="use_underline">True</property>
-+				  <property name="use_markup">False</property>
-+				  <property name="justify">GTK_JUSTIFY_LEFT</property>
-+				  <property name="wrap">False</property>
-+				  <property name="selectable">False</property>
-+				  <property name="xalign">0</property>
-+				  <property name="yalign">0.5</property>
-+				  <property name="xpad">0</property>
-+				  <property name="ypad">0</property>
-+				  <property name="mnemonic_widget">primary_monitor_popup</property>
-+				  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-+				  <property name="width_chars">-1</property>
-+				  <property name="single_line_mode">False</property>
-+				  <property name="angle">0</property>
-+				</widget>
-+				<packing>
-+				  <property name="padding">0</property>
-+				  <property name="expand">False</property>
-+				  <property name="fill">False</property>
-+				</packing>
-+			      </child>
-+
-+			      <child>
-+				<widget class="GtkOptionMenu" id="primary_monitor_popup">
-+				  <property name="visible">True</property>
-+				  <property name="can_focus">True</property>
-+				  <property name="history">1</property>
-+
-+				  <child>
-+				    <widget class="GtkMenu" id="menu16">
-+
-+				      <child>
-+					<widget class="GtkMenuItem" id="item1">
-+					  <property name="visible">True</property>
-+					  <property name="label" translatable="yes">Fixed Monitor</property>
-+					  <property name="use_underline">True</property>
-+					  <signal name="activate" handler="on_primary_monitor_fixed_activate" last_modification_time="Mon, 21 Dec 2009 18:23:48 GMT"/>
-+					</widget>
-+				      </child>
-+
-+				      <child>
-+					<widget class="GtkMenuItem" id="active_monitor1">
-+					  <property name="visible">True</property>
-+					  <property name="label" translatable="yes">Active Monitor</property>
-+					  <property name="use_underline">True</property>
-+					  <signal name="activate" handler="on_primary_monitor_active_activate" last_modification_time="Mon, 21 Dec 2009 18:23:48 GMT"/>
-+					</widget>
-+				      </child>
-+
-+				      <child>
-+					<widget class="GtkMenuItem" id="monitor_with_mouse_pointer1">
-+					  <property name="visible">True</property>
-+					  <property name="label" translatable="yes">Monitor With Mouse Pointer</property>
-+					  <property name="use_underline">True</property>
-+					  <signal name="activate" handler="on_primary_monitor_mouse_activate" last_modification_time="Mon, 21 Dec 2009 18:23:48 GMT"/>
-+					</widget>
-+				      </child>
-+				    </widget>
-+				  </child>
-+				</widget>
-+				<packing>
-+				  <property name="padding">0</property>
-+				  <property name="expand">False</property>
-+				  <property name="fill">False</property>
-+				</packing>
-+			      </child>
-+			    </widget>
-+			    <packing>
-+			      <property name="padding">0</property>
-+			      <property name="expand">True</property>
-+			      <property name="fill">True</property>
-+			    </packing>
-+			  </child>
-+
-+			  <child>
-+			    <widget class="GtkHBox" id="hbox123">
-+			      <property name="visible">True</property>
-+			      <property name="homogeneous">False</property>
-+			      <property name="spacing">6</property>
-+
-+			      <child>
-+				<widget class="GtkLabel" id="label249">
-+				  <property name="visible">True</property>
-+				  <property name="label">    </property>
-+				  <property name="use_underline">False</property>
-+				  <property name="use_markup">False</property>
-+				  <property name="justify">GTK_JUSTIFY_LEFT</property>
-+				  <property name="wrap">False</property>
-+				  <property name="selectable">False</property>
-+				  <property name="xalign">0.5</property>
-+				  <property name="yalign">0.5</property>
-+				  <property name="xpad">0</property>
-+				  <property name="ypad">0</property>
-+				  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-+				  <property name="width_chars">-1</property>
-+				  <property name="single_line_mode">False</property>
-+				  <property name="angle">0</property>
-+				</widget>
-+				<packing>
-+				  <property name="padding">0</property>
-+				  <property name="expand">False</property>
-+				  <property name="fill">False</property>
-+				</packing>
-+			      </child>
-+
-+			      <child>
-+				<widget class="GtkLabel" id="label248">
-+				  <property name="visible">True</property>
-+				  <property name="label" translatable="yes">_Fixed monitor:</property>
-+				  <property name="use_underline">True</property>
-+				  <property name="use_markup">False</property>
-+				  <property name="justify">GTK_JUSTIFY_LEFT</property>
-+				  <property name="wrap">False</property>
-+				  <property name="selectable">False</property>
-+				  <property name="xalign">0</property>
-+				  <property name="yalign">0.5</property>
-+				  <property name="xpad">0</property>
-+				  <property name="ypad">0</property>
-+				  <property name="mnemonic_widget">fixed_monitor</property>
-+				  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-+				  <property name="width_chars">-1</property>
-+				  <property name="single_line_mode">False</property>
-+				  <property name="angle">0</property>
-+				</widget>
-+				<packing>
-+				  <property name="padding">0</property>
-+				  <property name="expand">False</property>
-+				  <property name="fill">False</property>
-+				</packing>
-+			      </child>
-+
-+			      <child>
-+				<widget class="GtkSpinButton" id="fixed_monitor">
-+				  <property name="visible">True</property>
-+				  <property name="can_focus">True</property>
-+				  <property name="climb_rate">1</property>
-+				  <property name="digits">0</property>
-+				  <property name="numeric">False</property>
-+				  <property name="update_policy">GTK_UPDATE_ALWAYS</property>
-+				  <property name="snap_to_ticks">False</property>
-+				  <property name="wrap">False</property>
-+				  <property name="adjustment">1 1 100 1 10 10</property>
-+				  <signal name="value_changed" handler="on_fixed_monitor_value_changed" last_modification_time="Mon, 21 Dec 2009 18:32:45 GMT"/>
-+				</widget>
-+				<packing>
-+				  <property name="padding">0</property>
-+				  <property name="expand">False</property>
-+				  <property name="fill">False</property>
-+				</packing>
-+			      </child>
-+			    </widget>
-+			    <packing>
-+			      <property name="padding">0</property>
-+			      <property name="expand">True</property>
-+			      <property name="fill">True</property>
-+			    </packing>
-+			  </child>
-+			</widget>
-+			<packing>
-+			  <property name="padding">0</property>
-+			  <property name="expand">True</property>
-+			  <property name="fill">True</property>
-+			</packing>
-+		      </child>
-+		    </widget>
-+		    <packing>
-+		      <property name="padding">0</property>
-+		      <property name="expand">False</property>
-+		      <property name="fill">True</property>
-+		    </packing>
-+		  </child>
-+		</widget>
-+		<packing>
-+		  <property name="padding">0</property>
-+		  <property name="expand">False</property>
-+		  <property name="fill">True</property>
-+		</packing>
-+	      </child>
- 	    </widget>
- 	    <packing>
- 	      <property name="tab_expand">False</property>
-diff --git a/src/preview_update.c b/src/preview_update.c
-index a0e17c8..2f61fb7 100644
---- a/src/preview_update.c
-+++ b/src/preview_update.c
-@@ -10,18 +10,21 @@ static RrFont       *active_window_font   = NULL;
- static RrFont       *inactive_window_font = NULL;
- static RrFont       *menu_title_font      = NULL;
- static RrFont       *menu_item_font       = NULL;
--static RrFont       *osd_font             = NULL;
-+static RrFont       *osd_active_font      = NULL;
-+static RrFont       *osd_inactive_font    = NULL;
- 
- static gboolean update_theme_preview_iterate(gpointer data);
- 
- void preview_update_all()
- {
-     if (!list_store) return;
-+    if (!RR_CHECK_VERSION(3,5,0)) return;
- 
-     g_idle_remove_by_data(list_store);
- 
-     if (!(title_layout && active_window_font && inactive_window_font &&
--          menu_title_font && menu_item_font && osd_font))
-+          menu_title_font && menu_item_font &&
-+          osd_active_font && osd_inactive_font))
-         return; /* not set up */
- 
-     restart_theme_preview_update = TRUE;
-@@ -70,10 +73,17 @@ void preview_update_set_menu_item_font(RrFont *f)
-     preview_update_all();
- }
- 
--void preview_update_set_osd_font(RrFont *f)
-+void preview_update_set_osd_active_font(RrFont *f)
- {
--    RrFontClose(osd_font);
--    osd_font = f;
-+    RrFontClose(osd_active_font);
-+    osd_active_font = f;
-+    preview_update_all();
-+}
-+
-+void preview_update_set_osd_inactive_font(RrFont *f)
-+{
-+    RrFontClose(osd_inactive_font);
-+    osd_inactive_font = f;
-     preview_update_all();
- }
- 
-@@ -123,7 +133,8 @@ static gboolean update_theme_preview_iterate(gpointer data)
-     gtk_list_store_set(GTK_LIST_STORE(ls), &iter, 1,
-                        preview_theme(name, title_layout, active_window_font,
-                                      inactive_window_font, menu_title_font,
--                                     menu_item_font, osd_font),
-+                                     menu_item_font, osd_active_font,
-+                                     osd_inactive_font),
-                        -1);
- 
-     return TRUE;
-diff --git a/src/preview_update.h b/src/preview_update.h
-index 5163174..596f092 100644
---- a/src/preview_update.h
-+++ b/src/preview_update.h
-@@ -11,7 +11,8 @@ void preview_update_set_active_font      (RrFont *f);
- void preview_update_set_inactive_font    (RrFont *f);
- void preview_update_set_menu_header_font (RrFont *f);
- void preview_update_set_menu_item_font   (RrFont *f);
--void preview_update_set_osd_font         (RrFont *f);
-+void preview_update_set_osd_active_font  (RrFont *f);
-+void preview_update_set_osd_inactive_font(RrFont *f);
- void preview_update_set_title_layout     (const gchar *layout);
- 
- #endif
-diff --git a/src/windows.c b/src/windows.c
-index ed5ed35..d2b4d96 100644
---- a/src/windows.c
-+++ b/src/windows.c
-@@ -23,6 +23,7 @@
- static gboolean mapping = FALSE;
- 
- #define PLACE_ON_ALL    0
-+#define PLACE_ON_FIXED 0
- #define PLACE_ON_ACTIVE 1
- #define PLACE_ON_MOUSE 2
- 
-@@ -59,6 +60,21 @@ void windows_setup_tab()
-         gtk_option_menu_set_history(GTK_OPTION_MENU(w), PLACE_ON_ALL);
-     g_free(s);
- 
-+    w = get_widget("primary_monitor_popup");
-+    s = tree_get_string("placement/primaryMonitor", "");
-+    if (!g_ascii_strcasecmp(s, "Active"))
-+        gtk_option_menu_set_history(GTK_OPTION_MENU(w), PLACE_ON_ACTIVE);
-+    else if (!g_ascii_strcasecmp(s, "Mouse"))
-+        gtk_option_menu_set_history(GTK_OPTION_MENU(w), PLACE_ON_MOUSE);
-+    else {
-+        gtk_option_menu_set_history(GTK_OPTION_MENU(w), PLACE_ON_FIXED);
-+
-+        w = get_widget("fixed_monitor");
-+        gtk_spin_button_set_value(GTK_SPIN_BUTTON(w),
-+                                  tree_get_int("placement/primaryMonitor", 1));
-+    }
-+    g_free(s);
-+
-     enable_stuff();
- 
-     mapping = FALSE;
-@@ -71,8 +87,50 @@ static void enable_stuff()
- 
-     w = get_widget("place_mouse");
-     b = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(w));
-+
-     w = get_widget("place_center");
-     gtk_widget_set_sensitive(w, !b);
-+
-+    w = get_widget("primary_monitor_popup");
-+    b = gtk_option_menu_get_history(GTK_OPTION_MENU(w)) == PLACE_ON_FIXED;
-+    w = get_widget("fixed_monitor");
-+    gtk_widget_set_sensitive(w, b);
-+}
-+
-+void on_primary_monitor_active_activate(GtkMenuItem *w, gpointer data)
-+{
-+    if (mapping) return;
-+
-+    tree_set_string("placement/primaryMonitor", "Active");
-+    enable_stuff();
-+}
-+
-+void on_primary_monitor_mouse_activate(GtkMenuItem *w, gpointer data)
-+{
-+    if (mapping) return;
-+
-+    tree_set_string("placement/primaryMonitor", "Mouse");
-+    enable_stuff();
-+}
-+
-+void on_primary_monitor_fixed_activate(GtkMenuItem *w, gpointer data)
-+{
-+    GtkWidget *w2;
-+
-+    if (mapping) return;
-+
-+    w2 = get_widget("fixed_monitor");
-+    tree_set_int("placement/primaryMonitor",
-+                 gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(w2)));
-+    enable_stuff();
-+}
-+
-+void on_fixed_monitor_value_changed(GtkSpinButton *w, gpointer data)
-+{
-+    if (mapping) return;
-+
-+    tree_set_int("placement/primaryMonitor",
-+                 gtk_spin_button_get_value_as_int(w));
- }
- 
- void on_focus_new_toggled(GtkToggleButton *w, gpointer data)
-commit 7562931bcf0857ce1522f81f9cb018a2f18ab817
-Author: Dana Jansens <danakj at orodu.net>
-Date:   Mon Dec 21 14:06:45 2009 -0500
-
-    use the new obt_xml stuff
-
-diff --git a/src/desktops.c b/src/desktops.c
-index f1f0021..6f205c4 100644
---- a/src/desktops.c
-+++ b/src/desktops.c
-@@ -156,7 +156,7 @@ static void desktops_read_names()
-         gchar *name;
- 
-         if (!xmlStrcmp(n->name, (const xmlChar*)"name")) {
--            name = obt_parse_node_string(n);
-+            name = obt_xml_node_string(n);
- 
-             desktop_names = g_list_append(desktop_names, name);
- 
-diff --git a/src/main.c b/src/main.c
-index f72976e..9035e8d 100644
---- a/src/main.c
-+++ b/src/main.c
-@@ -43,7 +43,7 @@ xmlNodePtr root;
- RrInstance *rrinst;
- gchar *obc_config_file = NULL;
- ObtPaths *paths;
--ObtParseInst *parse_i;
-+ObtXmlInst *parse_i;
- 
- static gchar *obc_theme_install = NULL;
- static gchar *obc_theme_archive = NULL;
-@@ -217,7 +217,7 @@ int main(int argc, char **argv)
-     }
- 
-     paths = obt_paths_new();
--    parse_i = obt_parse_instance_new();
-+    parse_i = obt_xml_instance_new();
-     rrinst = RrInstanceNew(GDK_DISPLAY(), gdk_x11_get_default_screen());
- 
-     if (!obc_config_file) {
-@@ -233,18 +233,18 @@ int main(int argc, char **argv)
-     }
- 
-     xmlIndentTreeOutput = 1;
--    if (!obt_parse_load_config_file(parse_i,
--                                    "openbox",
--                                    (obc_config_file ?
--                                     obc_config_file : "rc.xml"),
--                                    "openbox_config"))
-+    if (!obt_xml_load_config_file(parse_i,
-+                                  "openbox",
-+                                  (obc_config_file ?
-+                                   obc_config_file : "rc.xml"),
-+                                  "openbox_config"))
-     {
-         obconf_error(_("Failed to load an rc.xml. You have probably failed to install Openbox properly."), TRUE);
-         exit_with_error = TRUE;
-     }
-     else {
--        doc = obt_parse_doc(parse_i);
--        root = obt_parse_root(parse_i);
-+        doc = obt_xml_doc(parse_i);
-+        root = obt_xml_root(parse_i);
-     }
- 
-     /* look for parsing errors */
-@@ -303,7 +303,7 @@ int main(int argc, char **argv)
-     }
- 
-     RrInstanceFree(rrinst);
--    obt_parse_instance_unref(parse_i);
-+    obt_xml_instance_unref(parse_i);
-     obt_paths_unref(paths);
- 
-     xmlFreeDoc(doc);
-diff --git a/src/main.h b/src/main.h
-index 2c06630..4f3213b 100644
---- a/src/main.h
-+++ b/src/main.h
-@@ -21,7 +21,7 @@
- 
- #include <obrender/render.h>
- #include <obrender/instance.h>
--#include <obt/parse.h>
-+#include <obt/xml.h>
- #include <obt/paths.h>
- 
- #include <gtk/gtk.h>
-@@ -32,7 +32,7 @@ extern RrInstance *rrinst;
- extern GtkWidget *mainwin;
- extern gchar *obc_config_file;
- extern ObtPaths *paths;
--extern ObtParseInst *parse_i;
-+extern ObtXmlInst *parse_i;
- 
- #define get_widget(s) glade_xml_get_widget(glade, s)
- 
-diff --git a/src/mouse.c b/src/mouse.c
-index 831e2e5..88f13d9 100644
---- a/src/mouse.c
-+++ b/src/mouse.c
-@@ -19,7 +19,7 @@
- #include "main.h"
- #include "tree.h"
- #include "gettext.h"
--#include <obt/parse.h>
-+#include <obt/xml.h>
- 
- static gboolean   mapping = FALSE;
- static xmlNodePtr saved_custom = NULL;
-@@ -206,9 +206,9 @@ static gint read_doubleclick_action()
- 
-     while (n) {
-         if (!xmlStrcmp(n->name, (const xmlChar*)"action")) {
--            if (obt_parse_attr_contains(n, "name", "ToggleMaximizeFull"))
-+            if (obt_xml_attr_contains(n, "name", "ToggleMaximizeFull"))
-                 ++max;
--            else if (obt_parse_attr_contains(n, "name", "ToggleShade"))
-+            else if (obt_xml_attr_contains(n, "name", "ToggleShade"))
-                 ++shade;
-             else
-                 ++other;
-diff --git a/src/tree.c b/src/tree.c
-index 2b39840..cbe9b90 100644
---- a/src/tree.c
-+++ b/src/tree.c
-@@ -19,7 +19,7 @@
- #include "tree.h"
- #include "main.h"
- 
--#include <obt/parse.h>
-+#include <obt/xml.h>
- #include <gdk/gdkx.h>
- 
- xmlNodePtr tree_get_node(const gchar *path, const gchar *def)
-@@ -28,7 +28,7 @@ xmlNodePtr tree_get_node(const gchar *path, const gchar *def)
-     gchar **nodes;
-     gchar **it, **next;
- 
--    n = obt_parse_root(parse_i);
-+    n = obt_xml_root(parse_i);
- 
-     nodes = g_strsplit(path, "/", 0);
-     for (it = nodes; *it; it = next) {
-@@ -39,19 +39,19 @@ xmlNodePtr tree_get_node(const gchar *path, const gchar *def)
-         next = it + 1;
- 
-         /* match attributes */
--        c = obt_parse_find_node(n->children, attrs[0]);
-+        c = obt_xml_find_node(n->children, attrs[0]);
-         while (c && !ok) {
-             gint i;
- 
-             ok = TRUE;
-             for (i = 1; attrs[i]; ++i) {
-                 gchar **eq = g_strsplit(attrs[i], "=", 2);
--                if (eq[1] && !obt_parse_attr_contains(c, eq[0], eq[1]))
-+                if (eq[1] && !obt_xml_attr_contains(c, eq[0], eq[1]))
-                     ok = FALSE;
-                 g_strfreev(eq);
-             }
-             if (!ok)
--                c = obt_parse_find_node(c->next, attrs[0]);
-+                c = obt_xml_find_node(c->next, attrs[0]);
-         }
- 
-         if (!c) {
-@@ -100,7 +100,7 @@ void tree_apply()
-     obt_paths_mkdir_path(d, 0700);
-     g_free(d);
- 
--    if (!obt_parse_save_file(parse_i, p, TRUE)) {
-+    if (!obt_xml_save_file(parse_i, p, TRUE)) {
-         gchar *s;
-         s = g_strdup_printf("An error occured while saving the "
-                             "config file '%s'", p);
-@@ -166,7 +166,7 @@ gchar* tree_get_string(const gchar *node, const gchar *def)
-     xmlNodePtr n;
- 
-     n = tree_get_node(node, def);
--    return obt_parse_node_string(n);
-+    return obt_xml_node_string(n);
- }
- 
- gint tree_get_int(const gchar *node, gint def)
-@@ -177,7 +177,7 @@ gint tree_get_int(const gchar *node, gint def)
-     d = g_strdup_printf("%d", def);
-     n = tree_get_node(node, d);
-     g_free(d);
--    return obt_parse_node_int(n);
-+    return obt_xml_node_int(n);
- }
- 
- gboolean tree_get_bool(const gchar *node, gboolean def)
-@@ -185,5 +185,5 @@ gboolean tree_get_bool(const gchar *node, gboolean def)
-     xmlNodePtr n;
- 
-     n = tree_get_node(node, (def ? "yes" : "no"));
--    return obt_parse_node_bool(n);
-+    return obt_xml_node_bool(n);
- }
-diff --git a/src/tree.h b/src/tree.h
-index 62a20c8..4e9e170 100644
---- a/src/tree.h
-+++ b/src/tree.h
-@@ -19,7 +19,7 @@
- #ifndef obconf__tree_h
- #define obconf__tree_h
- 
--#include <obt/parse.h>
-+#include <obt/xml.h>
- 
- xmlNodePtr tree_get_node(const gchar *path, const gchar *def);
- 
-commit e3545ed4e522e3495df95a8bf0c4e16f543b9e00
-Author: Dana Jansens <danakj at orodu.net>
-Date:   Mon Dec 21 14:32:04 2009 -0500
-
-    don't set the theme preview if a null is returned (trying to fix bug #3285)
-
-diff --git a/src/preview_update.c b/src/preview_update.c
-index 2f61fb7..638f364 100644
---- a/src/preview_update.c
-+++ b/src/preview_update.c
-@@ -1,4 +1,5 @@
- #include "preview_update.h"
-+#include "preview.h"
- #include "main.h"
- 
- static gboolean restart_theme_preview_update = TRUE;
-@@ -97,6 +98,7 @@ void preview_update_set_title_layout(const gchar *layout)
- static gboolean update_theme_preview_iterate(gpointer data)
- {
-     GtkListStore *ls = data;
-+    GdkPixbuf *preview;
-     static GtkTreeIter iter;
-     gchar *name;
- 
-@@ -130,12 +132,12 @@ static gboolean update_theme_preview_iterate(gpointer data)
- 
-     gtk_tree_model_get(GTK_TREE_MODEL(ls), &iter, 0, &name, -1);
- 
--    gtk_list_store_set(GTK_LIST_STORE(ls), &iter, 1,
--                       preview_theme(name, title_layout, active_window_font,
--                                     inactive_window_font, menu_title_font,
--                                     menu_item_font, osd_active_font,
--                                     osd_inactive_font),
--                       -1);
-+    preview = preview_theme(name, title_layout, active_window_font,
-+                            inactive_window_font, menu_title_font,
-+                            menu_item_font, osd_active_font,
-+                            osd_inactive_font);
-+    if (preview)
-+        gtk_list_store_set(GTK_LIST_STORE(ls), &iter, 1, preview, -1);
- 
-     return TRUE;
- }
-commit b0465895c15c544111f0dbbcbffab56b476a8749
-Author: Dana Jansens <danakj at orodu.net>
-Date:   Fri Feb 12 15:18:02 2010 -0500
-
-    don't use a non-zero page size for some spinners (Fix bug #4540)
-
-diff --git a/src/obconf.glade b/src/obconf.glade
-index 464acff..0e024f8 100644
---- a/src/obconf.glade
-+++ b/src/obconf.glade
-@@ -2086,7 +2086,7 @@ Omnipresent (On all desktops)</property>
- 				  <property name="update_policy">GTK_UPDATE_ALWAYS</property>
- 				  <property name="snap_to_ticks">False</property>
- 				  <property name="wrap">False</property>
--				  <property name="adjustment">1 1 100 1 10 10</property>
-+				  <property name="adjustment">1 1 100 1 10 0</property>
- 				  <signal name="value_changed" handler="on_drag_threshold_value_changed" after="yes" last_modification_time="Thu, 31 May 2007 16:02:00 GMT"/>
- 				</widget>
- 				<packing>
-@@ -2170,7 +2170,7 @@ Omnipresent (On all desktops)</property>
- 				  <property name="update_policy">GTK_UPDATE_ALWAYS</property>
- 				  <property name="snap_to_ticks">False</property>
- 				  <property name="wrap">False</property>
--				  <property name="adjustment">20 0 100 1 10 10</property>
-+				  <property name="adjustment">20 0 100 1 10 0</property>
- 				  <signal name="value_changed" handler="on_resist_window_value_changed" after="yes" last_modification_time="Tue, 23 Sep 2003 22:22:53 GMT"/>
- 				</widget>
- 				<packing>
-@@ -2254,7 +2254,7 @@ Omnipresent (On all desktops)</property>
- 				  <property name="update_policy">GTK_UPDATE_ALWAYS</property>
- 				  <property name="snap_to_ticks">False</property>
- 				  <property name="wrap">False</property>
--				  <property name="adjustment">1 0 100 1 10 10</property>
-+				  <property name="adjustment">1 0 100 1 10 0</property>
- 				  <signal name="value_changed" handler="on_resist_edge_value_changed" after="yes" last_modification_time="Tue, 23 Sep 2003 22:23:04 GMT"/>
- 				</widget>
- 				<packing>
-@@ -2389,7 +2389,7 @@ Omnipresent (On all desktops)</property>
- 				      <property name="update_policy">GTK_UPDATE_ALWAYS</property>
- 				      <property name="snap_to_ticks">False</property>
- 				      <property name="wrap">False</property>
--				      <property name="adjustment">0 100 10000 10 10 10</property>
-+				      <property name="adjustment">0 100 10000 10 10 0</property>
- 				      <signal name="value_changed" handler="on_warp_edge_time_value_changed" after="yes" last_modification_time="Sat, 04 Aug 2007 15:51:02 GMT"/>
- 				    </widget>
- 				    <packing>
-@@ -2831,7 +2831,7 @@ Omnipresent (On all desktops)</property>
- 						  <property name="update_policy">GTK_UPDATE_ALWAYS</property>
- 						  <property name="snap_to_ticks">False</property>
- 						  <property name="wrap">False</property>
--						  <property name="adjustment">1 0 1000 1 10 10</property>
-+						  <property name="adjustment">1 0 1000 1 10 0</property>
- 						  <signal name="value_changed" handler="on_fixed_x_pos_value_changed" after="yes" last_modification_time="Sat, 12 Jan 2008 18:21:45 GMT"/>
- 						</widget>
- 						<packing>
-@@ -2973,7 +2973,7 @@ Omnipresent (On all desktops)</property>
- 						  <property name="update_policy">GTK_UPDATE_ALWAYS</property>
- 						  <property name="snap_to_ticks">False</property>
- 						  <property name="wrap">False</property>
--						  <property name="adjustment">1 0 1000 1 10 10</property>
-+						  <property name="adjustment">1 0 1000 1 10 0</property>
- 						  <signal name="value_changed" handler="on_fixed_y_pos_value_changed" after="yes" last_modification_time="Sat, 12 Jan 2008 18:22:16 GMT"/>
- 						</widget>
- 						<packing>
-@@ -3327,7 +3327,7 @@ Omnipresent (On all desktops)</property>
- 					  <property name="update_policy">GTK_UPDATE_ALWAYS</property>
- 					  <property name="snap_to_ticks">False</property>
- 					  <property name="wrap">False</property>
--					  <property name="adjustment">0 0 10000 10 10 10</property>
-+					  <property name="adjustment">0 0 10000 10 10 0</property>
- 					  <signal name="value_changed" handler="on_focus_delay_value_changed" after="yes" last_modification_time="Sun, 14 Sep 2003 11:24:28 GMT"/>
- 					</widget>
- 					<packing>
-@@ -3589,7 +3589,7 @@ Omnipresent (On all desktops)</property>
- 				  <property name="update_policy">GTK_UPDATE_ALWAYS</property>
- 				  <property name="snap_to_ticks">False</property>
- 				  <property name="wrap">False</property>
--				  <property name="adjustment">0 0 10000 10 10 10</property>
-+				  <property name="adjustment">0 0 10000 10 10 0</property>
- 				  <signal name="value_changed" handler="on_doubleclick_time_value_changed" after="yes" last_modification_time="Thu, 31 May 2007 16:09:40 GMT"/>
- 				</widget>
- 				<packing>
-@@ -3895,7 +3895,7 @@ Omnipresent (On all desktops)</property>
- 				  <property name="update_policy">GTK_UPDATE_ALWAYS</property>
- 				  <property name="snap_to_ticks">False</property>
- 				  <property name="wrap">False</property>
--				  <property name="adjustment">0 1 10000 10 10 10</property>
-+				  <property name="adjustment">0 1 10000 10 10 0</property>
- 				  <signal name="value_changed" handler="on_desktop_popup_time_value_changed" after="yes" last_modification_time="Sat, 04 Aug 2007 16:03:27 GMT"/>
- 				</widget>
- 				<packing>
-@@ -3986,7 +3986,7 @@ Omnipresent (On all desktops)</property>
- 			      <property name="update_policy">GTK_UPDATE_ALWAYS</property>
- 			      <property name="snap_to_ticks">False</property>
- 			      <property name="wrap">False</property>
--			      <property name="adjustment">1 1 100 1 10 10</property>
-+			      <property name="adjustment">1 1 100 1 10 0</property>
- 			      <signal name="value_changed" handler="on_desktop_num_value_changed" after="yes" last_modification_time="Mon, 15 Sep 2003 01:16:20 GMT"/>
- 			    </widget>
- 			    <packing>
-@@ -4331,7 +4331,7 @@ Omnipresent (On all desktops)</property>
- 					  <property name="update_policy">GTK_UPDATE_ALWAYS</property>
- 					  <property name="snap_to_ticks">False</property>
- 					  <property name="wrap">False</property>
--					  <property name="adjustment">20 0 100 1 10 10</property>
-+					  <property name="adjustment">20 0 100 1 10 0</property>
- 					  <signal name="value_changed" handler="on_margins_top_value_changed" after="yes" last_modification_time="Thu, 19 Jul 2007 23:50:09 GMT"/>
- 					</widget>
- 					<packing>
-@@ -4573,7 +4573,7 @@ Omnipresent (On all desktops)</property>
- 				      <property name="update_policy">GTK_UPDATE_ALWAYS</property>
- 				      <property name="snap_to_ticks">False</property>
- 				      <property name="wrap">False</property>
--				      <property name="adjustment">20 0 100 1 10 10</property>
-+				      <property name="adjustment">20 0 100 1 10 0</property>
- 				      <signal name="value_changed" handler="on_margins_left_value_changed" after="yes" last_modification_time="Thu, 19 Jul 2007 23:50:31 GMT"/>
- 				    </widget>
- 				    <packing>
-@@ -4786,7 +4786,7 @@ Omnipresent (On all desktops)</property>
- 				      <property name="update_policy">GTK_UPDATE_ALWAYS</property>
- 				      <property name="snap_to_ticks">False</property>
- 				      <property name="wrap">False</property>
--				      <property name="adjustment">20 0 100 1 10 10</property>
-+				      <property name="adjustment">20 0 100 1 10 0</property>
- 				      <signal name="value_changed" handler="on_margins_right_value_changed" after="yes" last_modification_time="Thu, 19 Jul 2007 23:50:41 GMT"/>
- 				    </widget>
- 				    <packing>
-@@ -5021,7 +5021,7 @@ Omnipresent (On all desktops)</property>
- 				      <property name="update_policy">GTK_UPDATE_ALWAYS</property>
- 				      <property name="snap_to_ticks">False</property>
- 				      <property name="wrap">False</property>
--				      <property name="adjustment">20 0 100 1 10 10</property>
-+				      <property name="adjustment">20 0 100 1 10 0</property>
- 				      <signal name="value_changed" handler="on_margins_bottom_value_changed" after="yes" last_modification_time="Thu, 19 Jul 2007 23:50:59 GMT"/>
- 				    </widget>
- 				    <packing>
-@@ -5607,7 +5607,7 @@ Omnipresent (On all desktops)</property>
- 				      <property name="update_policy">GTK_UPDATE_ALWAYS</property>
- 				      <property name="snap_to_ticks">False</property>
- 				      <property name="wrap">False</property>
--				      <property name="adjustment">1 0 10000 1 10 10</property>
-+				      <property name="adjustment">1 0 10000 1 10 0</property>
- 				      <signal name="value_changed" handler="on_dock_float_x_value_changed" after="yes" last_modification_time="Sun, 14 Sep 2003 11:07:38 GMT"/>
- 				    </widget>
- 				    <packing>
-@@ -5652,7 +5652,7 @@ Omnipresent (On all desktops)</property>
- 				      <property name="update_policy">GTK_UPDATE_ALWAYS</property>
- 				      <property name="snap_to_ticks">False</property>
- 				      <property name="wrap">False</property>
--				      <property name="adjustment">1 0 10000 1 10 10</property>
-+				      <property name="adjustment">1 0 10000 1 10 0</property>
- 				      <signal name="value_changed" handler="on_dock_float_y_value_changed" after="yes" last_modification_time="Sun, 14 Sep 2003 11:08:09 GMT"/>
- 				    </widget>
- 				    <packing>
-@@ -6142,7 +6142,7 @@ Omnipresent (On all desktops)</property>
- 				      <property name="update_policy">GTK_UPDATE_ALWAYS</property>
- 				      <property name="snap_to_ticks">False</property>
- 				      <property name="wrap">False</property>
--				      <property name="adjustment">300 0 10000 10 10 10</property>
-+				      <property name="adjustment">300 0 10000 10 10 0</property>
- 				      <signal name="value_changed" handler="on_dock_hide_delay_value_changed" after="yes" last_modification_time="Sun, 14 Sep 2003 11:08:49 GMT"/>
- 				    </widget>
- 				    <packing>
-@@ -6264,7 +6264,7 @@ Omnipresent (On all desktops)</property>
- 				      <property name="update_policy">GTK_UPDATE_ALWAYS</property>
- 				      <property name="snap_to_ticks">False</property>
- 				      <property name="wrap">False</property>
--				      <property name="adjustment">300 0 10000 10 10 10</property>
-+				      <property name="adjustment">300 0 10000 10 10 0</property>
- 				      <signal name="value_changed" handler="on_dock_show_delay_value_changed" after="yes" last_modification_time="Thu, 31 May 2007 15:17:16 GMT"/>
- 				    </widget>
- 				    <packing>
-commit 500163e2c74cbbded0361574fd14d0a1168c1119
-Author: Dana Jansens <danakj at orodu.net>
-Date:   Tue Mar 9 10:51:02 2010 -0500
-
-    remove unneeded strdup
-
-diff --git a/src/archive.c b/src/archive.c
-index b3404d7..1264627 100644
---- a/src/archive.c
-+++ b/src/archive.c
-@@ -164,15 +164,12 @@ static gboolean change_dir(const gchar *dir)
- 
- static gchar* install_theme_to(const gchar *file, const gchar *to)
- {
--    gchar *glob;
-     gchar **argv;
-     gchar *errtxt = NULL, *outtxt = NULL;
-     gint exitcode;
-     GError *e = NULL;
-     gchar *name = NULL;
- 
--    glob = g_strdup_printf("*/openbox-3/", name);
--
-     argv = g_new(gchar*, 11);
-     argv[0] = g_strdup("tar");
-     argv[1] = g_strdup("-x");
-@@ -183,7 +180,7 @@ static gchar* install_theme_to(const gchar *file, const gchar *to)
-     argv[6] = g_strdup(file);
-     argv[7] = g_strdup("-C");
-     argv[8] = g_strdup(to);
--    argv[9] = g_strdup(glob);
-+    argv[9] = g_strdup("*/openbox-3/");
-     argv[10] = NULL;
-     if (!g_spawn_sync(NULL, argv, NULL, G_SPAWN_SEARCH_PATH, NULL, NULL,
-                       &outtxt, &errtxt, &exitcode, &e))
-@@ -222,6 +219,5 @@ static gchar* install_theme_to(const gchar *file, const gchar *to)
- 
-     g_free(outtxt);
-     g_free(errtxt);
--    g_free(glob);
-     return name;
- }
-commit cc7a18807663313ef111d86a75844ded0416a889
-Author: Dana Jansens <danakj at orodu.net>
-Date:   Fri Aug 5 12:05:10 2011 -0400
-
-    Load the rc.xml config file given on --config-file the same as Openbox (use the whole path given).
-
-diff --git a/src/main.c b/src/main.c
-index 9035e8d..a576253 100644
---- a/src/main.c
-+++ b/src/main.c
-@@ -233,11 +233,10 @@ int main(int argc, char **argv)
-     }
- 
-     xmlIndentTreeOutput = 1;
--    if (!obt_xml_load_config_file(parse_i,
--                                  "openbox",
--                                  (obc_config_file ?
--                                   obc_config_file : "rc.xml"),
--                                  "openbox_config"))
-+    if (!((obc_config_file &&
-+           obt_xml_load_file(parse_i, obc_config_file, "openbox_config")) ||
-+          obt_xml_load_config_file(parse_i, "openbox", "rc.xml",
-+                                   "openbox_config")))
-     {
-         obconf_error(_("Failed to load an rc.xml. You have probably failed to install Openbox properly."), TRUE);
-         exit_with_error = TRUE;
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/obconf.git/commitdiff/dc40a9d26d14de91cd0b6068e6ebeca219739062



More information about the pld-cvs-commit mailing list