[arch-commits] Commit in openbox/repos (4 files)
Andrea Scarpino
andrea at archlinux.org
Thu Dec 24 17:43:57 UTC 2009
Date: Thursday, December 24, 2009 @ 12:43:57
Author: andrea
Revision: 61798
Merged revisions 61552,61797 via svnmerge from
svn+ssh://gerolde.archlinux.org/srv/svn-packages/openbox/trunk
........
r61552 | andrea | 2009-12-19 14:50:46 +0100 (Sat, 19 Dec 2009) | 1 line
cleanup
........
r61797 | andrea | 2009-12-24 18:43:07 +0100 (Thu, 24 Dec 2009) | 2 lines
upgpkg: openbox 3.4.9-2
rename obprop to obxprop (as upstream will do) (FS#17555)
........
Added:
openbox/repos/extra-i686/rename-obprop-to-obxprop.patch
(from rev 61797, openbox/trunk/rename-obprop-to-obxprop.patch)
Modified:
openbox/repos/extra-i686/ (properties)
openbox/repos/extra-i686/PKGBUILD
Deleted:
openbox/repos/extra-i686/fix-workspaces-number-in-gdm.patch
------------------------------------+
PKGBUILD | 13
fix-workspaces-number-in-gdm.patch | 36 -
rename-obprop-to-obxprop.patch | 881 +++++++++++++++++++++++++++++++++++
3 files changed, 890 insertions(+), 40 deletions(-)
Property changes on: openbox/repos/extra-i686
___________________________________________________________________
Modified: svnmerge-integrated
- /openbox/trunk:1-61550
+ /openbox/trunk:1-61797
Modified: extra-i686/PKGBUILD
===================================================================
--- extra-i686/PKGBUILD 2009-12-24 17:43:07 UTC (rev 61797)
+++ extra-i686/PKGBUILD 2009-12-24 17:43:57 UTC (rev 61798)
@@ -5,7 +5,7 @@
pkgname=openbox
pkgver=3.4.9
-pkgrel=1
+pkgrel=2
pkgdesc="A window manager for the X11 windowing system"
arch=('i686' 'x86_64')
license=('GPL')
@@ -18,16 +18,21 @@
options=('!libtool' 'force')
backup=('usr/etc/xdg/openbox/menu.xml' 'usr/etc/xdg/openbox/rc.xml')
source=(http://www.icculus.org/openbox/releases/${pkgname}-${pkgver}.tar.gz
- 'which-2.20.patch')
+ 'which-2.20.patch'
+ 'rename-obprop-to-obxprop.patch')
md5sums=('2f30670f7067e3e17567019d2eef21a0'
- 'b72cac492e0ed83fd5ced9c1263cfa24')
+ 'b72cac492e0ed83fd5ced9c1263cfa24'
+ '99fe30d91018f48ac0cfa2ed59effc70')
build() {
cd ${srcdir}/${pkgname}-${pkgver}
- #FS#11455
+ # FS#11455
patch -Np1 -i ${srcdir}/which-2.20.patch || return 1
+ # FS#17555
+ patch -Np1 -i ${srcdir}/rename-obprop-to-obxprop.patch || return 1
+
./configure --prefix=/usr \
--with-x \
--enable-startup-notification \
Deleted: extra-i686/fix-workspaces-number-in-gdm.patch
===================================================================
--- extra-i686/fix-workspaces-number-in-gdm.patch 2009-12-24 17:43:07 UTC (rev 61797)
+++ extra-i686/fix-workspaces-number-in-gdm.patch 2009-12-24 17:43:57 UTC (rev 61798)
@@ -1,36 +0,0 @@
---- openbox-3.4.8/data/xsession/openbox-gnome-session.in~ 2009-12-13 18:46:58.480826774 +0100
-+++ openbox-3.4.8/data/xsession/openbox-gnome-session.in 2009-12-13 18:49:15.776973708 +0100
-@@ -7,6 +7,9 @@
- exit
- fi
-
-+# Clean up after GDM
-+xprop -root -remove _NET_NUMBER_OF_DESKTOPS -remove _NET_DESKTOP_NAMES -remove _NET_CURRENT_DESKTOP 2> /dev/null
-+
- VER=$(gnome-session --version 2>/dev/null | \
- sed -e 's/[^0-9.]*\([0-9.]\+\)/\1/')
-
---- openbox-3.4.8/data/xsession/openbox-kde-session.in~ 2009-12-13 18:47:07.676987674 +0100
-+++ openbox-3.4.8/data/xsession/openbox-kde-session.in 2009-12-13 18:48:48.140310531 +0100
-@@ -7,6 +7,9 @@
- exit
- fi
-
-+# Clean up after GDM
-+xprop -root -remove _NET_NUMBER_OF_DESKTOPS -remove _NET_DESKTOP_NAMES -remove _NET_CURRENT_DESKTOP 2> /dev/null
-+
- # Run KDE with Openbox as its window manager
- export KDEWM="@bindir@/openbox"
- exec startkde "$@"
---- openbox-3.4.8/data/xsession/openbox-session.in~ 2009-12-13 18:47:13.173649966 +0100
-+++ openbox-3.4.8/data/xsession/openbox-session.in 2009-12-13 18:48:17.696977111 +0100
-@@ -7,6 +7,9 @@
- exit
- fi
-
-+# Clean up after GDM
-+xprop -root -remove _NET_NUMBER_OF_DESKTOPS -remove _NET_DESKTOP_NAMES -remove _NET_CURRENT_DESKTOP 2> /dev/null
-+
- AUTOSTART="${XDG_CONFIG_HOME:-"$HOME/.config"}/openbox/autostart.sh"
- GLOBALAUTOSTART="@configdir@/openbox/autostart.sh"
-
Copied: openbox/repos/extra-i686/rename-obprop-to-obxprop.patch (from rev 61797, openbox/trunk/rename-obprop-to-obxprop.patch)
===================================================================
--- extra-i686/rename-obprop-to-obxprop.patch (rev 0)
+++ extra-i686/rename-obprop-to-obxprop.patch 2009-12-24 17:43:57 UTC (rev 61798)
@@ -0,0 +1,881 @@
+diff -Naur openbox-3.4.9~/data/rc.xml openbox-3.4.9/data/rc.xml
+--- openbox-3.4.9~/data/rc.xml 2009-12-24 18:35:01.761606125 +0100
++++ openbox-3.4.9/data/rc.xml 2009-12-24 18:37:06.894918945 +0100
+@@ -629,9 +629,9 @@
+ # this is an example with comments through out. use these to make your
+ # own rules, but without the comments of course.
+
+- <application name="the window's _OB_NAME property (see obprop)"
+- class="the window's _OB_CLASS property (see obprop)"
+- role="the window's _OB_ROLE property (see obprop)"
++ <application name="the window's _OB_NAME property (see obxprop)"
++ class="the window's _OB_CLASS property (see obxprop)"
++ role="the window's _OB_ROLE property (see obxprop)"
+ type="the window's _NET_WM_WINDOW_TYPE (see obprob)..
+ (if unspecified, then it is 'dialog' for child windows)">
+ # the name or the class can be set, or both. this is used to match
+diff -Naur openbox-3.4.9~/Makefile.am openbox-3.4.9/Makefile.am
+--- openbox-3.4.9~/Makefile.am 2009-12-24 18:35:01.758271064 +0100
++++ openbox-3.4.9/Makefile.am 2009-12-24 18:37:02.718252718 +0100
+@@ -33,7 +33,7 @@
+ openbox/openbox \
+ tools/gdm-control/gdm-control \
+ tools/gnome-panel-control/gnome-panel-control \
+- tools/obprop/obprop
++ tools/obxprop/obxprop
+
+ dist_secretbin_SCRIPTS = \
+ tools/xdg-autostart/xdg-autostart
+@@ -289,16 +289,16 @@
+ tools_gnome_panel_control_gnome_panel_control_SOURCES = \
+ tools/gnome-panel-control/gnome-panel-control.c
+
+-## obprop ##
++## obxprop ##
+
+-tools_obprop_obprop_CPPFLAGS = \
++tools_obxprop_obxprop_CPPFLAGS = \
+ $(GLIB_CFLAGS) \
+ $(X_CFLAGS)
+-tools_obprop_obprop_LDADD = \
++tools_obxprop_obxprop_LDADD = \
+ $(GLIB_LIBS) \
+ $(X_LIBS)
+-tools_obprop_obprop_SOURCES = \
+- tools/obprop/obprop.c
++tools_obxprop_obxprop_SOURCES = \
++ tools/obxprop/obxprop.c
+
+ ## gdm-control ##
+
+diff -Naur openbox-3.4.9~/Makefile.in openbox-3.4.9/Makefile.in
+--- openbox-3.4.9~/Makefile.in 2009-12-24 18:35:01.768271496 +0100
++++ openbox-3.4.9/Makefile.in 2009-12-24 18:37:02.741586060 +0100
+@@ -40,7 +40,7 @@
+ bin_PROGRAMS = openbox/openbox$(EXEEXT) \
+ tools/gdm-control/gdm-control$(EXEEXT) \
+ tools/gnome-panel-control/gnome-panel-control$(EXEEXT) \
+- tools/obprop/obprop$(EXEEXT)
++ tools/obxprop/obxprop$(EXEEXT)
+ subdir = .
+ DIST_COMMON = README $(am__configure_deps) $(dist_apps_DATA) \
+ $(dist_artwizboxed_theme_DATA) $(dist_bear2_theme_DATA) \
+@@ -234,10 +234,10 @@
+ $(am_tools_gnome_panel_control_gnome_panel_control_OBJECTS)
+ tools_gnome_panel_control_gnome_panel_control_DEPENDENCIES = \
+ $(am__DEPENDENCIES_1)
+-am_tools_obprop_obprop_OBJECTS = \
+- tools/obprop/tools_obprop_obprop-obprop.$(OBJEXT)
+-tools_obprop_obprop_OBJECTS = $(am_tools_obprop_obprop_OBJECTS)
+-tools_obprop_obprop_DEPENDENCIES = $(am__DEPENDENCIES_1) \
++am_tools_obxprop_obxprop_OBJECTS = \
++ tools/obxprop/tools_obxprop_obxprop-obxprop.$(OBJEXT)
++tools_obxprop_obxprop_OBJECTS = $(am_tools_obxprop_obxprop_OBJECTS)
++tools_obxprop_obxprop_DEPENDENCIES = $(am__DEPENDENCIES_1) \
+ $(am__DEPENDENCIES_1)
+ dist_secretbinSCRIPT_INSTALL = $(INSTALL_SCRIPT)
+ nodist_binSCRIPT_INSTALL = $(INSTALL_SCRIPT)
+@@ -259,13 +259,13 @@
+ $(render_rendertest_SOURCES) \
+ $(tools_gdm_control_gdm_control_SOURCES) \
+ $(tools_gnome_panel_control_gnome_panel_control_SOURCES) \
+- $(tools_obprop_obprop_SOURCES)
++ $(tools_obxprop_obxprop_SOURCES)
+ DIST_SOURCES = $(parser_libobparser_la_SOURCES) \
+ $(render_libobrender_la_SOURCES) $(openbox_openbox_SOURCES) \
+ $(render_rendertest_SOURCES) \
+ $(tools_gdm_control_gdm_control_SOURCES) \
+ $(tools_gnome_panel_control_gnome_panel_control_SOURCES) \
+- $(tools_obprop_obprop_SOURCES)
++ $(tools_obxprop_obxprop_SOURCES)
+ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+ html-recursive info-recursive install-data-recursive \
+ install-dvi-recursive install-exec-recursive \
+@@ -768,16 +768,16 @@
+ tools_gnome_panel_control_gnome_panel_control_SOURCES = \
+ tools/gnome-panel-control/gnome-panel-control.c
+
+-tools_obprop_obprop_CPPFLAGS = \
++tools_obxprop_obxprop_CPPFLAGS = \
+ $(GLIB_CFLAGS) \
+ $(X_CFLAGS)
+
+-tools_obprop_obprop_LDADD = \
++tools_obxprop_obxprop_LDADD = \
+ $(GLIB_LIBS) \
+ $(X_LIBS)
+
+-tools_obprop_obprop_SOURCES = \
+- tools/obprop/obprop.c
++tools_obxprop_obxprop_SOURCES = \
++ tools/obxprop/obxprop.c
+
+ tools_gdm_control_gdm_control_CPPFLAGS = \
+ $(X_CFLAGS) \
+@@ -1373,18 +1373,18 @@
+ tools/gnome-panel-control/gnome-panel-control$(EXEEXT): $(tools_gnome_panel_control_gnome_panel_control_OBJECTS) $(tools_gnome_panel_control_gnome_panel_control_DEPENDENCIES) tools/gnome-panel-control/$(am__dirstamp)
+ @rm -f tools/gnome-panel-control/gnome-panel-control$(EXEEXT)
+ $(LINK) $(tools_gnome_panel_control_gnome_panel_control_OBJECTS) $(tools_gnome_panel_control_gnome_panel_control_LDADD) $(LIBS)
+-tools/obprop/$(am__dirstamp):
+- @$(MKDIR_P) tools/obprop
+- @: > tools/obprop/$(am__dirstamp)
+-tools/obprop/$(DEPDIR)/$(am__dirstamp):
+- @$(MKDIR_P) tools/obprop/$(DEPDIR)
+- @: > tools/obprop/$(DEPDIR)/$(am__dirstamp)
+-tools/obprop/tools_obprop_obprop-obprop.$(OBJEXT): \
+- tools/obprop/$(am__dirstamp) \
+- tools/obprop/$(DEPDIR)/$(am__dirstamp)
+-tools/obprop/obprop$(EXEEXT): $(tools_obprop_obprop_OBJECTS) $(tools_obprop_obprop_DEPENDENCIES) tools/obprop/$(am__dirstamp)
+- @rm -f tools/obprop/obprop$(EXEEXT)
+- $(LINK) $(tools_obprop_obprop_OBJECTS) $(tools_obprop_obprop_LDADD) $(LIBS)
++tools/obxprop/$(am__dirstamp):
++ @$(MKDIR_P) tools/obxprop
++ @: > tools/obxprop/$(am__dirstamp)
++tools/obxprop/$(DEPDIR)/$(am__dirstamp):
++ @$(MKDIR_P) tools/obxprop/$(DEPDIR)
++ @: > tools/obxprop/$(DEPDIR)/$(am__dirstamp)
++tools/obxprop/tools_obxprop_obxprop-obxprop.$(OBJEXT): \
++ tools/obxprop/$(am__dirstamp) \
++ tools/obxprop/$(DEPDIR)/$(am__dirstamp)
++tools/obxprop/obxprop$(EXEEXT): $(tools_obxprop_obxprop_OBJECTS) $(tools_obxprop_obxprop_DEPENDENCIES) tools/obxprop/$(am__dirstamp)
++ @rm -f tools/obxprop/obxprop$(EXEEXT)
++ $(LINK) $(tools_obxprop_obxprop_OBJECTS) $(tools_obxprop_obxprop_LDADD) $(LIBS)
+ install-dist_secretbinSCRIPTS: $(dist_secretbin_SCRIPTS)
+ @$(NORMAL_INSTALL)
+ test -z "$(secretbindir)" || $(MKDIR_P) "$(DESTDIR)$(secretbindir)"
+@@ -1526,7 +1526,7 @@
+ -rm -f render/render_rendertest-test.$(OBJEXT)
+ -rm -f tools/gdm-control/tools_gdm_control_gdm_control-gdm-control.$(OBJEXT)
+ -rm -f tools/gnome-panel-control/tools_gnome_panel_control_gnome_panel_control-gnome-panel-control.$(OBJEXT)
+- -rm -f tools/obprop/tools_obprop_obprop-obprop.$(OBJEXT)
++ -rm -f tools/obxprop/tools_obxprop_obxprop-obxprop.$(OBJEXT)
+
+ distclean-compile:
+ -rm -f *.tab.c
+@@ -1621,7 +1621,7 @@
+ @AMDEP_TRUE@@am__include@ @am__quote at render/$(DEPDIR)/render_rendertest-test.Po at am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote at tools/gdm-control/$(DEPDIR)/tools_gdm_control_gdm_control-gdm-control.Po at am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote at tools/gnome-panel-control/$(DEPDIR)/tools_gnome_panel_control_gnome_panel_control-gnome-panel-control.Po at am__quote@
+- at AMDEP_TRUE@@am__include@ @am__quote at tools/obprop/$(DEPDIR)/tools_obprop_obprop-obprop.Po at am__quote@
++ at AMDEP_TRUE@@am__include@ @am__quote at tools/obxprop/$(DEPDIR)/tools_obxprop_obxprop-obxprop.Po at am__quote@
+
+ .c.o:
+ @am__fastdepCC_TRUE@ depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
+@@ -2837,19 +2837,19 @@
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ @am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tools_gnome_panel_control_gnome_panel_control_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o tools/gnome-panel-control/tools_gnome_panel_control_gnome_panel_control-gnome-panel-control.obj `if test -f 'tools/gnome-panel-control/gnome-panel-control.c'; then $(CYGPATH_W) 'tools/gnome-panel-control/gnome-panel-control.c'; else $(CYGPATH_W) '$(srcdir)/tools/gnome-panel-control/gnome-panel-control.c'; fi`
+
+-tools/obprop/tools_obprop_obprop-obprop.o: tools/obprop/obprop.c
+- at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tools_obprop_obprop_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tools/obprop/tools_obprop_obprop-obprop.o -MD -MP -MF tools/obprop/$(DEPDIR)/tools_obprop_obprop-obprop.Tpo -c -o tools/obprop/tools_obprop_obprop-obprop.o `test -f 'tools/obprop/obprop.c' || echo '$(srcdir)/'`tools/obprop/obprop.c
+- at am__fastdepCC_TRUE@ mv -f tools/obprop/$(DEPDIR)/tools_obprop_obprop-obprop.Tpo tools/obprop/$(DEPDIR)/tools_obprop_obprop-obprop.Po
+- at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='tools/obprop/obprop.c' object='tools/obprop/tools_obprop_obprop-obprop.o' libtool=no @AMDEPBACKSLASH@
+- at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+- at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tools_obprop_obprop_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o tools/obprop/tools_obprop_obprop-obprop.o `test -f 'tools/obprop/obprop.c' || echo '$(srcdir)/'`tools/obprop/obprop.c
+-
+-tools/obprop/tools_obprop_obprop-obprop.obj: tools/obprop/obprop.c
+- at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tools_obprop_obprop_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tools/obprop/tools_obprop_obprop-obprop.obj -MD -MP -MF tools/obprop/$(DEPDIR)/tools_obprop_obprop-obprop.Tpo -c -o tools/obprop/tools_obprop_obprop-obprop.obj `if test -f 'tools/obprop/obprop.c'; then $(CYGPATH_W) 'tools/obprop/obprop.c'; else $(CYGPATH_W) '$(srcdir)/tools/obprop/obprop.c'; fi`
+- at am__fastdepCC_TRUE@ mv -f tools/obprop/$(DEPDIR)/tools_obprop_obprop-obprop.Tpo tools/obprop/$(DEPDIR)/tools_obprop_obprop-obprop.Po
+- at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='tools/obprop/obprop.c' object='tools/obprop/tools_obprop_obprop-obprop.obj' libtool=no @AMDEPBACKSLASH@
++tools/obxprop/tools_obxprop_obxprop-obxprop.o: tools/obxprop/obxprop.c
++ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tools_obxprop_obxprop_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tools/obxprop/tools_obxprop_obxprop-obxprop.o -MD -MP -MF tools/obxprop/$(DEPDIR)/tools_obxprop_obxprop-obxprop.Tpo -c -o tools/obxprop/tools_obxprop_obxprop-obxprop.o `test -f 'tools/obxprop/obxprop.c' || echo '$(srcdir)/'`tools/obxprop/obxprop.c
++ at am__fastdepCC_TRUE@ mv -f tools/obxprop/$(DEPDIR)/tools_obxprop_obxprop-obxprop.Tpo tools/obxprop/$(DEPDIR)/tools_obxprop_obxprop-obxprop.Po
++ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='tools/obxprop/obxprop.c' object='tools/obxprop/tools_obxprop_obxprop-obxprop.o' libtool=no @AMDEPBACKSLASH@
++ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
++ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tools_obxprop_obxprop_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o tools/obxprop/tools_obxprop_obxprop-obxprop.o `test -f 'tools/obxprop/obxprop.c' || echo '$(srcdir)/'`tools/obxprop/obxprop.c
++
++tools/obxprop/tools_obxprop_obxprop-obxprop.obj: tools/obxprop/obxprop.c
++ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tools_obxprop_obxprop_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tools/obxprop/tools_obxprop_obxprop-obxprop.obj -MD -MP -MF tools/obxprop/$(DEPDIR)/tools_obxprop_obxprop-obxprop.Tpo -c -o tools/obxprop/tools_obxprop_obxprop-obxprop.obj `if test -f 'tools/obxprop/obxprop.c'; then $(CYGPATH_W) 'tools/obxprop/obxprop.c'; else $(CYGPATH_W) '$(srcdir)/tools/obxprop/obxprop.c'; fi`
++ at am__fastdepCC_TRUE@ mv -f tools/obxprop/$(DEPDIR)/tools_obxprop_obxprop-obxprop.Tpo tools/obxprop/$(DEPDIR)/tools_obxprop_obxprop-obxprop.Po
++ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='tools/obxprop/obxprop.c' object='tools/obxprop/tools_obxprop_obxprop-obxprop.obj' libtool=no @AMDEPBACKSLASH@
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+- at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tools_obprop_obprop_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o tools/obprop/tools_obprop_obprop-obprop.obj `if test -f 'tools/obprop/obprop.c'; then $(CYGPATH_W) 'tools/obprop/obprop.c'; else $(CYGPATH_W) '$(srcdir)/tools/obprop/obprop.c'; fi`
++ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tools_obxprop_obxprop_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o tools/obxprop/tools_obxprop_obxprop-obxprop.obj `if test -f 'tools/obxprop/obxprop.c'; then $(CYGPATH_W) 'tools/obxprop/obxprop.c'; else $(CYGPATH_W) '$(srcdir)/tools/obxprop/obxprop.c'; fi`
+
+ mostlyclean-libtool:
+ -rm -f *.lo
+@@ -2861,7 +2861,7 @@
+ -rm -rf render/.libs render/_libs
+ -rm -rf tools/gdm-control/.libs tools/gdm-control/_libs
+ -rm -rf tools/gnome-panel-control/.libs tools/gnome-panel-control/_libs
+- -rm -rf tools/obprop/.libs tools/obprop/_libs
++ -rm -rf tools/obxprop/.libs tools/obxprop/_libs
+
+ distclean-libtool:
+ -rm -f libtool
+@@ -3608,8 +3608,8 @@
+ -rm -f tools/gdm-control/$(am__dirstamp)
+ -rm -f tools/gnome-panel-control/$(DEPDIR)/$(am__dirstamp)
+ -rm -f tools/gnome-panel-control/$(am__dirstamp)
+- -rm -f tools/obprop/$(DEPDIR)/$(am__dirstamp)
+- -rm -f tools/obprop/$(am__dirstamp)
++ -rm -f tools/obxprop/$(DEPDIR)/$(am__dirstamp)
++ -rm -f tools/obxprop/$(am__dirstamp)
+
+ maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+@@ -3621,7 +3621,7 @@
+
+ distclean: distclean-recursive
+ -rm -f $(am__CONFIG_DISTCLEAN_FILES)
+- -rm -rf openbox/$(DEPDIR) openbox/actions/$(DEPDIR) parser/$(DEPDIR) render/$(DEPDIR) tools/gdm-control/$(DEPDIR) tools/gnome-panel-control/$(DEPDIR) tools/obprop/$(DEPDIR)
++ -rm -rf openbox/$(DEPDIR) openbox/actions/$(DEPDIR) parser/$(DEPDIR) render/$(DEPDIR) tools/gdm-control/$(DEPDIR) tools/gnome-panel-control/$(DEPDIR) tools/obxprop/$(DEPDIR)
+ -rm -f Makefile
+ distclean-am: clean-am distclean-compile distclean-generic \
+ distclean-libtool distclean-local distclean-tags
+@@ -3672,7 +3672,7 @@
+ maintainer-clean: maintainer-clean-recursive
+ -rm -f $(am__CONFIG_DISTCLEAN_FILES)
+ -rm -rf $(top_srcdir)/autom4te.cache
+- -rm -rf openbox/$(DEPDIR) openbox/actions/$(DEPDIR) parser/$(DEPDIR) render/$(DEPDIR) tools/gdm-control/$(DEPDIR) tools/gnome-panel-control/$(DEPDIR) tools/obprop/$(DEPDIR)
++ -rm -rf openbox/$(DEPDIR) openbox/actions/$(DEPDIR) parser/$(DEPDIR) render/$(DEPDIR) tools/gdm-control/$(DEPDIR) tools/gnome-panel-control/$(DEPDIR) tools/obxprop/$(DEPDIR)
+ -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic
+
+diff -Naur openbox-3.4.9~/tools/obprop/obprop.c openbox-3.4.9/tools/obprop/obprop.c
+--- openbox-3.4.9~/tools/obprop/obprop.c 2009-12-24 18:35:01.758271064 +0100
++++ openbox-3.4.9/tools/obprop/obprop.c 1970-01-01 01:00:00.000000000 +0100
+@@ -1,320 +0,0 @@
+-#include <X11/Xlib.h>
+-#include <X11/cursorfont.h>
+-#include <stdlib.h>
+-#include <string.h>
+-#include <stdio.h>
+-#include <assert.h>
+-#include <glib.h>
+-
+-gint fail(const gchar *s) {
+- if (s)
+- fprintf(stderr, "%s\n", s);
+- else
+- fprintf
+- (stderr,
+- "Usage: obprop [OPTIONS]\n\n"
+- "Options:\n"
+- " --help Display this help and exit\n"
+- " --display DISPLAY Connect to this X display\n"
+- " --id ID Show the properties for this window\n");
+- return 1;
+-}
+-
+-gint parse_hex(gchar *s) {
+- gint result = 0;
+- while (*s) {
+- gint add;
+- if (*s >= '0' && *s <='9')
+- add = *s-'0';
+- else if (*s >= 'A' && *s <='F')
+- add = *s-'A';
+- else if (*s >= 'a' && *s <='f')
+- add = *s-'a';
+- else
+- break;
+-
+- result *= 16;
+- result += add;
+- }
+- return result;
+-}
+-
+-Window find_client(Display *d, Window win)
+-{
+- Window r, *children;
+- guint n, i;
+- Atom state = XInternAtom(d, "WM_STATE", True);
+- Atom ret_type;
+- gint ret_format, res;
+- gulong ret_items, ret_bytesleft, *xdata;
+-
+- XQueryTree(d, win, &r, &r, &children, &n);
+- for (i = 0; i < n; ++i) {
+- Window w = find_client(d, children[i]);
+- if (w) return w;
+- }
+-
+- // try me
+- res = XGetWindowProperty(d, win, state, 0, 1,
+- False, state, &ret_type, &ret_format,
+- &ret_items, &ret_bytesleft,
+- (unsigned char**) &xdata);
+- XFree(xdata);
+- if (res != Success || ret_type == None || ret_items < 1)
+- return None;
+- return win; // found it!
+-}
+-
+-static gboolean get_all(Display *d, Window win, Atom prop,
+- Atom *type, gint *size,
+- guchar **data, guint *num)
+-{
+- gboolean ret = FALSE;
+- gint res;
+- guchar *xdata = NULL;
+- gulong ret_items, bytes_left;
+-
+- res = XGetWindowProperty(d, win, prop, 0l, G_MAXLONG,
+- FALSE, AnyPropertyType, type, size,
+- &ret_items, &bytes_left, &xdata);
+- if (res == Success) {
+- if (ret_items > 0) {
+- guint i;
+-
+- *data = g_malloc(ret_items * (*size / 8));
+- for (i = 0; i < ret_items; ++i)
+- switch (*size) {
+- case 8:
+- (*data)[i] = xdata[i];
+- break;
+- case 16:
+- ((guint16*)*data)[i] = ((gushort*)xdata)[i];
+- break;
+- case 32:
+- ((guint32*)*data)[i] = ((gulong*)xdata)[i];
+- break;
+- default:
+- g_assert_not_reached(); /* unhandled size */
+- }
+- *num = ret_items;
+- ret = TRUE;
+- }
+- XFree(xdata);
+- }
+- return ret;
+-}
+-
+-gchar *append_string(gchar *before, gchar *after, gboolean quote)
+-{
+- gchar *tmp;
+- const gchar *q = quote ? "\"" : "";
+- if (before)
+- tmp = g_strdup_printf("%s, %s%s%s", before, q, after, q);
+- else
+- tmp = g_strdup_printf("%s%s%s", q, after, q);
+- g_free(before);
+- return tmp;
+-}
+-
+-gchar *append_int(gchar *before, guint after)
+-{
+- gchar *tmp;
+- if (before)
+- tmp = g_strdup_printf("%s, %u", before, after);
+- else
+- tmp = g_strdup_printf("%u", after);
+- g_free(before);
+- return tmp;
+-}
+-
+-gchar* read_strings(gchar *val, guint n, gboolean utf8)
+-{
+- GSList *strs = NULL, *it;
+- gchar *ret, *p;
+- guint i;
+-
+- p = val;
+- while (p < val + n) {
+- strs = g_slist_append(strs, g_strndup(p, n - (p - val)));
+- p += strlen(p) + 1; /* next string */
+- }
+-
+- ret = NULL;
+- for (i = 0, it = strs; it; ++i, it = g_slist_next(it)) {
+- char *data;
+-
+- if (utf8) {
+- if (g_utf8_validate(it->data, -1, NULL))
+- data = g_strdup(it->data);
+- else
+- data = g_strdup("");
+- }
+- else
+- data = g_locale_to_utf8(it->data, -1, NULL, NULL, NULL);
+-
+- ret = append_string(ret, data, TRUE);
+- g_free(data);
+- }
+-
+- while (strs) {
+- g_free(strs->data);
+- strs = g_slist_delete_link(strs, strs);
+- }
+- return ret;
+-}
+-
+-gchar* read_atoms(Display *d, guchar *val, guint n)
+-{
+- gchar *ret;
+- guint i;
+-
+- ret = NULL;
+- for (i = 0; i < n; ++i)
+- ret = append_string(ret, XGetAtomName(d, ((guint32*)val)[i]), FALSE);
+- return ret;
+-}
+-
+-gchar* read_numbers(guchar *val, guint n, guint size)
+-{
+- gchar *ret;
+- guint i;
+-
+- ret = NULL;
+- for (i = 0; i < n; ++i)
+- switch (size) {
+- case 8:
+- ret = append_int(ret, ((guint8*)val)[i]);
+- break;
+- case 16:
+- ret = append_int(ret, ((guint16*)val)[i]);
+- break;
+- case 32:
+- ret = append_int(ret, ((guint32*)val)[i]);
+- break;
+- default:
+- g_assert_not_reached(); /* unhandled size */
+- }
+-
+- return ret;
+-}
+-
+-gboolean read_prop(Display *d, Window w, Atom prop, const gchar **type, gchar **val)
+-{
+- guchar *ret;
+- guint nret;
+- gint size;
+- Atom ret_type;
+-
+- ret = NULL;
+- if (get_all(d, w, prop, &ret_type, &size, &ret, &nret)) {
+- *type = XGetAtomName(d, ret_type);
+-
+- if (strcmp(*type, "STRING") == 0)
+- *val = read_strings((gchar*)ret, nret, FALSE);
+- else if (strcmp(*type, "UTF8_STRING") == 0)
+- *val = read_strings((gchar*)ret, nret, TRUE);
+- else if (strcmp(*type, "ATOM") == 0) {
+- g_assert(size == 32);
+- *val = read_atoms(d, ret, nret);
+- }
+- else
+- *val = read_numbers(ret, nret, size);
+-
+- g_free(ret);
+- return TRUE;
+- }
+- return FALSE;
+-}
+-
+-void show_properties(Display *d, Window w)
+-{
+- Atom* props;
+- int i, n;
+-
+- props = XListProperties(d, w, &n);
+-
+- for (i = 0; i < n; ++i) {
+- const char *type;
+- char *name, *val;
+-
+- name = XGetAtomName(d, props[i]);
+-
+- if (read_prop(d, w, props[i], &type, &val)) {
+- g_print("%s(%s) = %s\n", name, type, val);
+- g_free(val);
+- }
+-
+- XFree(name);
+- }
+-
+- XFree(props);
+-}
+-
+-int main(int argc, char **argv)
+-{
+- Display *d;
+- Window id, userid = None;
+- int i;
+- char *dname = NULL;
+-
+- for (i = 1; i < argc; ++i) {
+- if (!strcmp(argv[i], "--help")) {
+- return fail(0);
+- }
+- else if (!strcmp(argv[i], "--id")) {
+- if (++i == argc)
+- return fail(0);
+- if (argv[i][0] == '0' && argv[i][1] == 'x') {
+- /* hex */
+- userid = parse_hex(argv[i]+2);
+- }
+- else {
+- /* decimal */
+- userid = atoi(argv[i]);
+- }
+- break;
+- }
+- else if (!strcmp(argv[i], "--display")) {
+- if (++i == argc)
+- return fail(0);
+- dname = argv[i];
+- }
+- }
+-
+- d = XOpenDisplay(dname);
+- if (!d) {
+- return fail("Unable to find an X display. "
+- "Ensure you have permission to connect to the display.");
+- }
+-
+- if (userid == None) {
+- i = XGrabPointer(d, RootWindow(d, DefaultScreen(d)),
+- False, ButtonPressMask,
+- GrabModeAsync, GrabModeAsync,
+- None, XCreateFontCursor(d, XC_crosshair),
+- CurrentTime);
+- if (i != GrabSuccess)
+- return fail("Unable to grab the pointer device");
+- while (1) {
+- XEvent ev;
+-
+- XNextEvent(d, &ev);
+- if (ev.type == ButtonPress) {
+- XUngrabPointer(d, CurrentTime);
+- userid = ev.xbutton.subwindow;
+- break;
+- }
+- }
+- }
+-
+- id = find_client(d, userid);
+-
+- if (id == None)
+- return fail("Unable to find window with the requested ID");
+-
+- show_properties(d, id);
+-
+- XCloseDisplay(d);
+-
+- return 0;
+-}
+diff -Naur openbox-3.4.9~/tools/obxprop/obxprop.c openbox-3.4.9/tools/obxprop/obxprop.c
+--- openbox-3.4.9~/tools/obxprop/obxprop.c 1970-01-01 01:00:00.000000000 +0100
++++ openbox-3.4.9/tools/obxprop/obxprop.c 2009-12-24 18:34:45.091608618 +0100
+@@ -0,0 +1,320 @@
++#include <X11/Xlib.h>
++#include <X11/cursorfont.h>
++#include <stdlib.h>
++#include <string.h>
++#include <stdio.h>
++#include <assert.h>
++#include <glib.h>
++
++gint fail(const gchar *s) {
++ if (s)
++ fprintf(stderr, "%s\n", s);
++ else
++ fprintf
++ (stderr,
++ "Usage: obxprop [OPTIONS]\n\n"
++ "Options:\n"
++ " --help Display this help and exit\n"
++ " --display DISPLAY Connect to this X display\n"
++ " --id ID Show the properties for this window\n");
++ return 1;
++}
++
++gint parse_hex(gchar *s) {
++ gint result = 0;
++ while (*s) {
++ gint add;
++ if (*s >= '0' && *s <='9')
++ add = *s-'0';
++ else if (*s >= 'A' && *s <='F')
++ add = *s-'A';
++ else if (*s >= 'a' && *s <='f')
++ add = *s-'a';
++ else
++ break;
++
++ result *= 16;
++ result += add;
++ }
++ return result;
++}
++
++Window find_client(Display *d, Window win)
++{
++ Window r, *children;
++ guint n, i;
++ Atom state = XInternAtom(d, "WM_STATE", True);
++ Atom ret_type;
++ gint ret_format, res;
++ gulong ret_items, ret_bytesleft, *xdata;
++
++ XQueryTree(d, win, &r, &r, &children, &n);
++ for (i = 0; i < n; ++i) {
++ Window w = find_client(d, children[i]);
++ if (w) return w;
++ }
++
++ // try me
++ res = XGetWindowProperty(d, win, state, 0, 1,
++ False, state, &ret_type, &ret_format,
++ &ret_items, &ret_bytesleft,
++ (unsigned char**) &xdata);
++ XFree(xdata);
++ if (res != Success || ret_type == None || ret_items < 1)
++ return None;
++ return win; // found it!
++}
++
++static gboolean get_all(Display *d, Window win, Atom prop,
++ Atom *type, gint *size,
++ guchar **data, guint *num)
++{
++ gboolean ret = FALSE;
++ gint res;
++ guchar *xdata = NULL;
++ gulong ret_items, bytes_left;
++
++ res = XGetWindowProperty(d, win, prop, 0l, G_MAXLONG,
++ FALSE, AnyPropertyType, type, size,
++ &ret_items, &bytes_left, &xdata);
++ if (res == Success) {
++ if (ret_items > 0) {
++ guint i;
++
++ *data = g_malloc(ret_items * (*size / 8));
++ for (i = 0; i < ret_items; ++i)
++ switch (*size) {
++ case 8:
++ (*data)[i] = xdata[i];
++ break;
++ case 16:
++ ((guint16*)*data)[i] = ((gushort*)xdata)[i];
++ break;
++ case 32:
++ ((guint32*)*data)[i] = ((gulong*)xdata)[i];
++ break;
++ default:
++ g_assert_not_reached(); /* unhandled size */
++ }
++ *num = ret_items;
++ ret = TRUE;
++ }
++ XFree(xdata);
++ }
++ return ret;
++}
++
++gchar *append_string(gchar *before, gchar *after, gboolean quote)
++{
++ gchar *tmp;
++ const gchar *q = quote ? "\"" : "";
++ if (before)
++ tmp = g_strdup_printf("%s, %s%s%s", before, q, after, q);
++ else
++ tmp = g_strdup_printf("%s%s%s", q, after, q);
++ g_free(before);
++ return tmp;
++}
++
++gchar *append_int(gchar *before, guint after)
++{
++ gchar *tmp;
++ if (before)
++ tmp = g_strdup_printf("%s, %u", before, after);
++ else
++ tmp = g_strdup_printf("%u", after);
++ g_free(before);
++ return tmp;
++}
++
++gchar* read_strings(gchar *val, guint n, gboolean utf8)
++{
++ GSList *strs = NULL, *it;
++ gchar *ret, *p;
++ guint i;
++
++ p = val;
++ while (p < val + n) {
++ strs = g_slist_append(strs, g_strndup(p, n - (p - val)));
++ p += strlen(p) + 1; /* next string */
++ }
++
++ ret = NULL;
++ for (i = 0, it = strs; it; ++i, it = g_slist_next(it)) {
++ char *data;
++
++ if (utf8) {
++ if (g_utf8_validate(it->data, -1, NULL))
++ data = g_strdup(it->data);
++ else
++ data = g_strdup("");
++ }
++ else
++ data = g_locale_to_utf8(it->data, -1, NULL, NULL, NULL);
++
++ ret = append_string(ret, data, TRUE);
++ g_free(data);
++ }
++
++ while (strs) {
++ g_free(strs->data);
++ strs = g_slist_delete_link(strs, strs);
++ }
++ return ret;
++}
++
++gchar* read_atoms(Display *d, guchar *val, guint n)
++{
++ gchar *ret;
++ guint i;
++
++ ret = NULL;
++ for (i = 0; i < n; ++i)
++ ret = append_string(ret, XGetAtomName(d, ((guint32*)val)[i]), FALSE);
++ return ret;
++}
++
++gchar* read_numbers(guchar *val, guint n, guint size)
++{
++ gchar *ret;
++ guint i;
++
++ ret = NULL;
++ for (i = 0; i < n; ++i)
++ switch (size) {
++ case 8:
++ ret = append_int(ret, ((guint8*)val)[i]);
++ break;
++ case 16:
++ ret = append_int(ret, ((guint16*)val)[i]);
++ break;
++ case 32:
++ ret = append_int(ret, ((guint32*)val)[i]);
++ break;
++ default:
++ g_assert_not_reached(); /* unhandled size */
++ }
++
++ return ret;
++}
++
++gboolean read_prop(Display *d, Window w, Atom prop, const gchar **type, gchar **val)
++{
++ guchar *ret;
++ guint nret;
++ gint size;
++ Atom ret_type;
++
++ ret = NULL;
++ if (get_all(d, w, prop, &ret_type, &size, &ret, &nret)) {
++ *type = XGetAtomName(d, ret_type);
++
++ if (strcmp(*type, "STRING") == 0)
++ *val = read_strings((gchar*)ret, nret, FALSE);
++ else if (strcmp(*type, "UTF8_STRING") == 0)
++ *val = read_strings((gchar*)ret, nret, TRUE);
++ else if (strcmp(*type, "ATOM") == 0) {
++ g_assert(size == 32);
++ *val = read_atoms(d, ret, nret);
++ }
++ else
++ *val = read_numbers(ret, nret, size);
++
++ g_free(ret);
++ return TRUE;
++ }
++ return FALSE;
++}
++
++void show_properties(Display *d, Window w)
++{
++ Atom* props;
++ int i, n;
++
++ props = XListProperties(d, w, &n);
++
++ for (i = 0; i < n; ++i) {
++ const char *type;
++ char *name, *val;
++
++ name = XGetAtomName(d, props[i]);
++
++ if (read_prop(d, w, props[i], &type, &val)) {
++ g_print("%s(%s) = %s\n", name, type, val);
++ g_free(val);
++ }
++
++ XFree(name);
++ }
++
++ XFree(props);
++}
++
++int main(int argc, char **argv)
++{
++ Display *d;
++ Window id, userid = None;
++ int i;
++ char *dname = NULL;
++
++ for (i = 1; i < argc; ++i) {
++ if (!strcmp(argv[i], "--help")) {
++ return fail(0);
++ }
++ else if (!strcmp(argv[i], "--id")) {
++ if (++i == argc)
++ return fail(0);
++ if (argv[i][0] == '0' && argv[i][1] == 'x') {
++ /* hex */
++ userid = parse_hex(argv[i]+2);
++ }
++ else {
++ /* decimal */
++ userid = atoi(argv[i]);
++ }
++ break;
++ }
++ else if (!strcmp(argv[i], "--display")) {
++ if (++i == argc)
++ return fail(0);
++ dname = argv[i];
++ }
++ }
++
++ d = XOpenDisplay(dname);
++ if (!d) {
++ return fail("Unable to find an X display. "
++ "Ensure you have permission to connect to the display.");
++ }
++
++ if (userid == None) {
++ i = XGrabPointer(d, RootWindow(d, DefaultScreen(d)),
++ False, ButtonPressMask,
++ GrabModeAsync, GrabModeAsync,
++ None, XCreateFontCursor(d, XC_crosshair),
++ CurrentTime);
++ if (i != GrabSuccess)
++ return fail("Unable to grab the pointer device");
++ while (1) {
++ XEvent ev;
++
++ XNextEvent(d, &ev);
++ if (ev.type == ButtonPress) {
++ XUngrabPointer(d, CurrentTime);
++ userid = ev.xbutton.subwindow;
++ break;
++ }
++ }
++ }
++
++ id = find_client(d, userid);
++
++ if (id == None)
++ return fail("Unable to find window with the requested ID");
++
++ show_properties(d, id);
++
++ XCloseDisplay(d);
++
++ return 0;
++}
More information about the arch-commits
mailing list