mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
navigate to the first task window after file refresh and IDE restart
This commit is contained in:
@@ -6,6 +6,8 @@ import com.intellij.openapi.actionSystem.ex.AnActionListener;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.components.*;
|
||||
import com.intellij.openapi.editor.EditorFactory;
|
||||
import com.intellij.openapi.fileEditor.FileEditor;
|
||||
import com.intellij.openapi.fileEditor.FileEditorManager;
|
||||
import com.intellij.openapi.keymap.Keymap;
|
||||
import com.intellij.openapi.keymap.KeymapManager;
|
||||
import com.intellij.openapi.project.DumbAware;
|
||||
@@ -16,10 +18,7 @@ import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.openapi.vfs.VirtualFileAdapter;
|
||||
import com.intellij.openapi.vfs.VirtualFileEvent;
|
||||
import com.intellij.openapi.vfs.VirtualFileManager;
|
||||
import com.intellij.openapi.wm.ToolWindow;
|
||||
import com.intellij.openapi.wm.ToolWindowAnchor;
|
||||
import com.intellij.openapi.wm.ToolWindowId;
|
||||
import com.intellij.openapi.wm.ToolWindowManager;
|
||||
import com.intellij.openapi.wm.*;
|
||||
import com.intellij.util.xmlb.XmlSerializer;
|
||||
import com.jetbrains.python.edu.actions.StudyNextWindowAction;
|
||||
import com.jetbrains.python.edu.actions.StudyPrevWindowAction;
|
||||
@@ -111,6 +110,13 @@ public class StudyTaskManager implements ProjectComponent, PersistentStateCompon
|
||||
@Override
|
||||
public void run() {
|
||||
ToolWindowManager.getInstance(myProject).getToolWindow(ToolWindowId.PROJECT_VIEW).show(null);
|
||||
FileEditor[] editors = FileEditorManager.getInstance(myProject).getSelectedEditors();
|
||||
if (editors.length > 0) {
|
||||
JComponent focusedComponent = editors[0].getPreferredFocusedComponent();
|
||||
if (focusedComponent != null) {
|
||||
IdeFocusManager.getInstance(myProject).requestFocus(focusedComponent, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
UISettings.getInstance().HIDE_TOOL_STRIPES = false;
|
||||
|
||||
+7
-1
@@ -11,8 +11,11 @@ import com.intellij.openapi.fileEditor.FileDocumentManager;
|
||||
import com.intellij.openapi.project.DumbAwareAction;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.ui.MessageType;
|
||||
import com.intellij.openapi.ui.popup.*;
|
||||
import com.intellij.openapi.ui.popup.Balloon;
|
||||
import com.intellij.openapi.ui.popup.BalloonBuilder;
|
||||
import com.intellij.openapi.ui.popup.JBPopupFactory;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.openapi.wm.IdeFocusManager;
|
||||
import com.jetbrains.python.edu.StudyDocumentListener;
|
||||
import com.jetbrains.python.edu.StudyTaskManager;
|
||||
import com.jetbrains.python.edu.StudyUtils;
|
||||
@@ -29,6 +32,7 @@ public class StudyRefreshTaskAction extends DumbAwareAction {
|
||||
@Override
|
||||
public void run() {
|
||||
ApplicationManager.getApplication().runWriteAction(new Runnable() {
|
||||
@SuppressWarnings("IOResourceOpenedButNotSafelyClosed")
|
||||
@Override
|
||||
public void run() {
|
||||
final Editor editor = StudyEditor.getSelectedEditor(project);
|
||||
@@ -93,6 +97,8 @@ public class StudyRefreshTaskAction extends DumbAwareAction {
|
||||
document.addDocumentListener(listener);
|
||||
}
|
||||
selectedTaskFile.drawAllWindows(editor);
|
||||
IdeFocusManager.getInstance(project).requestFocus(editor.getContentComponent(), true);
|
||||
selectedTaskFile.navigateToFirstTaskWindow(editor);
|
||||
BalloonBuilder balloonBuilder =
|
||||
JBPopupFactory.getInstance().createHtmlTextBalloonBuilder("You can now start again", MessageType.INFO, null);
|
||||
Balloon balloon = balloonBuilder.createBalloon();
|
||||
|
||||
Reference in New Issue
Block a user