mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
NPE in editor based widget 2 [anna.kozloava]
This commit is contained in:
@@ -301,7 +301,7 @@ public class IdeFrameImpl extends JFrame implements IdeFrame, DataProvider {
|
||||
|
||||
InsertOverwritePanel insertOverwritePanel = null;
|
||||
if (!SystemInfo.isMac) {
|
||||
insertOverwritePanel = new InsertOverwritePanel();
|
||||
insertOverwritePanel = new InsertOverwritePanel(project);
|
||||
statusBar.addWidget(insertOverwritePanel, "after Encoding");
|
||||
statusBar.addWidget(readOnlyAttributePanel, "after InsertOverwrite");
|
||||
} else {
|
||||
|
||||
+3
-12
@@ -35,7 +35,7 @@ import org.jetbrains.annotations.Nullable;
|
||||
public abstract class EditorBasedWidget extends FileEditorManagerAdapter implements StatusBarWidget {
|
||||
|
||||
protected StatusBar myStatusBar;
|
||||
protected Project myProject;
|
||||
private Project myProject;
|
||||
|
||||
protected MessageBusConnection myConnection;
|
||||
|
||||
@@ -45,9 +45,6 @@ public abstract class EditorBasedWidget extends FileEditorManagerAdapter impleme
|
||||
myConnection.subscribe(FileEditorManagerListener.FILE_EDITOR_MANAGER, this);
|
||||
}
|
||||
|
||||
protected EditorBasedWidget() {
|
||||
}
|
||||
|
||||
@Nullable
|
||||
protected final Editor getEditor() {
|
||||
final Project project = getProject();
|
||||
@@ -55,7 +52,7 @@ public abstract class EditorBasedWidget extends FileEditorManagerAdapter impleme
|
||||
|
||||
if (project == null) return null;
|
||||
|
||||
DockContainer c = DockManager.getInstance(myProject).getContainerFor(myStatusBar.getComponent());
|
||||
DockContainer c = DockManager.getInstance(project).getContainerFor(myStatusBar.getComponent());
|
||||
EditorsSplitters splitters = null;
|
||||
if (c instanceof DockableEditorTabbedContainer) {
|
||||
splitters = ((DockableEditorTabbedContainer)c).getSplitters();
|
||||
@@ -99,13 +96,7 @@ public abstract class EditorBasedWidget extends FileEditorManagerAdapter impleme
|
||||
|
||||
@Nullable
|
||||
protected final Project getProject() {
|
||||
if (myProject != null) return myProject;
|
||||
|
||||
if (myStatusBar != null && myStatusBar.getFrame() != null) {
|
||||
return myStatusBar.getFrame().getProject();
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
return myProject;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-1
@@ -36,6 +36,10 @@ import java.awt.event.MouseEvent;
|
||||
*/
|
||||
public class InsertOverwritePanel extends EditorBasedWidget implements StatusBarWidget.Multiframe, StatusBarWidget.TextPresentation {
|
||||
|
||||
public InsertOverwritePanel(Project project) {
|
||||
super(project);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public String ID() {
|
||||
return "InsertOverwrite";
|
||||
@@ -47,7 +51,7 @@ public class InsertOverwritePanel extends EditorBasedWidget implements StatusBar
|
||||
|
||||
@Override
|
||||
public StatusBarWidget copy() {
|
||||
return new InsertOverwritePanel();
|
||||
return new InsertOverwritePanel(getProject());
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user