Skip to content

Commit dce5c75

Browse files
committed
- Fix indentation in DocumentMarkupModelScanner
- Add/Move isEnableInlineProblem check to the start of the routines - Added IPAction for a problem reset and refresh method - version and changelog
1 parent 8566db9 commit dce5c75

File tree

10 files changed

+54
-25
lines changed

10 files changed

+54
-25
lines changed

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,11 @@
44

55
## [Unreleased]
66

7+
## [0.5.10]
8+
### Fixed
9+
- Fixed max lines feature 0-ignore logic (problems not appearing)
10+
- Fixed and improved the problem reset and refresh after using actions (keyboard shortcuts) to enable/disable severity levels or the whole plugin functionality
11+
712
## [0.5.9]
813
### Changed
914
- Added a max lines feature to exclude big files

gradle.properties

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,17 @@ pluginGroup = org.OverEngineer
22
pluginName = InlineProblems
33
pluginRepositoryUrl = https://github.com/OverEngineer/InlineProblems
44
# SemVer format -> https://semver.org
5-
pluginVersion = 0.5.9
5+
pluginVersion = 0.5.10
66

77
# Supported build number ranges and IntelliJ Platform versions -> https://plugins.jetbrains.com/docs/intellij/build-number-ranges.html
88
pluginSinceBuild = 212.5
99
pluginUntilBuild =
1010

1111
# IntelliJ Platform Properties -> https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html#configuration-intellij-extension
1212
platformType = IC
13+
#platformType = RD
1314
platformVersion = 2021.2.4
15+
#platformVersion = 2025.2.3
1416

1517
# Plugin Dependencies -> https://plugins.jetbrains.com/docs/intellij/plugin-dependencies.html
1618
# Example: platformPlugins = com.intellij.java, com.jetbrains.php:203.4449.22

src/main/java/org/overengineer/inlineproblems/DocumentMarkupModelScanner.java

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -80,23 +80,25 @@ public void dispose() {
8080
}
8181

