diff options
author | jkim <jkim@FreeBSD.org> | 2005-10-31 21:48:59 +0000 |
---|---|---|
committer | jkim <jkim@FreeBSD.org> | 2005-10-31 21:48:59 +0000 |
commit | 11efa4abe3c5af71280069da7cd0a3458036d4d7 (patch) | |
tree | ba1e16fb5b4a5f74937e6be330e5b4eea29d50e1 /graphics/xpdf | |
parent | 636031eb5ae4ec60b54f0c7266615972147deb32 (diff) | |
download | FreeBSD-ports-11efa4abe3c5af71280069da7cd0a3458036d4d7.zip FreeBSD-ports-11efa4abe3c5af71280069da7cd0a3458036d4d7.tar.gz |
Fix window resize bug.
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=324172
Approved by: nork (maintainer)
Obtained from: Debian
Diffstat (limited to 'graphics/xpdf')
-rw-r--r-- | graphics/xpdf/Makefile | 1 | ||||
-rw-r--r-- | graphics/xpdf/files/patch-resize | 36 |
2 files changed, 37 insertions, 0 deletions
diff --git a/graphics/xpdf/Makefile b/graphics/xpdf/Makefile index f3fc12c..04e2b48 100644 --- a/graphics/xpdf/Makefile +++ b/graphics/xpdf/Makefile @@ -7,6 +7,7 @@ PORTNAME= xpdf PORTVERSION= 3.01 +PORTREVISION= 1 CATEGORIES= graphics print MASTER_SITES= ftp://ftp.foolabs.com/pub/xpdf/ \ ${MASTER_SITE_TEX_CTAN} diff --git a/graphics/xpdf/files/patch-resize b/graphics/xpdf/files/patch-resize new file mode 100644 index 0000000..ea3168d --- /dev/null +++ b/graphics/xpdf/files/patch-resize @@ -0,0 +1,36 @@ +--- xpdf/XPDFCore.cc 2005-10-10 23:33:08.000000000 +1000 ++++ xpdf/XPDFCore.cc 2005-10-10 23:33:44.000000000 +1000 +@@ -975,6 +975,9 @@ + XPDFCore *core = (XPDFCore *)ptr; + XEvent event; + Widget top; ++ Window rootWin; ++ int x1, y1; ++ Guint w1, h1, bw1, depth1; + Arg args[2]; + int n; + Dimension w, h; +@@ -982,15 +985,20 @@ + + // find the top-most widget which has an associated window, and look + // for a pending ConfigureNotify in the event queue -- if there is +- // one, that means we're still resizing, and we want to skip the +- // current event ++ // one, and it specifies a different width or height, that means ++ // we're still resizing, and we want to skip the current event + for (top = core->parentWidget; + XtParent(top) && XtWindow(XtParent(top)); + top = XtParent(top)) ; + if (XCheckTypedWindowEvent(core->display, XtWindow(top), + ConfigureNotify, &event)) { + XPutBackEvent(core->display, &event); +- return; ++ XGetGeometry(core->display, event.xconfigure.window, ++ &rootWin, &x1, &y1, &w1, &h1, &bw1, &depth1); ++ if ((Guint)event.xconfigure.width != w1 || ++ (Guint)event.xconfigure.height != h1) { ++ return; ++ } + } + + n = 0; |