From: Nick Bowler Date: Wed, 8 Jun 2011 19:04:00 +0000 (-0400) Subject: xorg-server: Update DontLie patch for latest git. X-Git-Url: https://git.draconx.ca/gitweb/gentoo-draconx.git/commitdiff_plain/84d558630efaba03604127fbf6ff27719e1ca494 xorg-server: Update DontLie patch for latest git. --- diff --git a/x11-base/xorg-server/Manifest b/x11-base/xorg-server/Manifest index 47da613..d84884d 100644 --- a/x11-base/xorg-server/Manifest +++ b/x11-base/xorg-server/Manifest @@ -1,4 +1,5 @@ AUX 0001-xaa-Free-the-scratch-pixmap-header-before-freeing-th.patch 1123 RMD160 7b11ccee412d4de0efc063821dcdd4f7f0c7f006 SHA1 1552b4c356fde066c72e9edbed209af2ec4d5ef7 SHA256 aef87d2307c9f15e152c7f4666272f3a58a938c682c842c3d186440d7a55aa96 +AUX 0001-xfree86-Add-DontLie-server-flag.patch 4689 RMD160 aec4a74eefd6433815de4434e72f61e6b239edac SHA1 3f194121ad9685bfe9e0df7497b998eb72daf1b8 SHA256 0fb353c407e1a4df29fc356e9d7be1b1572091eb4761814de555c54caa9186b3 AUX 0002-Remove-the-cacheing-of-the-last-scratch-PixmapRec.patch 8449 RMD160 978b89e43da6d4fea1b4767a2ba599c382ea2f69 SHA1 fa48c334e0064d982ba9938079d1cdcc62e84c27 SHA256 730194ae24f38423daa00726486860c552cdae97e930ec7864e678c90fe36041 AUX 0003-shm-Replace-open-coded-version-of-GetScratchPixmapHe.patch 1460 RMD160 8a05de2c0ab885c7b4469160aa0f596af3da0791 SHA1 fdee7f6459b9e942ba8cf771836ff3ac58abfa84 SHA256 18e7728c546ba670810e7a0540ec3ea266c2ff2266cfe8a98d015b21ac0947d5 AUX 0004-shadow-Remove-unused-ModifyPixmapHeader-wrapping.patch 1501 RMD160 7837abca53cc6263ca3afc26a2c173b13af3b9e2 SHA1 56eada8b1c1427dc1d9e701f1a87f307d8bb7149 SHA256 4b5d1c0726fc346675a26c521c00b6fd51b2e5e349f5a22ef80d54e985e9e8af @@ -8,4 +9,4 @@ AUX xdm.initd-3 5551 RMD160 7af6e239e3e75ea88a0766ef2f4976a8b5c51c95 SHA1 bd3022 AUX xorg-server-1.9-nouveau-default.patch 916 RMD160 0ebdf0fb76364b7fd0c520c3a2f7cc2cc1a83446 SHA1 daddde0f4f4276e12b87354d2e6825ed5c74c6eb SHA256 a7ff421dd928e3025194279f9afb7cc033a896b3417abe339741e9c6ed4b54ea AUX xorg-server-disable-acpi.patch 663 RMD160 7074ca5276369b746ea7606a0795232aafe07c90 SHA1 d300a37dd2e0a8aa3965948c13f6995e6767841d SHA256 5b3cc7c8bea18fe3ba81851d2846d19ffd8fab9cdf5d8f3a274846847e734200 AUX xorg-sets.conf 199 RMD160 33815115b6e8b8360af4f0778b0e2c5fb1a9aaee SHA1 b5a2fd01a97558fa909c67f510d8a59b55e20f57 SHA256 1201d0337ac69d9715f4454a86dfb8a7bd1ae6f4c2578042fc08f283a997597c -EBUILD xorg-server-9999.ebuild 6983 RMD160 8e70bf7fa72a84fc82f7682adbe85852262f86b5 SHA1 3ee6e768666fad5ea93738ec56d35c9b79d3cb49 SHA256 6c9c1246cce29638d736fb138321c334b1e2954fe925ab7f0595f7464c0df3ac +EBUILD xorg-server-9999.ebuild 7041 RMD160 828d6c2cb04815cc76e40373c5a31cb138e43737 SHA1 546c3384624a7ba1324aa8329d772160f10c2460 SHA256 3398f69ecbf86a5e369ce7f653e5772fc87268559d052cd740aaa9513ff40a36 diff --git a/x11-base/xorg-server/files/0001-xfree86-Add-DontLie-server-flag.patch b/x11-base/xorg-server/files/0001-xfree86-Add-DontLie-server-flag.patch new file mode 100644 index 0000000..e71ee5d --- /dev/null +++ b/x11-base/xorg-server/files/0001-xfree86-Add-DontLie-server-flag.patch @@ -0,0 +1,128 @@ +From db1abe87be5b4bbe7db906ac3d56c69cf3785b23 Mon Sep 17 00:00:00 2001 +From: Nick Bowler +Date: Wed, 6 Jan 2010 10:42:17 -0500 +Subject: [PATCH] xfree86: Add DontLie server flag. + +Since commit fff00df94d7ebd18a8e24537ec96073717375a3f, RandR 1.2 drivers +lie about the resolution of the attached screen by default. When the +reported resolution is wrong, fonts and other UI elements that use +physical units are not sized correctly. + +This patch adds a new server flag, DontLie, which encourages the server +to be honest by default. + +Signed-off-by: Nick Bowler +--- + hw/xfree86/common/xf86Config.c | 6 +++++- + hw/xfree86/common/xf86Globals.c | 1 + + hw/xfree86/common/xf86Privstr.h | 2 ++ + hw/xfree86/man/xorg.conf.man | 6 ++++++ + hw/xfree86/modes/xf86RandR12.c | 12 ++++++++++++ + 5 files changed, 26 insertions(+), 1 deletions(-) + +diff --git a/hw/xfree86/common/xf86Config.c b/hw/xfree86/common/xf86Config.c +index 114bdc3..22391df 100644 +--- a/hw/xfree86/common/xf86Config.c ++++ b/hw/xfree86/common/xf86Config.c +@@ -690,7 +690,8 @@ typedef enum { + FLAG_AUTO_ENABLE_DEVICES, + FLAG_GLX_VISUALS, + FLAG_DRI2, +- FLAG_USE_SIGIO ++ FLAG_USE_SIGIO, ++ FLAG_DONTLIE + } FlagValues; + + /** +@@ -752,6 +753,8 @@ static OptionInfoRec FlagOptions[] = { + {0}, FALSE }, + { FLAG_USE_SIGIO, "UseSIGIO", OPTV_BOOLEAN, + {0}, FALSE }, ++ { FLAG_DONTLIE, "DontLie", OPTV_BOOLEAN, ++ {0}, FALSE }, + { -1, NULL, OPTV_NONE, + {0}, FALSE }, + }; +@@ -809,6 +812,7 @@ configServerFlags(XF86ConfFlagsPtr flagsconf, XF86OptionPtr layoutopts) + xf86GetOptValBool(FlagOptions, FLAG_DONTVTSWITCH, &xf86Info.dontVTSwitch); + xf86GetOptValBool(FlagOptions, FLAG_DONTZAP, &xf86Info.dontZap); + xf86GetOptValBool(FlagOptions, FLAG_DONTZOOM, &xf86Info.dontZoom); ++ xf86GetOptValBool(FlagOptions, FLAG_DONTLIE, &xf86Info.dontLie); + + xf86GetOptValBool(FlagOptions, FLAG_IGNORE_ABI, &xf86Info.ignoreABI); + if (xf86Info.ignoreABI) { +diff --git a/hw/xfree86/common/xf86Globals.c b/hw/xfree86/common/xf86Globals.c +index 16d5557..b0f602a 100644 +--- a/hw/xfree86/common/xf86Globals.c ++++ b/hw/xfree86/common/xf86Globals.c +@@ -105,6 +105,7 @@ xf86InfoRec xf86Info = { + .dontVTSwitch = FALSE, + .dontZap = FALSE, + .dontZoom = FALSE, ++ .dontLie = FALSE, + .notrapSignals = FALSE, + .caughtSignal = FALSE, + .currentScreen = NULL, +diff --git a/hw/xfree86/common/xf86Privstr.h b/hw/xfree86/common/xf86Privstr.h +index 608f9bd..d05f206 100644 +--- a/hw/xfree86/common/xf86Privstr.h ++++ b/hw/xfree86/common/xf86Privstr.h +@@ -68,6 +68,8 @@ typedef struct { + Bool dontVTSwitch; + Bool dontZap; + Bool dontZoom; ++ Bool dontLie; ++ + Bool notrapSignals; /* don't exit cleanly - die at fault */ + Bool caughtSignal; + +diff --git a/hw/xfree86/man/xorg.conf.man b/hw/xfree86/man/xorg.conf.man +index f406f82..a9d418c 100644 +--- a/hw/xfree86/man/xorg.conf.man ++++ b/hw/xfree86/man/xorg.conf.man +@@ -544,6 +544,12 @@ When this option is enabled, those key sequences have no special meaning + and are passed to clients. + Default: off. + .TP 7 ++.BI "Option \*qDontLie\*q \*q" boolean \*q ++This option suggests that the server should avoid lying whenever possible. ++Currently this means that RandR 1.2 drivers will try to compute the proper DPI ++instead of making it up. ++Default: off. ++.TP 7 + .BI "Option \*qDisableVidModeExtension\*q \*q" boolean \*q + This disables the parts of the VidMode extension used by the xvidtune client + that can be used to change the video modes. +diff --git a/hw/xfree86/modes/xf86RandR12.c b/hw/xfree86/modes/xf86RandR12.c +index cb20d1c..65da9bf 100644 +--- a/hw/xfree86/modes/xf86RandR12.c ++++ b/hw/xfree86/modes/xf86RandR12.c +@@ -805,6 +805,7 @@ xf86RandR12CreateScreenResources (ScreenPtr pScreen) + else + { + xf86OutputPtr output = xf86CompatOutput(pScrn); ++ xf86CrtcPtr crtc = output->crtc; + + if (output && + output->conf_monitor && +@@ -817,6 +818,17 @@ xf86RandR12CreateScreenResources (ScreenPtr pScreen) + mmWidth = output->conf_monitor->mon_width; + mmHeight = output->conf_monitor->mon_height; + } ++ else if (xf86Info.dontLie && crtc && crtc->mode.HDisplay && ++ output->mm_width && output->mm_height) ++ { ++ /* ++ * If the output has a mode and a declared size, use that ++ * to scale the screen size ++ */ ++ DisplayModePtr mode = &crtc->mode; ++ mmWidth = output->mm_width * width / mode->HDisplay; ++ mmHeight = output->mm_height * height / mode->VDisplay; ++ } + else + { + /* +-- +1.7.3.4 + diff --git a/x11-base/xorg-server/xorg-server-9999.ebuild b/x11-base/xorg-server/xorg-server-9999.ebuild index 64650f6..81b83d4 100644 --- a/x11-base/xorg-server/xorg-server-9999.ebuild +++ b/x11-base/xorg-server/xorg-server-9999.ebuild @@ -101,6 +101,7 @@ PATCHES=( "${UPSTREAMED_PATCHES[@]}" "${FILESDIR}"/${PN}-disable-acpi.patch "${FILESDIR}"/${PN}-1.9-nouveau-default.patch + "${FILESDIR}"/0001-xfree86-Add-DontLie-server-flag.patch "${FILESDIR}"/0001-xaa-Free-the-scratch-pixmap-header-before-freeing-th.patch "${FILESDIR}"/0002-Remove-the-cacheing-of-the-last-scratch-PixmapRec.patch "${FILESDIR}"/0003-shm-Replace-open-coded-version-of-GetScratchPixmapHe.patch