import QtQuick 2.0 /** * adapted from StackOverflow: * http://stackoverflow.com/questions/26879266/make-toast-in-android-by-qml * GitHub Gist: https://gist.github.com/jonmcclung/bae669101d17b103e94790341301c129 * @brief Manager that creates Toasts dynamically */ ListView { /** * Public */ /** * @brief Shows a Toast * * @param {string} text Text to show * @param {real} duration Duration to show in milliseconds, defaults to 3000 */ function show(text, duration) { model.insert(0, {text: text, duration: duration}); } /** * Private */ id: root z: Infinity spacing: 5 anchors.fill: parent // parent.height * 0.1 = height of blue header rectangle on main anchors.topMargin: parent.height * 0.1 + 5 verticalLayoutDirection: ListView.TopToBottom interactive: false displaced: Transition { NumberAnimation { properties: "y" easing.type: Easing.InOutQuad } } delegate: Toast { Component.onCompleted: { if (typeof duration === "undefined") { show(text); } else { show(text, duration); } } } model: ListModel {id: model} }