2016-05-07 11:32 GMT+02:00 Elvis Stansvik <elvst...@gmail.com>: > Hi all, > > In a fullscreen page-based embedded QML app (HMI), I find myself often > wanting to disable all signal connections when the page is not active > (on top of stack). > > I found this 5 year old bug: > > https://bugreports.qt.io/browse/QTBUG-18245 > > I think Daniel's analysis in the comments is very good. > > I just wanted to ask, since it's such an old bug and much may have > happened: Is there any way to achieve this currently? > > In my case, many of my pages react to backend (hardware) events in > various ways, and it's tedious and error prone to always have to make > sure I set the `target` of my Connections to null when the page is not > active, to avoid unwanted reactions to signals.
The best I've come up with right now is to give my Page an active property: Page.qml: FocusScope { readonly property bool active: Stack.status === Stack.Active focus: active ... } SomePage.qml: Page { id: page Connections { target: page.active ? backend : null onSomeSignal: doSomething(); } ... } But this just saves some typing. It's still error prone and repetitive to have to check this property in my Connections. Elvis > > The bug is also about the disabling of property bindings and > animations, which I guess is also a valid point, though not so much > for me at the moment. > > Cheers, > Elvis _______________________________________________ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest