diff options
author | Lars Rustand | 2019-08-01 22:07:49 +0200 |
---|---|---|
committer | Lars Rustand | 2019-08-01 22:07:49 +0200 |
commit | f9e08ef0ee05eb56efb5961219d5b8ad549f3fd0 (patch) | |
tree | a3f6ccfebdc2ac22612cbbac69b69158a8902acb | |
parent | 871ab97cdfd2f85fc3be45673a643db39245cbfb (diff) | |
download | aur-f9e08ef0ee05eb56efb5961219d5b8ad549f3fd0.tar.gz |
Update to 4.16.1
-rw-r--r-- | .SRCINFO | 14 | ||||
-rw-r--r-- | PKGBUILD | 31 | ||||
-rw-r--r-- | iconsupport.patch | 66 |
3 files changed, 62 insertions, 49 deletions
@@ -1,7 +1,7 @@ pkgbase = i3-wm-iconpatch pkgdesc = An improved dynamic tiling window manager (with titlebar icon patch) - pkgver = 4.14.1 - pkgrel = 2 + pkgver = 4.16.1 + pkgrel = 1 url = http://i3wm.org/ arch = i686 arch = x86_64 @@ -21,7 +21,7 @@ pkgbase = i3-wm-iconpatch depends = libxkbcommon-x11 optdepends = dmenu: As menu. optdepends = i3lock: For locking your screen. - optdepends = i3status: To display systeminformation with a bar. + optdepends = i3status: To display system information with a bar. optdepends = perl: i3-save-tree and i3-dmenu-desktop optdepends = perl-anyevent-i3: Features like saving the layout. optdepends = perl-json-xs: Features like saving the layout. @@ -29,13 +29,13 @@ pkgbase = i3-wm-iconpatch conflicts = i3-wm options = docs options = !strip - source = http://i3wm.org/downloads/i3-4.14.1.tar.bz2 - source = http://i3wm.org/downloads/i3-4.14.1.tar.bz2.asc + source = http://i3wm.org/downloads/i3-4.16.1.tar.bz2 + source = http://i3wm.org/downloads/i3-4.16.1.tar.bz2.asc source = iconsupport.patch validpgpkeys = 424E14D703E7C6D43D9D6F364E7160ED4AC8EE1D - sha1sums = 2f98fdebbdc8b6214d8c258db062ae02095ca2f9 + sha1sums = 95607b8e09bdf5d18032b2ec391cb1000efcdf5a sha1sums = SKIP - sha1sums = 9b91e6490c32c05d6f619e21ae1a7850dd0bc745 + sha1sums = 2ccc24022d4bbf1b1f5aa423e0a977ba99447f33 pkgname = i3-wm-iconpatch @@ -1,13 +1,14 @@ +# Maintainer: Lars Rustand <rustand dot lars at gmail dot com> # Upstream Maintainer (i3-wm): Thorsten Töpper <atsutane-tu@freethoughts.de> # Patch Contributor: Marius Muja <mariusm@cs.ubc.ca> # Patch Contributor: mickael9 <mickael9@gmail.com> # Patch Contributor: Esteve Varela Colominas <esteve.varela@gmail.com> -# Package Maintainer: cornholio <vigo.the.unholy.carpathian@gmail.com> +# Contributor: cornholio <vigo.the.unholy.carpathian@gmail.com> pkgname=i3-wm-iconpatch _pkgsourcename=i3 -pkgver=4.14.1 -pkgrel=2 +pkgver=4.16.1 +pkgrel=1 pkgdesc='An improved dynamic tiling window manager (with titlebar icon patch)' arch=('i686' 'x86_64') url='http://i3wm.org/' @@ -15,12 +16,12 @@ license=('BSD') provides=('i3-wm') conflicts=('i3-wm') groups=('i3') -depends=('xcb-util-cursor' 'xcb-util-keysyms' 'xcb-util-wm' 'xcb-util-xrm' +depends=('xcb-util-cursor' 'xcb-util-keysyms' 'xcb-util-wm' 'xcb-util-xrm' 'libev' 'yajl' 'startup-notification' 'pango' 'libxkbcommon-x11') makedepends=('bison' 'flex' 'pkg-config') optdepends=('dmenu: As menu.' 'i3lock: For locking your screen.' - 'i3status: To display systeminformation with a bar.' + 'i3status: To display system information with a bar.' 'perl: i3-save-tree and i3-dmenu-desktop' 'perl-anyevent-i3: Features like saving the layout.' 'perl-json-xs: Features like saving the layout.') @@ -28,15 +29,17 @@ options=('docs' '!strip') source=("http://i3wm.org/downloads/${_pkgsourcename}-${pkgver}.tar.bz2" "http://i3wm.org/downloads/${_pkgsourcename}-${pkgver}.tar.bz2.asc" "iconsupport.patch") -sha1sums=('2f98fdebbdc8b6214d8c258db062ae02095ca2f9' - 'SKIP' - '9b91e6490c32c05d6f619e21ae1a7850dd0bc745') +sha1sums=( + '95607b8e09bdf5d18032b2ec391cb1000efcdf5a' + 'SKIP' + '2ccc24022d4bbf1b1f5aa423e0a977ba99447f33' +) validpgpkeys=('424E14D703E7C6D43D9D6F364E7160ED4AC8EE1D') # Michael Stapelberg prepare() { cd "$srcdir/$_pkgsourcename-$pkgver" - + patch -p1 < "$srcdir/iconsupport.patch" } @@ -44,9 +47,11 @@ prepare() { build() { cd "$srcdir/$_pkgsourcename-$pkgver" + [ -d build ] && rm -rf build + mkdir build + cd build - ./configure --prefix=/usr --sysconfdir=/etc - cd ${CARCH}-pc-linux-gnu + ../configure --prefix=/usr --sysconfdir=/etc # In order to avoid problems with bison use only a single process MAKEFLAGS="-j1" @@ -56,7 +61,7 @@ build() { package() { - cd "$srcdir/$_pkgsourcename-$pkgver/${CARCH}-pc-linux-gnu" + cd "$srcdir/$_pkgsourcename-$pkgver/build" make DESTDIR="$pkgdir/" install @@ -64,7 +69,7 @@ package() { install -m644 ../man/*.1 "${pkgdir}/usr/share/man/man1/" install -Dm644 ../LICENSE \ - ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE + ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE } diff --git a/iconsupport.patch b/iconsupport.patch index 2dbb39055246..1e3096df85b4 100644 --- a/iconsupport.patch +++ b/iconsupport.patch @@ -1,5 +1,5 @@ diff --git a/include/atoms_rest.xmacro b/include/atoms_rest.xmacro -index d461dc08..f32a7e1e 100644 +index b65a81d..df56fd3 100644 --- a/include/atoms_rest.xmacro +++ b/include/atoms_rest.xmacro @@ -1,6 +1,7 @@ @@ -11,10 +11,10 @@ index d461dc08..f32a7e1e 100644 xmacro(WM_DELETE_WINDOW) xmacro(UTF8_STRING) diff --git a/include/data.h b/include/data.h -index 31ef1dc1..0d24b8b7 100644 +index f55e003..d7e22a3 100644 --- a/include/data.h +++ b/include/data.h -@@ -470,6 +470,11 @@ struct Window { +@@ -483,6 +483,11 @@ struct Window { /* aspect ratio from WM_NORMAL_HINTS (MPlayer uses this for example) */ double aspect_ratio; @@ -27,10 +27,10 @@ index 31ef1dc1..0d24b8b7 100644 /** diff --git a/include/libi3.h b/include/libi3.h -index b7a1e2aa..612dfd3f 100644 +index 790baba..cc88ee7 100644 --- a/include/libi3.h +++ b/include/libi3.h -@@ -601,6 +601,11 @@ color_t draw_util_hex_to_color(const char *color); +@@ -614,6 +614,11 @@ color_t draw_util_hex_to_color(const char *color); */ void draw_util_text(i3String *text, surface_t *surface, color_t fg_color, color_t bg_color, int x, int y, int max_width); @@ -43,7 +43,7 @@ index b7a1e2aa..612dfd3f 100644 * Draws a filled rectangle. * This function is a convenience wrapper and takes care of flushing the diff --git a/include/window.h b/include/window.h -index 77e3f48f..894ee9fd 100644 +index 77e3f48..894ee9f 100644 --- a/include/window.h +++ b/include/window.h @@ -89,3 +89,9 @@ void window_update_hints(i3Window *win, xcb_get_property_reply_t *prop, bool *ur @@ -57,7 +57,7 @@ index 77e3f48f..894ee9fd 100644 + */ +void window_update_icon(i3Window *win, xcb_get_property_reply_t *prop); diff --git a/libi3/draw_util.c b/libi3/draw_util.c -index 6a2e93dc..2147effc 100644 +index f88360d..59a9d8e 100644 --- a/libi3/draw_util.c +++ b/libi3/draw_util.c @@ -140,6 +140,42 @@ void draw_util_text(i3String *text, surface_t *surface, color_t fg_color, color_ @@ -100,14 +100,14 @@ index 6a2e93dc..2147effc 100644 + cairo_restore(surface->cr); +} + - /** + /* * Draws a filled rectangle. * This function is a convenience wrapper and takes care of flushing the diff --git a/src/handlers.c b/src/handlers.c -index 3140e405..621c38e8 100644 +index b967791..efab679 100644 --- a/src/handlers.c +++ b/src/handlers.c -@@ -1402,6 +1402,19 @@ static bool handle_strut_partial_change(void *data, xcb_connection_t *conn, uint +@@ -1392,6 +1392,19 @@ static bool handle_strut_partial_change(void *data, xcb_connection_t *conn, uint return true; } @@ -127,7 +127,7 @@ index 3140e405..621c38e8 100644 /* Returns false if the event could not be processed (e.g. the window could not * be found), true otherwise */ typedef bool (*cb_property_handler_t)(void *data, xcb_connection_t *c, uint8_t state, xcb_window_t window, xcb_atom_t atom, xcb_get_property_reply_t *property); -@@ -1423,7 +1436,8 @@ static struct property_handler_t property_handlers[] = { +@@ -1413,7 +1426,8 @@ static struct property_handler_t property_handlers[] = { {0, 128, handle_class_change}, {0, UINT_MAX, handle_strut_partial_change}, {0, UINT_MAX, handle_window_type}, @@ -137,7 +137,7 @@ index 3140e405..621c38e8 100644 #define NUM_HANDLERS (sizeof(property_handlers) / sizeof(struct property_handler_t)) /* -@@ -1445,6 +1459,7 @@ void property_handlers_init(void) { +@@ -1435,6 +1449,7 @@ void property_handlers_init(void) { property_handlers[8].atom = A__NET_WM_STRUT_PARTIAL; property_handlers[9].atom = A__NET_WM_WINDOW_TYPE; property_handlers[10].atom = A__MOTIF_WM_HINTS; @@ -146,7 +146,7 @@ index 3140e405..621c38e8 100644 static void property_notify(uint8_t state, xcb_window_t window, xcb_atom_t atom) { diff --git a/src/manage.c b/src/manage.c -index 004e8038..9bf910d8 100644 +index c4706b0..4e240d7 100644 --- a/src/manage.c +++ b/src/manage.c @@ -91,6 +91,8 @@ void manage_window(xcb_window_t window, xcb_get_window_attributes_cookie_t cooki @@ -184,7 +184,7 @@ index 004e8038..9bf910d8 100644 if (!xcb_icccm_get_wm_size_hints_reply(conn, wm_normal_hints_cookie, &wm_size_hints, NULL)) memset(&wm_size_hints, '\0', sizeof(xcb_size_hints_t)); diff --git a/src/window.c b/src/window.c -index 68c6933a..9df3e631 100644 +index 6128255..797be6a 100644 --- a/src/window.c +++ b/src/window.c @@ -17,6 +17,7 @@ void window_free(i3Window *win) { @@ -195,7 +195,7 @@ index 68c6933a..9df3e631 100644 FREE(win->ran_assignments); FREE(win); } -@@ -365,3 +366,91 @@ void window_update_motif_hints(i3Window *win, xcb_get_property_reply_t *prop, bo +@@ -371,3 +372,91 @@ void window_update_motif_hints(i3Window *win, xcb_get_property_reply_t *prop, bo #undef MWM_DECOR_BORDER #undef MWM_DECOR_TITLE } @@ -288,10 +288,10 @@ index 68c6933a..9df3e631 100644 + FREE(prop); +} diff --git a/src/x.c b/src/x.c -index 09a60493..ed118b52 100644 +index 267372f..51ea062 100644 --- a/src/x.c +++ b/src/x.c -@@ -544,8 +544,9 @@ void x_draw_decoration(Con *con) { +@@ -576,11 +576,35 @@ void x_draw_decoration(Con *con) { /* 5: draw two unconnected horizontal lines in border color */ x_draw_title_border(con, p); @@ -299,13 +299,12 @@ index 09a60493..ed118b52 100644 + /* 6: draw the icon and title */ int text_offset_y = (con->deco_rect.height - config.font.height) / 2; + int text_offset_x = 0; ++ ++ struct Window *win = con->window; - struct Window *win = con->window; - if (win == NULL) { -@@ -572,6 +573,25 @@ void x_draw_decoration(Con *con) { - goto after_title; - } - + const int title_padding = logical_px(2); + const int deco_width = (int)con->deco_rect.width; ++ + /* Draw the icon */ + if (win->icon) { + uint16_t icon_size = con->deco_rect.height - 2 * logical_px(1); @@ -325,18 +324,27 @@ index 09a60493..ed118b52 100644 + icon_size); + } + ++ int mark_width = 0; if (config.show_marks && !TAILQ_EMPTY(&(con->marks_head))) { char *formatted_mark = sstrdup(""); -@@ -611,9 +631,9 @@ void x_draw_decoration(Con *con) { +@@ -619,7 +643,6 @@ void x_draw_decoration(Con *con) { + } + + i3String *title = NULL; +- struct Window *win = con->window; + if (win == NULL) { + if (con->title_format == NULL) { + char *_title; +@@ -663,9 +686,9 @@ void x_draw_decoration(Con *con) { draw_util_text(title, &(parent->frame_buffer), p->color->text, p->color->background, -- con->deco_rect.x + logical_px(2), -+ con->deco_rect.x + text_offset_x + logical_px(2), +- con->deco_rect.x + title_offset_x, ++ con->deco_rect.x + text_offset_x + title_offset_x, con->deco_rect.y + text_offset_y, -- con->deco_rect.width - mark_width - 2 * logical_px(2)); -+ con->deco_rect.width - text_offset_x - mark_width - 2 * logical_px(2)); +- deco_width - mark_width - 2 * title_padding); ++ deco_width - text_offset_x - mark_width - 2 * title_padding); - if (con->title_format != NULL) { + if (win == NULL || con->title_format != NULL) { I3STRING_FREE(title); |