all repos — openbox @ 6171dbf970c2c4f8d9736a8ae5184eb9ac38d7ce

openbox fork - make it a bit more like ryudo

when using openbox-gnome/kde-session, use a separate config file (rc-gnome/kde.xml)
Dana Jansens danakj@orodu.net
commit

6171dbf970c2c4f8d9736a8ae5184eb9ac38d7ce

parent

f16d32072361109b16b18e157cd90f0c4ea76caa

M data/xsession/openbox-gnome-session.indata/xsession/openbox-gnome-session.in

@@ -2,4 +2,5 @@ #!/bin/sh

# Run GNOME with Openbox as its window manager export WINDOW_MANAGER="@bindir@/openbox" +export OPENBOX_CONFIG_NAMESPACE="gnome" exec gnome-session "$@"
M data/xsession/openbox-kde-session.indata/xsession/openbox-kde-session.in

@@ -2,4 +2,5 @@ #!/bin/sh

# Run KDE with Openbox as its window manager export KDEWM="@bindir@/openbox" +export OPENBOX_CONFIG_NAMESPACE="kde" exec startkde "$@"
M doc/openbox.1.indoc/openbox.1.in

@@ -4,7 +4,7 @@ openbox \(em Next generation, highly configurable window manager

.SH "SYNOPSIS" .PP -\fBopenbox\fR [\fB\-\-help\fP] [\fB\-\-version\fP] [\fB\-\-replace\fP] [\fB\-\-reconfigure\fP] [\fB\-\-sm-disable\fP] [\fB\-\-config \fITYPE\fR\fP] [\fB\-\-sync\fP] [\fB\-\-debug\fP] [\fB\-\-debug-focus\fP] +\fBopenbox\fR [\fB\-\-help\fP] [\fB\-\-version\fP] [\fB\-\-replace\fP] [\fB\-\-reconfigure\fP] [\fB\-\-sm-disable\fP] [\fB\-\-sync\fP] [\fB\-\-debug\fP] [\fB\-\-debug-focus\fP] .SH "DESCRIPTION" .PP Openbox is a next generation, highly

@@ -59,8 +59,6 @@ If Openbox is already running on the display, tell it to

reload it's configuration. .IP "\fB\-\-sm-disable\fP" 10 Do not connect to the session manager. -.IP "\fB\-\-config\fITYPE\fR\fP" 10 -Specify the configuration profile to use. .IP "\fB\-\-sync\fP" 10 Run in synchronous mode (for debugging). .IP "\fB\-\-debug\fP" 10

@@ -77,4 +75,4 @@ \fBhttp://openbox.org/\fP

.PP Please report bugs to: \fBhttp://bugzilla.icculus.org/ \fP -.\" created by instant / docbook-to-man, Sun 13 May 2007, 18:06 +.\" created by instant / docbook-to-man, Sun 13 May 2007, 18:47
M doc/openbox.1.sgmldoc/openbox.1.sgml

@@ -41,7 +41,6 @@ <arg><option>--version</option></arg>

<arg><option>--replace</option></arg> <arg><option>--reconfigure</option></arg> <arg><option>--sm-disable</option></arg> - <arg><option>--config <replaceable>TYPE</replaceable></option></arg> <arg><option>--sync</option></arg> <arg><option>--debug</option></arg> <arg><option>--debug-focus</option></arg>

@@ -121,12 +120,6 @@ <varlistentry>

<term><option>--sm-disable</option></term> <listitem> <para>Do not connect to the session manager.</para> - </listitem> - </varlistentry> - <varlistentry> - <term><option>--config<replaceable>TYPE</replaceable></option></term> - <listitem> - <para>Specify the configuration profile to use.</para> </listitem> </varlistentry> <varlistentry>
M openbox/openbox.copenbox/openbox.c

@@ -104,6 +104,7 @@ static gchar *config_type = NULL;

static void signal_handler(gint signal, gpointer data); static void remove_args(gint *argc, gchar **argv, gint index, gint num); +static void parse_env(); static void parse_args(gint *argc, gchar **argv); static Cursor load_cursor(const gchar *name, guint fontval);

@@ -126,6 +127,8 @@ g_get_home_dir(), g_strerror(errno));

/* parse the command line args, which can change the argv[0] */ parse_args(&argc, argv); + /* parse the environment variables */ + parse_env(); program_name = g_path_get_basename(argv[0]); g_set_prgname(program_name);

@@ -405,6 +408,10 @@ g_assert(i == l);

argv = nargv; } + /* we also remove some environment variables, so put them back */ + if (config_type) + setenv("OPENBOX_CONFIG_NAMESPACE", config_type, 1); + /* re-run me */ execvp(argv[0], argv); /* try how we were run */ execlp(argv[0], program_name, (gchar*)NULL); /* last resort */

@@ -461,7 +468,6 @@ g_print(_(" --help Display this help and exit\n"));

g_print(_(" --version Display the version and exit\n")); g_print(_(" --replace Replace the currently running window manager\n")); g_print(_(" --sm-disable Disable connection to the session manager\n")); - g_print(_(" --config TYPE Specify the configuration profile to use\n")); g_print(_("\nPassing messages to a running Openbox instance:\n")); g_print(_(" --reconfigure Reload Openbox's configuration\n")); g_print(_("\nDebugging options:\n"));

@@ -482,6 +488,18 @@ argv[i] = NULL;

*argc -= num; } +static void parse_env() +{ + /* unset this so we don't pass it on unknowingly */ + unsetenv("DESKTOP_STARTUP_ID"); + + if (getenv("OPENBOX_CONFIG_NAMESPACE")) { + config_type = g_strdup(getenv("OPENBOX_CONFIG_NAMESPACE")); + /* don't pass it on except if we restart */ + unsetenv("OPENBOX_CONFIG_NAMESPACE"); + } +} + static void parse_args(gint *argc, gchar **argv) { gint i;

@@ -523,14 +541,6 @@ /* don't make this do anything if it's not in --help ..

} else if (!strcmp(argv[i], "--restart")) { remote_control = 2; */ - } - else if (!strcmp(argv[i], "--config")) { - if (i == *argc - 1) /* no args left */ - g_printerr(_("--config requires an argument\n")); - else { - config_type = g_strdup(argv[i+1]); - ++i; - } } else if (!strcmp(argv[i], "--sm-save-file")) { if (i == *argc - 1) /* no args left */
M openbox/startupnotify.copenbox/startupnotify.c

@@ -24,10 +24,7 @@ #include <stdlib.h>

#ifndef USE_LIBSN -void sn_startup(gboolean reconfig) { - /* unset this so we don't pass it on unknowingly */ - if (!reconfig) unsetenv("DESKTOP_STARTUP_ID"); -} +void sn_startup(gboolean reconfig) {} void sn_shutdown(gboolean reconfig) {} gboolean sn_app_starting() { return FALSE; } Time sn_app_started(const gchar *id, const gchar *wmclass)