Community
Participate
Working Groups
When a call is made to ColorRegistry#put(String, RGB), the preferences for that item in the WorkbenchPlugin's store are not updated. Ordinarily, this doesn't really present a problem. However, in order to implement Bug 531033, the prefs from EditorsPlugin need to update the registry, which needs to be backed by the WorkbenchPlugin's prefs. If these are not in sync then, for example, changing the Windows Theme (invoking WorkbenchThemeManager#updateThemes()) causes the previous values to be used instead of the current values. Patch proposal incoming shortly.
Question, for those who know more about this than me. The only reason for adding this synchronization is because EditorsPlugin needs to update colors in the registry, which is owned by WorkbenchPlugin. Since synchronization from WorkbenchPlugin's prefs to ColorRegistry already exists, if I could just update the WorkbenchPlugin's prefs, Bug 531033 could be resolved without this. So, my question is - is there any sanctioned way to update prefs for another plugin, or is it preferred to only use public API (in this case, ColorRegistry.put)?
New Gerrit change created: https://git.eclipse.org/r/165238
Gerrit change https://git.eclipse.org/r/165238 was merged to [master]. Commit: http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/?id=433a7285783c47612cc62a7b385253449247caa2
Thanks!
This change caused Bug 576331 as a side-effect. Any inputs on how to fix it?
New Gerrit change created: https://git.eclipse.org/r/c/platform/eclipse.platform.ui/+/190412
@John: what do you think? IIRC your patch was fixing some existing bugs with theme and pref page being out of sync, wasn't it? If not, then we can probably revert without causing issues. If yes, then I think it's really a matter of choosing between 2 bugs, and I would recommend choosing the one that seems to have the more correct implementation.