summaryrefslogtreecommitdiff
path: root/platform/platform-api/src/com/intellij/util/ui/ButtonlessScrollBarUI.java
diff options
context:
space:
mode:
Diffstat (limited to 'platform/platform-api/src/com/intellij/util/ui/ButtonlessScrollBarUI.java')
-rw-r--r--platform/platform-api/src/com/intellij/util/ui/ButtonlessScrollBarUI.java22
1 files changed, 8 insertions, 14 deletions
diff --git a/platform/platform-api/src/com/intellij/util/ui/ButtonlessScrollBarUI.java b/platform/platform-api/src/com/intellij/util/ui/ButtonlessScrollBarUI.java
index 57f9cfca8a54..d73e21e8dc3a 100644
--- a/platform/platform-api/src/com/intellij/util/ui/ButtonlessScrollBarUI.java
+++ b/platform/platform-api/src/com/intellij/util/ui/ButtonlessScrollBarUI.java
@@ -23,6 +23,7 @@ import com.intellij.ui.Gray;
import com.intellij.ui.JBColor;
import com.intellij.ui.LightColors;
import com.intellij.ui.components.JBScrollPane;
+import com.intellij.util.ReflectionUtil;
import javax.swing.*;
import javax.swing.event.ChangeEvent;
@@ -316,28 +317,21 @@ public class ButtonlessScrollBarUI extends BasicScrollBarUI {
resetMacScrollbarFadeout();
}
+ private static final Method setValueFrom = ReflectionUtil.getDeclaredMethod(TrackListener.class, "setValueFrom", MouseEvent.class);
+ static {
+ LOG.assertTrue(setValueFrom != null, "Cannot get TrackListener.setValueFrom method");
+ }
+
@Override
protected TrackListener createTrackListener() {
return new TrackListener() {
- private Method mySetValueFrom;
-
- {
- try {
- mySetValueFrom = TrackListener.class.getDeclaredMethod("setValueFrom", MouseEvent.class);
- mySetValueFrom.setAccessible(true);
- }
- catch (Exception e) {
- LOG.error("Cannot get TrackListener.setValueFrom method", e);
- }
- }
-
@Override
public void mousePressed(MouseEvent e) {
if (scrollbar.isEnabled()
&& SwingUtilities.isLeftMouseButton(e)
&& !getThumbBounds().contains(e.getPoint())
&& NSScrollerHelper.getClickBehavior() == NSScrollerHelper.ClickBehavior.JumpToSpot
- && mySetValueFrom != null) {
+ && setValueFrom != null) {
switch (scrollbar.getOrientation()) {
case Adjustable.VERTICAL:
@@ -349,7 +343,7 @@ public class ButtonlessScrollBarUI extends BasicScrollBarUI {
}
isDragging = true;
try {
- mySetValueFrom.invoke(this, e);
+ setValueFrom.invoke(this, e);
}
catch (Exception ex) {
LOG.error(ex);