diff --git a/platform/platform-impl/src/com/intellij/ui/ColorPicker.java b/platform/platform-impl/src/com/intellij/ui/ColorPicker.java index 48e8fc51125a..8bfd64da1541 100644 --- a/platform/platform-impl/src/com/intellij/ui/ColorPicker.java +++ b/platform/platform-impl/src/com/intellij/ui/ColorPicker.java @@ -23,7 +23,6 @@ import com.intellij.openapi.ui.DialogWrapper; import com.intellij.openapi.util.Couple; import com.intellij.openapi.util.Disposer; import com.intellij.openapi.util.SystemInfo; -import com.intellij.openapi.util.registry.Registry; import com.intellij.openapi.util.text.StringUtil; import com.intellij.openapi.wm.WindowManager; import com.intellij.ui.picker.ColorListener; @@ -162,7 +161,7 @@ public class ColorPicker extends JPanel implements ColorListener, DocumentListen @Nullable private ColorPipette createPipette(@NotNull ColorListener colorListener, @NotNull Disposable parentDisposable) { - if (SystemInfo.isMac && Registry.is("ide.mac.new.color.picker")) { + if (ColorPipetteBase.canUseMacPipette()) { ColorPipette pipette = getPipetteIfAvailable(new MacColorPipette(this, colorListener), parentDisposable); if (pipette != null) { return pipette; diff --git a/platform/platform-impl/src/com/intellij/ui/picker/ColorPipetteBase.java b/platform/platform-impl/src/com/intellij/ui/picker/ColorPipetteBase.java index a8ebe0122fc9..9c3397dde8af 100644 --- a/platform/platform-impl/src/com/intellij/ui/picker/ColorPipetteBase.java +++ b/platform/platform-impl/src/com/intellij/ui/picker/ColorPipetteBase.java @@ -16,6 +16,7 @@ package com.intellij.ui.picker; import com.intellij.openapi.util.SystemInfo; +import com.intellij.openapi.util.registry.Registry; import com.intellij.util.Alarm; import com.intellij.util.ui.UIUtil; import org.jetbrains.annotations.NotNull; @@ -44,6 +45,10 @@ public abstract class ColorPipetteBase implements ColorPipette { myRobot = createRobot(); } + public static boolean canUseMacPipette() { + return SystemInfo.isMac && Registry.is("ide.mac.new.color.picker"); + } + @Override public void pickAndClose() { PointerInfo pointerInfo = MouseInfo.getPointerInfo(); @@ -142,7 +147,7 @@ public abstract class ColorPipetteBase implements ColorPipette { }); myPickerFrame.setUndecorated(true); - myPickerFrame.setAlwaysOnTop(!SystemInfo.isJavaVersionAtLeast("1.8.0")); + myPickerFrame.setAlwaysOnTop(!SystemInfo.isJavaVersionAtLeast("1.8.0") || canUseMacPipette()); JRootPane rootPane = myPickerFrame.getRootPane(); rootPane.putClientProperty("Window.shadow", Boolean.FALSE);