Renumbering patches. debian
authorDaniel Baumann <daniel@debian.org>
Mon, 9 Jul 2012 17:30:16 +0000 (19:30 +0200)
committerDaniel Baumann <daniel@debian.org>
Mon, 9 Jul 2012 17:30:16 +0000 (19:30 +0200)
17 files changed:
debian/patches/01-rc.xml.patch [new file with mode: 0644]
debian/patches/01_rc.xml.patch [deleted file]
debian/patches/02-fix-freedesktop-compliance.patch [new file with mode: 0644]
debian/patches/02_fix_freedesktop_compliance.patch [deleted file]
debian/patches/03-xsession.desktop-translation.patch [new file with mode: 0644]
debian/patches/04-simplify-gnome-session.patch [new file with mode: 0644]
debian/patches/04_xsession.desktop_translation.patch [deleted file]
debian/patches/05-fix-xml-load-file.patch [new file with mode: 0644]
debian/patches/05_simplify_gnome_session.patch [deleted file]
debian/patches/06-wrong-undecorated-window-placement.patch [new file with mode: 0644]
debian/patches/07-fix-crash-from-gtk3-apps.patch [new file with mode: 0644]
debian/patches/07_fix_xml_load_file.patch [deleted file]
debian/patches/08-fix-link-obt.patch [new file with mode: 0644]
debian/patches/666676_wrong_undecorated_window_placement.patch [deleted file]
debian/patches/675991_fix_crash_from_gtk3_apps.patch [deleted file]
debian/patches/90_fix_link_obt.patch [deleted file]
debian/patches/series

