Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • K KCMUtils
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Bugzilla
    • Bugzilla
  • Merge requests 5
    • Merge requests 5
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Releases
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • FrameworksFrameworks
  • KCMUtils
  • Merge requests
  • !135

Provide dummy incubation controller

  • Review changes

  • Download
  • Email patches
  • Plain diff
Open Vlad Zahorodnii requested to merge work/zzag/dummy-incubation-controller into master Apr 06, 2023
  • Overview 2
  • Commits 1
  • Pipelines 3
  • Changes 1

QQmlIncubator can act synchronously when it's asked to create a component asynchronously if the QML engine has missing incubation controller.

It's typically not a problem because we get a QML engine from QQuickWindow or QQuickView, whose incubation controller is very smart.

On the other hand, Kirigami code relies on the fact that asynchronous QQmlIncubator will always act asynchronously. Otherwise it acts quite bad to the point where it hits an infinite recursion.

In order to make QtQuick based config modules work, this change adds a dummy incubation controller. It's not great, and we need to revisit whether having a shared qml engine is the right approach towards providing the support for QML based KCMs.

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: work/zzag/dummy-incubation-controller