mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
IDEA-162376 Compact Empty Middle Packages, Flatten Packages options in the Project toolwindow don't work any more
This commit is contained in:
@@ -532,11 +532,19 @@ public class ProjectViewImpl extends ProjectView implements PersistentStateCompo
|
||||
public void setSelected(AnActionEvent event, boolean flag) {
|
||||
final AbstractProjectViewPane viewPane = getCurrentProjectViewPane();
|
||||
final SelectionInfo selectionInfo = SelectionInfo.create(viewPane);
|
||||
|
||||
if (isGlobalOptions()) {
|
||||
setFlattenPackages(flag, viewPane.getId());
|
||||
}
|
||||
super.setSelected(event, flag);
|
||||
|
||||
selectionInfo.apply(viewPane);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isSelected(AnActionEvent event) {
|
||||
if (isGlobalOptions()) return getGlobalOptions().getFlattenPackages();
|
||||
return super.isSelected(event);
|
||||
}
|
||||
}).setAsSecondary(true);
|
||||
}
|
||||
|
||||
@@ -549,6 +557,14 @@ public class ProjectViewImpl extends ProjectView implements PersistentStateCompo
|
||||
super(optionsMap, text, description, icon, optionDefaultValue);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSelected(AnActionEvent event, boolean flag) {
|
||||
if (isGlobalOptions()) {
|
||||
getGlobalOptions().setFlattenPackages(flag);
|
||||
}
|
||||
super.setSelected(event, flag);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update(AnActionEvent e) {
|
||||
super.update(e);
|
||||
@@ -1376,8 +1392,12 @@ public class ProjectViewImpl extends ProjectView implements PersistentStateCompo
|
||||
public void setFlattenPackages(boolean flattenPackages, String paneId) {
|
||||
if (isGlobalOptions()) {
|
||||
getGlobalOptions().setFlattenPackages(flattenPackages);
|
||||
for (String pane : myFlattenPackages.keySet()) {
|
||||
setPaneOption(myFlattenPackages, flattenPackages, pane, true);
|
||||
}
|
||||
} else {
|
||||
setPaneOption(myFlattenPackages, flattenPackages, paneId, true);
|
||||
}
|
||||
setPaneOption(myFlattenPackages, flattenPackages, paneId, true);
|
||||
}
|
||||
|
||||
public boolean isFoldersAlwaysOnTop() {
|
||||
@@ -1477,8 +1497,12 @@ public class ProjectViewImpl extends ProjectView implements PersistentStateCompo
|
||||
public void setHideEmptyPackages(boolean hideEmptyPackages, @NotNull String paneId) {
|
||||
if (isGlobalOptions()) {
|
||||
getGlobalOptions().setHideEmptyPackages(hideEmptyPackages);
|
||||
for (String pane : myHideEmptyPackages.keySet()) {
|
||||
setPaneOption(myHideEmptyPackages, hideEmptyPackages, pane, true);
|
||||
}
|
||||
} else {
|
||||
setPaneOption(myHideEmptyPackages, hideEmptyPackages, paneId, true);
|
||||
}
|
||||
setPaneOption(myHideEmptyPackages, hideEmptyPackages, paneId, true);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -1516,16 +1540,25 @@ public class ProjectViewImpl extends ProjectView implements PersistentStateCompo
|
||||
final AbstractProjectViewPane viewPane = getCurrentProjectViewPane();
|
||||
final SelectionInfo selectionInfo = SelectionInfo.create(viewPane);
|
||||
|
||||
if (isGlobalOptions()) {
|
||||
getGlobalOptions().setHideEmptyPackages(flag);
|
||||
}
|
||||
super.setSelected(event, flag);
|
||||
|
||||
selectionInfo.apply(viewPane);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isSelected(AnActionEvent event) {
|
||||
if (isGlobalOptions()) return getGlobalOptions().getHideEmptyPackages();
|
||||
return super.isSelected(event);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update(AnActionEvent e) {
|
||||
super.update(e);
|
||||
final Presentation presentation = e.getPresentation();
|
||||
if (isFlattenPackages(myCurrentViewId)) {
|
||||
if (isHideEmptyMiddlePackages(myCurrentViewId)) {
|
||||
presentation.setText(IdeBundle.message("action.hide.empty.middle.packages"));
|
||||
presentation.setDescription(IdeBundle.message("action.show.hide.empty.middle.packages"));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user