Fix i3bar when using multiple displays

(upstream git commit 8b4ad8c6bdc73d8950b9ac67316811377acbf7b3)

Fix cfgparse: leave EAT_WHITESPACE and BINDSYM_COND states on EOL
(upstream git commit 1f6fbaf240351a3559f25bc47286c47b29c1047f)

Fix restart with for_window floating configuration
(upstream git commit afed6da0e5f555003ace074bf627c9a7e1c14106)
This commit is contained in:
dcoppa 2012-03-23 08:43:54 +00:00
parent 05b7985e90
commit 7f6b30648e
4 changed files with 56 additions and 4 deletions

View File

@ -1,9 +1,9 @@
# $OpenBSD: Makefile,v 1.27 2012/03/22 09:53:50 dcoppa Exp $
# $OpenBSD: Makefile,v 1.28 2012/03/23 08:43:54 dcoppa Exp $
COMMENT = improved dynamic tiling window manager
DISTNAME = i3-4.1.2
REVISION = 0
REVISION = 1
CATEGORIES = x11
EXTRACT_SUFX = .tar.bz2

View File

@ -0,0 +1,24 @@
$OpenBSD: patch-i3bar_src_xcb_c,v 1.3 2012/03/23 08:43:54 dcoppa Exp $
Fix i3bar when using multiple displays
(upstream git commit 8b4ad8c6bdc73d8950b9ac67316811377acbf7b3)
--- i3bar/src/xcb.c.orig Fri Mar 23 09:13:28 2012
+++ i3bar/src/xcb.c Fri Mar 23 09:15:28 2012
@@ -10,6 +10,7 @@
#include <xcb/xcb.h>
#include <xcb/xproto.h>
#include <xcb/xcb_atom.h>
+#include <xcb/xcb_aux.h>
#ifdef XCB_COMPAT
#include "xcb_compat.h"
@@ -784,7 +785,7 @@ char *init_xcb_early() {
#define ATOM_DO(name) atom_cookies[name] = xcb_intern_atom(xcb_connection, 0, strlen(#name), #name);
#include "xcb_atoms.def"
- xcb_screen = xcb_setup_roots_iterator(xcb_get_setup(xcb_connection)).data;
+ xcb_screen = xcb_aux_get_screen(xcb_connection, screen);
xcb_root = xcb_screen->root;
/* We draw the statusline to a seperate pixmap, because it looks the same on all bars and

View File

@ -0,0 +1,16 @@
$OpenBSD: patch-src_cfgparse_l,v 1.3 2012/03/23 08:43:54 dcoppa Exp $
Fix cfgparse: leave EAT_WHITESPACE and BINDSYM_COND states on EOL
(upstream git commit 1f6fbaf240351a3559f25bc47286c47b29c1047f)
--- src/cfgparse.l.orig Fri Mar 23 09:16:58 2012
+++ src/cfgparse.l Fri Mar 23 09:18:05 2012
@@ -130,6 +130,8 @@ EOL (\r?\n)
return '[';
}
<EAT_WHITESPACE>[ \t]* { yy_pop_state(); }
+<EAT_WHITESPACE>{EOL} { yy_pop_state(); }
+<BINDSYM_COND>{EOL} { yy_pop_state(); }
<WANT_QSTRING>\"[^\"]+\" {
yy_pop_state();
/* strip quotes */

View File

@ -1,10 +1,22 @@
$OpenBSD: patch-src_floating_c,v 1.9 2012/02/21 14:05:39 dcoppa Exp $
$OpenBSD: patch-src_floating_c,v 1.10 2012/03/23 08:43:54 dcoppa Exp $
Bugfix: obey workspace_layout when re-inserting floating containers
(upstream git commit 4f98bbf5ffc18a7b53c5545ce403e4667d75a703)
Bugfix: Fix restart with for_window floating configuration
(upstream git commit afed6da0e5f555003ace074bf627c9a7e1c14106)
--- src/floating.c.orig Fri Jan 27 20:24:09 2012
+++ src/floating.c Tue Feb 21 14:24:56 2012
+++ src/floating.c Fri Mar 23 09:16:41 2012
@@ -223,7 +223,7 @@ void floating_disable(Con *con, bool automatic) {
/* 2: kill parent container */
TAILQ_REMOVE(&(con->parent->parent->floating_head), con->parent, floating_windows);
TAILQ_REMOVE(&(con->parent->parent->focus_head), con->parent, focused);
- tree_close(con->parent, DONT_KILL_WINDOW, false, false);
+ tree_close(con->parent, DONT_KILL_WINDOW, true, false);
/* 3: re-attach to the parent of the currently focused con on the workspace
* this floating con was on */
@@ -238,10 +238,9 @@ void floating_disable(Con *con, bool automatic) {
/* con_fix_percent will adjust the percent value */
con->percent = 0.0;