diff options
author | bunnei <bunneidev@gmail.com> | 2019-01-10 17:04:38 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-01-10 17:04:38 -0500 |
commit | 83e8ad23310937bb72f4412c15f45231a19202f7 (patch) | |
tree | 80301af69b14a701f16e21d41ced436850085031 /src/yuzu/applets/web_browser.h | |
parent | 912f2a520a77f478a33bbfb426b0aebf3148e5f7 (diff) | |
parent | 2378ecd0e8709efc47fbc73ef41e5ee0b952ee59 (diff) |
Merge pull request #1939 from DarkLordZach/web-applet
applets: Implement HLE web browser applet (LibAppletOff)
Diffstat (limited to 'src/yuzu/applets/web_browser.h')
-rw-r--r-- | src/yuzu/applets/web_browser.h | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/src/yuzu/applets/web_browser.h b/src/yuzu/applets/web_browser.h new file mode 100644 index 000000000..bba273767 --- /dev/null +++ b/src/yuzu/applets/web_browser.h @@ -0,0 +1,53 @@ +// Copyright 2018 yuzu Emulator Project +// Licensed under GPLv2 or any later version +// Refer to the license.txt file included. + +#pragma once + +#include <functional> +#include <QObject> + +#ifdef YUZU_USE_QT_WEB_ENGINE +#include <QWebEngineView> +#endif + +#include "core/frontend/applets/web_browser.h" + +class GMainWindow; + +#ifdef YUZU_USE_QT_WEB_ENGINE + +QString GetNXShimInjectionScript(); + +class NXInputWebEngineView : public QWebEngineView { +public: + explicit NXInputWebEngineView(QWidget* parent = nullptr); + +protected: + void keyPressEvent(QKeyEvent* event) override; + void keyReleaseEvent(QKeyEvent* event) override; +}; + +#endif + +class QtWebBrowser final : public QObject, public Core::Frontend::WebBrowserApplet { + Q_OBJECT + +public: + explicit QtWebBrowser(GMainWindow& main_window); + ~QtWebBrowser() override; + + void OpenPage(std::string_view url, std::function<void()> unpack_romfs_callback, + std::function<void()> finished_callback) const override; + +signals: + void MainWindowOpenPage(std::string_view filename, std::string_view additional_args) const; + +public slots: + void MainWindowUnpackRomFS(); + void MainWindowFinishedBrowsing(); + +private: + mutable std::function<void()> unpack_romfs_callback; + mutable std::function<void()> finished_callback; +}; |