touch-packages team mailing list archive
-
touch-packages team
-
Mailing list archive
-
Message #117351
[Bug 1477363] Re: onDestruction is never called in the QML component
In your example, the Page is declared as an instance. When you close the
application, the elements will be destroyed silently, without having
their attached Component.onDestruction called.
When you use a Page declared in the way you reported in a PageStack or
AdaptivePageLayout, the Page will not be destroyed by these components
as it has not been created by the PageStack/AdaptivePagelayout. So you
won't get the onDestruction triggered either. In order to have that
coming, you need to declare your page as component and add that to the
PageStack/AdaptivePageLayout, or in a separate QML document and use
that.
** Changed in: ubuntu-ui-toolkit (Ubuntu)
Status: New => Invalid
--
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to ubuntu-ui-toolkit in
Ubuntu.
https://bugs.launchpad.net/bugs/1477363
Title:
onDestruction is never called in the QML component
Status in ubuntu-ui-toolkit package in Ubuntu:
Invalid
Bug description:
I have created a very simple application, and I want to capture the
onDestruction event. However, it is never called on a phone, but it is
called on the desktop. On the page,
http://developer.ubuntu.com/api/apps/qml/sdk-15.04/Qt.labs.settings.Settings/,
it is used to save the state of the application.
Page {
title: i18n.tr("ondestruction")
Column {
spacing: units.gu(1)
anchors {
margins: units.gu(2)
fill: parent
}
Label {
id: label
objectName: "label"
text: i18n.tr("Hello..")
}
Button {
objectName: "button"
width: parent.width
text: i18n.tr("Tap me!")
onClicked: {
label.text = i18n.tr("..world!")
}
}
}
Component.onDestruction: {
console.log("ondestruction")
}
}
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ubuntu-ui-toolkit/+bug/1477363/+subscriptions
References