mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
Better allocation trace for the focus tracer.
Deprecation of forced requestFocus methods.
This commit is contained in:
@@ -92,12 +92,12 @@ public class CheckRegExpForm {
|
||||
super.addNotify();
|
||||
disposable = Disposer.newDisposable();
|
||||
|
||||
IdeFocusManager.getGlobalInstance().requestFocus(mySampleText, true);
|
||||
IdeFocusManager.getGlobalInstance().requestFocus(mySampleText);
|
||||
|
||||
new AnAction(){
|
||||
@Override
|
||||
public void actionPerformed(AnActionEvent e) {
|
||||
IdeFocusManager.findInstance().requestFocus(myRegExp.getFocusTarget(), true);
|
||||
IdeFocusManager.findInstance().requestFocus(myRegExp.getFocusTarget());
|
||||
}
|
||||
}.registerCustomShortcutSet(CustomShortcutSet.fromString("shift TAB"), mySampleText);
|
||||
|
||||
|
||||
@@ -145,7 +145,7 @@ public abstract class DebuggerEditorImpl extends CompletionEditor {
|
||||
public void actionPerformed(AnActionEvent e) {
|
||||
setFactory(fragmentFactory);
|
||||
setText(getText());
|
||||
IdeFocusManager.getInstance(getProject()).requestFocus(DebuggerEditorImpl.this, true);
|
||||
IdeFocusManager.getInstance(getProject()).requestFocus(DebuggerEditorImpl.this);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
+1
-1
@@ -241,7 +241,7 @@ public class LayoutTree extends SimpleDnDAwareTree implements AdvancedDnDSource
|
||||
}
|
||||
|
||||
private void requestFocusToTree() {
|
||||
IdeFocusManager.getInstance(myArtifactsEditor.getContext().getProject()).requestFocus(LayoutTree.this, true);
|
||||
IdeFocusManager.getInstance(myArtifactsEditor.getContext().getProject()).requestFocus(LayoutTree.this);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -649,7 +649,7 @@ public class ClasspathPanelImpl extends JPanel implements ClasspathPanel {
|
||||
TableUtil.scrollSelectionToVisible(myEntryTable);
|
||||
}
|
||||
}
|
||||
IdeFocusManager.getInstance(myState.getProject()).requestFocus(myEntryTable, true);
|
||||
IdeFocusManager.getInstance(myState.getProject()).requestFocus(myEntryTable);
|
||||
}
|
||||
|
||||
private int moveRow(final int row, final int increment) {
|
||||
|
||||
@@ -97,7 +97,7 @@ public class ImportChooserStep extends ProjectImportWizardStep {
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
if (myImportFrom.isSelected()) {
|
||||
IdeFocusManager.getInstance(context.getProject()).requestFocus(myList, false);
|
||||
IdeFocusManager.getInstance(context.getProject()).requestFocus(myList);
|
||||
}
|
||||
updateSteps();
|
||||
}
|
||||
|
||||
@@ -185,7 +185,7 @@ class ExcludeTable extends ListTableWithButtons<ExcludeTable.Item> {
|
||||
getTableView().clearSelection();
|
||||
getTableView().addRowSelectionInterval(index, index);
|
||||
ScrollingUtil.ensureIndexIsVisible(getTableView(), index, 0);
|
||||
IdeFocusManager.getGlobalInstance().requestFocus(getTableView(), false);
|
||||
IdeFocusManager.getGlobalInstance().requestFocus(getTableView());
|
||||
}
|
||||
|
||||
void reset() {
|
||||
|
||||
+1
-1
@@ -249,7 +249,7 @@ public class ExtractMethodObjectDialog extends DialogWrapper implements Abstract
|
||||
final ActionListener updateSugnatureListener = new ActionListener() {
|
||||
public void actionPerformed(final ActionEvent e) {
|
||||
updateSignature();
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myCreateInnerClassRb.isSelected() ? myInnerClassName : myMethodName, false);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myCreateInnerClassRb.isSelected() ? myInnerClassName : myMethodName);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
+3
-3
@@ -120,11 +120,11 @@ public class IntroduceParameterObjectDialog extends RefactoringDialog {
|
||||
toggleRadioEnablement();
|
||||
final IdeFocusManager focusManager = IdeFocusManager.getInstance(myProject);
|
||||
if (useExistingClass()) {
|
||||
focusManager.requestFocus(existingClassField, true);
|
||||
focusManager.requestFocus(existingClassField);
|
||||
} else if (myCreateInnerClassRadioButton.isSelected()) {
|
||||
focusManager.requestFocus(myInnerClassNameTextField, true);
|
||||
focusManager.requestFocus(myInnerClassNameTextField);
|
||||
} else {
|
||||
focusManager.requestFocus(classNameField, true);
|
||||
focusManager.requestFocus(classNameField);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
+1
-1
@@ -169,7 +169,7 @@ public class ReplaceConstructorWithBuilderDialog extends RefactoringDialog {
|
||||
public void actionPerformed(final ActionEvent e) {
|
||||
setEnabled(myCreateBuilderClassRadioButton.isSelected());
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(
|
||||
myCreateBuilderClassRadioButton.isSelected() ? myNewClassName : myExistentClassTF.getChildComponent(), true);
|
||||
myCreateBuilderClassRadioButton.isSelected() ? myNewClassName : myExistentClassTF.getChildComponent());
|
||||
validateButtons();
|
||||
}
|
||||
};
|
||||
|
||||
+3
-3
@@ -241,13 +241,13 @@ class WrapReturnValueDialog extends RefactoringDialog {
|
||||
UIUtil.setEnabled(myCreateInnerPanel, myCreateInnerClassButton.isSelected(), true);
|
||||
final IdeFocusManager focusManager = IdeFocusManager.getInstance(myProject);
|
||||
if (useExistingClassButton.isSelected()) {
|
||||
focusManager.requestFocus(existingClassField, true);
|
||||
focusManager.requestFocus(existingClassField);
|
||||
}
|
||||
else if (myCreateInnerClassButton.isSelected()) {
|
||||
focusManager.requestFocus(myInnerClassNameTextField, true);
|
||||
focusManager.requestFocus(myInnerClassNameTextField);
|
||||
}
|
||||
else {
|
||||
focusManager.requestFocus(classNameField, true);
|
||||
focusManager.requestFocus(classNameField);
|
||||
}
|
||||
validateButtons();
|
||||
}
|
||||
|
||||
@@ -383,7 +383,7 @@ public class ThreadDumpPanel extends JPanel implements DataProvider {
|
||||
public void setSelected(AnActionEvent e, boolean state) {
|
||||
myFilterPanel.setVisible(state);
|
||||
if (state) {
|
||||
IdeFocusManager.getInstance(getEventProject(e)).requestFocus(myFilterField, true);
|
||||
IdeFocusManager.getInstance(getEventProject(e)).requestFocus(myFilterField);
|
||||
myFilterField.selectText();
|
||||
}
|
||||
updateThreadList();
|
||||
|
||||
@@ -40,7 +40,7 @@ public class EditorSearchTest extends LightPlatformCodeInsightFixtureTestCase {
|
||||
assertEquals(key, getSearchTextComponent().getSelectedText());
|
||||
assertEquals(3, getSearchTextComponent().getCaretPosition());
|
||||
assertTrue(getEditorSearchComponent().hasMatches());
|
||||
IdeFocusManager.findInstance().requestFocus(myFixture.getEditor().getContentComponent(), false);
|
||||
IdeFocusManager.findInstance().requestFocus(myFixture.getEditor().getContentComponent());
|
||||
IdeEventQueue.getInstance().flushQueue();
|
||||
|
||||
myFixture.performEditorAction("Find");
|
||||
|
||||
@@ -560,7 +560,7 @@ public class DiffUtil {
|
||||
|
||||
public static void requestFocus(@Nullable Project project, @Nullable Component component) {
|
||||
if (component == null) return;
|
||||
IdeFocusManager.getInstance(project).requestFocus(component, true);
|
||||
IdeFocusManager.getInstance(project).requestFocus(component);
|
||||
}
|
||||
|
||||
//
|
||||
|
||||
@@ -447,7 +447,7 @@ public class DirDiffPanel implements Disposable, DataProvider {
|
||||
focusManager.doWhenFocusSettlesDown(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
focusManager.requestFocus(myTable, true);
|
||||
focusManager.requestFocus(myTable);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
+3
-3
@@ -145,7 +145,7 @@ public class DocumentationManager extends DockablePopupManager<DocumentationComp
|
||||
@Override
|
||||
protected void restorePopupBehavior() {
|
||||
if (myPreviouslyFocused != null) {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myPreviouslyFocused, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myPreviouslyFocused);
|
||||
}
|
||||
super.restorePopupBehavior();
|
||||
updateComponent();
|
||||
@@ -231,7 +231,7 @@ public class DocumentationManager extends DockablePopupManager<DocumentationComp
|
||||
Component toFocus = myPreviouslyFocused;
|
||||
hint.cancel();
|
||||
if (toFocus != null) {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(toFocus, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(toFocus);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -423,7 +423,7 @@ public class DocumentationManager extends DockablePopupManager<DocumentationComp
|
||||
// focus toolwindow on the second actionPerformed
|
||||
boolean focus = requestFocus || CommandProcessor.getInstance().getCurrentCommand() != null;
|
||||
if (preferredFocusableComponent != null && focus) {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(preferredFocusableComponent, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(preferredFocusableComponent);
|
||||
}
|
||||
}
|
||||
if (!sameElement || !component.isUpToDate()) {
|
||||
|
||||
@@ -83,7 +83,7 @@ public class LookupImpl extends LightweightHint implements LookupEx, Disposable,
|
||||
protected void processKeyEvent(@NotNull final KeyEvent e) {
|
||||
final char keyChar = e.getKeyChar();
|
||||
if (keyChar == KeyEvent.VK_ENTER || keyChar == KeyEvent.VK_TAB) {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myEditor.getContentComponent(), true).doWhenDone(new Runnable() {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myEditor.getContentComponent()).doWhenDone(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
IdeEventQueue.getInstance().getKeyEventDispatcher().dispatchKeyEvent(e);
|
||||
|
||||
@@ -207,7 +207,7 @@ class LookupUi {
|
||||
myLookup.getComponent().addFocusListener(new FocusAdapter() {
|
||||
@Override
|
||||
public void focusGained(FocusEvent e) {
|
||||
final ActionCallback done = IdeFocusManager.getInstance(myProject).requestFocus(myLookup.getTopLevelEditor().getContentComponent(), true);
|
||||
final ActionCallback done = IdeFocusManager.getInstance(myProject).requestFocus(myLookup.getTopLevelEditor().getContentComponent());
|
||||
IdeFocusManager.getInstance(myProject).typeAheadUntil(done);
|
||||
new Alarm(myLookup).addRequest(new Runnable() {
|
||||
@Override
|
||||
|
||||
+2
-2
@@ -591,7 +591,7 @@ public class LiveTemplateSettingsEditor extends JPanel {
|
||||
public void focusKey() {
|
||||
myKeyField.selectAll();
|
||||
//todo[peter,kirillk] without these invokeLaters this requestFocus conflicts with com.intellij.openapi.ui.impl.DialogWrapperPeerImpl.MyDialog.MyWindowListener.windowOpened()
|
||||
IdeFocusManager.findInstanceByComponent(myKeyField).requestFocus(myKeyField, true);
|
||||
IdeFocusManager.findInstanceByComponent(myKeyField).requestFocus(myKeyField);
|
||||
final ModalityState modalityState = ModalityState.stateForComponent(myKeyField);
|
||||
ApplicationManager.getApplication().invokeLater(new Runnable() {
|
||||
@Override
|
||||
@@ -602,7 +602,7 @@ public class LiveTemplateSettingsEditor extends JPanel {
|
||||
ApplicationManager.getApplication().invokeLater(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
IdeFocusManager.findInstanceByComponent(myKeyField).requestFocus(myKeyField, true);
|
||||
IdeFocusManager.findInstanceByComponent(myKeyField).requestFocus(myKeyField);
|
||||
}
|
||||
}, modalityState);
|
||||
}
|
||||
|
||||
@@ -1356,7 +1356,7 @@ class RunConfigurable extends BaseConfigurable {
|
||||
((ConfigurationFactoryEx)factory).onConfigurationCopied(settings.getConfiguration());
|
||||
}
|
||||
final SingleConfigurationConfigurable<RunConfiguration> configurable = createNewConfiguration(settings, typeNode, getSelectedNode());
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(configurable.getNameTextField(), true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(configurable.getNameTextField());
|
||||
configurable.getNameTextField().setSelectionStart(0);
|
||||
configurable.getNameTextField().setSelectionEnd(copyName.length());
|
||||
}
|
||||
|
||||
@@ -359,7 +359,7 @@ public class EditorSearchSession implements SearchSession,
|
||||
|
||||
@Override
|
||||
public void close() {
|
||||
IdeFocusManager.getInstance(getProject()).requestFocus(myEditor.getContentComponent(), false);
|
||||
IdeFocusManager.getInstance(getProject()).requestFocus(myEditor.getContentComponent());
|
||||
|
||||
myLivePreviewController.dispose();
|
||||
myEditor.setHeaderComponent(null);
|
||||
|
||||
@@ -332,7 +332,7 @@ public class SearchReplaceComponent extends EditorHeaderComponent implements Dat
|
||||
close();
|
||||
}
|
||||
else {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myTargetComponent, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myTargetComponent);
|
||||
addTextToRecent(mySearchTextComponent);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -808,7 +808,7 @@ public class SearchEverywhereAction extends AnAction implements CustomComponentA
|
||||
myBalloon.show(showPoint);
|
||||
initSearchActions(myBalloon, myPopupField);
|
||||
IdeFocusManager focusManager = IdeFocusManager.getInstance(project);
|
||||
focusManager.requestFocus(editor, true);
|
||||
focusManager.requestFocus(editor);
|
||||
FeatureUsageTracker.getInstance().triggerFeatureUsed(IdeActions.ACTION_SEARCH_EVERYWHERE);
|
||||
}
|
||||
|
||||
|
||||
@@ -74,7 +74,7 @@ public class ProjectViewSelectInGroupTarget implements CompositeSelectInTarget,
|
||||
target.selectIn(context, requestFocus);
|
||||
return ActionCallback.DONE;
|
||||
}
|
||||
}, true);
|
||||
});
|
||||
}
|
||||
else {
|
||||
target.selectIn(context, requestFocus);
|
||||
|
||||
@@ -291,7 +291,7 @@ public class NavBarPanel extends JPanel implements DataProvider, PopupOwner, Dis
|
||||
if (!myList.isEmpty()) {
|
||||
myModel.setSelectedIndex(myList.size() - 1);
|
||||
if (requestFocus) {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(NavBarPanel.this, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(NavBarPanel.this);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -412,7 +412,7 @@ public class NavBarPanel extends JPanel implements DataProvider, PopupOwner, Dis
|
||||
|
||||
if (e.isPopupTrigger()) {
|
||||
myModel.setSelectedIndex(index);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(NavBarPanel.this, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(NavBarPanel.this);
|
||||
rightClick(index);
|
||||
e.consume();
|
||||
}
|
||||
@@ -424,7 +424,7 @@ public class NavBarPanel extends JPanel implements DataProvider, PopupOwner, Dis
|
||||
}
|
||||
else if (e.getClickCount() == 2 && e.getButton() == MouseEvent.BUTTON1) {
|
||||
myModel.setSelectedIndex(index);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(NavBarPanel.this, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(NavBarPanel.this);
|
||||
doubleClick(index);
|
||||
e.consume();
|
||||
}
|
||||
|
||||
@@ -76,7 +76,7 @@ public class NavBarPopup extends LightweightHint implements Disposable{
|
||||
if (e.getComponent() != getList()) return;
|
||||
if (!e.isConsumed() && e.isPopupTrigger()) {
|
||||
myPanel.getModel().setSelectedIndex(selectedIndex);
|
||||
IdeFocusManager.getInstance(myPanel.getProject()).requestFocus(myPanel, true);
|
||||
IdeFocusManager.getInstance(myPanel.getProject()).requestFocus(myPanel);
|
||||
myPanel.rightClick(selectedIndex);
|
||||
e.consume();
|
||||
} else {
|
||||
|
||||
@@ -206,7 +206,7 @@ public abstract class BaseProjectTreeBuilder extends AbstractTreeBuilder {
|
||||
@Override
|
||||
public void run() {
|
||||
if (requestFocus && virtualSelectTarget == null && getUi().isReady()) {
|
||||
focusRequestor.requestFocus(getTree(), true);
|
||||
focusRequestor.requestFocus(getTree());
|
||||
}
|
||||
|
||||
result.setDone();
|
||||
|
||||
@@ -501,7 +501,7 @@ public class ProjectViewImpl extends ProjectView implements PersistentStateCompo
|
||||
|
||||
myAutoScrollToSourceHandler.install(newPane.myTree);
|
||||
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(newPane.getComponentToFocus(), false);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(newPane.getComponentToFocus());
|
||||
|
||||
newPane.restoreExpandedPaths();
|
||||
if (selectedPsiElement != null) {
|
||||
|
||||
+1
-1
@@ -486,7 +486,7 @@ public class StructureViewComponent extends SimpleToolWindowPanel implements Tre
|
||||
@Override
|
||||
public void run() {
|
||||
if (requestFocus) {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myAbstractTreeBuilder.getTree(), false);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myAbstractTreeBuilder.getTree());
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -359,7 +359,7 @@ public class FileStructurePopup implements Disposable, TreeActionsOwner {
|
||||
myPopup.setSize(new Dimension(myPreferredWidth + 10, myPopup.getSize().height));
|
||||
}
|
||||
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myTree, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myTree);
|
||||
SwingUtilities.windowForComponent(myPopup.getContent()).addWindowFocusListener(new WindowFocusListener() {
|
||||
@Override
|
||||
public void windowGainedFocus(WindowEvent e) {
|
||||
|
||||
@@ -527,13 +527,13 @@ public abstract class ChooseByNameBase {
|
||||
else {
|
||||
Component oppositeComponent = e.getOppositeComponent();
|
||||
if (oppositeComponent == myCheckBox) {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myTextField, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myTextField);
|
||||
return;
|
||||
}
|
||||
if (oppositeComponent != null && !(oppositeComponent instanceof JFrame) &&
|
||||
myList.isShowing() &&
|
||||
(oppositeComponent == myList || SwingUtilities.isDescendingFrom(myList, oppositeComponent))) {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myTextField, true);// Otherwise me may skip some KeyEvents
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myTextField);// Otherwise me may skip some KeyEvents
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -642,7 +642,7 @@ public abstract class ChooseByNameBase {
|
||||
@Override
|
||||
public boolean onClick(@NotNull MouseEvent e, int clickCount) {
|
||||
if (!myTextField.hasFocus()) {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myTextField, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myTextField);
|
||||
}
|
||||
|
||||
if (clickCount == 2) {
|
||||
@@ -895,7 +895,7 @@ public abstract class ChooseByNameBase {
|
||||
|
||||
IdeFocusManager focusManager = IdeFocusManager.getInstance(myProject);
|
||||
if (isDescendingFromTemporarilyFocusableToolWindow(focusManager.getFocusOwner())) {
|
||||
focusManager.requestFocus(myTextField, true);
|
||||
focusManager.requestFocus(myTextField);
|
||||
return false;
|
||||
}
|
||||
else {
|
||||
|
||||
@@ -534,15 +534,15 @@ public class PsiViewerDialog extends DialogWrapper implements DataProvider, Disp
|
||||
}
|
||||
|
||||
private void focusEditor() {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myEditor.getContentComponent(), true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myEditor.getContentComponent());
|
||||
}
|
||||
|
||||
private void focusTree() {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myPsiTree, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myPsiTree);
|
||||
}
|
||||
|
||||
private void focusRefs() {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myRefs, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myRefs);
|
||||
if (myRefs.getModel().getSize() > 0) {
|
||||
if (myRefs.getSelectedIndex() == -1) {
|
||||
myRefs.setSelectedIndex(0);
|
||||
@@ -551,7 +551,7 @@ public class PsiViewerDialog extends DialogWrapper implements DataProvider, Disp
|
||||
}
|
||||
|
||||
private void focusBlockTree() {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myBlockTree, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myBlockTree);
|
||||
}
|
||||
|
||||
private void initMnemonics() {
|
||||
|
||||
+1
-1
@@ -46,7 +46,7 @@ public class IncrementalFindAction extends EditorAction {
|
||||
if (!editor.isOneLineMode()) {
|
||||
EditorSearchSession search = EditorSearchSession.get(editor);
|
||||
if (search != null) {
|
||||
IdeFocusManager.getInstance(project).requestFocus(search.getComponent(), true);
|
||||
IdeFocusManager.getInstance(project).requestFocus(search.getComponent());
|
||||
FindUtil.configureFindModel(myReplace, editor, search.getFindModel(), false);
|
||||
} else {
|
||||
FindManager findManager = FindManager.getInstance(project);
|
||||
|
||||
+1
-1
@@ -560,7 +560,7 @@ public abstract class ChangeSignatureDialogBase<ParamInfo extends ParameterInfo,
|
||||
if (root != null) {
|
||||
Component c = root.getFocusTraversalPolicy().getComponentAfter(root, mySignatureArea);
|
||||
if (c != null) {
|
||||
IdeFocusManager.findInstance().requestFocus(c, true);
|
||||
IdeFocusManager.findInstance().requestFocus(c);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -387,7 +387,7 @@ public class ToolEditorDialog extends DialogWrapper {
|
||||
}
|
||||
;
|
||||
}
|
||||
IdeFocusManager.findInstance().requestFocus(myTextField, true);
|
||||
IdeFocusManager.findInstance().requestFocus(myTextField);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -452,7 +452,7 @@ public abstract class AbstractWizard<T extends Step> extends DialogWrapper {
|
||||
@Override
|
||||
public void run() {
|
||||
final IdeFocusManager focusManager = IdeFocusManager.findInstanceByComponent(component);
|
||||
focusManager.requestFocus(component, false);
|
||||
focusManager.requestFocus(component);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -126,7 +126,7 @@ public class AbstractWizardEx extends AbstractWizard<AbstractWizardStepEx> {
|
||||
setTitle(stepTitle != null ? myTitle + ": " + stepTitle : myTitle);
|
||||
final JComponent toFocus = step.getPreferredFocusedComponent();
|
||||
if (toFocus != null) {
|
||||
IdeFocusManager.findInstanceByComponent(getWindow()).requestFocus(toFocus, true);
|
||||
IdeFocusManager.findInstanceByComponent(getWindow()).requestFocus(toFocus);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -149,7 +149,7 @@ public class OpenFileDescriptor implements Navigatable, Comparable<OpenFileDescr
|
||||
Editor e = ((TextEditor)editor).getEditor();
|
||||
unfoldCurrentLine(e);
|
||||
if (focusEditor) {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(e.getContentComponent(), true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(e.getContentComponent());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -113,7 +113,7 @@ public class ComboBox extends ComboBoxWithWidePopup implements AWTEventListener
|
||||
final Object value = list.getSelectedValue();
|
||||
if (value != null) {
|
||||
configureEditor(getEditor(), value);
|
||||
IdeFocusManager.getGlobalInstance().requestFocus(ComboBox.this, true);
|
||||
IdeFocusManager.getGlobalInstance().requestFocus(ComboBox.this);
|
||||
assert myJBPopup != null;
|
||||
ComboBox.this.getUI().setPopupVisible(ComboBox.this, false);
|
||||
myJBPopup.cancel();
|
||||
|
||||
@@ -1835,7 +1835,7 @@ public abstract class DialogWrapper {
|
||||
ValidationInfo info = doValidate();
|
||||
if (info != null) {
|
||||
if (info.component != null && info.component.isVisible()) {
|
||||
IdeFocusManager.getInstance(null).requestFocus(info.component, true);
|
||||
IdeFocusManager.getInstance(null).requestFocus(info.component);
|
||||
}
|
||||
DialogEarthquakeShaker.shake((JDialog)getPeer().getWindow());
|
||||
startTrackingValidation();
|
||||
|
||||
@@ -38,7 +38,7 @@ import java.util.Arrays;
|
||||
*/
|
||||
public abstract class FocusCommand extends ActiveRunnable implements Expirable {
|
||||
protected Component myDominationComponent;
|
||||
private Throwable myAllocation;
|
||||
protected Throwable myAllocation;
|
||||
private ActionCallback myCallback;
|
||||
private boolean myInvalidatesPendingFurtherRequestors = true;
|
||||
private Expirable myExpirable;
|
||||
@@ -58,6 +58,10 @@ public abstract class FocusCommand extends ActiveRunnable implements Expirable {
|
||||
|
||||
private boolean myForced;
|
||||
|
||||
protected FocusCommand(Throwable allocation) {
|
||||
myAllocation = allocation;
|
||||
}
|
||||
|
||||
protected FocusCommand() {
|
||||
saveAllocation();
|
||||
}
|
||||
@@ -161,7 +165,6 @@ public abstract class FocusCommand extends ActiveRunnable implements Expirable {
|
||||
|
||||
public static class ByComponent extends FocusCommand {
|
||||
private Component myToFocus;
|
||||
private Throwable myAllocation;
|
||||
|
||||
public ByComponent(@Nullable Component toFocus, @NotNull Throwable allocation) {
|
||||
this(toFocus, toFocus, allocation);
|
||||
|
||||
@@ -21,16 +21,37 @@ import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.awt.*;
|
||||
|
||||
import static com.sun.tools.doclint.Entity.not;
|
||||
|
||||
/**
|
||||
* Basic interface for requesting sending focus commands to <code>IdeFocusManager</code>
|
||||
*/
|
||||
public interface FocusRequestor extends Disposable {
|
||||
|
||||
/**
|
||||
* Requests focus on a component
|
||||
* @param c - component to request focus to
|
||||
* @return action callback that either notifies when the focus was obtained or focus request was dropped
|
||||
*/
|
||||
@NotNull
|
||||
ActionCallback requestFocus(@NotNull Component c);
|
||||
|
||||
/**
|
||||
* Runs a request focus command, actual focus request is defined by the user in the command itself
|
||||
* @return action callback that either notifies when the focus was obtained or focus request was dropped
|
||||
*/
|
||||
@NotNull
|
||||
ActionCallback requestFocus(@NotNull FocusCommand command);
|
||||
|
||||
@NotNull
|
||||
ActionCallback requestFocus(@NotNull Component c, @NotNull Throwable creationTrace);
|
||||
|
||||
/**
|
||||
* Requests focus on a component
|
||||
* @param c - component to request focus to
|
||||
* @param forced - if true - focus request is explicit, must be fulfilled, if false - can be dropped
|
||||
* @return action callback that either notifies when the focus was obtained or focus request was dropped
|
||||
* @Deprecated
|
||||
*/
|
||||
@NotNull
|
||||
ActionCallback requestFocus(@NotNull Component c, boolean forced);
|
||||
@@ -39,6 +60,7 @@ public interface FocusRequestor extends Disposable {
|
||||
* Runs a request focus command, actual focus request is defined by the user in the command itself
|
||||
* @param forced - if true - focus request is explicit, must be fulfilled, if false - can be dropped
|
||||
* @return action callback that either notifies when the focus was obtained or focus request was dropped
|
||||
* * @Deprecated
|
||||
*/
|
||||
@NotNull
|
||||
ActionCallback requestFocus(@NotNull FocusCommand command, boolean forced);
|
||||
|
||||
@@ -34,12 +34,35 @@ public class PassThroughIdeFocusManager extends IdeFocusManager {
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public ActionCallback requestFocus(@NotNull Component c) {
|
||||
c.requestFocus();
|
||||
return ActionCallback.DONE;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public ActionCallback requestFocus(@NotNull FocusCommand command) {
|
||||
return command.run();
|
||||
}
|
||||
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public ActionCallback requestFocus(@NotNull Component c, @NotNull Throwable creationTrace) {
|
||||
return requestFocus(c);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public ActionCallback requestFocus(@NotNull Component c, boolean forced) {
|
||||
c.requestFocus();
|
||||
return ActionCallback.DONE;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
@Deprecated
|
||||
public ActionCallback requestFocus(@NotNull FocusCommand command, boolean forced) {
|
||||
return command.run();
|
||||
}
|
||||
|
||||
@@ -444,7 +444,7 @@ public class JBTable extends JTable implements ComponentWithEmptyText, Component
|
||||
// this replaces focus request in JTable.processKeyBinding
|
||||
final IdeFocusManager focusManager = IdeFocusManager.findInstanceByComponent(this);
|
||||
focusManager.setTypeaheadEnabled(false);
|
||||
focusManager.requestFocus(editorComp, true).doWhenProcessed(new Runnable() {
|
||||
focusManager.requestFocus(editorComp).doWhenProcessed(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
focusManager.setTypeaheadEnabled(true);
|
||||
|
||||
@@ -1001,7 +1001,7 @@ public class JBTabsImpl extends JComponent
|
||||
|
||||
|
||||
if (isShowing()) {
|
||||
return myFocusManager.requestFocus(new FocusCommand.ByComponent(toFocus, new Exception()), true);
|
||||
return myFocusManager.requestFocus(new FocusCommand.ByComponent(toFocus, new Exception()));
|
||||
}
|
||||
else {
|
||||
final ActionCallback result = new ActionCallback();
|
||||
@@ -1019,7 +1019,7 @@ public class JBTabsImpl extends JComponent
|
||||
@Override
|
||||
public void run() {
|
||||
queued.set(true);
|
||||
requestor.requestFocus(new FocusCommand.ByComponent(toFocus, new Exception()), true).notify(result);
|
||||
requestor.requestFocus(new FocusCommand.ByComponent(toFocus, new Exception())).notify(result);
|
||||
}
|
||||
};
|
||||
return result;
|
||||
|
||||
@@ -846,7 +846,7 @@ public final class TreeUtil {
|
||||
tree.expandPath(treePath);
|
||||
if (requestFocus) {
|
||||
ActionCallback result = new ActionCallback(2);
|
||||
IdeFocusManager.getInstance(project).requestFocus(tree, true).notifyWhenDone(result);
|
||||
IdeFocusManager.getInstance(project).requestFocus(tree).notifyWhenDone(result);
|
||||
selectPath(tree, treePath, center).notifyWhenDone(result);
|
||||
return result;
|
||||
}
|
||||
|
||||
@@ -140,7 +140,7 @@ public class LightToolWindow extends JPanel {
|
||||
|
||||
addMouseListener(new MouseAdapter() {
|
||||
public void mouseReleased(final MouseEvent e) {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myFocusedComponent, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myFocusedComponent);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
@@ -331,7 +331,7 @@ public class IdeErrorsDialog extends DialogWrapper implements MessagePoolListene
|
||||
public void stateChanged(ChangeEvent e) {
|
||||
final JComponent c = getPreferredFocusedComponent();
|
||||
if (c != null) {
|
||||
IdeFocusManager.findInstanceByComponent(myContentPane).requestFocus(c, true);
|
||||
IdeFocusManager.findInstanceByComponent(myContentPane).requestFocus(c);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -214,7 +214,7 @@ class IdeaHelpBroker extends DefaultHelpBroker implements KeyListener{
|
||||
myFrame.setState(JFrame.NORMAL);
|
||||
IdeFocusManager focusManager = IdeFocusManager.findInstance();
|
||||
JComponent target = focusManager.getFocusTargetFor(myFrame.getRootPane());
|
||||
focusManager.requestFocus(target != null ? target : myFrame, true);
|
||||
focusManager.requestFocus(target != null ? target : myFrame);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -717,7 +717,7 @@ public class Switcher extends AnAction implements DumbAware {
|
||||
if (selectedList.getModel().getSize() == 0) {
|
||||
focusTarget = selectedList == files ? toolWindows : files;
|
||||
}
|
||||
focusManager.requestFocus(focusTarget, true);
|
||||
focusManager.requestFocus(focusTarget);
|
||||
}
|
||||
}, 300);
|
||||
if (jList.getModel().getSize() == 1) {
|
||||
@@ -803,7 +803,7 @@ public class Switcher extends AnAction implements DumbAware {
|
||||
files.setSelectedIndex(index);
|
||||
files.ensureIndexIsVisible(index);
|
||||
toolWindows.getSelectionModel().clearSelection();
|
||||
IdeFocusManager.findInstanceByComponent(files).requestFocus(files, true);
|
||||
IdeFocusManager.findInstanceByComponent(files).requestFocus(files);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -820,7 +820,7 @@ public class Switcher extends AnAction implements DumbAware {
|
||||
if (toolWindows.getModel().getSize() > 0) {
|
||||
toolWindows.setSelectedIndex(Math.min(files.getSelectedIndex(), toolWindows.getModel().getSize() - 1));
|
||||
files.getSelectionModel().clearSelection();
|
||||
IdeFocusManager.findInstanceByComponent(toolWindows).requestFocus(toolWindows, true);
|
||||
IdeFocusManager.findInstanceByComponent(toolWindows).requestFocus(toolWindows);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -839,7 +839,7 @@ public class Switcher extends AnAction implements DumbAware {
|
||||
list.setSelectedIndex(index);
|
||||
list.ensureIndexIsVisible(index);
|
||||
if (selected != list) {
|
||||
IdeFocusManager.findInstanceByComponent(list).requestFocus(list, true);
|
||||
IdeFocusManager.findInstanceByComponent(list).requestFocus(list);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1081,7 +1081,7 @@ public class Switcher extends AnAction implements DumbAware {
|
||||
protected void selectElement(final Object element, String selectedText) {
|
||||
if (element instanceof FileInfo) {
|
||||
if (!toolWindows.isSelectionEmpty()) toolWindows.clearSelection();
|
||||
IdeFocusManager.findInstanceByComponent(files).requestFocus(files, true).doWhenDone(new Runnable() {
|
||||
IdeFocusManager.findInstanceByComponent(files).requestFocus(files).doWhenDone(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
files.setSelectedValue(element, true);
|
||||
@@ -1090,7 +1090,7 @@ public class Switcher extends AnAction implements DumbAware {
|
||||
}
|
||||
else {
|
||||
if (!files.isSelectionEmpty()) files.clearSelection();
|
||||
IdeFocusManager.findInstanceByComponent(toolWindows).requestFocus(toolWindows, true).doWhenDone(new Runnable() {
|
||||
IdeFocusManager.findInstanceByComponent(toolWindows).requestFocus(toolWindows).doWhenDone(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
toolWindows.setSelectedValue(element, true);
|
||||
|
||||
@@ -286,7 +286,7 @@ public class ProjectUtil {
|
||||
AppIcon.getInstance().requestFocus((IdeFrame)WindowManager.getInstance().getFrame(p));
|
||||
cmd.run();
|
||||
} else {
|
||||
IdeFocusManager.getInstance(p).requestFocus(cmd, true);
|
||||
IdeFocusManager.getInstance(p).requestFocus(cmd);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -54,7 +54,7 @@ public class GotoLineNumberDialog extends DialogWrapper {
|
||||
myEditor.getCaretModel().moveToLogicalPosition(position);
|
||||
myEditor.getScrollingModel().scrollToCaret(ScrollType.CENTER);
|
||||
myEditor.getSelectionModel().removeSelection();
|
||||
IdeFocusManager.getGlobalInstance().requestFocus(myEditor.getContentComponent(), true);
|
||||
IdeFocusManager.getGlobalInstance().requestFocus(myEditor.getContentComponent());
|
||||
super.doOKAction();
|
||||
}
|
||||
|
||||
|
||||
@@ -52,7 +52,7 @@ public class FocusTracesAction extends AnAction implements DumbAware {
|
||||
@Override
|
||||
public void eventDispatched(AWTEvent event) {
|
||||
if (event instanceof FocusEvent && event.getID() == FocusEvent.FOCUS_GAINED) {
|
||||
focusManager.recordFocusRequest(((FocusEvent)event).getComponent(), false);
|
||||
focusManager.recordFocusRequest(((FocusEvent)event).getComponent(), new Exception());
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
@@ -47,7 +47,7 @@ import java.util.List;
|
||||
public class FocusTracesDialog extends DialogWrapper {
|
||||
private final JBTable myRequestsTable;
|
||||
private final List<FocusRequestInfo> myRequests;
|
||||
private static final String[] COLUMNS = {"Time", "Forced", "Component"};
|
||||
private static final String[] COLUMNS = {"Time", "Component"};
|
||||
private final ConsoleView consoleView;
|
||||
|
||||
public FocusTracesDialog(Project project, ArrayList<FocusRequestInfo> requests) {
|
||||
@@ -57,7 +57,7 @@ public class FocusTracesDialog extends DialogWrapper {
|
||||
final String[][] data = new String[requests.size()][];
|
||||
for (int i = 0; i < data.length; i++) {
|
||||
final FocusRequestInfo r = requests.get(i);
|
||||
data[i] = new String[]{r.getDate(), String.valueOf(r.isForced()), String.valueOf(r.getComponent())};
|
||||
data[i] = new String[]{r.getDate(), String.valueOf(r.getComponent())};
|
||||
}
|
||||
setModal(false);
|
||||
myRequestsTable = new JBTable(new DefaultTableModel(data, COLUMNS) {
|
||||
|
||||
@@ -215,7 +215,7 @@ public class DiffPanelImpl implements DiffPanelEx, ContentChangeListener, TwoSid
|
||||
public void actionPerformed(AnActionEvent e) {
|
||||
if (getEditor1() != null && getEditor2() != null) {
|
||||
Editor focus = getEditor1().getContentComponent().hasFocus() ? getEditor2() : getEditor1();
|
||||
IdeFocusManager.getGlobalInstance().requestFocus(focus.getContentComponent(), true);
|
||||
IdeFocusManager.getGlobalInstance().requestFocus(focus.getContentComponent());
|
||||
focus.getScrollingModel().scrollToCaret(ScrollType.MAKE_VISIBLE);
|
||||
}
|
||||
}
|
||||
@@ -701,7 +701,7 @@ public class DiffPanelImpl implements DiffPanelEx, ContentChangeListener, TwoSid
|
||||
if (isEditor1Focused || isEditor2Focused) {
|
||||
Editor e = isEditor2Focused ? getEditor2() : getEditor1();
|
||||
if (e != null) {
|
||||
fm.requestFocus(e.getContentComponent(), true);
|
||||
fm.requestFocus(e.getContentComponent());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -4392,7 +4392,7 @@ public final class EditorImpl extends UserDataHolderBase implements EditorEx, Hi
|
||||
private void requestFocus() {
|
||||
final IdeFocusManager focusManager = IdeFocusManager.getInstance(myProject);
|
||||
if (focusManager.getFocusOwner() != myEditorComponent) { //IDEA-64501
|
||||
focusManager.requestFocus(myEditorComponent, true);
|
||||
focusManager.requestFocus(myEditorComponent);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -359,7 +359,7 @@ public final class EditorTabbedContainer implements Disposable, CloseAction.Clos
|
||||
|
||||
public void requestFocus(boolean forced) {
|
||||
if (myTabs != null) {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myTabs.getComponent(), forced);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myTabs.getComponent());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -251,7 +251,7 @@ public class EditorWindow {
|
||||
JComponent otherComponent = splitter.getOtherComponent(myPanel);
|
||||
|
||||
if (otherComponent != null) {
|
||||
IdeFocusManager.findInstance().requestFocus(otherComponent, true);
|
||||
IdeFocusManager.findInstance().requestFocus(otherComponent);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -505,7 +505,7 @@ public class EditorWindow {
|
||||
else {
|
||||
EditorWithProviderComposite editor = getSelectedEditor();
|
||||
JComponent preferred = editor == null ? null : editor.getPreferredFocusedComponent();
|
||||
IdeFocusManager.findInstanceByComponent(preferred == null ? myPanel : preferred).requestFocus(myPanel, forced);
|
||||
IdeFocusManager.findInstanceByComponent(preferred == null ? myPanel : preferred).requestFocus(myPanel);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -537,7 +537,7 @@ public class EditorWindow {
|
||||
if (!TComp.this.hasFocus()) return;
|
||||
final JComponent focus = myEditor.getSelectedEditorWithProvider().getFirst().getPreferredFocusedComponent();
|
||||
if (focus != null && !focus.hasFocus()) {
|
||||
IdeFocusManager.getGlobalInstance().requestFocus(focus, true);
|
||||
IdeFocusManager.getGlobalInstance().requestFocus(focus);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
+1
-1
@@ -277,7 +277,7 @@ final class SettingsEditor extends AbstractEditor implements DataProvider {
|
||||
public void run() {
|
||||
JComponent component = myEditor.getPreferredFocusedComponent();
|
||||
if (component != null) {
|
||||
IdeFocusManager.findInstanceByComponent(component).requestFocus(component, true);
|
||||
IdeFocusManager.findInstanceByComponent(component).requestFocus(component);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
+1
-1
@@ -63,7 +63,7 @@ abstract class SettingsFilter extends ElementFilter.Active.Impl<SimpleNode> {
|
||||
// request focus if needed on changing the filter text
|
||||
IdeFocusManager manager = IdeFocusManager.findInstanceByComponent(mySearch);
|
||||
if (manager.getFocusedDescendantFor(mySearch) == null) {
|
||||
manager.requestFocus(mySearch, true);
|
||||
manager.requestFocus(mySearch);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -331,7 +331,7 @@ class ProgressDialog implements Disposable {
|
||||
}
|
||||
}
|
||||
|
||||
myProgressWindow.getFocusManager().requestFocus(myCancelButton, true).doWhenDone(myRepaintRunnable);
|
||||
myProgressWindow.getFocusManager().requestFocus(myCancelButton).doWhenDone(myRepaintRunnable);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -148,7 +148,7 @@ public class FrameWrapper implements Disposable, DataProvider {
|
||||
}
|
||||
|
||||
if (toFocus != null) {
|
||||
fm.requestFocus(toFocus, true).notify(myFocusedCallback);
|
||||
fm.requestFocus(toFocus).notify(myFocusedCallback);
|
||||
} else {
|
||||
myFocusedCallback.setRejected();
|
||||
}
|
||||
|
||||
@@ -999,7 +999,7 @@ public class DialogWrapperPeerImpl extends DialogWrapperPeer implements FocusTra
|
||||
|
||||
if (toFocus != null) {
|
||||
if (isShowing() && isActive()) {
|
||||
getFocusManager().requestFocus(toFocus, true);
|
||||
getFocusManager().requestFocus(toFocus);
|
||||
notifyFocused(wrapper);
|
||||
}
|
||||
} else {
|
||||
|
||||
@@ -86,7 +86,7 @@ public class FocusManagerImpl extends IdeFocusManager implements Disposable {
|
||||
private final EdtAlarm myForcedFocusRequestsAlarm;
|
||||
|
||||
private final SimpleTimer myTimer = SimpleTimer.newInstance("FocusManager timer");
|
||||
|
||||
|
||||
private final EdtAlarm myIdleAlarm;
|
||||
private final Set<Runnable> myIdleRequests = new LinkedHashSet<Runnable>();
|
||||
|
||||
@@ -194,17 +194,54 @@ public class FocusManagerImpl extends IdeFocusManager implements Disposable {
|
||||
|
||||
@Override
|
||||
@NotNull
|
||||
public ActionCallback requestFocus(@NotNull Component c, @NotNull Throwable creationTrace) {
|
||||
return requestFocus(new FocusCommand.ByComponent(c, creationTrace));
|
||||
}
|
||||
|
||||
@Override
|
||||
@NotNull
|
||||
public ActionCallback requestFocus(@NotNull final Component c) {
|
||||
return requestFocus(new FocusCommand.ByComponent(c, new Exception()));
|
||||
}
|
||||
|
||||
@Override
|
||||
@NotNull
|
||||
public ActionCallback requestFocus(@NotNull final FocusCommand command) {
|
||||
assertDispatchThread();
|
||||
|
||||
if (isInternalMode) {
|
||||
recordCommand(command, command.getAllocation());
|
||||
}
|
||||
final ActionCallback result = new ActionCallback();
|
||||
|
||||
myActivityMonitor.addActivity(FOCUS, ModalityState.any());
|
||||
_requestFocus(command, result);
|
||||
|
||||
result.doWhenProcessed(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
restartIdleAlarm();
|
||||
}
|
||||
});
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Deprecated
|
||||
@NotNull
|
||||
public ActionCallback requestFocus(@NotNull final Component c, final boolean forced) {
|
||||
return requestFocus(new FocusCommand.ByComponent(c, new Exception()), forced);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Deprecated
|
||||
@NotNull
|
||||
public ActionCallback requestFocus(@NotNull final FocusCommand command, final boolean forced) {
|
||||
assertDispatchThread();
|
||||
|
||||
if (isInternalMode) {
|
||||
recordCommand(command, new Throwable(), forced);
|
||||
recordCommand(command, new Throwable());
|
||||
}
|
||||
final ActionCallback result = new ActionCallback();
|
||||
|
||||
@@ -224,12 +261,12 @@ public class FocusManagerImpl extends IdeFocusManager implements Disposable {
|
||||
@Override
|
||||
public void run() {
|
||||
resetUnforcedCommand(command);
|
||||
_requestFocus(command, forced, result);
|
||||
_requestFocus(command, result);
|
||||
}
|
||||
});
|
||||
}
|
||||
else {
|
||||
_requestFocus(command, forced, result);
|
||||
_requestFocus(command, result);
|
||||
}
|
||||
|
||||
result.doWhenProcessed(new Runnable() {
|
||||
@@ -247,95 +284,84 @@ public class FocusManagerImpl extends IdeFocusManager implements Disposable {
|
||||
return myRequests;
|
||||
}
|
||||
|
||||
public void recordFocusRequest(Component c, boolean forced) {
|
||||
myRequests.add(new FocusRequestInfo(c, new Throwable(), forced));
|
||||
public void recordFocusRequest(Component c, @NotNull Throwable causeTrace) {
|
||||
myRequests.add(new FocusRequestInfo(c, causeTrace));
|
||||
if (myRequests.size() > 200) {
|
||||
myRequests.removeFirst();
|
||||
}
|
||||
}
|
||||
|
||||
private void recordCommand(@NotNull FocusCommand command, @NotNull Throwable trace, boolean forced) {
|
||||
private void recordCommand(@NotNull FocusCommand command, @NotNull Throwable trace) {
|
||||
if (FocusTracesAction.isActive()) {
|
||||
recordFocusRequest(command.getDominationComponent(), forced);
|
||||
recordFocusRequest(command.getDominationComponent(), trace);
|
||||
}
|
||||
}
|
||||
|
||||
private void _requestFocus(@NotNull final FocusCommand command, final boolean forced, @NotNull final ActionCallback result) {
|
||||
private void _requestFocus(@NotNull final FocusCommand command, @NotNull final ActionCallback result) {
|
||||
result.doWhenProcessed(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
maybeRemoveFocusActivity();
|
||||
}
|
||||
});
|
||||
|
||||
if (checkForRejectOrByPass(command, forced, result)) return;
|
||||
|
||||
if (checkForRejectOrByPass(command, result)) return;
|
||||
|
||||
setCommand(command);
|
||||
command.setCallback(result);
|
||||
|
||||
if (forced) {
|
||||
myForcedFocusRequestsAlarm.cancelAllRequests();
|
||||
setLastEffectiveForcedRequest(command);
|
||||
myForcedFocusRequestsAlarm.cancelAllRequests();
|
||||
setLastEffectiveForcedRequest(command);
|
||||
|
||||
if (checkForRejectOrByPass(command, result)) return;
|
||||
|
||||
if (myRequestFocusCmd == command) {
|
||||
final TimedOutCallback focusTimeout =
|
||||
new TimedOutCallback(Registry.intValue("actionSystem.commandProcessingTimeout"),
|
||||
"Focus command timed out, cmd=" + command, command.getAllocation(), true) {
|
||||
@Override
|
||||
protected void onTimeout() {
|
||||
forceFinishFocusSettleDown(command, result);
|
||||
}
|
||||
};
|
||||
|
||||
if (command.invalidatesRequestors()) {
|
||||
myCmdTimestamp++;
|
||||
}
|
||||
revalidateFurtherRequestors();
|
||||
if (command.invalidatesRequestors()) {
|
||||
myForcedCmdTimestamp++;
|
||||
}
|
||||
revalidateFurtherRequestors();
|
||||
|
||||
command.run().doWhenDone(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
UIUtil.invokeLaterIfNeeded(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
resetCommand(command, false);
|
||||
result.setDone();
|
||||
}
|
||||
});
|
||||
}
|
||||
}).doWhenRejected(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
result.setRejected();
|
||||
resetCommand(command, true);
|
||||
}
|
||||
}).doWhenProcessed(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
myForcedFocusRequestsAlarm.addRequest(new SetLastEffectiveRunnable(), 250);
|
||||
}
|
||||
}).notify(focusTimeout);
|
||||
}
|
||||
else {
|
||||
rejectCommand(command, result);
|
||||
}
|
||||
|
||||
SwingUtilities.invokeLater(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
if (checkForRejectOrByPass(command, forced, result)) return;
|
||||
|
||||
if (myRequestFocusCmd == command) {
|
||||
final TimedOutCallback focusTimeout =
|
||||
new TimedOutCallback(Registry.intValue("actionSystem.commandProcessingTimeout"),
|
||||
"Focus command timed out, cmd=" + command, command.getAllocation(), true) {
|
||||
@Override
|
||||
protected void onTimeout() {
|
||||
forceFinishFocusSettleDown(command, result);
|
||||
}
|
||||
};
|
||||
|
||||
if (command.invalidatesRequestors()) {
|
||||
myCmdTimestamp++;
|
||||
}
|
||||
revalidateFurtherRequestors();
|
||||
if (forced) {
|
||||
if (command.invalidatesRequestors()) {
|
||||
myForcedCmdTimestamp++;
|
||||
}
|
||||
revalidateFurtherRequestors();
|
||||
}
|
||||
|
||||
command.setForced(forced);
|
||||
command.run().doWhenDone(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
UIUtil.invokeLaterIfNeeded(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
resetCommand(command, false);
|
||||
result.setDone();
|
||||
}
|
||||
});
|
||||
}
|
||||
}).doWhenRejected(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
result.setRejected();
|
||||
resetCommand(command, true);
|
||||
}
|
||||
}).doWhenProcessed(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
if (forced) {
|
||||
myForcedFocusRequestsAlarm.addRequest(new SetLastEffectiveRunnable(), 250);
|
||||
}
|
||||
}
|
||||
}).notify(focusTimeout);
|
||||
}
|
||||
else {
|
||||
rejectCommand(command, result);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void maybeRemoveFocusActivity() {
|
||||
@@ -344,7 +370,7 @@ public class FocusManagerImpl extends IdeFocusManager implements Disposable {
|
||||
}
|
||||
}
|
||||
|
||||
private boolean checkForRejectOrByPass(@NotNull FocusCommand cmd, final boolean forced, @NotNull ActionCallback result) {
|
||||
private boolean checkForRejectOrByPass(@NotNull FocusCommand cmd, @NotNull ActionCallback result) {
|
||||
if (cmd.isExpired()) {
|
||||
rejectCommand(cmd, result);
|
||||
return true;
|
||||
@@ -352,18 +378,6 @@ public class FocusManagerImpl extends IdeFocusManager implements Disposable {
|
||||
|
||||
final FocusCommand lastRequest = getLastEffectiveForcedRequest();
|
||||
|
||||
if (!forced && !isUnforcedRequestAllowed()) {
|
||||
if (cmd.equals(lastRequest)) {
|
||||
resetCommand(cmd, false);
|
||||
result.setDone();
|
||||
}
|
||||
else {
|
||||
rejectCommand(cmd, result);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
if (lastRequest != null && lastRequest.dominatesOver(cmd)) {
|
||||
rejectCommand(cmd, result);
|
||||
return true;
|
||||
@@ -640,12 +654,12 @@ public class FocusManagerImpl extends IdeFocusManager implements Disposable {
|
||||
private boolean processFocusRevalidation() {
|
||||
ExpirableRunnable revalidator = myFocusRevalidator;
|
||||
myFocusRevalidator = null;
|
||||
|
||||
|
||||
if (revalidator != null && !revalidator.isExpired()) {
|
||||
revalidator.run();
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -661,7 +675,7 @@ public class FocusManagerImpl extends IdeFocusManager implements Disposable {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
maybeRemoveFocusActivity();
|
||||
}
|
||||
|
||||
@@ -795,14 +809,14 @@ public class FocusManagerImpl extends IdeFocusManager implements Disposable {
|
||||
|
||||
myTypeAheadRequestors.add(done);
|
||||
done.notify(new TimedOutCallback(Registry.intValue("actionSystem.commandProcessingTimeout"),
|
||||
"Typeahead request blocked",
|
||||
new Exception() {
|
||||
@Override
|
||||
public String getMessage() {
|
||||
return "Time: " + (System.currentTimeMillis() - currentTime);
|
||||
}
|
||||
},
|
||||
true).doWhenProcessed(new Runnable() {
|
||||
"Typeahead request blocked",
|
||||
new Exception() {
|
||||
@Override
|
||||
public String getMessage() {
|
||||
return "Time: " + (System.currentTimeMillis() - currentTime);
|
||||
}
|
||||
},
|
||||
true).doWhenProcessed(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
if (myTypeAheadRequestors.remove(done)) {
|
||||
@@ -868,7 +882,7 @@ public class FocusManagerImpl extends IdeFocusManager implements Disposable {
|
||||
private static boolean isModalContextPopup(@NotNull JRootPane rootPane) {
|
||||
final JBPopup popup = (JBPopup)rootPane.getClientProperty(JBPopup.KEY);
|
||||
return popup != null && popup.isModalContext();
|
||||
}
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
@@ -906,7 +920,7 @@ public class FocusManagerImpl extends IdeFocusManager implements Disposable {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void revalidateFocus(@NotNull final ExpirableRunnable runnable) {
|
||||
SwingUtilities.invokeLater(new Runnable() {
|
||||
@@ -940,7 +954,7 @@ public class FocusManagerImpl extends IdeFocusManager implements Disposable {
|
||||
if (permOwner != null) {
|
||||
result = permOwner;
|
||||
}
|
||||
|
||||
|
||||
if (UIUtil.isMeaninglessFocusOwner(result)) {
|
||||
result = KeyboardFocusManager.getCurrentKeyboardFocusManager().getActiveWindow();
|
||||
}
|
||||
@@ -1012,6 +1026,39 @@ public class FocusManagerImpl extends IdeFocusManager implements Disposable {
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public ActionCallback requestFocus(@NotNull Component c) {
|
||||
final ActionCallback result = isExpired() ? ActionCallback.REJECTED : myManager.requestFocus(c);
|
||||
result.doWhenProcessed(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
Disposer.dispose(FurtherRequestor.this);
|
||||
}
|
||||
});
|
||||
return result;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public ActionCallback requestFocus(@NotNull FocusCommand command) {
|
||||
return isExpired() ? ActionCallback.REJECTED : myManager.requestFocus(command);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public ActionCallback requestFocus(@NotNull Component c, @NotNull Throwable creationTrace) {
|
||||
final ActionCallback result = isExpired() ? ActionCallback.REJECTED : myManager.requestFocus(c, creationTrace);
|
||||
result.doWhenProcessed(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
Disposer.dispose(FurtherRequestor.this);
|
||||
}
|
||||
});
|
||||
return result;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
@Deprecated
|
||||
public ActionCallback requestFocus(@NotNull Component c, boolean forced) {
|
||||
final ActionCallback result = isExpired() ? ActionCallback.REJECTED : myManager.requestFocus(c, forced);
|
||||
result.doWhenProcessed(new Runnable() {
|
||||
@@ -1029,6 +1076,7 @@ public class FocusManagerImpl extends IdeFocusManager implements Disposable {
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
@Deprecated
|
||||
public ActionCallback requestFocus(@NotNull FocusCommand command, boolean forced) {
|
||||
return isExpired() ? ActionCallback.REJECTED : myManager.requestFocus(command, forced);
|
||||
}
|
||||
@@ -1042,7 +1090,7 @@ public class FocusManagerImpl extends IdeFocusManager implements Disposable {
|
||||
|
||||
class EdtAlarm {
|
||||
private final Set<EdtRunnable> myRequests = new HashSet<EdtRunnable>();
|
||||
|
||||
|
||||
public void cancelAllRequests() {
|
||||
for (EdtRunnable each : myRequests) {
|
||||
each.expire();
|
||||
@@ -1078,7 +1126,7 @@ public class FocusManagerImpl extends IdeFocusManager implements Disposable {
|
||||
myCallbackOnActivation = null;
|
||||
|
||||
if (cmd != null) {
|
||||
requestFocus(cmd, true).notify(callback);
|
||||
requestFocus(cmd).notify(callback);
|
||||
} else {
|
||||
focusLastFocusedComponent(ideFrame);
|
||||
}
|
||||
@@ -1086,12 +1134,12 @@ public class FocusManagerImpl extends IdeFocusManager implements Disposable {
|
||||
|
||||
@Override
|
||||
public void delayedApplicationDeactivated(IdeFrame ideFrame) {
|
||||
final Component owner = KeyboardFocusManager.getCurrentKeyboardFocusManager().getFocusOwner();
|
||||
Component parent = UIUtil.findUltimateParent(owner);
|
||||
final Component owner = KeyboardFocusManager.getCurrentKeyboardFocusManager().getFocusOwner();
|
||||
Component parent = UIUtil.findUltimateParent(owner);
|
||||
|
||||
if (parent == ideFrame) {
|
||||
myLastFocusedAtDeactivation.put(ideFrame, owner);
|
||||
}
|
||||
if (parent == ideFrame) {
|
||||
myLastFocusedAtDeactivation.put(ideFrame, owner);
|
||||
}
|
||||
}
|
||||
|
||||
private void focusLastFocusedComponent(IdeFrame ideFrame) {
|
||||
@@ -1108,7 +1156,7 @@ public class FocusManagerImpl extends IdeFocusManager implements Disposable {
|
||||
if (policy != null) {
|
||||
policy.setNoDefaultComponent(true, FocusManagerImpl.this);
|
||||
}
|
||||
requestFocus(c, false).doWhenProcessed(new Runnable() {
|
||||
requestFocus(c).doWhenProcessed(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
if (policy != null) {
|
||||
@@ -1176,16 +1224,16 @@ public class FocusManagerImpl extends IdeFocusManager implements Disposable {
|
||||
} else if (each instanceof JWindow) {
|
||||
toFocus = getFocusTargetFor(((JWindow)each).getRootPane());
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (toFocus != null) {
|
||||
return requestFocus(new FocusCommand.ByComponent(toFocus, new Exception()).setToInvalidateRequestors(false), forced);
|
||||
}
|
||||
|
||||
|
||||
|
||||
if (toFocus != null) {
|
||||
return requestFocus(new FocusCommand.ByComponent(toFocus, new Exception()).setToInvalidateRequestors(false));
|
||||
}
|
||||
|
||||
|
||||
return ActionCallback.DONE;
|
||||
}
|
||||
|
||||
|
||||
@@ -28,11 +28,9 @@ public final class FocusRequestInfo {
|
||||
private static final SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("HH:mm:ss.SSS");
|
||||
private final String when;
|
||||
private final Throwable trace;
|
||||
private final boolean forced;
|
||||
private Component component;
|
||||
|
||||
public FocusRequestInfo(Component c, Throwable trace, boolean forced) {
|
||||
this.forced = forced;
|
||||
public FocusRequestInfo(Component c, Throwable trace) {
|
||||
this.trace = trace;
|
||||
when = DATE_FORMAT.format(new Date());
|
||||
component = c;
|
||||
@@ -42,10 +40,6 @@ public final class FocusRequestInfo {
|
||||
return ExceptionUtil.getThrowableText(trace);
|
||||
}
|
||||
|
||||
public boolean isForced() {
|
||||
return forced;
|
||||
}
|
||||
|
||||
public String getDate() {
|
||||
return when;
|
||||
}
|
||||
|
||||
@@ -35,12 +35,32 @@ public class IdeFocusManagerHeadless extends IdeFocusManager {
|
||||
|
||||
@Override
|
||||
@NotNull
|
||||
public ActionCallback requestFocus(@NotNull final Component c) {
|
||||
return ActionCallback.DONE;
|
||||
}
|
||||
|
||||
@Override
|
||||
@NotNull
|
||||
public ActionCallback requestFocus(@NotNull final FocusCommand command) {
|
||||
return ActionCallback.DONE;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public ActionCallback requestFocus(@NotNull Component c, @NotNull Throwable creationTrace) {
|
||||
return ActionCallback.DONE;
|
||||
}
|
||||
|
||||
@Override
|
||||
@NotNull
|
||||
@Deprecated
|
||||
public ActionCallback requestFocus(@NotNull final Component c, final boolean forced) {
|
||||
return ActionCallback.DONE;
|
||||
}
|
||||
|
||||
@Override
|
||||
@NotNull
|
||||
@Deprecated
|
||||
public ActionCallback requestFocus(@NotNull final FocusCommand command, final boolean forced) {
|
||||
return ActionCallback.DONE;
|
||||
}
|
||||
|
||||
@@ -37,12 +37,32 @@ public class IdeFocusManagerImpl extends IdeFocusManager {
|
||||
myToolWindowManager = twManager;
|
||||
}
|
||||
|
||||
@Override
|
||||
@NotNull
|
||||
public ActionCallback requestFocus(@NotNull final Component c) {
|
||||
return getGlobalInstance().requestFocus(c, new Throwable());
|
||||
}
|
||||
|
||||
@Override
|
||||
@NotNull
|
||||
public ActionCallback requestFocus(@NotNull final FocusCommand command) {
|
||||
return getGlobalInstance().requestFocus(command);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public ActionCallback requestFocus(@NotNull Component c, @NotNull Throwable creationTrace) {
|
||||
return getGlobalInstance().requestFocus(c, creationTrace);
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
@Override
|
||||
@NotNull
|
||||
public ActionCallback requestFocus(@NotNull final Component c, final boolean forced) {
|
||||
return getGlobalInstance().requestFocus(c, forced);
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
@Override
|
||||
@NotNull
|
||||
public ActionCallback requestFocus(@NotNull final FocusCommand command, final boolean forced) {
|
||||
|
||||
@@ -665,6 +665,7 @@ public final class ToolWindowManagerImpl extends ToolWindowManagerEx implements
|
||||
}
|
||||
else {
|
||||
final FocusRequestor requestor = getFocusManager().getFurtherRequestor();
|
||||
final Throwable creationTrace = new Throwable();
|
||||
getFocusManager().doWhenFocusSettlesDown(new ExpirableRunnable.ForProject(myProject) {
|
||||
@Override
|
||||
public void run() {
|
||||
@@ -675,7 +676,7 @@ public final class ToolWindowManagerImpl extends ToolWindowManagerEx implements
|
||||
runnable.run();
|
||||
return ActionCallback.DONE;
|
||||
}
|
||||
}.setExpirable(runnable), forced);
|
||||
}.setExpirable(runnable));
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -726,7 +727,7 @@ public final class ToolWindowManagerImpl extends ToolWindowManagerEx implements
|
||||
}
|
||||
return ActionCallback.DONE;
|
||||
}
|
||||
}, false);
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -2485,7 +2486,7 @@ public final class ToolWindowManagerImpl extends ToolWindowManagerEx implements
|
||||
public ActionCallback run() {
|
||||
return processDefaultFocusRequest(forced);
|
||||
}
|
||||
}, forced);
|
||||
});
|
||||
}
|
||||
|
||||
private void focusToolWinowByDefault(@Nullable String idToIngore) {
|
||||
@@ -2544,7 +2545,7 @@ public final class ToolWindowManagerImpl extends ToolWindowManagerEx implements
|
||||
if (DialogWrapper.findInstance(toFocus) != null) {
|
||||
return ActionCallback.DONE; //IDEA-80929
|
||||
}
|
||||
return IdeFocusManager.findInstanceByComponent(toFocus).requestFocus(toFocus, forced);
|
||||
return IdeFocusManager.findInstanceByComponent(toFocus).requestFocus(toFocus);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2557,12 +2558,12 @@ public final class ToolWindowManagerImpl extends ToolWindowManagerEx implements
|
||||
*/
|
||||
@NotNull
|
||||
public ActionCallback requestFocus(@NotNull Component c, boolean forced) {
|
||||
return IdeFocusManager.getInstance(myProject).requestFocus(c, forced);
|
||||
return IdeFocusManager.getInstance(myProject).requestFocus(c);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public ActionCallback requestFocus(@NotNull FocusCommand command, boolean forced) {
|
||||
return IdeFocusManager.getInstance(myProject).requestFocus(command, forced);
|
||||
return IdeFocusManager.getInstance(myProject).requestFocus(command);
|
||||
}
|
||||
|
||||
public void doWhenFocusSettlesDown(@NotNull Runnable runnable) {
|
||||
|
||||
+6
-5
@@ -26,6 +26,7 @@ import com.intellij.openapi.fileEditor.impl.EditorsSplitters;
|
||||
import com.intellij.openapi.util.ActionCallback;
|
||||
import com.intellij.openapi.util.Expirable;
|
||||
import com.intellij.openapi.util.SystemInfo;
|
||||
import com.intellij.openapi.util.Throwable2Computable;
|
||||
import com.intellij.openapi.util.registry.Registry;
|
||||
import com.intellij.openapi.wm.IdeFocusManager;
|
||||
import com.intellij.openapi.wm.impl.FloatingDecorator;
|
||||
@@ -49,14 +50,14 @@ public final class RequestFocusInEditorComponentCmd extends FinalizableCommand{
|
||||
|
||||
private static final Logger LOG = Logger.getInstance("#com.intellij.openapi.wm.impl.commands.RequestFocusInEditorComponentCmd");
|
||||
|
||||
private final Throwable myCreationTrace;
|
||||
|
||||
public RequestFocusInEditorComponentCmd(@NotNull final EditorsSplitters splitters, IdeFocusManager
|
||||
focusManager, final Runnable finishCallBack, boolean forced){
|
||||
super(finishCallBack);
|
||||
|
||||
boolean shouldLogFocuses = Registry.is("ide.log.focuses");
|
||||
if (shouldLogFocuses) {
|
||||
LOG.info(new Exception());
|
||||
}
|
||||
myCreationTrace = new Throwable();
|
||||
|
||||
myComponent = null;
|
||||
final EditorWindow window = splitters.getCurrentWindow();
|
||||
if (window != null) {
|
||||
@@ -104,7 +105,7 @@ public final class RequestFocusInEditorComponentCmd extends FinalizableCommand{
|
||||
|
||||
if(myComponent != null){
|
||||
final boolean forced = KeyboardFocusManager.getCurrentKeyboardFocusManager().getFocusOwner() == null;
|
||||
myFocusManager.requestFocus(myComponent, myForced || forced).notifyWhenDone(myDoneCallback).doWhenDone(new Runnable() {
|
||||
myFocusManager.requestFocus(myComponent, myCreationTrace).notifyWhenDone(myDoneCallback).doWhenDone(new Runnable() {
|
||||
public void run() {
|
||||
if (SystemInfo.isLinux && Registry.is("suppress.focus.stealing")) return;
|
||||
// if owner is active window or it has active child window which isn't floating decorator then
|
||||
|
||||
+6
-2
@@ -46,12 +46,16 @@ public final class RequestFocusInToolWindowCmd extends FinalizableCommand {
|
||||
private final boolean myForced;
|
||||
private final Expirable myTimestamp;
|
||||
|
||||
private final Throwable myAllocation;
|
||||
|
||||
public RequestFocusInToolWindowCmd(IdeFocusManager focusManager, final ToolWindowImpl toolWindow, final FocusWatcher focusWatcher, final Runnable finishCallBack, boolean forced) {
|
||||
super(finishCallBack);
|
||||
myToolWindow = toolWindow;
|
||||
myFocusWatcher = focusWatcher;
|
||||
myForced = forced;
|
||||
|
||||
myAllocation = new Throwable();
|
||||
|
||||
myTimestamp = focusManager.getTimestamp(true);
|
||||
}
|
||||
|
||||
@@ -176,7 +180,7 @@ public final class RequestFocusInToolWindowCmd extends FinalizableCommand {
|
||||
public ActionCallback run() {
|
||||
return ActionCallback.DONE;
|
||||
}
|
||||
}, myForced).doWhenProcessed(new Runnable() {
|
||||
}).doWhenProcessed(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
updateToolWindow(c);
|
||||
@@ -184,7 +188,7 @@ public final class RequestFocusInToolWindowCmd extends FinalizableCommand {
|
||||
}).notify(result);
|
||||
}
|
||||
else {
|
||||
myManager.getFocusManager().requestFocus(new FocusCommand.ByComponent(c, myToolWindow.getComponent(), new Exception()), myForced)
|
||||
myManager.getFocusManager().requestFocus(new FocusCommand.ByComponent(c, myToolWindow.getComponent(), myAllocation))
|
||||
.doWhenProcessed(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
|
||||
@@ -479,7 +479,7 @@ public class BalloonImpl implements Balloon, IdeTooltip.Ui {
|
||||
public void run() {
|
||||
IdeEventQueue.getInstance().disableInputMethods(BalloonImpl.this);
|
||||
originalFocusOwner.set(myFocusManager.getFocusOwner());
|
||||
myFocusManager.requestFocus(glassPane.getProxyComponent(), true).notify(proxyFocusRequest.get());
|
||||
myFocusManager.requestFocus(glassPane.getProxyComponent()).notify(proxyFocusRequest.get());
|
||||
focusRequestor.set(myFocusManager.getFurtherRequestor());
|
||||
}
|
||||
});
|
||||
@@ -559,7 +559,7 @@ public class BalloonImpl implements Balloon, IdeTooltip.Ui {
|
||||
proxyFocusRequest.get().doWhenDone(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
myFocusManager.requestFocus(originalFocusOwner.get(), true);
|
||||
myFocusManager.requestFocus(originalFocusOwner.get());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -227,7 +227,7 @@ public abstract class FinderRecursivePanel<T> extends JBSplitter implements Data
|
||||
}
|
||||
|
||||
private void handleGotoPrevious() {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myList, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myList);
|
||||
}
|
||||
|
||||
private void handleGotoNext() {
|
||||
@@ -237,7 +237,7 @@ public abstract class FinderRecursivePanel<T> extends JBSplitter implements Data
|
||||
updateRightComponent(true);
|
||||
}
|
||||
}
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myList, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myList);
|
||||
}
|
||||
|
||||
private void installListActions(JBList list) {
|
||||
@@ -459,7 +459,7 @@ public abstract class FinderRecursivePanel<T> extends JBSplitter implements Data
|
||||
}
|
||||
}
|
||||
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(panel.myList, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(panel.myList);
|
||||
|
||||
myUpdateSelectedPathModeActive.set(false);
|
||||
}
|
||||
|
||||
@@ -216,7 +216,7 @@ public class FocusTrackback {
|
||||
final IdeFocusManager focusManager = IdeFocusManager.getInstance(project);
|
||||
cleanParentWindow();
|
||||
final Project finalProject = project;
|
||||
focusManager.requestFocus(new MyFocusCommand(), myForcedRestore).doWhenProcessed(new Runnable() {
|
||||
focusManager.requestFocus(new MyFocusCommand()).doWhenProcessed(new Runnable() {
|
||||
public void run() {
|
||||
dispose();
|
||||
}
|
||||
|
||||
@@ -530,7 +530,7 @@ public class ContentManagerImpl implements ContentManager, PropertyChangeListene
|
||||
boolean enabledFocus = getFocusManager().isFocusTransferEnabled();
|
||||
if (focused || requestFocus) {
|
||||
if (enabledFocus) {
|
||||
return getFocusManager().requestFocus(myFocusProxy, true).doWhenProcessed(new Runnable() {
|
||||
return getFocusManager().requestFocus(myFocusProxy).doWhenProcessed(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
selection.run().notify(result);
|
||||
@@ -646,7 +646,7 @@ public class ContentManagerImpl implements ContentManager, PropertyChangeListene
|
||||
public ActionCallback run() {
|
||||
return doRequestFocus(toSelect);
|
||||
}
|
||||
}, forced);
|
||||
});
|
||||
}
|
||||
|
||||
private IdeFocusManager getFocusManager() {
|
||||
|
||||
@@ -989,7 +989,7 @@ public class AbstractPopup implements JBPopup {
|
||||
|
||||
return ActionCallback.DONE;
|
||||
}
|
||||
}, true).notify(result).doWhenProcessed(new Runnable() {
|
||||
}).notify(result).doWhenProcessed(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
removeActivity();
|
||||
@@ -1003,7 +1003,7 @@ public class AbstractPopup implements JBPopup {
|
||||
|
||||
return result;
|
||||
}
|
||||
}, true).doWhenRejected(new Runnable() {
|
||||
}).doWhenRejected(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
afterShow.run();
|
||||
@@ -1025,7 +1025,7 @@ public class AbstractPopup implements JBPopup {
|
||||
@Override
|
||||
public void run() {
|
||||
if (isFocused()) {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(prevOwner, false);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(prevOwner);
|
||||
}
|
||||
}
|
||||
}, Registry.intValue("actionSystem.xWindow.remove.focus.from.nonFocusable.popups.delay"));
|
||||
@@ -1204,7 +1204,7 @@ public class AbstractPopup implements JBPopup {
|
||||
_requestFocus();
|
||||
return ActionCallback.DONE;
|
||||
}
|
||||
}, true);
|
||||
});
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -285,7 +285,7 @@ public abstract class ValidatingTableEditor<Item> implements ComponentWithEmptyT
|
||||
myTable.scrollRectToVisible(myTable.getCellRect(row, 0, true));
|
||||
if (getTableModel().getColumnInfos()[1].isCellEditable(items.get(row))) {
|
||||
myTable.editCellAt(row, 1);
|
||||
IdeFocusManager.findInstanceByComponent(myContentPane).requestFocus(myTable.getEditorComponent(), true);
|
||||
IdeFocusManager.findInstanceByComponent(myContentPane).requestFocus(myTable.getEditorComponent());
|
||||
}
|
||||
updateMessage(-1, null);
|
||||
}
|
||||
|
||||
@@ -164,7 +164,7 @@ public abstract class JBListTable {
|
||||
@Override
|
||||
public void focusGained(FocusEvent e) {
|
||||
IdeFocusManager focusManager = IdeFocusManager.findInstanceByComponent(p);
|
||||
focusManager.requestFocus(getComponentToFocus(), true);
|
||||
focusManager.requestFocus(getComponentToFocus());
|
||||
}
|
||||
|
||||
private Component getComponentToFocus() {
|
||||
|
||||
+1
-1
@@ -727,7 +727,7 @@ public class SMTestRunnerResultsForm extends TestResultsPanel
|
||||
// Request focus if necessary
|
||||
if (requestFocus) {
|
||||
//myTreeView.requestFocusInWindow();
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myTreeView, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myTreeView);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
+1
-1
@@ -193,7 +193,7 @@ public class StatisticsPanel implements DataProvider {
|
||||
public void run() {
|
||||
// Select tab if focus was requested
|
||||
if (requestFocus) {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myStatisticsTableView, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myStatisticsTableView);
|
||||
}
|
||||
|
||||
// Select proxy in table
|
||||
|
||||
+2
-2
@@ -109,7 +109,7 @@ public class ExportTestResultsForm {
|
||||
b = myCustomTemplateRb;
|
||||
}
|
||||
b.setSelected(true);
|
||||
IdeFocusManager.findInstanceByComponent(myContentPane).requestFocus(b, true);
|
||||
IdeFocusManager.findInstanceByComponent(myContentPane).requestFocus(b);
|
||||
myFolderField.setText(defaultFolder);
|
||||
myCustomTemplateField.setText(FileUtil.toSystemDependentName(StringUtil.notNullize(config.getUserTemplatePath())));
|
||||
myOpenExportedFileCb.setSelected(config.isOpenResults());
|
||||
@@ -129,7 +129,7 @@ public class ExportTestResultsForm {
|
||||
private void updateOnFormatChange() {
|
||||
if (getExportFormat() == ExportTestResultsConfiguration.ExportFormat.UserTemplate) {
|
||||
myCustomTemplateField.setEnabled(true);
|
||||
IdeFocusManager.findInstanceByComponent(myContentPane).requestFocus(myCustomTemplateField.getChildComponent(), true);
|
||||
IdeFocusManager.findInstanceByComponent(myContentPane).requestFocus(myCustomTemplateField.getChildComponent());
|
||||
}
|
||||
else {
|
||||
myCustomTemplateField.setEnabled(false);
|
||||
|
||||
+1
-1
@@ -106,7 +106,7 @@ public class ChangeListChooserPanel extends JPanel {
|
||||
@Override
|
||||
public void focusGained(FocusEvent e) {
|
||||
if (myRbNew.isSelected()) {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myNewListPanel.getPreferredFocusedComponent(), true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myNewListPanel.getPreferredFocusedComponent());
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
+1
-1
@@ -315,7 +315,7 @@ public class CommitChangeListDialog extends DialogWrapper implements CheckinProj
|
||||
ApplicationManager.getApplication().invokeLater(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
IdeFocusManager.findInstance().requestFocus(myBrowser.getViewer().getPreferredFocusedComponent(), true);
|
||||
IdeFocusManager.findInstance().requestFocus(myBrowser.getViewer().getPreferredFocusedComponent());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -112,7 +112,7 @@ public class VcsLogManager implements Disposable {
|
||||
// todo fix selection
|
||||
final VcsLogGraphTable graphTable = myUi.getTable();
|
||||
if (graphTable.getRowCount() > 0) {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(graphTable, true).doWhenProcessed(new Runnable() {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(graphTable).doWhenProcessed(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
graphTable.setRowSelectionInterval(0, 0);
|
||||
|
||||
+1
-1
@@ -209,7 +209,7 @@ public class XLightBreakpointPropertiesPanel<B extends XBreakpointBase<?,?,?>> i
|
||||
compToFocus = myActionsPanel.getDefaultFocusComponent();
|
||||
}
|
||||
if (compToFocus != null) {
|
||||
IdeFocusManager.findInstance().requestFocus(compToFocus, false);
|
||||
IdeFocusManager.findInstance().requestFocus(compToFocus);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
+1
-1
@@ -123,7 +123,7 @@ public class XDebuggerEvaluationDialog extends DialogWrapper {
|
||||
new AnAction() {
|
||||
@Override
|
||||
public void actionPerformed(AnActionEvent e) {
|
||||
IdeFocusManager.getInstance(mySession.getProject()).requestFocus(myTreePanel.getTree(), true);
|
||||
IdeFocusManager.getInstance(mySession.getProject()).requestFocus(myTreePanel.getTree());
|
||||
}
|
||||
}.registerCustomShortcutSet(new CustomShortcutSet(KeyStroke.getKeyStroke(KeyEvent.VK_R, InputEvent.ALT_DOWN_MASK)), getRootPane(),
|
||||
myDisposable);
|
||||
|
||||
@@ -250,7 +250,7 @@ public class DebuggerUIUtil {
|
||||
ApplicationManager.getApplication().invokeLater(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
IdeFocusManager.findInstance().requestFocus(mainPanel, true);
|
||||
IdeFocusManager.findInstance().requestFocus(mainPanel);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -190,7 +190,7 @@ public abstract class XDebuggerEditorBase {
|
||||
public void requestFocusInEditor() {
|
||||
JComponent preferredFocusedComponent = getPreferredFocusedComponent();
|
||||
if (preferredFocusedComponent != null) {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(preferredFocusedComponent, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(preferredFocusedComponent);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -156,13 +156,13 @@ public class DomGenPanel {
|
||||
public boolean validate() {
|
||||
if (!new File(mySchemaLocation.getText()).exists()) {
|
||||
Messages.showErrorDialog(myProject, "Schema location doesn't exist", "Error");
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(mySchemaLocation, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(mySchemaLocation);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!new File(myOutputDir.getText()).exists()) {
|
||||
Messages.showErrorDialog(myProject, "Output dir doesn't exist", "Error");
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myOutputDir, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myOutputDir);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
@@ -215,7 +215,7 @@ public class GitPushTargetPanel extends PushTargetPanel<GitPushTarget> {
|
||||
if (myTargetEditor.isShowing()) {
|
||||
//repaint and force move focus to target editor component
|
||||
GitPushTargetPanel.this.repaint();
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myTargetEditor, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myTargetEditor);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
+1
-1
@@ -146,7 +146,7 @@ public class GradleModuleWizardStep extends ModuleWizardStep {
|
||||
ApplicationManager.getApplication().invokeLater(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
IdeFocusManager.getInstance(myProjectOrNull).requestFocus(myArtifactIdField, true);
|
||||
IdeFocusManager.getInstance(myProjectOrNull).requestFocus(myArtifactIdField);
|
||||
}
|
||||
});
|
||||
throw new ConfigurationException("Please, specify artifactId");
|
||||
|
||||
+1
-1
@@ -487,7 +487,7 @@ public class DynamicToolWindowWrapper {
|
||||
int row = tree.getRowForPath(path);
|
||||
myTreeTable.getSelectionModel().setSelectionInterval(row, row);
|
||||
myTreeTable.scrollRectToVisible(myTreeTable.getCellRect(row, 0, true));
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myTreeTable, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myTreeTable);
|
||||
}
|
||||
|
||||
public void removeFromParent(DefaultMutableTreeNode parent, DefaultMutableTreeNode child) {
|
||||
|
||||
+1
-1
@@ -148,7 +148,7 @@ public class GrDynamicImplicitProperty extends GrImplicitVariableImpl implements
|
||||
treeTable.getTree().setSelectionPath(path);
|
||||
treeTable.getTree().fireTreeExpanded(path);
|
||||
|
||||
ToolWindowManager.getInstance(myProject).getFocusManager().requestFocus(treeTable, true);
|
||||
ToolWindowManager.getInstance(myProject).getFocusManager().requestFocus(treeTable);
|
||||
treeTable.revalidate();
|
||||
treeTable.repaint();
|
||||
|
||||
|
||||
@@ -108,7 +108,7 @@ public class CopiesPanel {
|
||||
final Runnable focus = new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myRefreshLabel, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(myRefreshLabel);
|
||||
}
|
||||
};
|
||||
final Runnable refreshView = new Runnable() {
|
||||
|
||||
+1
-1
@@ -137,7 +137,7 @@ public class IntersectingLocalChangesPanel {
|
||||
ContentsUtil.addContent(contentManager, content, true);
|
||||
toolWindow.activate(new Runnable() {
|
||||
public void run() {
|
||||
IdeFocusManager.getInstance(project).requestFocus(component.getPrefferedFocusComponent(), true);
|
||||
IdeFocusManager.getInstance(project).requestFocus(component.getPrefferedFocusComponent());
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
@@ -166,7 +166,7 @@ public abstract class AbstractTerminalRunner<T extends Process> {
|
||||
final ToolWindow window = ToolWindowManager.getInstance(myProject).getToolWindow(defaultExecutor.getId());
|
||||
window.activate(new Runnable() {
|
||||
public void run() {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(toFocus, true);
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(toFocus);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
+1
-1
@@ -133,7 +133,7 @@ public final class PropertyTablePanel extends JPanel implements ListSelectionLis
|
||||
|
||||
addMouseListener(new MouseAdapter() {
|
||||
public void mouseReleased(final MouseEvent e) {
|
||||
IdeFocusManager.getInstance(project).requestFocus(myPropertyTable, true);
|
||||
IdeFocusManager.getInstance(project).requestFocus(myPropertyTable);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
+2
-2
@@ -134,7 +134,7 @@ public class StudyCheckAction extends DumbAwareAction {
|
||||
}
|
||||
runAction.run(project);
|
||||
ApplicationManager.getApplication().invokeLater(
|
||||
() -> IdeFocusManager.getInstance(project).requestFocus(studyState.getEditor().getComponent(), true));
|
||||
() -> IdeFocusManager.getInstance(project).requestFocus(studyState.getEditor().getComponent()));
|
||||
|
||||
final StudyTestRunner testRunner = StudyUtils.getTestRunner(task, taskDir);
|
||||
Process testProcess = null;
|
||||
@@ -288,7 +288,7 @@ public class StudyCheckAction extends DumbAwareAction {
|
||||
}
|
||||
final Editor editorToNavigate = editor;
|
||||
ApplicationManager.getApplication().invokeLater(
|
||||
() -> IdeFocusManager.getInstance(project).requestFocus(editorToNavigate.getContentComponent(), true));
|
||||
() -> IdeFocusManager.getInstance(project).requestFocus(editorToNavigate.getContentComponent()));
|
||||
|
||||
StudyNavigator.navigateToFirstFailedAnswerPlaceholder(editor, taskFileToNavigate);
|
||||
}
|
||||
|
||||
+1
-1
@@ -77,7 +77,7 @@ public class StudyRefreshTaskFileAction extends DumbAwareAction {
|
||||
ApplicationManager.getApplication().invokeLater(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
IdeFocusManager.getInstance(project).requestFocus(editor.getContentComponent(), true);
|
||||
IdeFocusManager.getInstance(project).requestFocus(editor.getContentComponent());
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
@@ -60,7 +60,7 @@ public class PyOpenDebugConsoleAction extends AnAction implements DumbAware {
|
||||
@Override
|
||||
public void consume(PythonDebugLanguageConsoleView view) {
|
||||
view.enableConsole(false);
|
||||
IdeFocusManager.getInstance(project).requestFocus(view.getPydevConsoleView().getComponent(), true);
|
||||
IdeFocusManager.getInstance(project).requestFocus(view.getPydevConsoleView().getComponent());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -97,7 +97,7 @@ public class PythonConsoleView extends LanguageConsoleImpl implements Observable
|
||||
|
||||
@Override
|
||||
public void requestFocus() {
|
||||
IdeFocusManager.findInstance().requestFocus(getConsoleEditor().getContentComponent(), true);
|
||||
IdeFocusManager.findInstance().requestFocus(getConsoleEditor().getContentComponent());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -71,7 +71,7 @@ public class PythonDebugLanguageConsoleView extends DuplexConsoleView<ConsoleVie
|
||||
if (!primary && !isPrimaryConsoleEnabled()) {
|
||||
PythonConsoleView console = getPydevConsoleView();
|
||||
|
||||
IdeFocusManager.findInstance().requestFocus(console.getConsoleEditor().getContentComponent(), true);
|
||||
IdeFocusManager.findInstance().requestFocus(console.getConsoleEditor().getContentComponent());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user