diff options
author | Zach Hilman <zachhilman@gmail.com> | 2019-06-05 18:17:31 +0200 |
---|---|---|
committer | Zach Hilman <zachhilman@gmail.com> | 2019-06-25 02:05:11 +0200 |
commit | 3898c3903e0d73be1e227e8cc109651299f3d05e (patch) | |
tree | 61c8ae075b4ae4bbe5294ea452ecfb38faf03491 /src/core/hle/service/am/applets/web_browser.h | |
parent | web_browser: Correct structures and properly parse TLVs/ShimKind (diff) | |
download | yuzu-3898c3903e0d73be1e227e8cc109651299f3d05e.tar yuzu-3898c3903e0d73be1e227e8cc109651299f3d05e.tar.gz yuzu-3898c3903e0d73be1e227e8cc109651299f3d05e.tar.bz2 yuzu-3898c3903e0d73be1e227e8cc109651299f3d05e.tar.lz yuzu-3898c3903e0d73be1e227e8cc109651299f3d05e.tar.xz yuzu-3898c3903e0d73be1e227e8cc109651299f3d05e.tar.zst yuzu-3898c3903e0d73be1e227e8cc109651299f3d05e.zip |
Diffstat (limited to '')
-rw-r--r-- | src/core/hle/service/am/applets/web_browser.h | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/core/hle/service/am/applets/web_browser.h b/src/core/hle/service/am/applets/web_browser.h index 2474675de..a3d2627f4 100644 --- a/src/core/hle/service/am/applets/web_browser.h +++ b/src/core/hle/service/am/applets/web_browser.h @@ -4,6 +4,7 @@ #pragma once +#include <map> #include "core/file_sys/vfs_types.h" #include "core/hle/service/am/am.h" #include "core/hle/service/am/applets/applets.h" @@ -11,6 +12,7 @@ namespace Service::AM::Applets { enum class ShimKind : u32; +enum class ShopWebTarget; enum class WebArgTLVType : u16; class WebBrowser final : public Applet { @@ -35,6 +37,17 @@ public: void Finalize(); private: + void InitializeInternal(); + void ExecuteInternal(); + + // Specific initializers for the types of web applets + void InitializeShop(); + void InitializeOffline(); + + // Specific executors for the types of web applets + void ExecuteShop(); + void ExecuteOffline(); + Core::Frontend::WebBrowserApplet& frontend; bool complete = false; @@ -44,8 +57,16 @@ private: ShimKind kind; std::map<WebArgTLVType, std::vector<u8>> args; + FileSys::VirtualFile offline_romfs; std::string temporary_dir; std::string filename; + + ShopWebTarget shop_web_target; + std::map<std::string, std::string> shop_query; + std::optional<u64> title_id = 0; + std::optional<u128> user_id; + std::optional<bool> shop_full_display; + std::string shop_extra_parameter; }; } // namespace Service::AM::Applets |