diff --git a/.idea/libraries/Java_Compatibility.xml b/.idea/libraries/Java_Compatibility.xml new file mode 100644 index 000000000000..64098e68cf84 --- /dev/null +++ b/.idea/libraries/Java_Compatibility.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/lib/java-compatibility.jar b/lib/java-compatibility.jar new file mode 100644 index 000000000000..43735d315ee1 Binary files /dev/null and b/lib/java-compatibility.jar differ diff --git a/platform/build-scripts/groovy/org/jetbrains/intellij/build/CommunityLibraryLicenses.groovy b/platform/build-scripts/groovy/org/jetbrains/intellij/build/CommunityLibraryLicenses.groovy index a80a555d920c..ed6b5201fc0c 100644 --- a/platform/build-scripts/groovy/org/jetbrains/intellij/build/CommunityLibraryLicenses.groovy +++ b/platform/build-scripts/groovy/org/jetbrains/intellij/build/CommunityLibraryLicenses.groovy @@ -220,6 +220,8 @@ class CommunityLibraryLicenses { licenseUrl: "http://apache.org/licenses/LICENSE-2.0", url: "http://code.google.com/p/atinject/"), new LibraryLicense(name: "JAXB", libraryName: "JAXB", version: "2.2.4-1", license: "CDDL 1.1", url: "http://jaxb.java.net/", licenseUrl: "http://glassfish.java.net/public/CDDL+GPL_1_1.html"), + new LibraryLicense(name: "Java Compatibility", version: "", license: "GPL 2.0 + Classpath", url: "https://github.com/JetBrains/Java9Compatibility", + licenseUrl: "https://raw.githubusercontent.com/JetBrains/Java9Compatibility/master/LICENSE"), new LibraryLicense(name: "Jaxen", version: "", license: "modified Apache", url: "https://github.com/jaxen-xpath/jaxen", licenseUrl: "https://github.com/jaxen-xpath/jaxen/blob/master/LICENSE.txt"), new LibraryLicense(name: "jayatana", libraryName: "jayatana", version: "1.2.4", license: "MIT License", diff --git a/platform/platform-api/intellij.platform.ide.iml b/platform/platform-api/intellij.platform.ide.iml index fe2d84a93e9d..a752de0dd78a 100644 --- a/platform/platform-api/intellij.platform.ide.iml +++ b/platform/platform-api/intellij.platform.ide.iml @@ -33,5 +33,6 @@ + \ No newline at end of file diff --git a/platform/platform-api/src/com/intellij/ide/HelpTooltip.java b/platform/platform-api/src/com/intellij/ide/HelpTooltip.java index 8a4985b95d37..d6db822c62f1 100644 --- a/platform/platform-api/src/com/intellij/ide/HelpTooltip.java +++ b/platform/platform-api/src/com/intellij/ide/HelpTooltip.java @@ -25,12 +25,8 @@ import com.intellij.ui.awt.RelativePoint; import com.intellij.ui.components.labels.LinkLabel; import com.intellij.ui.components.panels.VerticalLayout; import com.intellij.util.Alarm; -import com.intellij.util.ui.GraphicsUtil; -import com.intellij.util.ui.JBEmptyBorder; -import com.intellij.util.ui.JBUI; -import com.intellij.util.ui.UIUtil; +import com.intellij.util.ui.*; import org.jetbrains.annotations.NotNull; -import sun.swing.SwingUtilities2; import javax.swing.*; import javax.swing.border.Border; @@ -500,10 +496,10 @@ public class HelpTooltip { // Compute preferred size FontMetrics tfm = getFontMetrics(titleFont); - int titleWidth = SwingUtilities2.stringWidth(this, tfm, title); + int titleWidth = UIUtilities.stringWidth(this, tfm, title); FontMetrics fm = getFontMetrics(font); - titleWidth += StringUtil.isNotEmpty(shortcut) ? hgap() + SwingUtilities2.stringWidth(this, fm, shortcut) : 0; + titleWidth += StringUtil.isNotEmpty(shortcut) ? hgap() + UIUtilities.stringWidth(this, fm, shortcut) : 0; boolean limitWidth = StringUtil.isNotEmpty(description) || link != null; isMultiline = limitWidth && (titleWidth > maxWidth()); diff --git a/platform/platform-impl/intellij.platform.ide.impl.iml b/platform/platform-impl/intellij.platform.ide.impl.iml index 33a5a7b2e112..74652705f74d 100644 --- a/platform/platform-impl/intellij.platform.ide.impl.iml +++ b/platform/platform-impl/intellij.platform.ide.impl.iml @@ -56,5 +56,6 @@ + \ No newline at end of file diff --git a/platform/platform-impl/src/com/intellij/ide/plugins/newui/TabHeaderComponent.java b/platform/platform-impl/src/com/intellij/ide/plugins/newui/TabHeaderComponent.java index 02408612e847..1139e4a1605c 100644 --- a/platform/platform-impl/src/com/intellij/ide/plugins/newui/TabHeaderComponent.java +++ b/platform/platform-impl/src/com/intellij/ide/plugins/newui/TabHeaderComponent.java @@ -12,9 +12,9 @@ import com.intellij.ui.awt.RelativePoint; import com.intellij.ui.components.breadcrumbs.Breadcrumbs; import com.intellij.util.ui.JBUI; import com.intellij.util.ui.UIUtil; +import com.intellij.util.ui.UIUtilities; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.TestOnly; -import sun.swing.SwingUtilities2; import javax.swing.*; import java.awt.*; @@ -277,7 +277,7 @@ public class TabHeaderComponent extends JComponent { FontMetrics fm = getFontMetrics(getFont()); for (int i = 0; i < size; i++) { - int tabWidth = offset + SwingUtilities2.stringWidth(null, fm, myTabs.get(i).compute()) + offset; + int tabWidth = offset + UIUtilities.stringWidth(null, fm, myTabs.get(i).compute()) + offset; mySizeInfo.tabTitleX[i] = x + offset; mySizeInfo.tabs[i] = new Rectangle(x, 0, tabWidth, -1); x += tabWidth; diff --git a/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaButtonUI.java b/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaButtonUI.java index 85799b2e18ec..19742e05cac5 100644 --- a/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaButtonUI.java +++ b/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaButtonUI.java @@ -11,7 +11,6 @@ import com.intellij.openapi.util.text.StringUtil; import com.intellij.ui.JBColor; import com.intellij.ui.components.JBOptionButton; import com.intellij.util.ui.*; -import sun.swing.SwingUtilities2; import javax.swing.*; import javax.swing.plaf.ComponentUI; @@ -150,11 +149,11 @@ public class DarculaButtonUI extends BasicButtonUI { ButtonModel model = button.getModel(); g.setColor(getButtonTextColor(button)); - FontMetrics metrics = SwingUtilities2.getFontMetrics(c, g); + FontMetrics metrics = UIUtilities.getFontMetrics(c, g); int mnemonicIndex = DarculaLaf.isAltPressed() ? button.getDisplayedMnemonicIndex() : -1; if (model.isEnabled()) { - SwingUtilities2.drawStringUnderlineCharAt(c, g, text, mnemonicIndex, + UIUtilities.drawStringUnderlineCharAt(c, g, text, mnemonicIndex, textRect.x + getTextShiftOffset(), textRect.y + metrics.getAscent() + getTextShiftOffset()); } @@ -174,7 +173,7 @@ public class DarculaButtonUI extends BasicButtonUI { protected void paintDisabledText(Graphics g, String text, JComponent c, Rectangle textRect, FontMetrics metrics) { g.setColor(UIManager.getColor("Button.disabledText")); - SwingUtilities2.drawStringUnderlineCharAt(c, g, text, -1, + UIUtilities.drawStringUnderlineCharAt(c, g, text, -1, textRect.x + getTextShiftOffset(), textRect.y + metrics.getAscent() + getTextShiftOffset()); } @@ -182,7 +181,7 @@ public class DarculaButtonUI extends BasicButtonUI { protected void paintContents(Graphics g, AbstractButton b) { if (b instanceof JBOptionButton) return; - FontMetrics fm = SwingUtilities2.getFontMetrics(b, g); + FontMetrics fm = UIUtilities.getFontMetrics(b, g); boolean isDotButton = isSquare(b) && b.getIcon() == AllIcons.General.Ellipsis; String text = isDotButton ? "..." : b.getText(); Icon icon = isDotButton ? null : b.getIcon(); diff --git a/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaCheckBoxUI.java b/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaCheckBoxUI.java index fd2d9d71d658..f9cecf925635 100644 --- a/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaCheckBoxUI.java +++ b/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaCheckBoxUI.java @@ -3,7 +3,6 @@ package com.intellij.ide.ui.laf.darcula.ui; import com.intellij.openapi.util.SystemInfo; import com.intellij.util.ui.*; -import sun.swing.SwingUtilities2; import javax.swing.*; import javax.swing.plaf.ComponentUI; @@ -52,7 +51,7 @@ public class DarculaCheckBoxUI extends MetalCheckBoxUI { Font f = c.getFont(); g.setFont(f); - FontMetrics fm = SwingUtilities2.getFontMetrics(c, g, f); + FontMetrics fm = UIUtilities.getFontMetrics(c, g, f); String text = SwingUtilities.layoutCompoundLabel( c, fm, b.getText(), getDefaultIcon(), @@ -92,7 +91,7 @@ public class DarculaCheckBoxUI extends MetalCheckBoxUI { } else { g.setColor(b.isEnabled() ? b.getForeground() : getDisabledTextColor()); final int mnemonicIndex = SystemInfo.isMac && !UIManager.getBoolean("Button.showMnemonics") ? -1 : b.getDisplayedMnemonicIndex(); - SwingUtilities2.drawStringUnderlineCharAt(c, g, text, + UIUtilities.drawStringUnderlineCharAt(c, g, text, mnemonicIndex, textRect.x, textRect.y + fm.getAscent()); diff --git a/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaMenuItemUIBase.java b/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaMenuItemUIBase.java index 0cc5d36f3e72..be6ff2775cc5 100644 --- a/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaMenuItemUIBase.java +++ b/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaMenuItemUIBase.java @@ -3,8 +3,8 @@ package com.intellij.ide.ui.laf.darcula.ui; import com.intellij.ide.ui.UISettings; import com.intellij.util.ui.JBInsets; +import com.intellij.util.ui.UIUtilities; import sun.swing.MenuItemLayoutHelper; -import sun.swing.SwingUtilities2; import javax.swing.*; import javax.swing.plaf.ComponentUI; @@ -129,16 +129,16 @@ public class DarculaMenuItemUIBase extends BasicMenuItemUI { // *** paint the accText disabled if (disabledForeground != null) { g.setColor(disabledForeground); - SwingUtilities2.drawString(lh.getMenuItem(), g, - lh.getAccText(), lr.getAccRect().x, + UIUtilities.drawString(lh.getMenuItem(), g, + lh.getAccText(), lr.getAccRect().x, lr.getAccRect().y + lh.getAccFontMetrics().getAscent()); } else { g.setColor(lh.getMenuItem().getBackground().brighter()); - SwingUtilities2.drawString(lh.getMenuItem(), g, + UIUtilities.drawString(lh.getMenuItem(), g, lh.getAccText(), lr.getAccRect().x, lr.getAccRect().y + lh.getAccFontMetrics().getAscent()); g.setColor(lh.getMenuItem().getBackground().darker()); - SwingUtilities2.drawString(lh.getMenuItem(), g, + UIUtilities.drawString(lh.getMenuItem(), g, lh.getAccText(), lr.getAccRect().x - 1, lr.getAccRect().y + lh.getFontMetrics().getAscent() - 1); } @@ -151,7 +151,7 @@ public class DarculaMenuItemUIBase extends BasicMenuItemUI { } else { g.setColor(acceleratorForeground); } - SwingUtilities2.drawString(lh.getMenuItem(), g, lh.getAccText(), + UIUtilities.drawString(lh.getMenuItem(), g, lh.getAccText(), lr.getAccRect().x, lr.getAccRect().y + lh.getAccFontMetrics().getAscent()); } diff --git a/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaProgressBarUI.java b/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaProgressBarUI.java index a1d700dd99f1..ced4f6618a1b 100644 --- a/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaProgressBarUI.java +++ b/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaProgressBarUI.java @@ -7,7 +7,7 @@ import com.intellij.ui.JBColor; import com.intellij.util.ui.JBInsets; import com.intellij.util.ui.JBUI; import com.intellij.util.ui.UIUtil; -import sun.swing.SwingUtilities2; +import com.intellij.util.ui.UIUtilities; import javax.swing.*; import javax.swing.plaf.ComponentUI; @@ -169,21 +169,21 @@ public class DarculaProgressBarUI extends BasicProgressBarUI { if (progressBar.getOrientation() == SwingConstants.HORIZONTAL) { g.setColor(getSelectionBackground()); - SwingUtilities2.drawString(progressBar, g, progressString, renderLocation.x, renderLocation.y); + UIUtilities.drawString(progressBar, g, progressString, renderLocation.x, renderLocation.y); g.setColor(getSelectionForeground()); g.clipRect(fillStart, y, amountFull, h); - SwingUtilities2.drawString(progressBar, g, progressString, renderLocation.x, renderLocation.y); + UIUtilities.drawString(progressBar, g, progressString, renderLocation.x, renderLocation.y); } else { // VERTICAL g.setColor(getSelectionBackground()); AffineTransform rotate = AffineTransform.getRotateInstance(Math.PI/2); g.setFont(progressBar.getFont().deriveFont(rotate)); renderLocation = getStringPlacement(g, progressString, x, y, w, h); - SwingUtilities2.drawString(progressBar, g, progressString, renderLocation.x, renderLocation.y); + UIUtilities.drawString(progressBar, g, progressString, renderLocation.x, renderLocation.y); g.setColor(getSelectionForeground()); g.clipRect(x, fillStart, w, amountFull); - SwingUtilities2.drawString(progressBar, g, progressString, renderLocation.x, renderLocation.y); + UIUtilities.drawString(progressBar, g, progressString, renderLocation.x, renderLocation.y); } g.setClip(oldClip); } diff --git a/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaRadioButtonUI.java b/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaRadioButtonUI.java index e40c1c82ce0e..8feb28cf5f62 100644 --- a/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaRadioButtonUI.java +++ b/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaRadioButtonUI.java @@ -1,11 +1,7 @@ // Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. package com.intellij.ide.ui.laf.darcula.ui; -import com.intellij.util.ui.EmptyIcon; -import com.intellij.util.ui.JBInsets; -import com.intellij.util.ui.JBUI; -import com.intellij.util.ui.LafIconLookup; -import sun.swing.SwingUtilities2; +import com.intellij.util.ui.*; import javax.swing.*; import javax.swing.plaf.ComponentUI; @@ -46,7 +42,7 @@ public class DarculaRadioButtonUI extends MetalRadioButtonUI { Font f = c.getFont(); g.setFont(f); - FontMetrics fm = SwingUtilities2.getFontMetrics(c, g, f); + FontMetrics fm = UIUtilities.getFontMetrics(c, g, f); String text = SwingUtilities.layoutCompoundLabel( c, fm, b.getText(), getDefaultIcon(), @@ -84,7 +80,7 @@ public class DarculaRadioButtonUI extends MetalRadioButtonUI { } else { int mnemonicIndex = b.getDisplayedMnemonicIndex(); g.setColor(b.isEnabled() ? b.getForeground() : getDisabledTextColor()); - SwingUtilities2.drawStringUnderlineCharAt(b, g, text, mnemonicIndex, textRect.x, textRect.y + fm.getAscent()); + UIUtilities.drawStringUnderlineCharAt(b, g, text, mnemonicIndex, textRect.x, textRect.y + fm.getAscent()); } } diff --git a/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaTabbedPaneUI.java b/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaTabbedPaneUI.java index a50694be659c..ae1e136e0759 100644 --- a/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaTabbedPaneUI.java +++ b/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaTabbedPaneUI.java @@ -6,7 +6,7 @@ import com.intellij.ui.JBColor; import com.intellij.util.ui.JBInsets; import com.intellij.util.ui.JBUI; import com.intellij.util.ui.JBValue; -import sun.swing.SwingUtilities2; +import com.intellij.util.ui.UIUtilities; import javax.swing.*; import javax.swing.plaf.ComponentUI; @@ -198,7 +198,7 @@ public class DarculaTabbedPaneUI extends BasicTabbedPaneUI { g.setFont(font); g.setColor(DISABLED_TEXT_COLOR); - SwingUtilities2.drawStringUnderlineCharAt(tabPane, g, title, mnemIndex, textRect.x, textRect.y + metrics.getAscent()); + UIUtilities.drawStringUnderlineCharAt(tabPane, g, title, mnemIndex, textRect.x, textRect.y + metrics.getAscent()); } } @@ -292,7 +292,7 @@ public class DarculaTabbedPaneUI extends BasicTabbedPaneUI { } else { // plain text String title = tabPane.getTitleAt(tabIndex); - width += SwingUtilities2.stringWidth(tabPane, metrics, title); + width += UIUtilities.stringWidth(tabPane, metrics, title); } } return width; diff --git a/platform/platform-impl/src/com/intellij/ide/ui/laf/intellij/MacIntelliJButtonUI.java b/platform/platform-impl/src/com/intellij/ide/ui/laf/intellij/MacIntelliJButtonUI.java index cd56e41d5a46..6336371502ed 100644 --- a/platform/platform-impl/src/com/intellij/ide/ui/laf/intellij/MacIntelliJButtonUI.java +++ b/platform/platform-impl/src/com/intellij/ide/ui/laf/intellij/MacIntelliJButtonUI.java @@ -3,11 +3,7 @@ package com.intellij.ide.ui.laf.intellij; import com.intellij.ide.ui.laf.darcula.ui.DarculaButtonUI; import com.intellij.ui.Gray; -import com.intellij.util.ui.JBUI; -import com.intellij.util.ui.LafIconLookup; -import com.intellij.util.ui.MacUIUtil; -import com.intellij.util.ui.UIUtil; -import sun.swing.SwingUtilities2; +import com.intellij.util.ui.*; import javax.swing.*; import javax.swing.plaf.ComponentUI; @@ -135,6 +131,6 @@ public class MacIntelliJButtonUI extends DarculaButtonUI { } else { g.setColor(UIManager.getColor("Button.disabledText")); } - SwingUtilities2.drawStringUnderlineCharAt(c, g, text, -1, x, y); + UIUtilities.drawStringUnderlineCharAt(c, g, text, -1, x, y); } } diff --git a/platform/platform-impl/src/com/intellij/ide/ui/laf/intellij/WinIntelliJButtonUI.java b/platform/platform-impl/src/com/intellij/ide/ui/laf/intellij/WinIntelliJButtonUI.java index c43821d5482f..ac4cb69b0b47 100644 --- a/platform/platform-impl/src/com/intellij/ide/ui/laf/intellij/WinIntelliJButtonUI.java +++ b/platform/platform-impl/src/com/intellij/ide/ui/laf/intellij/WinIntelliJButtonUI.java @@ -18,7 +18,6 @@ package com.intellij.ide.ui.laf.intellij; import com.intellij.ide.ui.laf.darcula.DarculaUIUtil; import com.intellij.ide.ui.laf.darcula.ui.DarculaButtonUI; import com.intellij.util.ui.*; -import sun.swing.SwingUtilities2; import javax.swing.*; import javax.swing.plaf.ComponentUI; @@ -118,7 +117,7 @@ public class WinIntelliJButtonUI extends DarculaButtonUI { Graphics2D g2 = (Graphics2D)g.create(); try { g2.setColor(UIManager.getColor("Button.disabledText")); - SwingUtilities2.drawStringUnderlineCharAt(c, g2, text, -1, + UIUtilities.drawStringUnderlineCharAt(c, g2, text, -1, textRect.x + getTextShiftOffset(), textRect.y + metrics.getAscent() + getTextShiftOffset()); } finally { diff --git a/platform/platform-impl/src/com/intellij/openapi/actionSystem/impl/ActionButtonWithText.java b/platform/platform-impl/src/com/intellij/openapi/actionSystem/impl/ActionButtonWithText.java index a5ff83bc9c60..2e9db715b5a9 100644 --- a/platform/platform-impl/src/com/intellij/openapi/actionSystem/impl/ActionButtonWithText.java +++ b/platform/platform-impl/src/com/intellij/openapi/actionSystem/impl/ActionButtonWithText.java @@ -10,13 +10,9 @@ import com.intellij.openapi.util.SystemInfo; import com.intellij.openapi.util.registry.Registry; import com.intellij.openapi.util.text.StringUtil; import com.intellij.util.BitUtil; -import com.intellij.util.ui.EmptyIcon; -import com.intellij.util.ui.JBInsets; -import com.intellij.util.ui.JBUI; -import com.intellij.util.ui.UIUtil; +import com.intellij.util.ui.*; import org.intellij.lang.annotations.MagicConstant; import org.jetbrains.annotations.NotNull; -import sun.swing.SwingUtilities2; import javax.swing.*; import javax.swing.plaf.ComponentInputMapUIResource; @@ -154,9 +150,9 @@ public class ActionButtonWithText extends ActionButton { UISettings.setupAntialiasing(g); g.setColor(isButtonEnabled() ? getForeground() : getInactiveTextColor()); - SwingUtilities2.drawStringUnderlineCharAt(this, g, text, - getMnemonicCharIndex(text), - textRect.x, + UIUtilities.drawStringUnderlineCharAt(this, g, text, + getMnemonicCharIndex(text), + textRect.x, textRect.y + fm.getAscent()); } diff --git a/platform/platform-impl/src/com/intellij/openapi/editor/impl/view/TextFragmentFactory.java b/platform/platform-impl/src/com/intellij/openapi/editor/impl/view/TextFragmentFactory.java index f3e625312e15..0c373e2430d3 100644 --- a/platform/platform-impl/src/com/intellij/openapi/editor/impl/view/TextFragmentFactory.java +++ b/platform/platform-impl/src/com/intellij/openapi/editor/impl/view/TextFragmentFactory.java @@ -16,8 +16,8 @@ package com.intellij.openapi.editor.impl.view; import com.intellij.openapi.editor.impl.FontInfo; +import com.intellij.util.ui.UIUtilities; import org.jetbrains.annotations.NotNull; -import sun.swing.SwingUtilities2; class TextFragmentFactory { public static TextFragment createTextFragment(@NotNull char[] lineChars, int start, int end, boolean isRtl, @NotNull FontInfo fontInfo) { @@ -31,6 +31,6 @@ class TextFragmentFactory { private static boolean isComplexText(char[] chars, int start, int end) { // replace with Font.textRequiresLayout in Java 9 - return SwingUtilities2.isComplexLayout(chars, start, end); + return UIUtilities.isComplexLayout(chars, start, end); } } diff --git a/platform/platform-impl/src/com/intellij/openapi/wm/impl/content/ContentTabLabel.java b/platform/platform-impl/src/com/intellij/openapi/wm/impl/content/ContentTabLabel.java index a17ae0e5f921..a694196d18b0 100644 --- a/platform/platform-impl/src/com/intellij/openapi/wm/impl/content/ContentTabLabel.java +++ b/platform/platform-impl/src/com/intellij/openapi/wm/impl/content/ContentTabLabel.java @@ -16,9 +16,9 @@ import com.intellij.util.SmartList; import com.intellij.util.ui.BaseButtonBehavior; import com.intellij.util.ui.JBUI; import com.intellij.util.ui.TimedDeadzone; +import com.intellij.util.ui.UIUtilities; import gnu.trove.THashMap; import org.jetbrains.annotations.NotNull; -import sun.swing.SwingUtilities2; import javax.swing.*; import javax.swing.border.EmptyBorder; @@ -147,14 +147,14 @@ class ContentTabLabel extends BaseLabel { private void updateText() { FontMetrics fm = getFontMetrics(getFont()); - int textWidth = SwingUtilities2.stringWidth(this, fm, myText); + int textWidth = UIUtilities.stringWidth(this, fm, myText); int prefWidth = myIconWithInsetsWidth + textWidth; int maxWidth = getMaximumSize().width; if(prefWidth > maxWidth) { int offset = maxWidth - myIconWithInsetsWidth; - String s = SwingUtilities2.clipString(this, fm, myText, offset); + String s = UIUtilities.clipString(this, fm, myText, offset); super.setText(s); return; } diff --git a/platform/util/intellij.platform.util.iml b/platform/util/intellij.platform.util.iml index 3a006aa38888..67d21f107f3b 100644 --- a/platform/util/intellij.platform.util.iml +++ b/platform/util/intellij.platform.util.iml @@ -26,6 +26,7 @@ + diff --git a/platform/util/src/com/intellij/util/ui/AATextInfo.java b/platform/util/src/com/intellij/util/ui/AATextInfo.java index 93b14e779065..237c2a3881ab 100644 --- a/platform/util/src/com/intellij/util/ui/AATextInfo.java +++ b/platform/util/src/com/intellij/util/ui/AATextInfo.java @@ -6,7 +6,6 @@ import com.intellij.openapi.util.SystemInfo; import com.intellij.util.ObjectUtils; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import sun.swing.SwingUtilities2; import javax.swing.*; import java.awt.*; @@ -40,7 +39,7 @@ public class AATextInfo { if (SystemInfo.IS_AT_LEAST_JAVA9) { return new AATextInfo(aaHint, lcdContrastHint); } - return new SwingUtilities2.AATextInfo(aaHint, lcdContrastHint); + return new UIUtilities.AATextInfo(aaHint, lcdContrastHint); } public static void putClientProperty(@Nullable Object aaTextInfo, @NotNull JComponent comp) { @@ -49,7 +48,7 @@ public class AATextInfo { comp.putClientProperty(RenderingHints.KEY_TEXT_ANTIALIASING, info.aaHint); comp.putClientProperty(RenderingHints.KEY_TEXT_LCD_CONTRAST, info.lcdContrastHint); } else { - comp.putClientProperty(SwingUtilities2.AA_TEXT_PROPERTY_KEY, aaTextInfo); + comp.putClientProperty(UIUtilities.AA_TEXT_PROPERTY_KEY, aaTextInfo); } } @@ -59,7 +58,7 @@ public class AATextInfo { Object lcdContrastHint = comp.getClientProperty(RenderingHints.KEY_TEXT_LCD_CONTRAST); return new AATextInfo(aaHint, lcdContrastHint != null ? (Integer)lcdContrastHint : null); } - return comp.getClientProperty(SwingUtilities2.AA_TEXT_PROPERTY_KEY); + return comp.getClientProperty(UIUtilities.AA_TEXT_PROPERTY_KEY); } public static Pair[] toArray(@Nullable Object aaTextInfo) { @@ -72,6 +71,6 @@ public class AATextInfo { }; } //noinspection unchecked - return new Pair[] {Pair.create(SwingUtilities2.AA_TEXT_PROPERTY_KEY, aaTextInfo)}; + return new Pair[] {Pair.create(UIUtilities.AA_TEXT_PROPERTY_KEY, aaTextInfo)}; } }