Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-116544

[Other] Fix all binding loops caused by misuse of bindable properties

    XMLWordPrintable

Details

    Description

      Fix all properties that will fail the test implemented in QTBUG-116345.

      In general case, the fix would be as simple as calling valueBypassingBindings() instead of simply accessing the property in the setter (see the epic for a code example).

      The scope of this task is to implement fixes in all submodules that are not covered by the other tasks in the epic.

      Using git-grep, I managed to get the following list of files in three submodules.
      Qt Remote Objects

      ~/qt5/qtremoteobjects$ git grep -rI --name-only --recurse-submodules "Q_OBJECT_COMPAT_PROPERTY\|Q_OBJECT_COMPUTED_PROPERTY\|Q_OBJECT_BINDABLE_PROPERTY"
      src/remoteobjects/qremoteobjectregistry.cpp
      

      Qt Serial Port

      ~/qt5/qtserialport$ git grep -rI --name-only --recurse-submodules "Q_OBJECT_COMPAT_PROPERTY\|Q_OBJECT_COMPUTED_PROPERTY\|Q_OBJECT_BINDABLE_PROPERTY"
      src/serialport/qserialport_p.h
      

      Qt WebChannel

      ~/qt5/qtwebchannel$ git grep -rI --name-only --recurse-submodules "Q_OBJECT_COMPAT_PROPERTY\|Q_OBJECT_COMPUTED_PROPERTY\|Q_OBJECT_BINDABLE_PROPERTY"
      src/webchannel/qmetaobjectpublisher_p.h
      tests/auto/qml/testobject.h
      tests/auto/webchannel/tst_webchannel.h
      

      If it turns out that some of the classes are missing the tests for bindable properties, or if the tests do not use the QTestPrivate helpers, then the missing tests should be added.

      Attachments

        Issue Links

          For Gerrit Dashboard: QTBUG-116544
          # Subject Branch Project Status CR V

          Activity

            People

              ivan.solovev Ivan Solovev
              ivan.solovev Ivan Solovev
              Vladimir Minenko Vladimir Minenko
              Alex Blasche Alex Blasche
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes