D8436: use a single QML engine

2017-11-21 Thread Marco Martin
This revision was automatically updated to reflect the committed changes.
Closed by commit R296:fcecbc5c67f7: use a single QML engine (authored by mart).

REPOSITORY
  R296 KDeclarative

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D8436?vs=21224&id=22693

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

AFFECTED FILES
  src/quickaddons/configmodule.cpp

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


D8436: use a single QML engine

2017-11-21 Thread David Edmundson
davidedmundson accepted this revision.
This revision is now accepted and ready to land.

REPOSITORY
  R296 KDeclarative

BRANCH
  arcpatch-D8436

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

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


D8436: use a single QML engine

2017-10-24 Thread Marco Martin
mart edited the test plan for this revision.

REPOSITORY
  R296 KDeclarative

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

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


D8436: use a single QML engine

2017-10-24 Thread Marco Martin
mart added a comment.


  In https://phabricator.kde.org/D8436#159212, @davidedmundson wrote:
  
  > Given the fallout we had when we made the similar change in Plasma, please 
don't merge until the start of the next release cycle.
  
  
  after november first week release? ok
  
  > Can you expand your "normal system settings seems unaffected" into 
something more thorough with a list of the relevant KCMs.
  
  currently ported modules are
  
  - desktop theme
  - look and feel
  - sound
  - splash screen
  - boot splash

REPOSITORY
  R296 KDeclarative

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

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


D8436: use a single QML engine

2017-10-24 Thread David Edmundson
davidedmundson added a comment.


  Given the fallout we had when we made the similar change in Plasma, please 
don't merge until the start of the next release cycle.
  
  Can you expand your "normal system settings seems unaffected" into something 
more thorough with a list of the relevant KCMs.

REPOSITORY
  R296 KDeclarative

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

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


D8436: use a single QML engine

2017-10-24 Thread Marco Martin
mart added inline comments.

INLINE COMMENTS

> davidedmundson wrote in configmodule.cpp:106
> !!

this version now should work, as the context is used now: the way the static 
attached property function finds it is quite an heuristic, but should be 100% 
reliable

REPOSITORY
  R296 KDeclarative

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

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


D8436: use a single QML engine

2017-10-24 Thread Marco Martin
mart updated this revision to Diff 21223.
mart added a comment.


  - use the qmlobject's rootcontext instead of the engine as is now shared

REPOSITORY
  R296 KDeclarative

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D8436?vs=21184&id=21223

BRANCH
  arcpatch-D8436

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

AFFECTED FILES
  src/quickaddons/configmodule.cpp

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


D8436: use a single QML engine

2017-10-24 Thread Marco Martin
mart updated this revision to Diff 21224.
mart added a comment.


  - use the qmlobject's rootcontext instead of the engine as is now shared

REPOSITORY
  R296 KDeclarative

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D8436?vs=21223&id=21224

BRANCH
  arcpatch-D8436

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

AFFECTED FILES
  src/quickaddons/configmodule.cpp

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


D8436: use a single QML engine

2017-10-23 Thread Marco Martin
mart added inline comments.

INLINE COMMENTS

> davidedmundson wrote in configmodule.cpp:106
> !!

right, since it keeps track of attached properties in this way, either gets 
changed or is not possible to use a single engine, damn :/

hmm, maybe using the rootcontext instead would work

REPOSITORY
  R296 KDeclarative

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

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


D8436: use a single QML engine

2017-10-23 Thread David Edmundson
davidedmundson added inline comments.

INLINE COMMENTS

> configmodule.cpp:106
>  {
>  ConfigModulePrivate::s_rootObjects.remove(d->_qmlObject->engine());
>  

!!

REPOSITORY
  R296 KDeclarative

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

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


D8436: use a single QML engine

2017-10-23 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.

REVISION SUMMARY
  use a shared qml engine for all ConfigModules in the same process
  this avoids some crashes as creating and deleting stuff from
  different engines is known to cause crashes in the v4 garbage collection
  and is recomended to use a single QQmlEngine per process

TEST PLAN
  normal SystemSettings seems unaffected, plasma mobile systemsettings
  which is qml-only now doesn't crash anymore after loading a module
  for the second time

REPOSITORY
  R296 KDeclarative

BRANCH
  phab/singleengine

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

AFFECTED FILES
  src/quickaddons/configmodule.cpp

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