summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelipe Heidrich <fheidric>2009-10-01 20:54:07 +0000
committerFelipe Heidrich <fheidric>2009-10-01 20:54:07 +0000
commit6384119f0991b9686159e4c1ab4031958e1a87bf (patch)
treeeb3108fa9ed9cddba79124f8e087a88f60732b06
parent670729bfb4582fa29fa221faed226712a0baf256 (diff)
downloadeclipse.platform.swt-6384119f0991b9686159e4c1ab4031958e1a87bf.tar.gz
eclipse.platform.swt-6384119f0991b9686159e4c1ab4031958e1a87bf.tar.xz
eclipse.platform.swt-6384119f0991b9686159e4c1ab4031958e1a87bf.zip
Bug 291030 - Repaint cheese with RTL scrollable in bottom left corner
-rwxr-xr-xbundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/widgets/Scrollable.java9
1 files changed, 7 insertions, 2 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/widgets/Scrollable.java b/bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/widgets/Scrollable.java
index c4ac04add5..e70338ebc1 100755
--- a/bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/widgets/Scrollable.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/widgets/Scrollable.java
@@ -332,10 +332,15 @@ LRESULT wmNCPaint (int /*long*/ hwnd, int /*long*/ wParam, int /*long*/ lParam)
vVisible = (psbi.rgstate [0] & OS.STATE_SYSTEM_INVISIBLE) == 0;
}
RECT cornerRect = new RECT ();
- cornerRect.right = windowRect.right - windowRect.left - trimRect.right;
cornerRect.bottom = windowRect.bottom - windowRect.top - trimRect.bottom;
- cornerRect.left = cornerRect.right - (hVisible ? OS.GetSystemMetrics (OS.SM_CXVSCROLL) : 0);
cornerRect.top = cornerRect.bottom - (vVisible ? OS.GetSystemMetrics (OS.SM_CYHSCROLL) : 0);
+ if ((bits2 & OS.WS_EX_LEFTSCROLLBAR) != 0) {
+ cornerRect.left = trimRect.left;
+ cornerRect.right = cornerRect.left + (hVisible ? OS.GetSystemMetrics (OS.SM_CXVSCROLL) : 0);
+ } else {
+ cornerRect.right = windowRect.right - windowRect.left - trimRect.right;
+ cornerRect.left = cornerRect.right - (hVisible ? OS.GetSystemMetrics (OS.SM_CXVSCROLL) : 0);
+ }
if (cornerRect.left != cornerRect.right && cornerRect.top != cornerRect.bottom) {
int /*long*/ hDC = OS.GetWindowDC (hwnd);
OS.FillRect (hDC, cornerRect, OS.COLOR_BTNFACE + 1);