summaryrefslogtreecommitdiffstats
path: root/src/webengine
diff options
context:
space:
mode:
Diffstat (limited to 'src/webengine')
-rw-r--r--src/webengine/ui_delegates_manager.cpp20
-rw-r--r--src/webengine/ui_delegates_manager.h3
2 files changed, 13 insertions, 10 deletions
diff --git a/src/webengine/ui_delegates_manager.cpp b/src/webengine/ui_delegates_manager.cpp
index 1402c7625..5fb5ef475 100644
--- a/src/webengine/ui_delegates_manager.cpp
+++ b/src/webengine/ui_delegates_manager.cpp
@@ -109,8 +109,12 @@ void NavigateMenuItem::onTriggered()
m_adapter->load(m_targetUrl);
}
+#define COMPONENT_MEMBER_INIT(TYPE, COMPONENT) \
+ , COMPONENT##Component(0)
+
UIDelegatesManager::UIDelegatesManager(QQuickWebEngineView *view)
: m_view(view)
+ FOR_EACH_COMPONENT_TYPE(COMPONENT_MEMBER_INIT, NO_SEPARATOR)
{
}
@@ -121,7 +125,7 @@ UIDelegatesManager::UIDelegatesManager(QQuickWebEngineView *view)
bool UIDelegatesManager::ensureComponentLoaded(ComponentType type)
{
- QScopedPointer<QQmlComponent> *component;
+ QQmlComponent **component;
switch (type) {
FOR_EACH_COMPONENT_TYPE(COMPONENT_MEMBER_CASE_STATEMENT, NO_SEPARATOR)
default:
@@ -130,7 +134,7 @@ bool UIDelegatesManager::ensureComponentLoaded(ComponentType type)
}
QString fileName(fileNameForComponent(type));
#ifndef UI_DELEGATES_DEBUG
- if (!(*component).isNull())
+ if (*component)
return true;
#else // Unconditionally reload the components each time.
fprintf(stderr, "%s: %s\n", Q_FUNC_INFO, qPrintable(fileName));
@@ -145,7 +149,7 @@ bool UIDelegatesManager::ensureComponentLoaded(ComponentType type)
absolutePath = fi.absoluteFilePath();
}
// FIXME: handle async loading
- (*component).reset(new QQmlComponent(engine, QUrl(absolutePath), QQmlComponent::PreferSynchronous, m_view));
+ *component = (new QQmlComponent(engine, QUrl(absolutePath), QQmlComponent::PreferSynchronous, m_view));
if ((*component)->status() != QQmlComponent::Ready) {
#ifdef UI_DELEGATES_DEBUG
@@ -175,7 +179,7 @@ void UIDelegatesManager::addMenuItem(MenuItemHandler *menuItemHandler, const QSt
Q_ASSERT(menuItemHandler);
if (!ensureComponentLoaded(MenuItem))
return;
- QObject *it = menuItemComponent->beginCreate(creationContextForComponent(menuItemComponent.data()));
+ QObject *it = menuItemComponent->beginCreate(creationContextForComponent(menuItemComponent));
QQmlProperty(it, QStringLiteral("text")).write(text);
QQmlProperty(it, QStringLiteral("iconName")).write(iconName);
@@ -199,7 +203,7 @@ void UIDelegatesManager::addMenuSeparator(QObject *menu)
if (!ensureComponentLoaded(MenuSeparator))
return;
- QQmlContext *itemContext = creationContextForComponent(menuSeparatorComponent.data());
+ QQmlContext *itemContext = creationContextForComponent(menuSeparatorComponent);
QObject *sep = menuSeparatorComponent->create(itemContext);
sep->setParent(menu);
@@ -213,7 +217,7 @@ QObject *UIDelegatesManager::addMenu(QObject *parentMenu, const QString &title,
if (!ensureComponentLoaded(Menu))
return 0;
- QQmlContext *context(creationContextForComponent(menuComponent.data()));
+ QQmlContext *context(creationContextForComponent(menuComponent));
QObject *menu = menuComponent->beginCreate(context);
// Useful when not using Qt Quick Controls' Menu
if (QQuickItem* item = qobject_cast<QQuickItem*>(menu))
@@ -241,7 +245,7 @@ QObject *UIDelegatesManager::addMenu(QObject *parentMenu, const QString &title,
#define ASSIGN_DIALOG_COMPONENT_DATA_CASE_STATEMENT(TYPE, COMPONENT) \
case TYPE:\
- dialogComponent = COMPONENT##Component.data(); \
+ dialogComponent = COMPONENT##Component; \
break;
@@ -360,7 +364,7 @@ void UIDelegatesManager::showFilePicker(WebContentsAdapterClient::FileChooserMod
if (!ensureComponentLoaded(FilePicker))
return;
- QQmlContext *context(creationContextForComponent(filePickerComponent.data()));
+ QQmlContext *context(creationContextForComponent(filePickerComponent));
QObject *filePicker = filePickerComponent->beginCreate(context);
if (QQuickItem* item = qobject_cast<QQuickItem*>(filePicker))
item->setParentItem(m_view);
diff --git a/src/webengine/ui_delegates_manager.h b/src/webengine/ui_delegates_manager.h
index a6d15a530..125cacff4 100644
--- a/src/webengine/ui_delegates_manager.h
+++ b/src/webengine/ui_delegates_manager.h
@@ -49,7 +49,6 @@
#include <QExplicitlySharedDataPointer>
#include <QPoint>
#include <QQmlComponent>
-#include <QScopedPointer>
#include <QSharedPointer>
#include <QUrl>
@@ -67,7 +66,7 @@
#define ENUM_DECLARATION(TYPE, COMPONENT) \
TYPE
#define MEMBER_DECLARATION(TYPE, COMPONENT) \
- QScopedPointer<QQmlComponent> COMPONENT##Component
+ QQmlComponent *COMPONENT##Component
class JavaScriptDialogController;
QT_BEGIN_NAMESPACE