diff options
author | Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> | 2015-03-16 14:34:43 +0100 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> | 2015-03-16 14:34:43 +0100 |
commit | 9ffb601435df46744b1f4a95b3a4b231f4bda64e (patch) | |
tree | 48b34f7ef1ef8aea962cf103d97ec8ab7b38291b /src/webengine/ui_delegates_manager.cpp | |
parent | 6e356d55c8eabcc96223e25182458b78378dd5a4 (diff) | |
parent | 9bec2760d44c944e7f6b43388924b5714d9e8e06 (diff) |
Merge remote-tracking branch 'origin/5.5' into dev
Conflicts:
src/webengine/ui_delegates_manager.h
Change-Id: I989280b6008fbc4844ed86d6d16f7e7aa6ba8db9
Diffstat (limited to 'src/webengine/ui_delegates_manager.cpp')
-rw-r--r-- | src/webengine/ui_delegates_manager.cpp | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/webengine/ui_delegates_manager.cpp b/src/webengine/ui_delegates_manager.cpp index 44c763f37..48466bfe2 100644 --- a/src/webengine/ui_delegates_manager.cpp +++ b/src/webengine/ui_delegates_manager.cpp @@ -139,6 +139,7 @@ void NavigateMenuItem::onTriggered() UIDelegatesManager::UIDelegatesManager(QQuickWebEngineView *view) : m_view(view) + , m_messageBubbleItem(0) FOR_EACH_COMPONENT_TYPE(COMPONENT_MEMBER_INIT, NO_SEPARATOR) { } @@ -390,4 +391,36 @@ void UIDelegatesManager::showFilePicker(FilePickerController *controller) QMetaObject::invokeMethod(filePicker, "open"); } +void UIDelegatesManager::showMessageBubble(const QRect &anchor, const QString &mainText, const QString &subText) +{ + if (!ensureComponentLoaded(MessageBubble)) + return; + + Q_ASSERT(m_messageBubbleItem.isNull()); + + QQmlContext *context = qmlContext(m_view); + m_messageBubbleItem.reset(qobject_cast<QQuickItem *>(messageBubbleComponent->beginCreate(context))); + m_messageBubbleItem->setParentItem(m_view); + messageBubbleComponent->completeCreate(); + + QQmlProperty(m_messageBubbleItem.data(), QStringLiteral("maxWidth")).write(anchor.size().width()); + QQmlProperty(m_messageBubbleItem.data(), QStringLiteral("mainText")).write(mainText); + QQmlProperty(m_messageBubbleItem.data(), QStringLiteral("subText")).write(subText); + QQmlProperty(m_messageBubbleItem.data(), QStringLiteral("x")).write(anchor.x()); + QQmlProperty(m_messageBubbleItem.data(), QStringLiteral("y")).write(anchor.y() + anchor.size().height()); +} + +void UIDelegatesManager::hideMessageBubble() +{ + m_messageBubbleItem.reset(); +} + +void UIDelegatesManager::moveMessageBubble(const QRect &anchor) +{ + Q_ASSERT(!m_messageBubbleItem.isNull()); + + QQmlProperty(m_messageBubbleItem.data(), QStringLiteral("x")).write(anchor.x()); + QQmlProperty(m_messageBubbleItem.data(), QStringLiteral("y")).write(anchor.y() + anchor.size().height()); +} + } // namespace QtWebEngineCore |