#pragma once

#include <QtGlobal>
#include <QUrl>

#ifdef Q_OS_MACOS

#if 0
#include <QWidget>
class MacWebView : public QWidget
{
public:
  MacWebView(QWidget* parent) : QWidget(parent) {}
  void setUrl(const QUrl& url) {}
  void setFile(const QString& file) {}
  void runJavaScript(const QString& script) {}
};
#else
#include <QMacCocoaViewContainer>
class MacWebView : public QMacCocoaViewContainer
{
public:
  MacWebView(QWidget* parent);
  void setUrl(const QUrl& url);
  void setFile(const QString& file);
  void runJavaScript(const QString& script);
};
#endif

#ifndef NO_USING_WEBVIEW
using WebView = MacWebView;
#endif

#else

#if (QT_VERSION >= QT_VERSION_CHECK(5, 6, 0))
#include <QtWebEngineWidgets/QWebEngineView>
using WebView = QWebEngineView;
#elif (QT_VERSION >= QT_VERSION_CHECK(5, 0, 0))
#include <QtWebKitWidgets/QWebView>
using WebView = QWebView;
#else
#include <QtWebKit/QWebView>
using WebView = QWebView;
#endif

#endif

