Hi Lars, sure: https://bugs.eclipse.org/bugs/show_bug.cgi?id=577912
If can help at least in testing let me know. BR, Alois On Mon, 2021-12-20 at 10:49 +0100, Lars Vogel wrote: > Hi Alois, > > That would be desirable. > > As we currently need an IEclipseContext for the initialization of the > styling we would have to wait with the initialization until the > context is created, looking at the code it seems that earliest would > be Workbench#createAndRunWorkbench Line 577. > Or we could try to persist the CSS styling as a workspace preference > and re-apply it at startup. > > Please open a bug for this so that we can start looking into it. > > Best regards, Lars > > On Sun, Dec 19, 2021 at 7:00 PM Alois Zoitl <alois.zo...@gmx.at> wrote: > > > > Hi, > > > > I hope I'm at the right place for my question. > > > > I'm working on the Eclipse 4diac project and there we have an RCP utilizing > > the org.eclipse.ui.ide.workbench as main application. Once in a while I'm > > experimenting with switching it int dark mode. However certain widgets > > always got not the correct color even after restart. I may have to add here > > that we are > > using a lot GEF3 which is not visible in the E4 model and therefore to my > > knowledge currently not to address from CSS. > > > > What I somehow noticed is that in these editors I also use the > > Display.getSystemColor() as an easy way to get to certain widget colors. > > And that when an editor > > was open and Eclipse is restarted I get from getSystemColor() the color > > from the light (default) theme. However when I closed the editor and > > reopend it I > > suddenly got the dark theme's color and everything looked right. > > > > So this got me curios and I dug deeper. I could find out that > > initializeSystemColors() is called twice. The first time it sets up the > > system colors with the > > default (light) theme's colors. the second time with the dark theme. > > - the first time happens when the Display is created by the Workbench a > > part of the IDEApplications start up procedure > > - the second time when the workbench is created and run and there the > > renderer is created > > > > The problem now is that the second time happens when all views are already > > created. Therefore older code like GEF3 based code will have at that time > > already the > > colors from the first invocation. While for my code I could rather easy > > manage to get the right colors it is harder for the GEF3 code. Because > > there the colors > > are stored as static final fields once and these colors are then used all > > over the place. This would be a major refactor which I'm currently not sure > > if this is > > even easily possible. > > > > Therefore I'm asking if there is a possibility to get the renderer created > > earlier or that the system colors are only set once in the beginning. This > > would not > > only help to better support the dark theme for Eclipse 4diac but for any > > GEF3 and with that GMF, Sirius, and Graphiti based RCP. > > > > Thanks in advance, > > Alois > > > > _______________________________________________ > > platform-dev mailing list > > platform-dev@eclipse.org > > To unsubscribe from this list, visit > > https://www.eclipse.org/mailman/listinfo/platform-dev > > > _______________________________________________ platform-dev mailing list platform-dev@eclipse.org To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/platform-dev