diff options
author | Andreas K. Hüttel <dilfridge@gentoo.org> | 2015-08-04 20:49:29 +0000 |
---|---|---|
committer | Andreas K. Hüttel <dilfridge@gentoo.org> | 2015-08-04 20:49:29 +0000 |
commit | e7a4002821355982e941ee0829d482d5b5cd4b60 (patch) | |
tree | a1cb450b22c96eb0b5dbfc6ee5120db992f6f1b6 /app-office/libreoffice/files/libreoffice-4.4.5.2-fix-KDE4-listbox-regression.patch | |
parent | Remove old (diff) | |
download | gentoo-2-e7a4002821355982e941ee0829d482d5b5cd4b60.tar.gz gentoo-2-e7a4002821355982e941ee0829d482d5b5cd4b60.tar.bz2 gentoo-2-e7a4002821355982e941ee0829d482d5b5cd4b60.zip |
Version bump; remove old
(Portage version: 2.2.20/cvs/Linux x86_64, signed Manifest commit with key 84AD142F)
Diffstat (limited to 'app-office/libreoffice/files/libreoffice-4.4.5.2-fix-KDE4-listbox-regression.patch')
-rw-r--r-- | app-office/libreoffice/files/libreoffice-4.4.5.2-fix-KDE4-listbox-regression.patch | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/app-office/libreoffice/files/libreoffice-4.4.5.2-fix-KDE4-listbox-regression.patch b/app-office/libreoffice/files/libreoffice-4.4.5.2-fix-KDE4-listbox-regression.patch new file mode 100644 index 000000000000..f4ee9859c2b3 --- /dev/null +++ b/app-office/libreoffice/files/libreoffice-4.4.5.2-fix-KDE4-listbox-regression.patch @@ -0,0 +1,80 @@ +From ef126328c3ad35d51395abc461c3d64429f91c26 Mon Sep 17 00:00:00 2001 +From: Jan-Marek Glogowski <glogow@fbihome.de> +Date: Thu, 30 Jul 2015 18:10:03 +0200 +Subject: tdf#92903 KDE4: fix listbox regression from 92115 + +So at least in case of the CTRL_LISTBOX, getNativeControlRegion is +called for a type and part unsupported by IsNativeControlSupported. + +For whatever reason, this results in broken listboxes drawn in +Base's "Table Design" dialog, when selecting "field type", which +draws the listbox on top of the cell. + +To make it worse, it seems the listbox is actually drawn to a +smaller space then the actual requirement. Appearently it seems to +use the content rect, instead of the bounding rect. + +So in addition to fixing the drawing, this patch increases the +listbox bounding rect, which looks too large in normal dialogs, but +makes the Base's listbox better readable. + +Change-Id: I112ec038fd20ad33facd260d16b5d68b508d2bd0 +Reviewed-on: https://gerrit.libreoffice.org/17438 +Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de> +Tested-by: Katarina Behrens <Katarina.Behrens@cib.de> + +diff --git a/vcl/unx/kde4/KDESalGraphics.cxx b/vcl/unx/kde4/KDESalGraphics.cxx +index 3e79e1e..eeb741f 100644 +--- a/vcl/unx/kde4/KDESalGraphics.cxx ++++ b/vcl/unx/kde4/KDESalGraphics.cxx +@@ -108,10 +108,7 @@ bool KDESalGraphics::IsNativeControlSupported( ControlType type, ControlPart par + return true; + + case CTRL_LISTBOX: +- return (part == PART_ENTIRE_CONTROL +- || part == PART_SUB_EDIT +- || part == PART_WINDOW +- || part == PART_BUTTON_DOWN); ++ return (part == PART_ENTIRE_CONTROL || part == HAS_BACKGROUND_TEXTURE); + + case CTRL_SPINBOX: + return (part == PART_ENTIRE_CONTROL || part == HAS_BACKGROUND_TEXTURE); +@@ -650,12 +647,6 @@ bool KDESalGraphics::getNativeControlRegion( ControlType type, ControlPart part, + const OUString&, + Rectangle &nativeBoundingRegion, Rectangle &nativeContentRegion ) + { +- bool nativeSupport = IsNativeControlSupported( type, part ); +- if( ! nativeSupport ) { +- assert( ! nativeSupport && "drawNativeControl called without native support!" ); +- return false; +- } +- + bool retVal = false; + + QRect boundingRect = region2QRect( controlRegion ); +@@ -753,6 +744,14 @@ bool KDESalGraphics::getNativeControlRegion( ControlType type, ControlPart part, + int size = QApplication::style()->pixelMetric(QStyle::PM_ComboBoxFrameWidth) - 2; + contentRect.adjust(-size,-size,size,size); + } ++ else { ++ int hmargin = QApplication::style()->pixelMetric( ++ QStyle::PM_FocusFrameHMargin, &styleOption); ++ int vmargin = QApplication::style()->pixelMetric( ++ QStyle::PM_FocusFrameVMargin, &styleOption); ++ boundingRect.translate( -hmargin, -vmargin ); ++ boundingRect.adjust( -hmargin, -vmargin, 2 * hmargin, 2 * vmargin ); ++ } + retVal = true; + break; + } +@@ -776,7 +775,6 @@ bool KDESalGraphics::getNativeControlRegion( ControlType type, ControlPart part, + + contentRect.translate( boundingRect.left() + hmargin, boundingRect.top() + vmargin ); + contentRect.adjust( 0, 0, -2 * hmargin, -2 * vmargin ); +- boundingRect = contentRect; + + retVal = true; + break; +-- +cgit v0.10.2 + |