Skip to content

Fix configuration of the unsaved tab dirty indicator#4133

Merged
iloveeclipse merged 1 commit into
eclipse-platform:masterfrom
vogella:lv/4130-dirty-indicator-config
Jun 22, 2026
Merged

Fix configuration of the unsaved tab dirty indicator#4133
iloveeclipse merged 1 commit into
eclipse-platform:masterfrom
vogella:lv/4130-dirty-indicator-config

Conversation

@vogella

@vogella vogella commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

The dirty indicator preference was only shown and stored while CSS theming was active, so it could not be turned off when Eclipse was started with -cssTheme none or in high-contrast mode. It is now created, stored and reset next to the "Show most recently used tabs" option and is therefore always available.

The renderer also read the value from the instance scope only, which ignored a default contributed through product customization (SHOW_DIRTY_INDICATOR_ON_TABS in plugin_customization.ini). It now reads via the preferences service so the default scope is honored, allowing products to restore the old asterisk behavior.

Fixes #4130

The dirty indicator preference was only shown and stored while CSS theming
was active, so it could not be turned off when started with -cssTheme none or
in high-contrast mode. It is now created, stored and reset next to the "Show
most recently used tabs" option and is therefore always available.

The renderer also read the value from the instance scope only, which ignored a
default contributed through product customization
(SHOW_DIRTY_INDICATOR_ON_TABS in plugin_customization.ini). It now reads via
the preferences service so the default scope is honored.

Fixes eclipse-platform#4130
@vogella vogella requested a review from iloveeclipse June 22, 2026 09:22
return preferences.getBoolean(CTabRendering.SHOW_DIRTY_INDICATOR_ON_TABS,
CTabRendering.SHOW_DIRTY_INDICATOR_ON_TABS_DEFAULT);
// Use the preferences service so product customization (default scope) is honored
return Platform.getPreferencesService().getBoolean(

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note, 5 lines above there is yet another wrong access to preferences to read the MRU value.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agree, but unrelated to this change, please fix via separate PR, I don't want to mix unrelated things in this change.

@iloveeclipse iloveeclipse left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@github-actions

Copy link
Copy Markdown
Contributor

Test Results

   855 files  ±0     855 suites  ±0   53m 19s ⏱️ +13s
 8 083 tests ±0   7 840 ✅ ±0  243 💤 ±0  0 ❌ ±0 
20 151 runs  ±0  19 497 ✅ ±0  654 💤 ±0  0 ❌ ±0 

Results for commit c88d1a7. ± Comparison against base commit 55ec079.

@vogella

vogella commented Jun 22, 2026

Copy link
Copy Markdown
Contributor Author

Also ready from my side, feel free to merge.

@iloveeclipse iloveeclipse merged commit b7e7e0a into eclipse-platform:master Jun 22, 2026
18 checks passed
@vogella vogella deleted the lv/4130-dirty-indicator-config branch June 22, 2026 10:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Unsaved tab decoration configuration is broken

2 participants