| Summary: | Drawing the scrollbars is slow with the style Oxygen | ||
|---|---|---|---|
| Product: | [Plasma] Oxygen | Reporter: | Benjamin Poulain <benjamin.poulain> |
| Component: | style | Assignee: | Camilla Boemann <cbo> |
| Status: | RESOLVED WORKSFORME | ||
| Severity: | normal | CC: | benjamin.poulain, cfeck, hugo.pereira.da.costa |
| Priority: | NOR | ||
| Version First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | Ubuntu | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
| Attachments: | Benchmark with testlib | ||
|
Description
Benjamin Poulain
2010-02-13 20:24:01 UTC
I'll try optimize ... not sure I can do much about it though. Scrollbar painting in oxygen is more complex than most styles (due to backgrounds). Could you uncheck the option "draw ScrollBar Bevel" in oxygen config dialog, scrollbar tab) ? (PS: could you also uncheck the "enable animations" in the first tab ?) As a matter of fact the scrollbar handle can be optimized a bit (meaning: cached into pixmaps (as done elsewhere in oxygen) which would likely speedup the painting. I'll give it a shot. ok. I tried caching pixmaps for painting the scrollbar handle. This results in even slower code ... Created attachment 41003 [details]
Benchmark with testlib
I have attached a benchmark so you can measure the improvements of your patches.
Here are the results for me:
RESULT : ScrollbarSpeedTest::renderingSpeed():"Oxygen":
2,851 msec per iteration (total: 2851, iterations: 1)
RESULT : ScrollbarSpeedTest::renderingSpeed():"Windows":
577 msec per iteration (total: 577, iterations: 1)
RESULT : ScrollbarSpeedTest::renderingSpeed():"Motif":
191 msec per iteration (total: 191, iterations: 1)
RESULT : ScrollbarSpeedTest::renderingSpeed():"CDE":
136 msec per iteration (total: 136, iterations: 1)
RESULT : ScrollbarSpeedTest::renderingSpeed():"Plastique":
1,916 msec per iteration (total: 1916, iterations: 1)
RESULT : ScrollbarSpeedTest::renderingSpeed():"GTK+":
515 msec per iteration (total: 515, iterations: 1)
RESULT : ScrollbarSpeedTest::renderingSpeed():"Cleanlooks":
505 msec per iteration (total: 505, iterations: 1)
SVN commit 1125026 by hpereiradacosta: use _helper.viewFocusBrush() in place of kcolorscheme(...) every time it is possible, for optimization purposes. Thanks to Allan Sandfeld Jensen for providing the original patch. CCBUG: 226719 M +2 -2 oxygenframeshadow.h M +10 -10 oxygenstyle.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=1125026 SVN commit 1125038 by hpereiradacosta: Backport r1125026 Use _helper.viewFocusBrush() in place of kcolorscheme(...) every time it is possible, for optimization purposes. Thanks to Allan Sandfeld Jensen for providing the original patch. CCBUG: 226719 M +2 -2 oxygen.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=1125038 Benjamin, just to satisfy my curiosity: What result do you get with Skulpture style? @Christoph The test case is attached on this bug, you can test the skulpture style with it. Dear Bug Submitter, This bug has been stagnant for a long time. Could you help us out and re-test if the bug is valid in the latest version? I am setting the status to NEEDSINFO pending your response, please change the Status back to REPORTED when you respond. Thank you for helping us make KDE software even better for everyone! Dear Bug Submitter, This is a reminder that this bug has been stagnant for a long time. Could you help us out and re-test if the bug is valid in the latest version? Thank you for helping us make KDE software even better for everyone! Thank you for reporting this issue in KDE software. As it has been a while since this issue was reported, can we please ask you to see if you can reproduce the issue with a recent software version? If you can reproduce the issue, please change the status to "REPORTED" when replying. Thank you! Dear Bug Submitter, This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information as soon as possible and set the bug status as REPORTED. Due to regular bug tracker maintenance, if the bug is still in NEEDSINFO status with no change in 30 days the bug will be closed as RESOLVED > WORKSFORME due to lack of needed information. For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging If you have already provided the requested information, please mark the bug as REPORTED so that the KDE team knows that the bug is ready to be confirmed. Thank you for helping us make KDE software even better for everyone! This bug has been in NEEDSINFO status with no change for at least 30 days. The bug is now closed as RESOLVED > WORKSFORME due to lack of needed information. For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging Thank you for helping us make KDE software even better for everyone! |