8282
public void scanForProblemsManually() {
83+
if (!settingsState.isEnableInlineProblem()) {
84+
return;
85+
}
86+
8387
ProjectManager projectManager = ProjectManager.getInstanceIfCreated();
8488

8589
if (projectManager != null) {
8690
List<InlineProblem> problems = new ArrayList<>();
87-
if (settingsState.isEnableInlineProblem())
88-
for (var project : projectManager.getOpenProjects()) {
89-
if (!project.isInitialized() || project.isDisposed())
90-
continue;
91+
for (var project : projectManager.getOpenProjects()) {
92+
if (!project.isInitialized() || project.isDisposed())
93+
continue;
9194

92-
FileEditorManager fileEditorManager = FileEditorManager.getInstance(project);
93-
for (var editor : fileEditorManager.getAllEditors()) {
95+
FileEditorManager fileEditorManager = FileEditorManager.getInstance(project);
96+
for (var editor : fileEditorManager.getAllEditors()) {
9497

9598
if (editor instanceof TextEditor) {
9699
var textEditor = (TextEditor) editor;
97100

98-
if (
99-
editor.getFile() == null ||
101+
if (editor.getFile() == null ||
100102
FileUtil.ignoreFile(editor.getFile().getName(), textEditor.getEditor().getDocument().getLineCount())
101103
) {
102104
continue;
@@ -105,9 +107,8 @@ public void scanForProblemsManually() {
105107
problems.addAll(getProblemsInEditor(textEditor));
106108
}
107109
}
110+
problemManager.updateFromNewActiveProblems(problems);
108111
}
109-
110-
problemManager.updateFromNewActiveProblems(problems);
111112
}
112113
}
113114

src/main/java/org/overengineer/inlineproblems/actions/EnableInlineProblemsAction.java

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,13 @@
11
package org.overengineer.inlineproblems.actions;
22

33
import com.intellij.notification.NotificationType;
4-
import com.intellij.openapi.actionSystem.AnAction;
54
import com.intellij.openapi.actionSystem.AnActionEvent;
6-
import com.intellij.openapi.application.ApplicationManager;
75
import org.jetbrains.annotations.NotNull;
8-
import org.overengineer.inlineproblems.DocumentMarkupModelScanner;
96
import org.overengineer.inlineproblems.Notifier;
107
import org.overengineer.inlineproblems.bundles.SettingsBundle;
118
import org.overengineer.inlineproblems.settings.SettingsState;
129

13-
public class EnableInlineProblemsAction extends AnAction {
10+
public class EnableInlineProblemsAction extends IPAction {
1411

1512
@Override
1613
public void actionPerformed(@NotNull AnActionEvent anActionEvent) {
@@ -25,6 +22,6 @@ public void actionPerformed(@NotNull AnActionEvent anActionEvent) {
2522
);
2623
}
2724
settingsState.setEnableInlineProblem(!settingsState.isEnableInlineProblem());
28-
ApplicationManager.getApplication().invokeAndWait(DocumentMarkupModelScanner.getInstance()::scanForProblemsManually);
25+
resetOrRefreshProblems(settingsState);
2926
}
3027
}
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
package org.overengineer.inlineproblems.actions;
2+
3+
import com.intellij.openapi.actionSystem.AnAction;
4+
import com.intellij.openapi.application.ApplicationManager;
5+
import org.overengineer.inlineproblems.DocumentMarkupModelScanner;
6+
import org.overengineer.inlineproblems.ProblemManager;
7+
import org.overengineer.inlineproblems.settings.SettingsState;
8+
9+
public abstract class IPAction extends AnAction {
10+
11+
protected void resetOrRefreshProblems(SettingsState settingsState) {
12+
var app = ApplicationManager.getApplication();
13+
if (settingsState.isEnableInlineProblem()) {
14+
app.invokeLater(DocumentMarkupModelScanner.getInstance()::scanForProblemsManually);
15+
}
16+
else {
17+
var problemManager = app.getService(ProblemManager.class);
18+
if (problemManager != null) {
19+
problemManager.reset();
20+
}
21+
}
22+
}
23+
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
package org.overengineer.inlineproblems.actions;
22

3-
import com.intellij.openapi.actionSystem.AnAction;
43
import com.intellij.openapi.actionSystem.AnActionEvent;
54
import org.jetbrains.annotations.NotNull;
65
import org.overengineer.inlineproblems.settings.SettingsState;
76

8-
public class ShowErrorsAction extends AnAction {
7+
public class ShowErrorsAction extends IPAction {
98
@Override
109
public void actionPerformed(@NotNull AnActionEvent anActionEvent) {
1110
SettingsState settingsState = SettingsState.getInstance();
1211
settingsState.setShowErrors(!settingsState.isShowErrors());
12+
resetOrRefreshProblems(settingsState);
1313
}
1414
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
package org.overengineer.inlineproblems.actions;
22

3-
import com.intellij.openapi.actionSystem.AnAction;
43
import com.intellij.openapi.actionSystem.AnActionEvent;
54
import org.jetbrains.annotations.NotNull;
65
import org.overengineer.inlineproblems.settings.SettingsState;
76

8-
public class ShowInfosAction extends AnAction {
7+
public class ShowInfosAction extends IPAction {
98
@Override
109
public void actionPerformed(@NotNull AnActionEvent anActionEvent) {
1110
SettingsState settingsState = SettingsState.getInstance();
1211
settingsState.setShowInfos(!settingsState.isShowInfos());
12+
resetOrRefreshProblems(settingsState);
1313
}
1414
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
package org.overengineer.inlineproblems.actions;
22

3-
import com.intellij.openapi.actionSystem.AnAction;
43
import com.intellij.openapi.actionSystem.AnActionEvent;
54
import org.jetbrains.annotations.NotNull;
65
import org.overengineer.inlineproblems.settings.SettingsState;
76

8-
public class ShowWarningsAction extends AnAction {
7+
public class ShowWarningsAction extends IPAction {
98
@Override
109
public void actionPerformed(@NotNull AnActionEvent anActionEvent) {
1110
SettingsState settingsState = SettingsState.getInstance();
1211
settingsState.setShowWarnings(!settingsState.isShowWarnings());
12+
resetOrRefreshProblems(settingsState);
1313
}
1414
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
package org.overengineer.inlineproblems.actions;
22

3-
import com.intellij.openapi.actionSystem.AnAction;
43
import com.intellij.openapi.actionSystem.AnActionEvent;
54
import org.jetbrains.annotations.NotNull;
65
import org.overengineer.inlineproblems.settings.SettingsState;
76

8-
public class ShowWeakWarningsAction extends AnAction {
7+
public class ShowWeakWarningsAction extends IPAction {
98
@Override
109
public void actionPerformed(@NotNull AnActionEvent anActionEvent) {
1110
SettingsState settingsState = SettingsState.getInstance();
1211
settingsState.setShowWeakWarnings(!settingsState.isShowWeakWarnings());
12+
resetOrRefreshProblems(settingsState);
1313
}
1414
}

src/main/java/org/overengineer/inlineproblems/listeners/HighlightProblemListener.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,10 @@ public class HighlightProblemListener implements HighlightInfoFilter {
2323

2424
@Override
2525
public boolean accept(@NotNull HighlightInfo highlightInfo, @Nullable PsiFile file) {
26+
if (settingsState.isEnableInlineProblem())
27+
return true;
2628
if (settingsState.getEnabledListener() != Listener.HIGHLIGHT_PROBLEMS_LISTENER)
2729
return true;
28-
2930
if (file == null || !file.isValid())
3031
return true;
3132

0 commit comments

Comments
 (0)