D10722: other preload microoptimizations

2018-02-22 Thread Marco Martin
This revision was not accepted when it landed; it landed in state "Needs 
Review".
This revision was automatically updated to reflect the committed changes.
Closed by commit R242:79fb4ebfa77f: other preload microoptimizations (authored 
by mart).

REPOSITORY
  R242 Plasma Framework (Library)

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D10722?vs=27798&id=27806

REVISION DETAIL
  https://phabricator.kde.org/D10722

AFFECTED FILES
  src/declarativeimports/plasmaextracomponents/qml/ScrollArea.qml

To: mart, #plasma, davidedmundson, broulik
Cc: davidedmundson, broulik, plasma-devel, #frameworks, michaelh, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart


D10722: other preload microoptimizations

2018-02-22 Thread Kai Uwe Broulik
broulik accepted this revision.

REPOSITORY
  R242 Plasma Framework (Library)

REVISION DETAIL
  https://phabricator.kde.org/D10722

To: mart, #plasma, davidedmundson, broulik
Cc: davidedmundson, broulik, plasma-devel, #frameworks, michaelh, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart


D10722: other preload microoptimizations

2018-02-22 Thread Marco Martin
mart updated this revision to Diff 27798.
mart added a comment.


  - err forgot typeof

REPOSITORY
  R242 Plasma Framework (Library)

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D10722?vs=27797&id=27798

BRANCH
  arcpatch-D10722

REVISION DETAIL
  https://phabricator.kde.org/D10722

AFFECTED FILES
  src/declarativeimports/plasmaextracomponents/qml/ScrollArea.qml

To: mart, #plasma, davidedmundson
Cc: davidedmundson, broulik, plasma-devel, #frameworks, michaelh, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart


D10722: other preload microoptimizations

2018-02-22 Thread Marco Martin
mart updated this revision to Diff 27797.
mart added a comment.


  - fix typo

REPOSITORY
  R242 Plasma Framework (Library)

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D10722?vs=27796&id=27797

BRANCH
  arcpatch-D10722

REVISION DETAIL
  https://phabricator.kde.org/D10722

AFFECTED FILES
  src/declarativeimports/plasmaextracomponents/qml/ScrollArea.qml

To: mart, #plasma, davidedmundson
Cc: davidedmundson, broulik, plasma-devel, #frameworks, michaelh, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart


D10722: other preload microoptimizations

2018-02-22 Thread Marco Martin
mart updated this revision to Diff 27796.
mart added a comment.


  - check for function

REPOSITORY
  R242 Plasma Framework (Library)

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D10722?vs=27795&id=27796

BRANCH
  arcpatch-D10722

REVISION DETAIL
  https://phabricator.kde.org/D10722

AFFECTED FILES
  src/declarativeimports/plasmaextracomponents/qml/ScrollArea.qml

To: mart, #plasma, davidedmundson
Cc: davidedmundson, broulik, plasma-devel, #frameworks, michaelh, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart


D10722: other preload microoptimizations

2018-02-22 Thread Marco Martin
mart added inline comments.

INLINE COMMENTS

> davidedmundson wrote in svgitem.cpp:50
> > when the component is complete, in many cases i guessthe properties would 
> > all be already set?
> 
> We know for definitely they will be already set.
> 
> I don't understand what problem you think this is solving.

i was probably just confused reading hotspot reports with and without...
i think all this part can be ignored, i want to leave just the part about 
preloading of lists

REPOSITORY
  R242 Plasma Framework (Library)

REVISION DETAIL
  https://phabricator.kde.org/D10722

To: mart, #plasma, davidedmundson
Cc: davidedmundson, broulik, plasma-devel, #frameworks, michaelh, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart


D10722: other preload microoptimizations

2018-02-22 Thread Marco Martin
mart updated this revision to Diff 27795.
mart added a comment.


  - Revert most of it
  - only leave the forcelayout part

REPOSITORY
  R242 Plasma Framework (Library)

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D10722?vs=27707&id=27795

BRANCH
  arcpatch-D10722

REVISION DETAIL
  https://phabricator.kde.org/D10722

AFFECTED FILES
  src/declarativeimports/plasmaextracomponents/qml/ScrollArea.qml

To: mart, #plasma, davidedmundson
Cc: davidedmundson, broulik, plasma-devel, #frameworks, michaelh, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart


