summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/am/applets/web_browser.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/hle/service/am/applets/web_browser.h')
-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