Breeze spent 70ms on every application startup loading the shadow tiles, despite them only being used for e.g. context menus. Create them only as needed.
Details
- Reviewers
ngraham zzag - Group Reviewers
Plasma - Commits
- R31:cc24d25a5962: [kstyle] Create shadow tiles on demand
- Context menu shadows still look fine
- MDI windows don't have any shadows here but that is also without this patch..
Diff Detail
- Repository
- R31 Breeze
- Lint
Automatic diff as part of commit; lint not applicable. - Unit
Automatic diff as part of commit; unit tests not applicable.
Breeze spent 70ms
What computer are you using? What shadow size it is? What's typical load on your computer? What's the value of the mean? What's the value of the standard deviation? Is it debug build or release build? How did you measure that?
MDI windows don't have any shadows here but that is also without this patch
No, they have:
It's hard to see them because of low contrast.
I found Breeze's ShadowHelper::loadConfig() stick out in hotspot on Dolphin startup, so I investigated what it did and found it would needlessly load the shadows.
It's hard to see them because of low contrast.
Right, didn't look closely enough. They still work with this patch.
Well, I wouldn't trust hotspot/perf in this case. Creation of kstyle shadows is pretty cheap so I think that's fine to create them on demand (in contrast to decoration shadows, which are pretty heavy).
Anyway, codewise, patch looks okay to me.
Please delete "70ms" in the summary because that number doesn't mean anything.