Merge lp://qastaging/~fboucault/ubuntu-calculator-app/startup_time into lp://qastaging/ubuntu-calculator-app

Proposed by Florian Boucault
Status: Merged
Approved by: Bartosz Kosiorek
Approved revision: 322
Merged at revision: 304
Proposed branch: lp://qastaging/~fboucault/ubuntu-calculator-app/startup_time
Merge into: lp://qastaging/ubuntu-calculator-app
Diff against target: 989 lines (+135/-571)
13 files modified
app/engine/MathJs.qml (+22/-0)
app/engine/formula.js (+3/-1)
app/ubuntu-calculator-app.qml (+89/-79)
app/ui/ActionButton.qml (+1/-0)
app/ui/FavouritePage.qml (+2/-0)
app/ui/KeyboardButton.qml (+4/-6)
app/ui/KeyboardPage.qml (+5/-2)
app/ui/Screen.qml (+6/-4)
app/upstreamcomponents/EmptyState.qml (+1/-0)
app/upstreamcomponents/ListItemWithActions.qml (+0/-454)
app/upstreamcomponents/ListItemWithActionsCheckBox.qml (+0/-25)
app/welcomewizard/Slide11.qml (+1/-0)
app/welcomewizard/SlideBase.qml (+1/-0)
To merge this branch: bzr merge lp://qastaging/~fboucault/ubuntu-calculator-app/startup_time
Reviewer Review Type Date Requested Status
Jenkins Bot continuous-integration Approve
Bartosz Kosiorek Approve
Review via email: mp+302403@code.qastaging.launchpad.net

Commit message

Improved startup time (2.9s saved on krillin):
- Load Icons and Images asynchronously.
- Prevent multiple resize of keyboard due to window size bug.
- Make sure the keyboard model is built only once.
- Faster KeyboardButton using a MouseArea instead of AbstractButton
- Asynchronous loading of: individual keyboard keys, screenDelegateComponent.
- Asynchronous compilation of FavouritePage.
- Asynchronous import of math.js.
- Use new ListItem API instead of ListItemWithActions: faster to instantiate and less code to maintain.
- Saving resources by making formula.js a library.

Description of the change

Improved startup time (2.9s saved on krillin):
- Load Icons and Images asynchronously.
- Prevent multiple resize of keyboard due to window size bug.
- Make sure the keyboard model is built only once.
- Faster KeyboardButton using a MouseArea instead of AbstractButton
- Asynchronous loading of: individual keyboard keys, screenDelegateComponent.
- Asynchronous compilation of FavouritePage.
- Asynchronous import of math.js.
- Use new ListItem API instead of ListItemWithActions: faster to instantiate and less code to maintain.
- Saving resources by making formula.js a library.

To post a comment you must log in.
Revision history for this message
Bartosz Kosiorek (gang65) wrote :

Wow! It is amazing work!
I'm impressed.
The startup time was improved dramatically.

I found some nitpick which will be good to resolve before final merge.

Thanks a lot.

review: Needs Fixing
Revision history for this message
Bartosz Kosiorek (gang65) wrote :

I would also explain that by removing string:
  title: i18n.tr("Calculator")
all translations will be gone after merge it to trunk.

As a result after reintroducing i18n.tr("Calculator"), all translators will need to translate i18n.tr("Calculator") once again, which is time consuming and unnecessary work.

According to Convergance the same application should work with the best UX on all different platforms. Not displaying name of application in Title Bar on Desktop, is in my opinion bad UX.

review: Needs Fixing
321. By Florian Boucault

Readded 'title: i18n.tr(Calculator)'

Revision history for this message
Florian Boucault (fboucault) wrote :

> I would also explain that by removing string:
> title: i18n.tr("Calculator")
> all translations will be gone after merge it to trunk.
>
> As a result after reintroducing i18n.tr("Calculator"), all translators will
> need to translate i18n.tr("Calculator") once again, which is time consuming
> and unnecessary work.
>
> According to Convergance the same application should work with the best UX on
> all different platforms. Not displaying name of application in Title Bar on
> Desktop, is in my opinion bad UX.

Should be fixed now with the latest commit.

322. By Florian Boucault

Removed unused properties

Revision history for this message
Florian Boucault (fboucault) :
Revision history for this message
Bartosz Kosiorek (gang65) wrote :

Works perfectly for me.
Thanks Florian.

review: Approve
Revision history for this message
Jenkins Bot (ubuntu-core-apps-jenkins-bot) :
review: Approve (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
The diff is not available at this time. You can reload the page or download it.

Subscribers

People subscribed via source and target branches