I am working with the recent version of Eclipse Luna.
I did a small application based on New Project wizard then I added one additional part with Scrolled Composite inside and 500 text fields. While switching beetwen tabs I see a huge lag.
It does not happen in a pure SWT application.
After small investigation with profiler I found out that StackRenderer calls SWTPartRenderer#styleElement method on each UIEvents.UILifeCycle.ACTIVATE event.
This leads to calling setCSSInfo(), then IStylingEngine#setClassnameAndId() method and this one call IThemeEngine#applyStyles(widget, true) and this is not what I would expect from the method name.
So in case of such amount of widgets, it's getting slow.
Is it a bug or should I implement my own IStyleEnginge?
It's not really a defect but we could likely do better on allowing you to prevent deep recursions while processing the CSS. We need to restyle since many attributes are different for the 'active' part (and its stack).