always on top

This commit is contained in:
Dennis Ushakov
2015-12-28 20:27:30 +03:00
parent 63c4a0f546
commit 22bec0feb4
2 changed files with 7 additions and 3 deletions
@@ -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;
@@ -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);