Permalink
Browse files

Merge git://git.icculus.org/dana/openbox

  • Loading branch information...
BurntSushi committed Jan 12, 2012
2 parents 72cfa62 + 5aad740 commit 56639364298242a243badad7d25a9677087c044e
View
@@ -30,6 +30,7 @@ ltmain.sh
m4/*.m4
*.o
*.orig
+*.rej
*.lo
*.la
missing
View
@@ -6,6 +6,7 @@ localedir = $(datadir)/locale
configdir = $(sysconfdir)/xdg
rcdir = $(configdir)/openbox
xsessionsdir = $(datadir)/xsessions
+gnomesessiondir = $(datadir)/gnome-session/sessions
gnomewmfilesdir = $(datadir)/gnome/wm-properties
pkgconfigdir = $(libdir)/pkgconfig
obtpubincludedir= $(includedir)/openbox/@OBT_VERSION@/obt
@@ -79,6 +80,7 @@ obrender_libobrender_la_CPPFLAGS = \
obrender_libobrender_la_LDFLAGS = \
-version-info $(RR_CURRENT):$(RR_REVISION):$(RR_AGE)
obrender_libobrender_la_LIBADD = \
+ obt/libobt.la \
$(X_LIBS) \
$(PANGO_LIBS) \
$(GLIB_LIBS) \
@@ -513,6 +515,10 @@ nodist_xsessions_DATA = \
data/xsession/openbox-gnome.desktop \
data/xsession/openbox-kde.desktop
+dist_gnomesession_DATA = \
+ data/gnome-session/openbox-gnome.session \
+ data/gnome-session/openbox-gnome-fallback.session
+
dist_noinst_DATA = \
data/rc.xsd \
data/menu.xsd \
View
@@ -3,7 +3,7 @@ To build Openbox from git you need:
A C Compiler (GNU GCC 3.2+ suggested)
-GNU Gettext 0.14.4
-GNU Autoconf 2.50+
--GNU Automake 1.9 (no more, no less)
+-GNU Automake 1.11+
-GNU Libtool
-Xlib library/headers (devel package)
-Pkg-Config
View
@@ -1,8 +1,10 @@
AC_PREREQ([2.54])
AC_INIT([openbox], [3.5.0], [http://bugzilla.icculus.org])
-AM_INIT_AUTOMAKE
AC_CONFIG_SRCDIR([openbox/openbox.c])
+AM_INIT_AUTOMAKE([foreign])
+AM_SILENT_RULES([yes])
+
OB_VERSION=$PACKAGE_VERSION
AC_SUBST(OB_VERSION)
@@ -168,7 +170,7 @@ AC_ARG_ENABLE(imlib2,
[--disable-imlib2],
[disable use of Imlib2 image library for loading icons. [default=enabled]]
),
- [enable_imlib2=$enableeval],
+ [enable_imlib2=$enableval],
[enable_imlib2=yes]
)
@@ -0,0 +1,4 @@
+all clean install:
+ $(MAKE) -C .. -$(MAKEFLAGS) $@
+
+.PHONY: all clean install
@@ -0,0 +1,6 @@
+[GNOME Session]
+Name=GNOME/Openbox fallback (Safe Mode)
+RequiredComponents=gnome-settings-daemon;
+RequiredProviders=windowmanager;
+DefaultProvider-windowmanager=openbox
+DesktopName=GNOME
@@ -0,0 +1,9 @@
+[GNOME Session]
+Name=GNOME/Openbox
+RequiredComponents=gnome-settings-daemon;
+# Try load with the gnome-panel and use the fallback if we can't load a panel
+RequiredProviders=windowmanager;panel
+DefaultProvider-windowmanager=openbox
+DefaultProvider-panel=gnome-panel
+FallbackSession=openbox-gnome-fallback
+DesktopName=GNOME
View
@@ -7,6 +7,10 @@ Icon=openbox
NoDisplay=true
# name we put on the WM spec check window
X-GNOME-WMName=Openbox
+# gnome-session autostart
X-GNOME-Autostart-Phase=WindowManager
X-GNOME-Provides=windowmanager
+# Ubuntu stuff
+X-Ubuntu-Gettext-Domain=openbox
+# back compat
X-GNOME-Autostart-Notify=true
View
@@ -313,7 +313,7 @@
<mouse>
<dragThreshold>1</dragThreshold>
<!-- number of pixels the mouse must move before a drag begins -->
- <doubleClickTime>200</doubleClickTime>
+ <doubleClickTime>500</doubleClickTime>
<!-- in milliseconds (1000 = 1 second) -->
<screenEdgeWarpTime>400</screenEdgeWarpTime>
<!-- Time before changing desktops when the pointer touches the edge of the
@@ -21,11 +21,11 @@ MINOR=$(echo $VER | cut -d . -f 2)
# run GNOME with Openbox as its window manager
if test $MAJOR -lt 2 || (test $MAJOR = 2 && test $MINOR -le 22); then
- # old gnome-session was easy to work with
+ # older gnome-session was easy to work with
export WINDOW_MANAGER="@bindir@/openbox"
exec gnome-session --choose-session=openbox-session "$@"
-else
- # new gnome-session requires openbox to be set in gconf and an
+elif test $MAJOR -lt 3; then
+ # old gnome-session requires openbox to be set in gconf and an
# openbox.desktop to be installed in the applications directory
SPATH=/desktop/gnome/session
@@ -54,6 +54,12 @@ else
# run GNOME/Openbox
exec gnome-session --default-session-key $SPATH/openbox_session "$@"
+else
+ # new gnome-session requires session file installed in
+ # /usr/share/gnome-session/sessions as well as openbox.desktop to be
+ # installed in the applications directory
+
+ exec gnome-session --session=openbox-gnome
fi
@@ -8,7 +8,7 @@ if test -n "$1"; then
fi
# Set the prefix for the menu layout to use
-export XDG_MENU_PREFIX="kde-"
+export XDG_MENU_PREFIX="kde-4-"
# Clean up after GDM
xprop -root -remove _NET_NUMBER_OF_DESKTOPS \
View
@@ -226,7 +226,7 @@
<mouse>
<dragThreshold>8</dragThreshold>
<!-- number of pixels the mouse must move before a drag begins -->
- <doubleClickTime>200</doubleClickTime>
+ <doubleClickTime>500</doubleClickTime>
<!-- in milliseconds (1000 = 1 second) -->
<context name="Frame">
View
@@ -259,9 +259,13 @@ RrTheme* RrThemeNew(const RrInstance *inst, const gchar *name,
READ_INT("border.width", theme->fbwidth, 0, 100, 1);
READ_INT("menu.border.width", theme->mbwidth, 0, 100, theme->fbwidth);
READ_INT("osd.border.width", theme->obwidth, 0, 100, theme->fbwidth);
+ READ_INT("undecorated.border.width", theme->ubwidth, 0, 100,
+ theme->fbwidth);
READ_INT("menu.separator.width", theme->menu_sep_width, 1, 100, 1);
- READ_INT("menu.separator.padding.width", theme->menu_sep_paddingx, 0, 100, 6);
- READ_INT("menu.separator.padding.height", theme->menu_sep_paddingy, 0, 100, 3);
+ READ_INT("menu.separator.padding.width", theme->menu_sep_paddingx,
+ 0, 100, 6);
+ READ_INT("menu.separator.padding.height", theme->menu_sep_paddingy,
+ 0, 100, 3);
READ_INT("window.client.padding.width", theme->cbwidthx, 0, 100,
theme->paddingx);
READ_INT("window.client.padding.height", theme->cbwidthy, 0, 100,
@@ -270,7 +274,11 @@ RrTheme* RrThemeNew(const RrInstance *inst, const gchar *name,
/* load colors */
READ_COLOR_("window.active.border.color", "border.color",
theme->frame_focused_border_color, RrColorNew(inst, 0, 0, 0));
-
+ /* undecorated focused border color inherits from frame focused border
+ color */
+ READ_COLOR("window.undecorated.active.border.color",
+ theme->frame_undecorated_focused_border_color,
+ RrColorCopy(theme->frame_focused_border_color));
/* title separator focused color inherits from focused border color */
READ_COLOR("window.active.title.separator.color",
theme->title_separator_focused_color,
@@ -281,6 +289,12 @@ RrTheme* RrThemeNew(const RrInstance *inst, const gchar *name,
theme->frame_unfocused_border_color,
RrColorCopy(theme->frame_focused_border_color));
+ /* undecorated unfocused border color inherits from frame unfocused border
+ color */
+ READ_COLOR("window.undecorated.inactive.border.color",
+ theme->frame_undecorated_unfocused_border_color,
+ RrColorCopy(theme->frame_unfocused_border_color));
+
/* title separator unfocused color inherits from unfocused border color */
READ_COLOR("window.inactive.title.separator.color",
theme->title_separator_unfocused_color,
@@ -1598,7 +1612,9 @@ void RrThemeFree(RrTheme *theme)
RrColorFree(theme->menu_border_color);
RrColorFree(theme->osd_border_color);
RrColorFree(theme->frame_focused_border_color);
+ RrColorFree(theme->frame_undecorated_focused_border_color);
RrColorFree(theme->frame_unfocused_border_color);
+ RrColorFree(theme->frame_undecorated_unfocused_border_color);
RrColorFree(theme->title_separator_focused_color);
RrColorFree(theme->title_separator_unfocused_color);
RrColorFree(theme->cb_unfocused_color);
@@ -1781,6 +1797,7 @@ static gboolean read_string(XrmDatabase db, const gchar *rname, gchar **value)
if (XrmGetResource(db, rname, rclass, &rettype, &retvalue) &&
retvalue.addr != NULL) {
+ g_strstrip(retvalue.addr);
*value = retvalue.addr;
ret = TRUE;
}
@@ -1799,7 +1816,12 @@ static gboolean read_color(XrmDatabase db, const RrInstance *inst,
if (XrmGetResource(db, rname, rclass, &rettype, &retvalue) &&
retvalue.addr != NULL) {
- RrColor *c = RrColorParse(inst, retvalue.addr);
+ RrColor *c;
+
+ /* retvalue.addr is inside the xrdb database so we can't destroy it
+ but we can edit it in place, as g_strstrip does. */
+ g_strstrip(retvalue.addr);
+ c = RrColorParse(inst, retvalue.addr);
if (c != NULL) {
*value = c;
ret = TRUE;
View
@@ -44,6 +44,7 @@ struct _RrTheme {
gint fbwidth; /*!< frame border width */
gint mbwidth; /*!< menu border width */
gint obwidth; /*!< osd border width */
+ gint ubwidth; /*!< undecorated frame border width */
gint cbwidthx;
gint cbwidthy;
gint menu_overlap_x;
@@ -66,7 +67,9 @@ struct _RrTheme {
RrColor *menu_border_color;
RrColor *osd_border_color;
RrColor *frame_focused_border_color;
+ RrColor *frame_undecorated_focused_border_color;
RrColor *frame_unfocused_border_color;
+ RrColor *frame_undecorated_unfocused_border_color;
RrColor *title_separator_focused_color;
RrColor *title_separator_unfocused_color;
RrColor *cb_focused_color;
View
@@ -389,12 +389,11 @@ gunichar obt_keyboard_keypress_to_unichar(ObtIC *ic, XEvent *ev)
KeySym obt_keyboard_keypress_to_keysym(XEvent *ev)
{
KeySym sym;
- gint r;
g_return_val_if_fail(ev->type == KeyPress, None);
sym = None;
- r = XLookupString(&ev->xkey, NULL, 0, &sym, NULL);
+ XLookupString(&ev->xkey, NULL, 0, &sym, NULL);
return sym;
}
View
@@ -107,6 +107,7 @@ void obt_prop_startup(void)
CREATE_(NET_WM_ICON_GEOMETRY);
CREATE_(NET_WM_PID);
CREATE_(NET_WM_ALLOWED_ACTIONS);
+ CREATE_(NET_WM_WINDOW_OPACITY);
CREATE_(NET_WM_USER_TIME);
/* CREATE_(NET_WM_USER_TIME_WINDOW); */
CREATE_(KDE_NET_WM_FRAME_STRUT);
View
@@ -148,6 +148,7 @@ typedef enum {
OBT_PROP_NET_WM_ICON_GEOMETRY,
OBT_PROP_NET_WM_PID,
OBT_PROP_NET_WM_ALLOWED_ACTIONS,
+ OBT_PROP_NET_WM_WINDOW_OPACITY,
OBT_PROP_NET_WM_USER_TIME,
/* OBT_PROP_NET_WM_USER_TIME_WINDOW, */
OBT_PROP_NET_FRAME_EXTENTS,
@@ -75,6 +75,8 @@ static gpointer setup_func(xmlNodePtr node,
if ((n = obt_xml_find_node(node, "dialog"))) {
if (obt_xml_node_contains(n, "none"))
o->dialog_mode = OB_FOCUS_CYCLE_POPUP_MODE_NONE;
+ else if (obt_xml_node_contains(n, "no"))
+ o->dialog_mode = OB_FOCUS_CYCLE_POPUP_MODE_NONE;
else if (obt_xml_node_contains(n, "icons"))
o->dialog_mode = OB_FOCUS_CYCLE_POPUP_MODE_ICONS;
}
Oops, something went wrong.

0 comments on commit 5663936

Please sign in to comment.