diff --git a/platform/dvcs-impl/resources/icons/icon-robots.txt b/platform/dvcs-impl/resources/icons/icon-robots.txt new file mode 100644 index 000000000000..dc00bc7c3db4 --- /dev/null +++ b/platform/dvcs-impl/resources/icons/icon-robots.txt @@ -0,0 +1 @@ +skip: *.gif \ No newline at end of file diff --git a/platform/icons/src/welcome/createNewProject.png b/platform/icons/src/welcome/createNewProject.png index c071151ba7dc..3bf27883974b 100644 Binary files a/platform/icons/src/welcome/createNewProject.png and b/platform/icons/src/welcome/createNewProject.png differ diff --git a/platform/icons/src/welcome/createNewProject@2x.png b/platform/icons/src/welcome/createNewProject@2x.png index e1cf5ac0a455..4486b9a4a326 100644 Binary files a/platform/icons/src/welcome/createNewProject@2x.png and b/platform/icons/src/welcome/createNewProject@2x.png differ diff --git a/platform/icons/src/welcome/fromVCS.png b/platform/icons/src/welcome/fromVCS.png index 5e78599cfe6c..66f3057c27b5 100644 Binary files a/platform/icons/src/welcome/fromVCS.png and b/platform/icons/src/welcome/fromVCS.png differ diff --git a/platform/icons/src/welcome/fromVCS@2x.png b/platform/icons/src/welcome/fromVCS@2x.png index 9f4f9f7a7e48..1734213448d9 100644 Binary files a/platform/icons/src/welcome/fromVCS@2x.png and b/platform/icons/src/welcome/fromVCS@2x.png differ diff --git a/platform/icons/src/welcome/importProject.png b/platform/icons/src/welcome/importProject.png index 354cdfcb55d1..9be1003c14fb 100644 Binary files a/platform/icons/src/welcome/importProject.png and b/platform/icons/src/welcome/importProject.png differ diff --git a/platform/icons/src/welcome/importProject@2x.png b/platform/icons/src/welcome/importProject@2x.png index 70e815e806ad..687dcf809a99 100644 Binary files a/platform/icons/src/welcome/importProject@2x.png and b/platform/icons/src/welcome/importProject@2x.png differ diff --git a/platform/icons/src/welcome/openProject.png b/platform/icons/src/welcome/openProject.png index f68c5ecca6c9..600188c9be32 100644 Binary files a/platform/icons/src/welcome/openProject.png and b/platform/icons/src/welcome/openProject.png differ diff --git a/platform/icons/src/welcome/openProject@2x.png b/platform/icons/src/welcome/openProject@2x.png index ccc1c20c97d7..35646a827e07 100644 Binary files a/platform/icons/src/welcome/openProject@2x.png and b/platform/icons/src/welcome/openProject@2x.png differ diff --git a/platform/platform-impl/src/com/intellij/openapi/wm/impl/welcomeScreen/FlatWelcomeFrame.java b/platform/platform-impl/src/com/intellij/openapi/wm/impl/welcomeScreen/FlatWelcomeFrame.java index b578ba2232b6..2d77629feeb5 100644 --- a/platform/platform-impl/src/com/intellij/openapi/wm/impl/welcomeScreen/FlatWelcomeFrame.java +++ b/platform/platform-impl/src/com/intellij/openapi/wm/impl/welcomeScreen/FlatWelcomeFrame.java @@ -51,7 +51,6 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import javax.swing.*; -import javax.swing.border.CompoundBorder; import javax.swing.border.EmptyBorder; import javax.swing.event.ListDataEvent; import javax.swing.event.ListDataListener; @@ -228,9 +227,10 @@ public class FlatWelcomeFrame extends JFrame implements IdeFrame { NonOpaquePanel toolbar = new NonOpaquePanel(); toolbar.setLayout(new BoxLayout(toolbar, BoxLayout.X_AXIS)); toolbar.add(createActionLink("Configure", IdeActions.GROUP_WELCOME_SCREEN_CONFIGURE, AllIcons.General.Settings)); - toolbar.add(createActionLink("Get Help", IdeActions.GROUP_WELCOME_SCREEN_DOC, AllIcons.General.Help_small)); + toolbar.add(createActionLink("Get Help", IdeActions.GROUP_WELCOME_SCREEN_DOC, null)); JPanel panel = new NonOpaquePanel(new BorderLayout()); - panel.add(toolbar, BorderLayout.WEST); + panel.add(toolbar, BorderLayout.EAST); + panel.setBorder(new EmptyBorder(0,0,8,21)); return panel; } @@ -248,10 +248,11 @@ public class FlatWelcomeFrame extends JFrame implements IdeFrame { }; settings.set(new ActionLink(text, icon, action)); settings.get().setPaintUnderline(false); - installFocusable(settings.get(), action, KeyEvent.VK_UP, KeyEvent.VK_DOWN, !Arrays.asList("Get Help", "Register").contains(text)); - NonOpaquePanel panel = new NonOpaquePanel(); - panel.setBorder(new EmptyBorder(0, 20, 2, 0)); + NonOpaquePanel panel = new NonOpaquePanel(new BorderLayout()); + panel.setBorder(new EmptyBorder(4, 16, 4, 4)); panel.add(settings.get()); + panel.add(new JLabel(AllIcons.General.Combo2), BorderLayout.EAST); + installFocusable(panel, action, KeyEvent.VK_UP, KeyEvent.VK_DOWN, !Arrays.asList("Get Help", "Register").contains(text)); return panel; } @@ -270,14 +271,9 @@ public class FlatWelcomeFrame extends JFrame implements IdeFrame { } for (AnAction action : group.getChildren(null)) { - JPanel button = new JPanel(new BorderLayout()) { - @Override - public Dimension getPreferredSize() { - return new Dimension(250, super.getPreferredSize().height); - } - }; + JPanel button = new JPanel(new BorderLayout()); button.setOpaque(false); - button.setBorder(new EmptyBorder(0, 50, 0, 30)); + button.setBorder(new EmptyBorder(8, 20, 8, 20)); Presentation presentation = action.getTemplatePresentation(); action.update(new AnActionEvent(null, DataManager.getInstance().getDataContext(this), ActionPlaces.WELCOME_SCREEN, presentation, ActionManager.getInstance(), 0)); @@ -285,18 +281,16 @@ public class FlatWelcomeFrame extends JFrame implements IdeFrame { ActionLink link = new ActionLink(presentation.getText(), presentation.getIcon(), action); link.setPaintUnderline(false); link.setNormalColor(new JBColor(Gray._0, Gray.xBB)); - link.setBorder(new EmptyBorder(2, 5, 2, 5)); - installFocusable(link, action, KeyEvent.VK_UP, KeyEvent.VK_DOWN, true); + installFocusable(button, action, KeyEvent.VK_UP, KeyEvent.VK_DOWN, true); button.add(link); actions.add(button); } - } actions.setBorder(new EmptyBorder(0, 0, 0, 0)); - JPanel panel = new NonOpaquePanel(new BorderLayout()); - panel.add(actions, BorderLayout.NORTH); - return panel; + WelcomeScreenActionsPanel panel = new WelcomeScreenActionsPanel(); + panel.actions.add(actions); + return panel.root; } private void collectAllActions(DefaultActionGroup group, ActionGroup actionGroup) { @@ -361,8 +355,7 @@ public class FlatWelcomeFrame extends JFrame implements IdeFrame { return panel; } - private void installFocusable(final ActionLink comp, final AnAction action, final int prevKeyCode, final int nextKeyCode, final boolean focusListOnLeft) { - comp.setBorder(new EmptyBorder(6, 2, 6, 2)); + private void installFocusable(final JComponent comp, final AnAction action, final int prevKeyCode, final int nextKeyCode, final boolean focusListOnLeft) { comp.setFocusable(true); comp.setFocusTraversalKeysEnabled(true); comp.addKeyListener(new KeyAdapter() { @@ -388,7 +381,7 @@ public class FlatWelcomeFrame extends JFrame implements IdeFrame { } else { focusPrev(comp); } - } else if (e.getKeyCode() == KeyEvent.VK_RIGHT && Arrays.asList("Configure", "Get Help").contains(comp.getText())) { + } else if (e.getKeyCode() == KeyEvent.VK_RIGHT) { focusNext(comp); } } @@ -396,12 +389,14 @@ public class FlatWelcomeFrame extends JFrame implements IdeFrame { comp.addFocusListener(new FocusListener() { @Override public void focusGained(FocusEvent e) { - comp.setBorder(new CompoundBorder(new DottedBorder(new Insets(1, 1, 1, 1), Gray._128), new EmptyBorder(5,1,5,1))); + comp.setOpaque(true); + comp.setBackground(new JBColor(new Color(0xd2e1f0), new Color(0x455565))); } @Override public void focusLost(FocusEvent e) { - comp.setBorder(new EmptyBorder(6, 2, 6, 2)); + comp.setOpaque(false); + comp.setBackground(getMainBackground()); } }); @@ -523,4 +518,9 @@ public class FlatWelcomeFrame extends JFrame implements IdeFrame { public static void notifyFrameClosed(JFrame frame) { saveLocation(frame.getBounds()); } + + public static class WelcomeScreenActionsPanel { + private JPanel root; + private JPanel actions; + } } diff --git a/platform/platform-impl/src/com/intellij/openapi/wm/impl/welcomeScreen/WelcomeScreenActionsPanel.form b/platform/platform-impl/src/com/intellij/openapi/wm/impl/welcomeScreen/WelcomeScreenActionsPanel.form new file mode 100644 index 000000000000..918fb471d807 --- /dev/null +++ b/platform/platform-impl/src/com/intellij/openapi/wm/impl/welcomeScreen/WelcomeScreenActionsPanel.form @@ -0,0 +1,40 @@ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/platform/util/src/com/intellij/icons/AllIcons.java b/platform/util/src/com/intellij/icons/AllIcons.java index 9902e8ac7718..dcbb1c880493 100644 --- a/platform/util/src/com/intellij/icons/AllIcons.java +++ b/platform/util/src/com/intellij/icons/AllIcons.java @@ -1169,10 +1169,10 @@ public class AllIcons { public static class Welcome { public static final Icon CreateDesktopEntry = IconLoader.getIcon("/welcome/createDesktopEntry.png"); // 32x32 - public static final Icon CreateNewProject = IconLoader.getIcon("/welcome/createNewProject.png"); // 32x32 - public static final Icon FromVCS = IconLoader.getIcon("/welcome/fromVCS.png"); // 32x32 - public static final Icon ImportProject = IconLoader.getIcon("/welcome/importProject.png"); // 32x32 - public static final Icon OpenProject = IconLoader.getIcon("/welcome/openProject.png"); // 32x32 + public static final Icon CreateNewProject = IconLoader.getIcon("/welcome/createNewProject.png"); // 16x16 + public static final Icon FromVCS = IconLoader.getIcon("/welcome/fromVCS.png"); // 16x16 + public static final Icon ImportProject = IconLoader.getIcon("/welcome/importProject.png"); // 16x16 + public static final Icon OpenProject = IconLoader.getIcon("/welcome/openProject.png"); // 16x16 public static final Icon Register = IconLoader.getIcon("/welcome/register.png"); // 32x32 }