[MainView] Background color and image rendering is too slow
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
| Canonical System Image |
High
|
Zoltan Balogh | ||
| ubuntu-ui-toolkit (Ubuntu) |
High
|
Loïc Molinari | ||
| ubuntu-ui-toolkit (Ubuntu RTM) |
Undecided
|
Unassigned |
Bug Description
The MainView renders at the bottom-most layer a background composed of a colored rectangle and an image. The way it is currently implemented implies two fullscreen passes with alpha blending on. This is very slow. A solution would be to use just one pass using a ShaderEffect or a dedicated C++ component. Disabling alpha blending (possible since it's the bottom-most layer) would also provide a good performance boost. Another idea, if no image needs to be rendered, would be to simply set the GPU clear color to the background color, to render it for free.
Related branches
- ubuntu-sdk-build-bot: Approve (continuous-integration) on 2016-01-21
- Zsombor Egri: Approve on 2016-01-21
-
Diff: 35 lines (+14/-0)2 files modifiedsrc/Ubuntu/Components/Themes/Ambiance/1.2/MainViewStyle.qml (+7/-0)
src/Ubuntu/Components/Themes/Ambiance/1.3/MainViewStyle.qml (+7/-0)
- ubuntu-sdk-build-bot: Approve (continuous-integration) on 2016-03-15
- Zsombor Egri: Approve on 2016-03-15
-
Diff: 143 lines (+35/-25)4 files modifiedsrc/Ubuntu/Components/Themes/Ambiance/1.3/MainViewStyle.qml (+9/-23)
src/Ubuntu/Components/plugin/ucmainviewbase.cpp (+23/-1)
src/Ubuntu/Components/plugin/ucmainviewbase.h (+1/-0)
src/Ubuntu/Components/plugin/ucmainviewbase_p.h (+2/-1)
- Ubuntu SDK team: Pending requested 2016-03-30
-
Diff: 163 lines (+42/-27)5 files modifiedsrc/Ubuntu/Components/Themes/Ambiance/1.3/MainViewStyle.qml (+9/-23)
src/Ubuntu/Components/plugin/ucmainviewbase.cpp (+23/-1)
src/Ubuntu/Components/plugin/ucmainviewbase.h (+1/-0)
src/Ubuntu/Components/plugin/ucmainviewbase_p.h (+2/-1)
tests/unit/runtest.sh (+7/-2)
description: | updated |
summary: |
- [MainView] Background color and image rendering is slow + [MainView] Background color and image rendering is too slow |
Tim Peeters (tpeeters) wrote : | #1 |
Launchpad Janitor (janitor) wrote : | #2 |
This bug was fixed in the package ubuntu-ui-toolkit - 1.3.1872+
---------------
ubuntu-ui-toolkit (1.3.1872+
[ Timo Jyrinki ]
* Fix gles unit test skipping.
* Add s390x to the unit test skipping architectures
* UITK test plan - wily -> xenial. Fixes LP: #1544490
[ Christian Dywan ]
* Print errors when QuickUtils fails to create a component.
* unit tests shouldn't use deprecated Dialog.callera
* Correctly count only test case results. The result= value is used in suites
and results.
* Skip tst_pagehead_
* Skip flaky tst_mousefilter
* Suppress click signal if releasing outside of ListItem. Fixes LP: #1541148.
* Use gdb in runtest.sh to produce backtraces.
* Arrow keys change value of a Slider. Fixes LP: #1523824.
* Only use Maliit when enabled explicitly in the environment
[ Oliver Tilloy ]
* Do not try to assign to non-existent property "activeFocusOnP
Fixes LP: #1532953
* Bubble up ESC key press event if there is no popover to close.
Fixes LP: #1546627
[ Loïc Molinari ]
* Added private items and nodes for the new component styles.
Fixes LP: #1523836
* Made use of new private Frame item for the focusing.
* Fixed performance monitor crash because of a NULL timer pointer dereference.
Fixes LP: #1546986
* Fixed performance monitor dangling pointer crash. Fixes LP: #1546984
* [ProportionalShape] Ensured width/height ratio is correct with default values.
Fixes LP: #1546546
* Added a workaround to prevent a crash while changing the QPA scale factor.
[ Florian Boucault ]
* Always on performance monitor that logs frames that too long to render.
* MainView: proceed to selecting the theme automatically at startup too.
Fixes LP: #1535819
* MainView: when no gradient color is needed for the background, rely on
QQuickWindow's GL clear color. Lessens overdraw considerably for most
apps. Fixes LP: #1439133.
* Panel: MathUtils used without import prefix was leading to undefined
reference.
* Label: use native rendering on low dpi screens (GRID_UNIT_PX <= 10) for
sharper looking text.
* Gallery: added palette browser to Colors page.
[ Tim Peeters ]
* Support scrolling in ListViews with horizontal orientation to the
qquicklistview CPO.
* Add background to AppHeader and remove contents clipping from MainView.
Fixes LP: #1531016, LP: #1531457.
* Hide AppHeader when using AdaptivePageLayout. Fixes bug 1531871.
Fixes LP: #1531871.
* Implement horizontal flicking in the flickable autopilot CPO.
* Re-order to list of pages in the gallery to be alphabetical.
* Fix the autopilot failures introduced with the horizontal scrolling in
the Flickable CPO.
* Update documentation for MainView, Page, AdaptivePageLayout to use the new
PageHeader in all examples. Deprecate old properties. Fixes LP: #1540574
* Add 'animate' property to new internal AppHeaderBase, and do not show a
header animation when starting an app without header.
Fixes LP: #1518002, LP: #1524901.
...
Changed in ubuntu-ui-toolkit (Ubuntu): | |
status: | Confirmed → Fix Released |
Changed in ubuntu-ui-toolkit (Ubuntu RTM): | |
status: | New → Fix Committed |
Changed in ubuntu-ui-toolkit (Ubuntu): | |
status: | Fix Released → Fix Committed |
status: | Fix Committed → Fix Released |
Changed in ubuntu-ui-toolkit (Ubuntu RTM): | |
status: | Fix Committed → Fix Released |
Changed in canonical-devices-system-image: | |
assignee: | nobody → Zoltan Balogh (bzoltan) |
milestone: | none → ww08-2016 |
importance: | Undecided → High |
status: | New → Fix Committed |
Changed in canonical-devices-system-image: | |
status: | Fix Committed → Fix Released |
Yes, we can set the GPU clear color and remove the Rectangle for the background color. Currently we will still have to render the semi-transparent paper texture on top of that.