diff --git a/debian/patches/01-rc.xml.patch b/debian/patches/01-rc.xml.patch
new file mode 100644 (file)
index 0000000..7a3d4bb
--- /dev/null
@@ -0,0 +1,49 @@
+Authors: Nico Golde <nion@debian.org>
+         Eugenio Paolantonio <me@medesimo.eu>
+Description:
+ Add screenshot support using gnome-screenshot; ensure that the Debian system
+ menu is listed in <menu>.
+
+diff -Naurp openbox.orig/data/rc.xml openbox/data/rc.xml
+--- openbox.orig/data/rc.xml   2012-07-09 18:35:18.542428137 +0200
++++ openbox/data/rc.xml        2012-07-09 19:04:21.064908470 +0200
+@@ -245,6 +245,10 @@
+   <keybind key="A-space">
+     <action name="ShowMenu"><menu>client-menu</menu></action>
+   </keybind>
++  <!-- Take a screenshot of the current window with gnome-screenshot when Alt+Print are pressed -->
++  <keybind key="A-Print">
++    <action name="Execute"><command>gnome-screenshot -w</command></action>
++  </keybind>
+   <!-- Keybindings for window switching -->
+   <keybind key="A-Tab">
+@@ -308,6 +312,10 @@
+       <command>kfmclient openProfile filemanagement</command>
+     </action>
+   </keybind>
++  <!-- Launch gnome-screenshot when Print is pressed -->
++  <keybind key="Print">
++    <action name="Execute"><command>gnome-screenshot</command></action>
++  </keybind>
+ </keyboard>
+ <mouse>
+@@ -621,6 +629,8 @@
+        just don't make menu ids clash or, well, it'll be kind of pointless -->
+   <!-- default menu file (or custom one in $HOME/.config/openbox/) -->
++  <!-- system menu files on Debian systems -->
++  <file>/var/lib/openbox/debian-menu.xml</file>
+   <file>menu.xml</file>
+   <hideDelay>200</hideDelay>
+   <!-- if a press-release lasts longer than this setting (in milliseconds), the
+@@ -634,7 +644,7 @@
+        submenu will not be shown until it is clicked on -->
+   <submenuHideDelay>400</submenuHideDelay>
+   <!-- time to delay before hiding a submenu when selecting another
+-       entry in parent menu -->
++       entry in parent menu
+        if this is a negative value, then the delay is infinite and the
+        submenu will not be hidden until a different submenu is opened -->
+   <applicationIcons>yes</applicationIcons>
diff --git a/debian/patches/01_rc.xml.patch b/debian/patches/01_rc.xml.patch
deleted file mode 100644 (file)
index 7a3d4bb..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-Authors: Nico Golde <nion@debian.org>
-         Eugenio Paolantonio <me@medesimo.eu>
-Description:
- Add screenshot support using gnome-screenshot; ensure that the Debian system
- menu is listed in <menu>.
-
-diff -Naurp openbox.orig/data/rc.xml openbox/data/rc.xml
---- openbox.orig/data/rc.xml   2012-07-09 18:35:18.542428137 +0200
-+++ openbox/data/rc.xml        2012-07-09 19:04:21.064908470 +0200
-@@ -245,6 +245,10 @@
-   <keybind key="A-space">
-     <action name="ShowMenu"><menu>client-menu</menu></action>
-   </keybind>
-+  <!-- Take a screenshot of the current window with gnome-screenshot when Alt+Print are pressed -->
-+  <keybind key="A-Print">
-+    <action name="Execute"><command>gnome-screenshot -w</command></action>
-+  </keybind>
-   <!-- Keybindings for window switching -->
-   <keybind key="A-Tab">
-@@ -308,6 +312,10 @@
-       <command>kfmclient openProfile filemanagement</command>
-     </action>
-   </keybind>
-+  <!-- Launch gnome-screenshot when Print is pressed -->
-+  <keybind key="Print">
-+    <action name="Execute"><command>gnome-screenshot</command></action>
-+  </keybind>
- </keyboard>
- <mouse>
-@@ -621,6 +629,8 @@
-        just don't make menu ids clash or, well, it'll be kind of pointless -->
-   <!-- default menu file (or custom one in $HOME/.config/openbox/) -->
-+  <!-- system menu files on Debian systems -->
-+  <file>/var/lib/openbox/debian-menu.xml</file>
-   <file>menu.xml</file>
-   <hideDelay>200</hideDelay>
-   <!-- if a press-release lasts longer than this setting (in milliseconds), the
-@@ -634,7 +644,7 @@
-        submenu will not be shown until it is clicked on -->
-   <submenuHideDelay>400</submenuHideDelay>
-   <!-- time to delay before hiding a submenu when selecting another
--       entry in parent menu -->
-+       entry in parent menu
-        if this is a negative value, then the delay is infinite and the
-        submenu will not be hidden until a different submenu is opened -->
-   <applicationIcons>yes</applicationIcons>
diff --git a/debian/patches/02-fix-freedesktop-compliance.patch b/debian/patches/02-fix-freedesktop-compliance.patch
new file mode 100644 (file)
index 0000000..84df26d
--- /dev/null
@@ -0,0 +1,24 @@
+Author: Nico Golde <nion@debian.org>
+Description:
+ The freedesktop standard requires some additional attributes in the desktop
+ files (Closes: #533126, #531580).
+
+diff -Naurp openbox.orig/data/gnome-wm-properties/openbox.desktop openbox/data/gnome-wm-properties/openbox.desktop
+--- openbox.orig/data/gnome-wm-properties/openbox.desktop      2012-07-09 18:35:18.538428066 +0200
++++ openbox/data/gnome-wm-properties/openbox.desktop   2012-07-09 19:04:44.965192076 +0200
+@@ -2,10 +2,15 @@
+ Type=Application
+ Name=Openbox
+ Exec=openbox
++Type=Application
++Categories=System;
+ # name we put on the WM spec check window
+ X-GNOME-WMName=Openbox
++X-GNOME-Provides=windowmanager
++NoDisplay=true
++
+ # our config tool
+ ConfigExec=obconf
diff --git a/debian/patches/02_fix_freedesktop_compliance.patch b/debian/patches/02_fix_freedesktop_compliance.patch
deleted file mode 100644 (file)
index 84df26d..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-Author: Nico Golde <nion@debian.org>
-Description:
- The freedesktop standard requires some additional attributes in the desktop
- files (Closes: #533126, #531580).
-
-diff -Naurp openbox.orig/data/gnome-wm-properties/openbox.desktop openbox/data/gnome-wm-properties/openbox.desktop
---- openbox.orig/data/gnome-wm-properties/openbox.desktop      2012-07-09 18:35:18.538428066 +0200
-+++ openbox/data/gnome-wm-properties/openbox.desktop   2012-07-09 19:04:44.965192076 +0200
-@@ -2,10 +2,15 @@
- Type=Application
- Name=Openbox
- Exec=openbox
-+Type=Application
-+Categories=System;
- # name we put on the WM spec check window
- X-GNOME-WMName=Openbox
-+X-GNOME-Provides=windowmanager
-+NoDisplay=true
-+
- # our config tool
- ConfigExec=obconf
diff --git a/debian/patches/03-xsession.desktop-translation.patch b/debian/patches/03-xsession.desktop-translation.patch
new file mode 100644 (file)
index 0000000..bea8c00
--- /dev/null
@@ -0,0 +1,13 @@
+Author: Séio Cipolla <secipolla@gmail.com>
+Description: Adding Brazilian Portuguese menu translation (Closes: #627912).
+diff -Naurp openbox.orig/data/xsession/openbox.desktop.in openbox/data/xsession/openbox.desktop.in
+--- openbox.orig/data/xsession/openbox.desktop.in      2012-07-09 18:35:18.546428200 +0200
++++ openbox/data/xsession/openbox.desktop.in   2012-07-09 19:05:40.237849051 +0200
+@@ -2,6 +2,7 @@
+ Encoding=UTF-8
+ Name=Openbox
+ Comment=Log in using the Openbox window manager (without a session manager)
++Comment[pt_BR]=Use esta sessãpara executar o Openbox como o seu ambiente de trabalho
+ Exec=@bindir@/openbox-session
+ TryExec=@bindir@/openbox-session
+ Icon=openbox.png
diff --git a/debian/patches/04-simplify-gnome-session.patch b/debian/patches/04-simplify-gnome-session.patch
new file mode 100644 (file)
index 0000000..e6135be
--- /dev/null
@@ -0,0 +1,63 @@
+Author: Jim Paris <jim@jtan.com>
+Description:
+ Simplify gnome-session (Closes: #604043).
+ .
+ The horrible hacks present in openbox upstream may have been necessary for
+ gnome upstream, but the simple method of just setting WINDOW_MANAGER has
+ always worked in Debian and should continue to work reliably.
+
+diff -Naurp openbox.orig/data/xsession/openbox-gnome-session.in openbox/data/xsession/openbox-gnome-session.in
+--- openbox.orig/data/xsession/openbox-gnome-session.in        2012-07-09 18:35:18.542428137 +0200
++++ openbox/data/xsession/openbox-gnome-session.in     2012-07-09 19:05:56.302040268 +0200
+@@ -12,49 +12,5 @@ xprop -root -remove _NET_NUMBER_OF_DESKT
+       -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/')
+-
+-MAJOR=$(echo $VER | cut -d . -f 1)
+-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
+-  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
+-  # openbox.desktop to be installed in the applications directory
+-
+-  SPATH=/desktop/gnome/session
+-
+-  # get the current default session
+-  SESSION=$(gconftool-2 -g $SPATH/default_session 2> /dev/null)
+-
+-  # make sure openbox is going to be run
+-  if test -z "$SESSION"; then
+-      # if its empty then just run openbox
+-      SESSION="[openbox]"
+-  elif ! echo "$SESSION" | grep -q openbox; then
+-      # if openbox isn't in the session then append it
+-      SESSION="${SESSION%]},openbox]"
+-  fi
+-
+-  # get the current GNOME/Openbox session
+-  OB_SESSION=$(gconftool-2 -g $SPATH/openbox_session 2> /dev/null)
+-
+-  # update the GNOME/Openbox session if needed
+-  if test x$OB_SESSION != x$SESSION; then
+-      # the default session changed or we didn't run GNOME/Openbox before
+-      gconftool-2 -t list --list-type=strings -s $SPATH/openbox_session \
+-        "$SESSION" 2> /dev/null
+-  fi
+-
+-  # run GNOME/Openbox
+-  exec gnome-session --default-session-key $SPATH/openbox_session "$@"
+-fi
+-
+-
+-
++export WINDOW_MANAGER=openbox
++exec gnome-session
diff --git a/debian/patches/04_xsession.desktop_translation.patch b/debian/patches/04_xsession.desktop_translation.patch
deleted file mode 100644 (file)
index bea8c00..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-Author: Séio Cipolla <secipolla@gmail.com>
-Description: Adding Brazilian Portuguese menu translation (Closes: #627912).
-diff -Naurp openbox.orig/data/xsession/openbox.desktop.in openbox/data/xsession/openbox.desktop.in
---- openbox.orig/data/xsession/openbox.desktop.in      2012-07-09 18:35:18.546428200 +0200
-+++ openbox/data/xsession/openbox.desktop.in   2012-07-09 19:05:40.237849051 +0200
-@@ -2,6 +2,7 @@
- Encoding=UTF-8
- Name=Openbox
- Comment=Log in using the Openbox window manager (without a session manager)
-+Comment[pt_BR]=Use esta sessãpara executar o Openbox como o seu ambiente de trabalho
- Exec=@bindir@/openbox-session
- TryExec=@bindir@/openbox-session
- Icon=openbox.png
diff --git a/debian/patches/05-fix-xml-load-file.patch b/debian/patches/05-fix-xml-load-file.patch
new file mode 100644 (file)
index 0000000..9d9c9f8
--- /dev/null
@@ -0,0 +1,24 @@
+Authors: Nico Golde <nion@debian.org>
+         Eugenio Paolantonio <me@medesimo.eu>
+Description:
+ Do not build filename if a working full path is given (Closes: #644756).
+
+diff -Naurp openbox.orig/obt/xml.c openbox/obt/xml.c
+--- openbox.orig/obt/xml.c     2012-07-09 18:35:18.598429073 +0200
++++ openbox/obt/xml.c  2012-07-09 19:06:14.038251536 +0200
+@@ -127,10 +127,13 @@ static gboolean load_file(ObtXmlInst *i,
+         gchar *path;
+         struct stat s;
+-        if (!domain && !filename) /* given a full path to the file */
++        if (!domain && !filename){ /* given a full path to the file */
+             path = g_strdup(it->data);
+-        else
++        } else if(filename && filename[0] == '/' && stat(filename, &s) >= 0) {
++            path = g_strdup(filename);
++        } else {
+             path = g_build_filename(it->data, domain, filename, NULL);
++        }
+         if (stat(path, &s) >= 0) {
+             /* XML_PARSE_BLANKS is needed apparently, or the tree can end up
diff --git a/debian/patches/05_simplify_gnome_session.patch b/debian/patches/05_simplify_gnome_session.patch
deleted file mode 100644 (file)
index e6135be..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-Author: Jim Paris <jim@jtan.com>
-Description:
- Simplify gnome-session (Closes: #604043).
- .
- The horrible hacks present in openbox upstream may have been necessary for
- gnome upstream, but the simple method of just setting WINDOW_MANAGER has
- always worked in Debian and should continue to work reliably.
-
-diff -Naurp openbox.orig/data/xsession/openbox-gnome-session.in openbox/data/xsession/openbox-gnome-session.in
---- openbox.orig/data/xsession/openbox-gnome-session.in        2012-07-09 18:35:18.542428137 +0200
-+++ openbox/data/xsession/openbox-gnome-session.in     2012-07-09 19:05:56.302040268 +0200
-@@ -12,49 +12,5 @@ xprop -root -remove _NET_NUMBER_OF_DESKT
-       -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/')
--
--MAJOR=$(echo $VER | cut -d . -f 1)
--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
--  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
--  # openbox.desktop to be installed in the applications directory
--
--  SPATH=/desktop/gnome/session
--
--  # get the current default session
--  SESSION=$(gconftool-2 -g $SPATH/default_session 2> /dev/null)
--
--  # make sure openbox is going to be run
--  if test -z "$SESSION"; then
--      # if its empty then just run openbox
--      SESSION="[openbox]"
--  elif ! echo "$SESSION" | grep -q openbox; then
--      # if openbox isn't in the session then append it
--      SESSION="${SESSION%]},openbox]"
--  fi
--
--  # get the current GNOME/Openbox session
--  OB_SESSION=$(gconftool-2 -g $SPATH/openbox_session 2> /dev/null)
--
--  # update the GNOME/Openbox session if needed
--  if test x$OB_SESSION != x$SESSION; then
--      # the default session changed or we didn't run GNOME/Openbox before
--      gconftool-2 -t list --list-type=strings -s $SPATH/openbox_session \
--        "$SESSION" 2> /dev/null
--  fi
--
--  # run GNOME/Openbox
--  exec gnome-session --default-session-key $SPATH/openbox_session "$@"
--fi
--
--
--
-+export WINDOW_MANAGER=openbox
-+exec gnome-session
diff --git a/debian/patches/06-wrong-undecorated-window-placement.patch b/debian/patches/06-wrong-undecorated-window-placement.patch
new file mode 100644 (file)
index 0000000..ac09357
--- /dev/null
@@ -0,0 +1,133 @@
+Author: Dana Jansens <danakj@orodu.net>
+Description:
+ Make undecorated windows place according to their undecorated state (bug #5179).
+ .
+ Make undecorated windows place according to their undecorated state (bug #5179).
+ .
+ Splits client_setup_decor_and_functions() into 3 functions.
+ .
+ 1. add client_setup_default_decor_and_functions()
+    - called from client_get_all() to get the maximum decor/functions that will
+      be available for use by the client.
+ 2. add client_setup_decor_undecorated()
+    - sets up the client's undecorarted decor if the flag is set by the per-app
+      settings or session state.
+    - we do this before setting up the frame so the frame reflects the window as it
+      should be when getting placed.
+ 3. client_setup_decor_and_functions()
+    - calls the above 2 to perform the same functions as before.
+    - added to client_apply_startup_state() so that we can ensure it was run fully
+      at least once in the mapping process, since it is not called in
+      client_get_all() anymore.
+
+diff -Naurp openbox.orig/openbox/client.c openbox/openbox/client.c
+--- openbox.orig/openbox/client.c      2012-07-09 18:35:18.614429337 +0200
++++ openbox/openbox/client.c   2012-07-09 19:25:12.038765655 +0200
+@@ -112,6 +112,8 @@ static gboolean client_can_steal_focus(O
+                                        gboolean allow_other_desktop,
+                                        gboolean request_from_user,
+                                        Time steal_time, Time launch_time);
++static void client_setup_default_decor_and_functions(ObClient *self);
++static void client_setup_decor_undecorated(ObClient *self);
+ void client_startup(gboolean reconfig)
+ {
+@@ -238,6 +240,18 @@ void client_manage(Window window, ObProm
+        that needs to be freed with g_free(). */
+     settings = client_get_settings_state(self);
++    /* the session should get the last say though */
++    client_restore_session_state(self);
++
++    /* the per-app settings/session may have changed the decorations for
++       the window, so we setup decorations for that here.  this is a special
++       case because we want to place the window according to these decoration
++       changes.
++       we do this before setting up the frame so that it will reflect the
++       decorations of the window as it will be placed on screen.
++    */
++    client_setup_decor_undecorated(self);
++
+     /* specify that if we exit, the window should not be destroyed and
+        should be reparented back to root automatically, unless we are managing
+        an internal ObPrompt window  */
+@@ -253,9 +267,6 @@ void client_manage(Window window, ObProm
+        time now */
+     grab_server(FALSE);
+-    /* the session should get the last say though */
+-    client_restore_session_state(self);
+-
+     /* tell startup notification that this app started */
+     launch_time = sn_app_started(self->startup_id, self->class, self->name);
+@@ -1156,11 +1167,8 @@ static void client_get_all(ObClient *sel
+     client_get_type_and_transientness(self);
+     client_update_normal_hints(self);
+-    /* set up the decor/functions before getting the state.  the states may
+-       affect which functions are available, but we want to know the maximum
+-       decor/functions are available to this window, so we can then apply them
+-       in client_apply_startup_state() */
+-    client_setup_decor_and_functions(self, FALSE);
++    /* set up the maximum possible decor/functions */
++    client_setup_default_decor_and_functions(self);
+     client_get_state(self);
+@@ -1704,7 +1712,7 @@ void client_update_normal_hints(ObClient
+         ob_debug("Normal hints: not set");
+ }
+-void client_setup_decor_and_functions(ObClient *self, gboolean reconfig)
++static void client_setup_default_decor_and_functions(ObClient *self)
+ {
+     /* start with everything (cept fullscreen) */
+     self->decorations =
+@@ -1837,6 +1845,23 @@ void client_setup_decor_and_functions(Ob
+         self->functions &= ~OB_CLIENT_FUNC_MAXIMIZE;
+         self->decorations &= ~OB_FRAME_DECOR_MAXIMIZE;
+     }
++}
++
++/*! Set up decor for a client based on its undecorated state. */
++static void client_setup_decor_undecorated(ObClient *self)
++{
++    /* If the user requested no decorations, then remove all the decorations,
++       except the border.  But don't add a border if there wasn't one. */
++    if (self->undecorated)
++        self->decorations &= (config_theme_keepborder ?
++                              OB_FRAME_DECOR_BORDER : 0);
++}
++
++void client_setup_decor_and_functions(ObClient *self, gboolean reconfig)
++{
++    client_setup_default_decor_and_functions(self);
++
++    client_setup_decor_undecorated(self);
+     if (self->max_horz && self->max_vert) {
+         /* once upon a time you couldn't resize maximized windows, that is not
+@@ -1846,12 +1871,6 @@ void client_setup_decor_and_functions(Ob
+         self->decorations &= ~(OB_FRAME_DECOR_HANDLE | OB_FRAME_DECOR_GRIPS);
+     }
+-    /* finally, the user can have requested no decorations, which overrides
+-       everything (but doesnt give it a border if it doesnt have one) */
+-    if (self->undecorated)
+-        self->decorations &= (config_theme_keepborder ?
+-                              OB_FRAME_DECOR_BORDER : 0);
+-
+     /* if we don't have a titlebar, then we cannot shade! */
+     if (!(self->decorations & OB_FRAME_DECOR_TITLEBAR))
+         self->functions &= ~OB_CLIENT_FUNC_SHADE;
+@@ -2783,6 +2802,9 @@ static void client_apply_startup_state(O
+     if (fullscreen)
+         client_fullscreen(self, TRUE);
++    /* make sure client_setup_decor_and_functions() is called at least once */
++    client_setup_decor_and_functions(self, FALSE);
++
+     /* if the window hasn't been configured yet, then do so now, in fact the
+        x,y,w,h may _not_ be the same as the area rect, which can end up
+        meaning that the client isn't properly moved/resized by the fullscreen
diff --git a/debian/patches/07-fix-crash-from-gtk3-apps.patch b/debian/patches/07-fix-crash-from-gtk3-apps.patch
new file mode 100644 (file)
index 0000000..cfb7a1c
--- /dev/null
@@ -0,0 +1,20 @@
+Author: Mikael Magnusson <mikachu@gmail.com>
+Description:
+ Fix crash on unexpected NET_WM_MOVERESIZE_CANCEL messages.
+ .
+ gtk+ 3.4 apparently sends these randomly when you select text in a
+ GtkEntry. This also fixes bug #5460.
+
+diff -Naurp openbox.orig/openbox/event.c openbox/openbox/event.c
+--- openbox.orig/openbox/event.c       2012-07-09 18:35:18.622429467 +0200
++++ openbox/openbox/event.c    2012-07-09 19:25:35.006942157 +0200
+@@ -1488,7 +1488,8 @@ static void event_handle_client(ObClient
+             }
+             else if ((Atom)e->xclient.data.l[2] ==
+                      OBT_PROP_ATOM(NET_WM_MOVERESIZE_CANCEL))
+-                moveresize_end(TRUE);
++                if (moveresize_client)
++                    moveresize_end(TRUE);
+         } else if (msgtype == OBT_PROP_ATOM(NET_MOVERESIZE_WINDOW)) {
+             gint ograv, x, y, w, h;
diff --git a/debian/patches/07_fix_xml_load_file.patch b/debian/patches/07_fix_xml_load_file.patch
deleted file mode 100644 (file)
index 9d9c9f8..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-Authors: Nico Golde <nion@debian.org>
-         Eugenio Paolantonio <me@medesimo.eu>
-Description:
- Do not build filename if a working full path is given (Closes: #644756).
-
-diff -Naurp openbox.orig/obt/xml.c openbox/obt/xml.c
---- openbox.orig/obt/xml.c     2012-07-09 18:35:18.598429073 +0200
-+++ openbox/obt/xml.c  2012-07-09 19:06:14.038251536 +0200
-@@ -127,10 +127,13 @@ static gboolean load_file(ObtXmlInst *i,
-         gchar *path;
-         struct stat s;
--        if (!domain && !filename) /* given a full path to the file */
-+        if (!domain && !filename){ /* given a full path to the file */
-             path = g_strdup(it->data);
--        else
-+        } else if(filename && filename[0] == '/' && stat(filename, &s) >= 0) {
-+            path = g_strdup(filename);
-+        } else {
-             path = g_build_filename(it->data, domain, filename, NULL);
-+        }
-         if (stat(path, &s) >= 0) {
-             /* XML_PARSE_BLANKS is needed apparently, or the tree can end up
diff --git a/debian/patches/08-fix-link-obt.patch b/debian/patches/08-fix-link-obt.patch
new file mode 100644 (file)
index 0000000..8b53154
--- /dev/null
@@ -0,0 +1,19 @@
+Author: Fryderyk Dziarmagowski <fdziarmagowski@gmail.com>
+Description:
+ Link libobt into libobrender, as it uses things from libobt (bug #5150).
+ .
+ Link libobt into libobrender, as it uses things from libobt (bug #5150).
+ .
+ libobrender uses ObtPaths stuff, so it needs to link in libobt.
+
+diff -Naurp openbox.orig/Makefile.am openbox/Makefile.am
+--- openbox.orig/Makefile.am   2012-07-09 18:35:18.518427734 +0200
++++ openbox/Makefile.am        2012-07-09 19:25:49.159051158 +0200
+@@ -79,6 +79,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) \
diff --git a/debian/patches/666676_wrong_undecorated_window_placement.patch b/debian/patches/666676_wrong_undecorated_window_placement.patch
deleted file mode 100644 (file)
index ac09357..0000000
+++ /dev/null
@@ -1,133 +0,0 @@
-Author: Dana Jansens <danakj@orodu.net>
-Description:
- Make undecorated windows place according to their undecorated state (bug #5179).
- .
- Make undecorated windows place according to their undecorated state (bug #5179).
- .
- Splits client_setup_decor_and_functions() into 3 functions.
- .
- 1. add client_setup_default_decor_and_functions()
-    - called from client_get_all() to get the maximum decor/functions that will
-      be available for use by the client.
- 2. add client_setup_decor_undecorated()
-    - sets up the client's undecorarted decor if the flag is set by the per-app
-      settings or session state.
-    - we do this before setting up the frame so the frame reflects the window as it
-      should be when getting placed.
- 3. client_setup_decor_and_functions()
-    - calls the above 2 to perform the same functions as before.
-    - added to client_apply_startup_state() so that we can ensure it was run fully
-      at least once in the mapping process, since it is not called in
-      client_get_all() anymore.
-
-diff -Naurp openbox.orig/openbox/client.c openbox/openbox/client.c
---- openbox.orig/openbox/client.c      2012-07-09 18:35:18.614429337 +0200
-+++ openbox/openbox/client.c   2012-07-09 19:25:12.038765655 +0200
-@@ -112,6 +112,8 @@ static gboolean client_can_steal_focus(O
-                                        gboolean allow_other_desktop,
-                                        gboolean request_from_user,
-                                        Time steal_time, Time launch_time);
-+static void client_setup_default_decor_and_functions(ObClient *self);
-+static void client_setup_decor_undecorated(ObClient *self);
- void client_startup(gboolean reconfig)
- {
-@@ -238,6 +240,18 @@ void client_manage(Window window, ObProm
-        that needs to be freed with g_free(). */
-     settings = client_get_settings_state(self);
-+    /* the session should get the last say though */
-+    client_restore_session_state(self);
-+
-+    /* the per-app settings/session may have changed the decorations for
-+       the window, so we setup decorations for that here.  this is a special
-+       case because we want to place the window according to these decoration
-+       changes.
-+       we do this before setting up the frame so that it will reflect the
-+       decorations of the window as it will be placed on screen.
-+    */
-+    client_setup_decor_undecorated(self);
-+
-     /* specify that if we exit, the window should not be destroyed and
-        should be reparented back to root automatically, unless we are managing
-        an internal ObPrompt window  */
-@@ -253,9 +267,6 @@ void client_manage(Window window, ObProm
-        time now */
-     grab_server(FALSE);
--    /* the session should get the last say though */
--    client_restore_session_state(self);
--
-     /* tell startup notification that this app started */
-     launch_time = sn_app_started(self->startup_id, self->class, self->name);
-@@ -1156,11 +1167,8 @@ static void client_get_all(ObClient *sel
-     client_get_type_and_transientness(self);
-     client_update_normal_hints(self);
--    /* set up the decor/functions before getting the state.  the states may
--       affect which functions are available, but we want to know the maximum
--       decor/functions are available to this window, so we can then apply them
--       in client_apply_startup_state() */
--    client_setup_decor_and_functions(self, FALSE);
-+    /* set up the maximum possible decor/functions */
-+    client_setup_default_decor_and_functions(self);
-     client_get_state(self);
-@@ -1704,7 +1712,7 @@ void client_update_normal_hints(ObClient
-         ob_debug("Normal hints: not set");
- }
--void client_setup_decor_and_functions(ObClient *self, gboolean reconfig)
-+static void client_setup_default_decor_and_functions(ObClient *self)
- {
-     /* start with everything (cept fullscreen) */
-     self->decorations =
-@@ -1837,6 +1845,23 @@ void client_setup_decor_and_functions(Ob
-         self->functions &= ~OB_CLIENT_FUNC_MAXIMIZE;
-         self->decorations &= ~OB_FRAME_DECOR_MAXIMIZE;
-     }
-+}
-+
-+/*! Set up decor for a client based on its undecorated state. */
-+static void client_setup_decor_undecorated(ObClient *self)
-+{
-+    /* If the user requested no decorations, then remove all the decorations,
-+       except the border.  But don't add a border if there wasn't one. */
-+    if (self->undecorated)
-+        self->decorations &= (config_theme_keepborder ?
-+                              OB_FRAME_DECOR_BORDER : 0);
-+}
-+
-+void client_setup_decor_and_functions(ObClient *self, gboolean reconfig)
-+{
-+    client_setup_default_decor_and_functions(self);
-+
-+    client_setup_decor_undecorated(self);
-     if (self->max_horz && self->max_vert) {
-         /* once upon a time you couldn't resize maximized windows, that is not
-@@ -1846,12 +1871,6 @@ void client_setup_decor_and_functions(Ob
-         self->decorations &= ~(OB_FRAME_DECOR_HANDLE | OB_FRAME_DECOR_GRIPS);
-     }
--    /* finally, the user can have requested no decorations, which overrides
--       everything (but doesnt give it a border if it doesnt have one) */
--    if (self->undecorated)
--        self->decorations &= (config_theme_keepborder ?
--                              OB_FRAME_DECOR_BORDER : 0);
--
-     /* if we don't have a titlebar, then we cannot shade! */
-     if (!(self->decorations & OB_FRAME_DECOR_TITLEBAR))
-         self->functions &= ~OB_CLIENT_FUNC_SHADE;
-@@ -2783,6 +2802,9 @@ static void client_apply_startup_state(O
-     if (fullscreen)
-         client_fullscreen(self, TRUE);
-+    /* make sure client_setup_decor_and_functions() is called at least once */
-+    client_setup_decor_and_functions(self, FALSE);
-+
-     /* if the window hasn't been configured yet, then do so now, in fact the
-        x,y,w,h may _not_ be the same as the area rect, which can end up
-        meaning that the client isn't properly moved/resized by the fullscreen
diff --git a/debian/patches/675991_fix_crash_from_gtk3_apps.patch b/debian/patches/675991_fix_crash_from_gtk3_apps.patch
deleted file mode 100644 (file)
index cfb7a1c..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-Author: Mikael Magnusson <mikachu@gmail.com>
-Description:
- Fix crash on unexpected NET_WM_MOVERESIZE_CANCEL messages.
- .
- gtk+ 3.4 apparently sends these randomly when you select text in a
- GtkEntry. This also fixes bug #5460.
-
-diff -Naurp openbox.orig/openbox/event.c openbox/openbox/event.c
---- openbox.orig/openbox/event.c       2012-07-09 18:35:18.622429467 +0200
-+++ openbox/openbox/event.c    2012-07-09 19:25:35.006942157 +0200
-@@ -1488,7 +1488,8 @@ static void event_handle_client(ObClient
-             }
-             else if ((Atom)e->xclient.data.l[2] ==
-                      OBT_PROP_ATOM(NET_WM_MOVERESIZE_CANCEL))
--                moveresize_end(TRUE);
-+                if (moveresize_client)
-+                    moveresize_end(TRUE);
-         } else if (msgtype == OBT_PROP_ATOM(NET_MOVERESIZE_WINDOW)) {
-             gint ograv, x, y, w, h;
diff --git a/debian/patches/90_fix_link_obt.patch b/debian/patches/90_fix_link_obt.patch
deleted file mode 100644 (file)
index 8b53154..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Author: Fryderyk Dziarmagowski <fdziarmagowski@gmail.com>
-Description:
- Link libobt into libobrender, as it uses things from libobt (bug #5150).
- .
- Link libobt into libobrender, as it uses things from libobt (bug #5150).
- .
- libobrender uses ObtPaths stuff, so it needs to link in libobt.
-
-diff -Naurp openbox.orig/Makefile.am openbox/Makefile.am
---- openbox.orig/Makefile.am   2012-07-09 18:35:18.518427734 +0200
-+++ openbox/Makefile.am        2012-07-09 19:25:49.159051158 +0200
-@@ -79,6 +79,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) \
index 21c029b..d2baee9 100644 (file)
@@ -1,8 +1,8 @@
-04_xsession.desktop_translation.patch
-02_fix_freedesktop_compliance.patch
-01_rc.xml.patch
-05_simplify_gnome_session.patch
-07_fix_xml_load_file.patch
-90_fix_link_obt.patch
-675991_fix_crash_from_gtk3_apps.patch
-666676_wrong_undecorated_window_placement.patch
+01-rc.xml.patch
+02-fix-freedesktop-compliance.patch
+03-xsession.desktop-translation.patch
+04-simplify-gnome-session.patch
+05-fix-xml-load-file.patch
+06-wrong-undecorated-window-placement.patch
+07-fix-crash-from-gtk3-apps.patch
+08-fix-link-obt.patch