Sat Mar 16 08:50:48 2019 UTC ()
xosd: place text correctly when using offset monitors.
From Aran Clauson in PR pkg/53994. Upstream seems dead.
(bsiegert)
diff -r1.13 -r1.14 pkgsrc/x11/xosd/Makefile
diff -r1.14 -r1.15 pkgsrc/x11/xosd/distinfo
diff -r0 -r1.1 pkgsrc/x11/xosd/patches/patch-src_libxosd_intern.h
diff -r0 -r1.1 pkgsrc/x11/xosd/patches/patch-src_libxosd_xosd.c
--- pkgsrc/x11/xosd/Makefile 2018/12/09 21:05:37 1.13
+++ pkgsrc/x11/xosd/Makefile 2019/03/16 08:50:47 1.14
| @@ -1,11 +1,12 @@ | | | @@ -1,11 +1,12 @@ |
1 | # $NetBSD: Makefile,v 1.13 2018/12/09 21:05:37 adam Exp $ | | 1 | # $NetBSD: Makefile,v 1.14 2019/03/16 08:50:47 bsiegert Exp $ |
2 | | | 2 | |
3 | .include "Makefile.common" | | 3 | .include "Makefile.common" |
4 | | | 4 | |
5 | COMMENT= Library to display shaped text on your X display | | 5 | COMMENT= Library to display shaped text on your X display |
| | | 6 | PKGREVISION= 1 |
6 | | | 7 | |
7 | CONFIGURE_ENV+= XOSD_XMMS_PLUGIN=NO | | 8 | CONFIGURE_ENV+= XOSD_XMMS_PLUGIN=NO |
8 | CONFIGURE_ARGS+= --disable-gdk_pixbuftest | | 9 | CONFIGURE_ARGS+= --disable-gdk_pixbuftest |
9 | CONFIGURE_ARGS+= --disable-new-plugin | | 10 | CONFIGURE_ARGS+= --disable-new-plugin |
10 | | | 11 | |
11 | .include "../../mk/bsd.pkg.mk" | | 12 | .include "../../mk/bsd.pkg.mk" |
--- pkgsrc/x11/xosd/distinfo 2015/11/04 03:29:10 1.14
+++ pkgsrc/x11/xosd/distinfo 2019/03/16 08:50:47 1.15
| @@ -1,9 +1,11 @@ | | | @@ -1,9 +1,11 @@ |
1 | $NetBSD: distinfo,v 1.14 2015/11/04 03:29:10 agc Exp $ | | 1 | $NetBSD: distinfo,v 1.15 2019/03/16 08:50:47 bsiegert Exp $ |
2 | | | 2 | |
3 | SHA1 (xosd-2.2.14.tar.gz) = 1d459a62239c9fe842d835bb7f60eb2edd7c979f | | 3 | SHA1 (xosd-2.2.14.tar.gz) = 1d459a62239c9fe842d835bb7f60eb2edd7c979f |
4 | RMD160 (xosd-2.2.14.tar.gz) = 8a39756c5a46f2897be9bbd47dd86770f42ed648 | | 4 | RMD160 (xosd-2.2.14.tar.gz) = 8a39756c5a46f2897be9bbd47dd86770f42ed648 |
5 | SHA512 (xosd-2.2.14.tar.gz) = 3caf6d106d34488f4823e2a58fdff7a69b90f505b8da2443485167ff0362c6f27614c9a5019e738ff1f897d3c2249c934ff60953e3775566d66e8e9b30e4e473 | | 5 | SHA512 (xosd-2.2.14.tar.gz) = 3caf6d106d34488f4823e2a58fdff7a69b90f505b8da2443485167ff0362c6f27614c9a5019e738ff1f897d3c2249c934ff60953e3775566d66e8e9b30e4e473 |
6 | Size (xosd-2.2.14.tar.gz) = 418331 bytes | | 6 | Size (xosd-2.2.14.tar.gz) = 418331 bytes |
7 | SHA1 (patch-aa) = b555bbb0777dcf0d2475496ae8725b1b2c202fb5 | | 7 | SHA1 (patch-aa) = b555bbb0777dcf0d2475496ae8725b1b2c202fb5 |
8 | SHA1 (patch-ab) = 5502dc0f546a5afe199e746995efd90b0056a34b | | 8 | SHA1 (patch-ab) = 5502dc0f546a5afe199e746995efd90b0056a34b |
9 | SHA1 (patch-ac) = 3c42659ff34b26710fd1ad3329a1f203710155f5 | | 9 | SHA1 (patch-ac) = 3c42659ff34b26710fd1ad3329a1f203710155f5 |
| | | 10 | SHA1 (patch-src_libxosd_intern.h) = 56f45d50d5c79913b6972bb1d603432dbf56f869 |
| | | 11 | SHA1 (patch-src_libxosd_xosd.c) = 5343cc73338eb12ccdb56ce3e907ddf36252db4b |
$NetBSD: patch-src_libxosd_intern.h,v 1.1 2019/03/16 08:50:48 bsiegert Exp $
Support for y-offset monitors, http://gnats.netbsd.org/53994
--- src/libxosd/intern.h.orig 2004-11-04 19:50:45.000000000 +0000
+++ src/libxosd/intern.h
@@ -107,6 +107,7 @@ struct xosd
int screen_width; /* CONST x11 */
int screen_height; /* CONST x11 */
int screen_xpos; /* CONST x11 */
+ int screen_ypos; /* CONST x11 */
int height; /* CACHE (font) */
int line_height; /* CACHE (font) */
xosd_pos pos; /* CONF */
$NetBSD: patch-src_libxosd_xosd.c,v 1.1 2019/03/16 08:50:48 bsiegert Exp $
Support for y-offset monitors, http://gnats.netbsd.org/53994
--- src/libxosd/xosd.c.orig 2004-11-17 19:27:11.000000000 +0000
+++ src/libxosd/xosd.c
@@ -326,13 +326,13 @@ event_loop(void *osdv)
}
switch (osd->pos) {
case XOSD_bottom:
- y = osd->screen_height - osd->height - osd->voffset;
+ y = osd->screen_height + osd->screen_ypos - osd->height - osd->voffset;
break;
case XOSD_middle:
- y = (osd->screen_height - osd->height) / 2 - osd->voffset;
+ y = (osd->screen_height + osd->screen_ypos - osd->height) / 2 - osd->voffset;
break;
case XOSD_top:
- y = osd->voffset;
+ y = osd->screen_ypos + osd->voffset;
}
XMoveWindow(osd->display, osd->window, x, y);
}
@@ -746,12 +746,14 @@ xosd_create(int number_lines)
osd->screen_width = screeninfo[0].width;
osd->screen_height = screeninfo[0].height;
osd->screen_xpos = screeninfo[0].x_org;
+ osd->screen_ypos = screeninfo[0].y_org;
} else
#endif
{
osd->screen_width = XDisplayWidth(osd->display, osd->screen);
osd->screen_height = XDisplayHeight(osd->display, osd->screen);
osd->screen_xpos = 0;
+ osd->screen_ypos = 0;
}
#ifdef HAVE_XINERAMA
if (screeninfo)