New scopes performance needs to be improved
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
unity-scopes-api |
Fix Released
|
High
|
Michi Henning | ||
unity8 (Ubuntu) |
Fix Released
|
High
|
Albert Astals Cid |
Bug Description
Now that I updated to latest version of unity8 on my phone. the vertical scrolling is skipping a lot of frames. Same happens when switching between scopes (frames being skipped).
Make sure to have the 'Available' category visible. Now scroll to the bottom and flick towards top.
There are two part in the bug: scrolling is purely unity8, switching between scopes seems to be unity-scopes-shell. More info on http://
ProblemType: Bug
DistroRelease: Ubuntu 14.04
Package: unity8 7.84+14.
Uname: Linux 3.4.0-5-mako armv7l
ApportVersion: 2.13.3-0ubuntu1
Architecture: armhf
Date: Tue Mar 25 15:22:41 2014
InstallationDate: Installed on 2014-03-25 (0 days ago)
InstallationMedia: Ubuntu Trusty Tahr (development branch) - armhf (20140325)
ProcEnviron:
TERM=linux
PATH=(custom, no user)
SourcePackage: unity8
UpgradeStatus: No upgrade log present (probably fresh install)
Related branches
- PS Jenkins bot (community): Needs Fixing (continuous-integration)
- Michał Sawicz: Approve
-
Diff: 17 lines (+2/-2)1 file modifiedcmake/modules/QmlTest.cmake (+2/-2)
- Michal Hruby (community): Approve
- Paweł Stołowski (community): Approve
- PS Jenkins bot (community): Approve (continuous-integration)
- Marcus Tomlinson (community): Approve
-
Diff: 4879 lines (+2089/-517)80 files modifiedRELEASE_NOTES.txt (+8/-1)
debian/libunity-scopes1.symbols (+11/-7)
demo/client.cpp (+24/-14)
demo/scopes/scope-A/scope-A.cpp (+45/-14)
demo/scopes/scope-B/scope-B.cpp (+14/-9)
demo/scopes/scope-C/scope-C.cpp (+16/-10)
demo/scopes/scope-D/scope-D.cpp (+9/-5)
demo/scopes/scope-N/scope-N.cpp (+21/-6)
demo/scopes/scope-S/scope-S.cpp (+28/-21)
include/unity/scopes/PreviewQueryBase.h (+1/-1)
include/unity/scopes/QueryBase.h (+19/-1)
include/unity/scopes/internal/ObjectImpl.h (+13/-4)
include/unity/scopes/internal/QueryBaseImpl.h (+3/-0)
include/unity/scopes/internal/QueryCtrlImpl.h (+9/-6)
include/unity/scopes/internal/QueryObject.h (+3/-4)
include/unity/scopes/internal/RegistryImpl.h (+1/-1)
include/unity/scopes/internal/ReplyImpl.h (+1/-1)
include/unity/scopes/internal/ReplyObject.h (+1/-1)
include/unity/scopes/internal/RuntimeImpl.h (+9/-4)
include/unity/scopes/internal/ScopeImpl.h (+2/-2)
include/unity/scopes/internal/SearchReplyImpl.h (+1/-1)
include/unity/scopes/internal/TaskWrapper.h (+1/-2)
include/unity/scopes/internal/ThreadPool.h (+2/-0)
include/unity/scopes/internal/ThreadSafeQueue.h (+51/-21)
include/unity/scopes/internal/zmq_middleware/ConnectionPool.h (+7/-5)
include/unity/scopes/internal/zmq_middleware/ObjectAdapter.h (+8/-6)
include/unity/scopes/internal/zmq_middleware/StopPublisher.h (+85/-0)
include/unity/scopes/internal/zmq_middleware/ZmqObjectProxy.h (+6/-2)
src/scopes/QueryBase.cpp (+5/-0)
src/scopes/internal/ObjectImpl.cpp (+31/-3)
src/scopes/internal/QueryBaseImpl.cpp (+24/-2)
src/scopes/internal/QueryCtrlImpl.cpp (+39/-4)
src/scopes/internal/QueryObject.cpp (+32/-12)
src/scopes/internal/RegistryImpl.cpp (+1/-1)
src/scopes/internal/ReplyImpl.cpp (+1/-1)
src/scopes/internal/ReplyObject.cpp (+2/-3)
src/scopes/internal/RuntimeImpl.cpp (+89/-15)
src/scopes/internal/ScopeImpl.cpp (+125/-88)
src/scopes/internal/ScopeObject.cpp (+0/-1)
src/scopes/internal/SearchReplyImpl.cpp (+4/-2)
src/scopes/internal/ThreadPool.cpp (+18/-11)
src/scopes/internal/smartscopes/SSQueryObject.cpp (+1/-1)
src/scopes/internal/zmq_middleware/CMakeLists.txt (+1/-0)
src/scopes/internal/zmq_middleware/ConnectionPool.cpp (+19/-11)
src/scopes/internal/zmq_middleware/ObjectAdapter.cpp (+55/-78)
src/scopes/internal/zmq_middleware/StopPublisher.cpp (+225/-0)
src/scopes/internal/zmq_middleware/ZmqMiddleware.cpp (+10/-10)
src/scopes/internal/zmq_middleware/ZmqObject.cpp (+67/-44)
src/scopes/internal/zmq_middleware/ZmqQuery.cpp (+1/-1)
src/scopes/internal/zmq_middleware/ZmqQueryCtrl.cpp (+2/-2)
src/scopes/internal/zmq_middleware/ZmqRegistry.cpp (+3/-3)
src/scopes/internal/zmq_middleware/ZmqReply.cpp (+2/-2)
src/scopes/internal/zmq_middleware/ZmqScope.cpp (+6/-4)
src/scopes/internal/zmq_middleware/ZmqStateReceiver.cpp (+1/-1)
test/gtest/scopes/CMakeLists.txt (+9/-8)
test/gtest/scopes/Invocation/CMakeLists.txt (+8/-0)
test/gtest/scopes/Invocation/Invocation_test.cpp (+145/-0)
test/gtest/scopes/Invocation/Registry.ini.in (+8/-0)
test/gtest/scopes/Invocation/Runtime.ini.in (+5/-0)
test/gtest/scopes/Invocation/TestScope.cpp (+94/-0)
test/gtest/scopes/Invocation/TestScope.h (+40/-0)
test/gtest/scopes/Invocation/Zmq.ini.in (+3/-0)
test/gtest/scopes/Registry/Registry_test.cpp (+39/-13)
test/gtest/scopes/Runtime/CMakeLists.txt (+1/-1)
test/gtest/scopes/Runtime/PusherScope.cpp (+8/-1)
test/gtest/scopes/Runtime/PusherScope.h (+5/-0)
test/gtest/scopes/Runtime/Runtime_test.cpp (+132/-6)
test/gtest/scopes/Runtime/SlowCreateScope.cpp (+101/-0)
test/gtest/scopes/Runtime/SlowCreateScope.h (+40/-0)
test/gtest/scopes/Runtime/TestScope.cpp (+6/-0)
test/gtest/scopes/Runtime/TestScope.h (+5/-0)
test/gtest/scopes/ScopeExceptions/ScopeExceptions_test.cpp (+29/-0)
test/gtest/scopes/internal/ThreadPool/ThreadPool_test.cpp (+11/-0)
test/gtest/scopes/internal/ThreadSafeQueue/ThreadSafeQueue_test.cpp (+71/-8)
test/gtest/scopes/internal/smartscopes/smartscopesproxy/smartscopesproxy_test.cpp (+2/-5)
test/gtest/scopes/internal/zmq_middleware/CMakeLists.txt (+1/-0)
test/gtest/scopes/internal/zmq_middleware/ObjectAdapter/ObjectAdapter_test.cpp (+21/-24)
test/gtest/scopes/internal/zmq_middleware/RegistryI/RegistryI_test.cpp (+2/-2)
test/gtest/scopes/internal/zmq_middleware/StopPublisher/CMakeLists.txt (+4/-0)
test/gtest/scopes/internal/zmq_middleware/StopPublisher/StopPublisher_test.cpp (+136/-0)
- Michael Zanetti (community): Approve
- PS Jenkins bot (community): Needs Fixing (continuous-integration)
-
Diff: 3024 lines (+1590/-714)48 files modifieddebian/unity8-private.install (+1/-1)
plugins/CMakeLists.txt (+1/-1)
plugins/Dash/CMakeLists.txt (+5/-5)
plugins/Dash/CardCreator.js (+518/-0)
plugins/Dash/CardCreatorCache.qml (+40/-0)
plugins/Dash/plugin.cpp (+2/-2)
plugins/Dash/plugin.h (+3/-3)
plugins/Dash/qmldir (+3/-2)
qml/Dash/Card.qml (+0/-236)
qml/Dash/CardCarousel.qml (+13/-10)
qml/Dash/CardFilterGrid.qml (+19/-16)
qml/Dash/CardHeader.qml (+0/-126)
qml/Dash/CardTool.qml (+30/-22)
qml/Dash/Previews/PreviewHeader.qml (+86/-9)
qml/Dash/ScopeListView.qml (+1/-1)
tests/autopilot/unity8/shell/emulators/dash.py (+3/-4)
tests/mocks/Unity/fake_categories.cpp (+15/-2)
tests/mocks/Unity/fake_resultsmodel.cpp (+1/-0)
tests/plugins/CMakeLists.txt (+1/-1)
tests/plugins/Dash/CMakeLists.txt (+16/-9)
tests/plugins/Dash/cardcreator/1.res (+77/-0)
tests/plugins/Dash/cardcreator/1.tst (+3/-0)
tests/plugins/Dash/cardcreator/2.res (+115/-0)
tests/plugins/Dash/cardcreator/2.tst (+3/-0)
tests/plugins/Dash/cardcreator/3.res (+94/-0)
tests/plugins/Dash/cardcreator/3.tst (+3/-0)
tests/plugins/Dash/cardcreator/4.res (+95/-0)
tests/plugins/Dash/cardcreator/4.tst (+3/-0)
tests/plugins/Dash/cardcreator/5.res (+137/-0)
tests/plugins/Dash/cardcreator/5.tst (+3/-0)
tests/plugins/Dash/cardcreatortest.cpp (+91/-0)
tests/plugins/Dash/cardcreatortest.qml (+29/-0)
tests/plugins/Dash/horizontaljournaltest.qml (+1/-1)
tests/plugins/Dash/horizontaljournaltry.qml (+1/-1)
tests/plugins/Dash/listviewwithpageheadertest.qml (+1/-1)
tests/plugins/Dash/listviewwithpageheadertestsection.qml (+1/-1)
tests/plugins/Dash/listviewwithpageheadertestsectionexternalmodel.qml (+1/-1)
tests/plugins/Dash/organicgridtest.qml (+1/-1)
tests/plugins/Dash/organicgridtry.qml (+1/-1)
tests/plugins/Dash/tst_ListViewWithPageHeaderQML.qml (+1/-1)
tests/plugins/Dash/verticaljournaltest.qml (+1/-1)
tests/plugins/Dash/verticaljournaltry.qml (+1/-1)
tests/qmltests/CMakeLists.txt (+3/-3)
tests/qmltests/Dash/Previews/tst_PreviewHeader.qml (+66/-4)
tests/qmltests/Dash/tst_Card.qml (+79/-93)
tests/qmltests/Dash/tst_CardBenchmark.qml (+10/-7)
tests/qmltests/Dash/tst_CardHeader.qml (+0/-116)
tests/qmltests/Dash/tst_CardTool.qml (+11/-31)
summary: |
- Vertical scrolling Apps scope is more jittery with new scopes + New scopes performance needs to be improved |
Changed in unity8 (Ubuntu): | |
importance: | Undecided → High |
status: | Confirmed → Triaged |
Changed in unity-scopes-shell: | |
importance: | Undecided → High |
status: | New → Triaged |
assignee: | nobody → Michal Hruby (mhr3) |
description: | updated |
affects: | unity-scopes-shell → unity-scopes-api |
Changed in unity-scopes-api: | |
assignee: | Michal Hruby (mhr3) → Michi Henning (michihenning) |
status: | Triaged → In Progress |
status: | In Progress → Fix Committed |
Changed in unity-scopes-api: | |
status: | Fix Committed → Fix Released |
Changed in unity8: | |
status: | Triaged → In Progress |
Changed in unity8: | |
status: | In Progress → Fix Released |
Changed in unity8 (Ubuntu): | |
assignee: | nobody → Albert Astals Cid (aacid) |
no longer affects: | unity8 |
Indeed, the new scopes are much more flexible, hence much more complex. We need to play some tricks to improve their performance.