D10722: other preload microoptimizations

2018-02-22 Thread David Edmundson
davidedmundson requested changes to this revision.
davidedmundson added inline comments.
This revision now requires changes to proceed.

INLINE COMMENTS

> mart wrote in svgitem.cpp:50
> when the component is complete, in many cases i guessthe properties would all 
> be already set? (could add a check on that) could even be worth directly a 
> loadPixmap, like an immediate updatePolish() there

> when the component is complete, in many cases i guessthe properties would all 
> be already set?

We know for definitely they will be already set.

I don't understand what problem you think this is solving.

REPOSITORY
  R242 Plasma Framework (Library)

REVISION DETAIL
  https://phabricator.kde.org/D10722

To: mart, #plasma, davidedmundson
Cc: davidedmundson, broulik, plasma-devel, #frameworks, michaelh, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart


D10722: other preload microoptimizations

2018-02-22 Thread Marco Martin
mart added inline comments.

INLINE COMMENTS

> davidedmundson wrote in svgitem.cpp:50
> I don't see how this makes any difference.
> 
> Every setSomeProperty already calls scheduleImageUpdate regardless of whether 
> we're complete or not.
> and if you don't have any properties set, then there's nothing to polish.

when the component is complete, in many cases i guessthe properties would all 
be already set? (could add a check on that) could even be worth directly a 
loadPixmap, like an immediate updatePolish() there

REPOSITORY
  R242 Plasma Framework (Library)

REVISION DETAIL
  https://phabricator.kde.org/D10722

To: mart, #plasma
Cc: davidedmundson, broulik, plasma-devel, #frameworks, michaelh, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart


D10722: other preload microoptimizations

2018-02-21 Thread David Edmundson
davidedmundson added inline comments.

INLINE COMMENTS

> svgitem.cpp:50
>  
> +void SvgItem::componentComplete()
> +{

I don't see how this makes any difference.

Every setSomeProperty already calls scheduleImageUpdate regardless of whether 
we're complete or not.
and if you don't have any properties set, then there's nothing to polish.

REPOSITORY
  R242 Plasma Framework (Library)

REVISION DETAIL
  https://phabricator.kde.org/D10722

To: mart, #plasma
Cc: davidedmundson, broulik, plasma-devel, #frameworks, michaelh, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart


D10722: other preload microoptimizations

2018-02-21 Thread Kai Uwe Broulik
broulik added inline comments.

INLINE COMMENTS

> iconitem.h:42
>  Q_OBJECT
> +Q_INTERFACES(QQmlParserStatus)
>  

`QQuickItem` should do that for you already

> svgitem.h:41
>  Q_OBJECT
> +Q_INTERFACES(QQmlParserStatus)
>  

Same here

> ScrollArea.qml:58
> +Component.onCompleted: {
> +if (contentItem.forceLayout !== undefined) {
> +contentItem.forceLayout();

`typeof contentItem.forceLayout === "function"`

REPOSITORY
  R242 Plasma Framework (Library)

REVISION DETAIL
  https://phabricator.kde.org/D10722

To: mart, #plasma
Cc: broulik, plasma-devel, #frameworks, michaelh, ZrenBot, lesliezhai, 
ali-mohamed, jensreuterberg, abetts, sebas, apol, mart


D10722: other preload microoptimizations

2018-02-21 Thread Marco Martin
mart created this revision.
mart added a reviewer: Plasma.
Restricted Application added projects: Plasma, Frameworks.
Restricted Application added subscribers: Frameworks, plasma-devel.
mart requested review of this revision.

REVISION SUMMARY
  make svgitem schedule a polish right when it's done loading
  
  ScrollView now forces to layout items as soon is created, to preload items
  before the window is shown
  
  remove useless include

TEST PLAN
  possible to preload (almost) the whole systray with less hacks
  on that part (see D10692 )

REPOSITORY
  R242 Plasma Framework (Library)

BRANCH
  phab/preloadmicropts

REVISION DETAIL
  https://phabricator.kde.org/D10722

AFFECTED FILES
  src/declarativeimports/core/iconitem.h
  src/declarativeimports/core/svgitem.cpp
  src/declarativeimports/core/svgitem.h
  src/declarativeimports/plasmaextracomponents/qml/ScrollArea.qml

To: mart, #plasma
Cc: plasma-devel, #frameworks, michaelh, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart