From b306dbbb453d61a6dedd946cd39eea848efffb6f Mon Sep 17 00:00:00 2001 From: Sergey Malenkov Date: Tue, 24 Jan 2017 13:40:06 +0300 Subject: [PATCH] IDEA-166252 Horizontal scrollbar is not shown when needed --- .../com/intellij/openapi/editor/impl/EditorImpl.java | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/platform/platform-impl/src/com/intellij/openapi/editor/impl/EditorImpl.java b/platform/platform-impl/src/com/intellij/openapi/editor/impl/EditorImpl.java index 81f8e237938c..56feac12d9c8 100644 --- a/platform/platform-impl/src/com/intellij/openapi/editor/impl/EditorImpl.java +++ b/platform/platform-impl/src/com/intellij/openapi/editor/impl/EditorImpl.java @@ -504,15 +504,14 @@ public final class EditorImpl extends UserDataHolderBase implements EditorEx, Hi myEditorComponent = new EditorComponentImpl(this); myScrollPane.putClientProperty(JBScrollPane.BRIGHTNESS_FROM_VIEW, true); myVerticalScrollBar = (MyScrollBar)myScrollPane.getVerticalScrollBar(); - // JBScrollPane.Layout relies on "opaque" property directly (instead of "editor.transparent.scrollbar") - myVerticalScrollBar.setOpaque(SystemProperties.isTrueSmoothScrollingEnabled() && - !IdeBackgroundUtil.isBackgroundImageSet(project)); myPanel = new JPanel(); // JBScrollPane.Layout relies on "opaque" property directly (instead of "editor.transparent.scrollbar") - myScrollPane.getHorizontalScrollBar().setOpaque(SystemProperties.isTrueSmoothScrollingEnabled() && - !IdeBackgroundUtil.isBackgroundImageSet(project)); - + if (SystemProperties.isTrueSmoothScrollingEnabled() && !IdeBackgroundUtil.isBackgroundImageSet(project)) { + //Do not set opaque to false if a scroll bar is opaque (System Preferences / Show scroll bars / Always) + myVerticalScrollBar.setOpaque(true); + myScrollPane.getHorizontalScrollBar().setOpaque(true); + } UIUtil.putClientProperty( myPanel, UIUtil.NOT_IN_HIERARCHY_COMPONENTS, (Iterable)() -> { JComponent component = getPermanentHeaderComponent();