List of usage examples for com.intellij.openapi.wm IdeFocusManager requestFocus
@NotNull
ActionCallback requestFocus(@NotNull Component c, boolean forced);
From source file:com.android.tools.idea.configurations.ThemeSelectionPanel.java
License:Apache License
public void focus() { final Project project = myConfiguration.getModule().getProject(); final IdeFocusManager focusManager = project.isDefault() ? IdeFocusManager.getGlobalInstance() : IdeFocusManager.getInstance(project); focusManager.doWhenFocusSettlesDown(new Runnable() { @Override/*from www . j a v a 2 s.com*/ public void run() { focusManager.requestFocus(myThemeList, true); } }); }
From source file:com.intellij.help.impl.IdeaHelpBroker.java
License:Apache License
/** * Displays the presentation to the user. *//*from www .j a v a 2 s . co m*/ public void setDisplayed(boolean visible) { createHelpWindow(); if (myModallyActivated) { myDialog.setVisible(visible); if (visible) { myDialog.setLocationRelativeTo(myDialog.getOwner()); } } else { //myFrame.setLocationRelativeTo(null); myFrame.setVisible(visible); myFrame.setState(JFrame.NORMAL); IdeFocusManager focusManager = IdeFocusManager.findInstance(); JComponent target = focusManager.getFocusTargetFor(myFrame.getRootPane()); focusManager.requestFocus(target != null ? target : myFrame, true); } }
From source file:com.intellij.ide.actions.SearchEverywhereAction.java
License:Apache License
public void actionPerformed(AnActionEvent e, MouseEvent me) { if (myBalloon != null && myBalloon.isVisible()) { showAll.set(!showAll.get());/*from w w w .j av a2 s .co m*/ myNonProjectCheckBox.setSelected(showAll.get()); // myPopupField.getTextEditor().setBackground(showAll.get() ? new JBColor(new Color(0xffffe4), new Color(0x494539)) : UIUtil.getTextFieldBackground()); rebuildList(myPopupField.getText()); return; } myCurrentWorker = ActionCallback.DONE; if (e != null) { myEditor = e.getData(CommonDataKeys.EDITOR); myFileEditor = e.getData(PlatformDataKeys.FILE_EDITOR); myFile = e.getData(CommonDataKeys.PSI_FILE); } if (e == null && myFocusOwner != null) { e = new AnActionEvent(me, DataManager.getInstance().getDataContext(myFocusOwner), ActionPlaces.UNKNOWN, getTemplatePresentation(), ActionManager.getInstance(), 0); } if (e == null) return; final Project project = e.getProject(); if (project == null) return; updateComponents(); myContextComponent = PlatformDataKeys.CONTEXT_COMPONENT.getData(e.getDataContext()); Window wnd = myContextComponent != null ? SwingUtilities.windowForComponent(myContextComponent) : KeyboardFocusManager.getCurrentKeyboardFocusManager().getFocusedWindow(); if (wnd == null && myContextComponent instanceof Window) { wnd = (Window) myContextComponent; } if (wnd == null || wnd.getParent() != null) return; myActionEvent = e; if (myPopupField != null) { Disposer.dispose(myPopupField); } myPopupField = new MySearchTextField(); myPopupField.getTextEditor().addKeyListener(new KeyAdapter() { @Override public void keyTyped(KeyEvent e) { myHistoryIndex = 0; myHistoryItem = null; } @Override public void keyPressed(KeyEvent e) { if (e.getKeyCode() == KeyEvent.VK_SHIFT) { myList.repaint(); } } @Override public void keyReleased(KeyEvent e) { if (e.getKeyCode() == KeyEvent.VK_SHIFT) { myList.repaint(); } } }); initSearchField(myPopupField); myPopupField.setOpaque(false); final JTextField editor = myPopupField.getTextEditor(); editor.setColumns(SEARCH_FIELD_COLUMNS); final JPanel panel = new JPanel(new BorderLayout()) { @Override protected void paintComponent(Graphics g) { final Gradient gradient = getGradientColors(); ((Graphics2D) g).setPaint( new GradientPaint(0, 0, gradient.getStartColor(), 0, getHeight(), gradient.getEndColor())); g.fillRect(0, 0, getWidth(), getHeight()); } }; final JLabel title = new JLabel(" Search Everywhere: "); final JPanel topPanel = new NonOpaquePanel(new BorderLayout()); title.setForeground(new JBColor(Gray._240, Gray._200)); if (SystemInfo.isMac) { title.setFont(title.getFont().deriveFont(Font.BOLD, title.getFont().getSize() - 1f)); } else { title.setFont(title.getFont().deriveFont(Font.BOLD)); } topPanel.add(title, BorderLayout.WEST); final JPanel controls = new JPanel(new BorderLayout()); controls.setOpaque(false); final JLabel settings = new JLabel(AllIcons.General.SearchEverywhereGear); new ClickListener() { @Override public boolean onClick(@NotNull MouseEvent event, int clickCount) { showSettings(); return true; } }.installOn(settings); controls.add(settings, BorderLayout.EAST); myNonProjectCheckBox.setForeground(new JBColor(Gray._240, Gray._200)); myNonProjectCheckBox.setText("Include non-project items (" + getShortcut() + ") "); controls.add(myNonProjectCheckBox, BorderLayout.WEST); topPanel.add(controls, BorderLayout.EAST); panel.add(myPopupField, BorderLayout.CENTER); panel.add(topPanel, BorderLayout.NORTH); panel.setBorder(IdeBorderFactory.createEmptyBorder(3, 5, 4, 5)); DataManager.registerDataProvider(panel, this); final ComponentPopupBuilder builder = JBPopupFactory.getInstance().createComponentPopupBuilder(panel, editor); myBalloon = builder.setCancelOnClickOutside(true).setModalContext(false).setRequestFocus(true) .setCancelCallback(new Computable<Boolean>() { @Override public Boolean compute() { return !mySkipFocusGain; } }).createPopup(); myBalloon.getContent().setBorder(new EmptyBorder(0, 0, 0, 0)); final Window window = WindowManager.getInstance().suggestParentWindow(project); project.getMessageBus().connect(myBalloon).subscribe(DumbService.DUMB_MODE, new DumbService.DumbModeListener() { @Override public void enteredDumbMode() { } @Override public void exitDumbMode() { rebuildList(myPopupField.getText()); } }); Component parent = UIUtil.findUltimateParent(window); registerDataProvider(panel, project); final RelativePoint showPoint; if (me != null) { final Component label = me.getComponent(); final Component button = label.getParent(); assert button != null; showPoint = new RelativePoint(button, new Point(button.getWidth() - panel.getPreferredSize().width, button.getHeight())); } else { if (parent != null) { int height = UISettings.getInstance().SHOW_MAIN_TOOLBAR ? 135 : 115; if (parent instanceof IdeFrameImpl && ((IdeFrameImpl) parent).isInFullScreen()) { height -= 20; } showPoint = new RelativePoint(parent, new Point((parent.getSize().width - panel.getPreferredSize().width) / 2, height)); } else { showPoint = JBPopupFactory.getInstance().guessBestPopupLocation(e.getDataContext()); } } myList.setFont(UIUtil.getListFont()); myBalloon.show(showPoint); initSearchActions(myBalloon, myPopupField); IdeFocusManager focusManager = IdeFocusManager.getInstance(project); focusManager.requestFocus(editor, true); FeatureUsageTracker.getInstance().triggerFeatureUsed(IdeActions.ACTION_SEARCH_EVERYWHERE); }
From source file:com.intellij.ide.wizard.AbstractWizard.java
License:Apache License
private static void requestFocusTo(final JComponent component) { UiNotifyConnector.doWhenFirstShown(component, new Runnable() { @Override/*from w w w. ja v a 2s .c o m*/ public void run() { final IdeFocusManager focusManager = IdeFocusManager.findInstanceByComponent(component); focusManager.requestFocus(component, false); } }); }
From source file:com.intellij.refactoring.introduceparameterobject.IntroduceParameterObjectDialog.java
License:Apache License
public IntroduceParameterObjectDialog(PsiMethod sourceMethod) { super(sourceMethod.getProject(), true); this.sourceMethod = sourceMethod; setTitle(RefactorJBundle.message("introduce.parameter.object.title")); final DocumentListener docListener = new DocumentAdapter() { protected void textChanged(final DocumentEvent e) { validateButtons();/*from w w w.j a va 2 s .c om*/ } }; final PsiClass containingClass = sourceMethod.getContainingClass(); keepMethodAsDelegate.setVisible(containingClass != null && !containingClass.isInterface()); classNameField.getDocument().addDocumentListener(docListener); myInnerClassNameTextField.getDocument().addDocumentListener(docListener); final PsiParameterList parameterList = sourceMethod.getParameterList(); final PsiParameter[] parameters = parameterList.getParameters(); parameterInfo = new VariableData[parameters.length]; for (int i = 0; i < parameterInfo.length; i++) { parameterInfo[i] = new VariableData(parameters[i]); parameterInfo[i].name = parameters[i].getName(); parameterInfo[i].passAsParameter = true; } sourceMethodTextField.setText(PsiFormatUtil.formatMethod(sourceMethod, PsiSubstitutor.EMPTY, PsiFormatUtil.SHOW_CONTAINING_CLASS | PsiFormatUtil.SHOW_NAME, 0)); final ButtonGroup buttonGroup = new ButtonGroup(); buttonGroup.add(useExistingClassButton); buttonGroup.add(createNewClassButton); buttonGroup.add(myCreateInnerClassRadioButton); createNewClassButton.setSelected(true); if (containingClass != null && containingClass.getQualifiedName() == null) { myCreateInnerClassRadioButton.setEnabled(false); } init(); final ActionListener listener = new ActionListener() { public void actionPerformed(ActionEvent actionEvent) { toggleRadioEnablement(); final IdeFocusManager focusManager = IdeFocusManager.getInstance(myProject); if (useExistingClass()) { focusManager.requestFocus(existingClassField, true); } else if (myCreateInnerClassRadioButton.isSelected()) { focusManager.requestFocus(myInnerClassNameTextField, true); } else { focusManager.requestFocus(classNameField, true); } } }; useExistingClassButton.addActionListener(listener); createNewClassButton.addActionListener(listener); myCreateInnerClassRadioButton.addActionListener(listener); myGenerateAccessorsCheckBox.setSelected(true); myEscalateVisibilityCheckBox.setSelected(true); toggleRadioEnablement(); }
From source file:com.intellij.refactoring.wrapreturnvalue.WrapReturnValueDialog.java
License:Apache License
private void toggleRadioEnablement() { UIUtil.setEnabled(myExistingClassPanel, useExistingClassButton.isSelected(), true); UIUtil.setEnabled(myNewClassPanel, createNewClassButton.isSelected(), true); UIUtil.setEnabled(myCreateInnerPanel, myCreateInnerClassButton.isSelected(), true); final IdeFocusManager focusManager = IdeFocusManager.getInstance(myProject); if (useExistingClassButton.isSelected()) { focusManager.requestFocus(existingClassField, true); } else if (myCreateInnerClassButton.isSelected()) { focusManager.requestFocus(myInnerClassNameTextField, true); } else {/*from w w w . ja v a 2s . co m*/ focusManager.requestFocus(classNameField, true); } validateButtons(); }
From source file:com.intellij.ui.FocusTrackback.java
License:Apache License
public void restoreFocus() { final Application app = ApplicationManager.getApplication(); if (app == null || wrongOS() || myConsumed || isSheduledForRestore()) return;// ww w . j ava 2 s. c o m Project project = null; DataContext context = myParentWindow == null ? DataManager.getInstance().getDataContext() : DataManager.getInstance().getDataContext(myParentWindow); if (context != null) { project = CommonDataKeys.PROJECT.getData(context); } mySheduledForRestore = true; final List<FocusTrackback> stack = getCleanStackForRoot(); final int index = stack.indexOf(this); for (int i = index - 1; i >= 0; i--) { if (stack.get(i).isSheduledForRestore()) { dispose(); return; } } if (project != null && !project.isDisposed()) { final IdeFocusManager focusManager = IdeFocusManager.getInstance(project); cleanParentWindow(); final Project finalProject = project; focusManager.requestFocus(new MyFocusCommand(), myForcedRestore).doWhenProcessed(new Runnable() { public void run() { dispose(); } }).doWhenRejected(new Runnable() { @Override public void run() { focusManager.revalidateFocus(new ExpirableRunnable.ForProject(finalProject) { @Override public void run() { if (UIUtil.isMeaninglessFocusOwner(focusManager.getFocusOwner())) { focusManager.requestDefaultFocus(false); } } }); } }); } else { // no ide focus manager, so no way -- do just later //noinspection SSBasedInspection SwingUtilities.invokeLater(new Runnable() { public void run() { _restoreFocus(); dispose(); } }); } }
From source file:org.codinjutsu.tools.mongo.view.QueryPanel.java
License:Apache License
public void requestFocusOnEditor() {// Code from requestFocus of EditorImpl final IdeFocusManager focusManager = IdeFocusManager.getInstance(this.project); JComponent editorContentComponent = getCurrentOperatorPanel().getRequestFocusComponent(); if (focusManager.getFocusOwner() != editorContentComponent) { focusManager.requestFocus(editorContentComponent, true); }// w ww . j av a2 s . c o m }
From source file:ru.list.search.AssistantSearchEverywhereAction.java
License:Apache License
public void actionPerformed(AnActionEvent e, MouseEvent me) { if (myBalloon != null && myBalloon.isVisible()) { showAll.set(!showAll.get());//from w ww . j a va 2 s.co m myNonProjectCheckBox.setSelected(showAll.get()); // myPopupField.getTextEditor().setBackground(showAll.get() ? new JBColor(new Color(0xffffe4), new Color(0x494539)) : UIUtil.getTextFieldBackground()); rebuildList(myPopupField.getText()); return; } myCurrentWorker = ActionCallback.DONE; if (e != null) { myEditor = e.getData(CommonDataKeys.EDITOR); myFileEditor = e.getData(PlatformDataKeys.FILE_EDITOR); myFile = e.getData(CommonDataKeys.PSI_FILE); myEditorWindow = e.getData(EditorWindow.DATA_KEY); } if (e == null && myFocusOwner != null) { e = AnActionEvent.createFromAnAction(this, me, ActionPlaces.UNKNOWN, DataManager.getInstance().getDataContext(myFocusOwner)); } if (e == null) return; final Project project = e.getProject(); if (project == null) return; //noinspection SSBasedInspection SwingUtilities.invokeLater(new Runnable() { @Override public void run() { LookupManager.getInstance(project).hideActiveLookup(); } }); updateComponents(); myContextComponent = PlatformDataKeys.CONTEXT_COMPONENT.getData(e.getDataContext()); Window wnd = myContextComponent != null ? SwingUtilities.windowForComponent(myContextComponent) : KeyboardFocusManager.getCurrentKeyboardFocusManager().getFocusedWindow(); if (wnd == null && myContextComponent instanceof Window) { wnd = (Window) myContextComponent; } if (wnd == null || wnd.getParent() != null) return; myActionEvent = e; if (myPopupField != null) { Disposer.dispose(myPopupField); } myPopupField = new MySearchTextField(); myPopupField.getTextEditor().addKeyListener(new KeyAdapter() { @Override public void keyTyped(KeyEvent e) { myHistoryIndex = 0; myHistoryItem = null; } @Override public void keyPressed(KeyEvent e) { if (e.getKeyCode() == KeyEvent.VK_SHIFT) { myList.repaint(); } } @Override public void keyReleased(KeyEvent e) { if (e.getKeyCode() == KeyEvent.VK_SHIFT) { myList.repaint(); } } }); initSearchField(myPopupField); myPopupField.setOpaque(false); final JTextField editor = myPopupField.getTextEditor(); editor.setColumns(SEARCH_FIELD_COLUMNS); final JPanel panel = new JPanel(new BorderLayout()) { @Override protected void paintComponent(Graphics g) { final Gradient gradient = getGradientColors(); ((Graphics2D) g).setPaint( new GradientPaint(0, 0, gradient.getStartColor(), 0, getHeight(), gradient.getEndColor())); g.fillRect(0, 0, getWidth(), getHeight()); } }; final JLabel title = new JLabel(" Assistant Search Everywhere: "); final JPanel topPanel = new NonOpaquePanel(new BorderLayout()); title.setForeground(new JBColor(Gray._240, Gray._200)); if (SystemInfo.isMac) { title.setFont(title.getFont().deriveFont(Font.BOLD, title.getFont().getSize() - 1f)); } else { title.setFont(title.getFont().deriveFont(Font.BOLD)); } topPanel.add(title, BorderLayout.WEST); final JPanel controls = new JPanel(new BorderLayout()); controls.setOpaque(false); final JLabel settings = new JLabel(AllIcons.General.SearchEverywhereGear); new ClickListener() { @Override public boolean onClick(@NotNull MouseEvent event, int clickCount) { showSettings(); return true; } }.installOn(settings); controls.add(settings, BorderLayout.EAST); myNonProjectCheckBox.setForeground(new JBColor(Gray._240, Gray._200)); myNonProjectCheckBox.setText("Include non-project items (" + getShortcut() + ") "); if (!NonProjectScopeDisablerEP.isSearchInNonProjectDisabled()) { controls.add(myNonProjectCheckBox, BorderLayout.WEST); } topPanel.add(controls, BorderLayout.EAST); panel.add(myPopupField, BorderLayout.CENTER); panel.add(topPanel, BorderLayout.NORTH); panel.add(new JLabel("Open in main group - (Enter);\t Open in second group - (Alt Enter)"), BorderLayout.SOUTH); panel.setBorder(IdeBorderFactory.createEmptyBorder(3, 5, 4, 5)); DataManager.registerDataProvider(panel, this); final ComponentPopupBuilder builder = JBPopupFactory.getInstance().createComponentPopupBuilder(panel, editor); myBalloon = builder.setCancelOnClickOutside(true).setModalContext(false).setRequestFocus(true) .setCancelCallback(new Computable<Boolean>() { @Override public Boolean compute() { return !mySkipFocusGain; } }).createPopup(); myBalloon.getContent().setBorder(JBUI.Borders.empty()); final Window window = WindowManager.getInstance().suggestParentWindow(project); project.getMessageBus().connect(myBalloon).subscribe(DumbService.DUMB_MODE, new DumbService.DumbModeListener() { @Override public void enteredDumbMode() { } @Override public void exitDumbMode() { ApplicationManager.getApplication().invokeLater(new Runnable() { @Override public void run() { rebuildList(myPopupField.getText()); } }); } }); Component parent = UIUtil.findUltimateParent(window); registerDataProvider(panel, project); final RelativePoint showPoint; if (parent != null) { int height = UISettings.getInstance().SHOW_MAIN_TOOLBAR ? 135 : 115; if (parent instanceof IdeFrameImpl && ((IdeFrameImpl) parent).isInFullScreen()) { height -= 20; } showPoint = new RelativePoint(parent, new Point((parent.getSize().width - panel.getPreferredSize().width) / 2, height)); } else { showPoint = JBPopupFactory.getInstance().guessBestPopupLocation(e.getDataContext()); } myList.setFont(UIUtil.getListFont()); myBalloon.show(showPoint); initSearchActions(myBalloon, myPopupField); IdeFocusManager focusManager = IdeFocusManager.getInstance(project); focusManager.requestFocus(editor, true); FeatureUsageTracker.getInstance().triggerFeatureUsed(IdeActions.ACTION_SEARCH_EVERYWHERE); }