summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/am/applets/web_browser.h
diff options
context:
space:
mode:
authorZach Hilman <zachhilman@gmail.com>2019-06-05 18:17:31 +0200
committerZach Hilman <zachhilman@gmail.com>2019-06-25 02:05:11 +0200
commit3898c3903e0d73be1e227e8cc109651299f3d05e (patch)
tree61c8ae075b4ae4bbe5294ea452ecfb38faf03491 /src/core/hle/service/am/applets/web_browser.h
parentweb_browser: Correct structures and properly parse TLVs/ShimKind (diff)
downloadyuzu-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.h21
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