Enable resetting of NameDisplayPreferences #14420
Closed
+9
−9
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Closes #14412
This PR enables resetting for NameDisplayPreferences according to the requirements in the parent issue.
A private default constructor was added with all default values, along with getDefault() and setAll(). The loading and clearing logic in JabRefGuiPreferences has been updated so that NameDisplayPreferences can now be reset independently via the preferences reset/import system.
Steps to test
Open Options → Preferences → Entry table / Name display.
Change any setting related to NameDisplayPreferences (e.g., name formatting options).
Use Reset preferences or Import settings.
Verify that:
All NameDisplayPreferences values return to their defaults.
Restarting JabRef preserves the reset state.
Exporting/importing settings includes this preference and restores it correctly.
Mandatory checks
I own the copyright of the code submitted and I license it under the MIT license
I manually tested my changes in running JabRef (always required)
I added JUnit tests for changes (if applicable)
I added screenshots in the PR description (if change is visible to the user)
I described the change in CHANGELOG.md in a way that is understandable for the average user (if change is visible to the user)
I checked the user documentation; if updates were needed, I opened an issue or PR in the user-docs repository