From 82fa9f8d56bc285e7bb58fc81b495a55be9ea82c Mon Sep 17 00:00:00 2001 From: Morph <39850852+Morph1984@users.noreply.github.com> Date: Tue, 8 Dec 2020 06:20:45 -0500 Subject: applets/web: Implement the online web browser applet --- src/core/hle/service/am/applets/web_browser.cpp | 12 +++++++++--- src/core/hle/service/am/applets/web_browser.h | 2 ++ 2 files changed, 11 insertions(+), 3 deletions(-) (limited to 'src/core/hle/service/am') diff --git a/src/core/hle/service/am/applets/web_browser.cpp b/src/core/hle/service/am/applets/web_browser.cpp index 9c8be156f..2ab420789 100644 --- a/src/core/hle/service/am/applets/web_browser.cpp +++ b/src/core/hle/service/am/applets/web_browser.cpp @@ -409,7 +409,9 @@ void WebBrowser::InitializeOffline() { void WebBrowser::InitializeShare() {} -void WebBrowser::InitializeWeb() {} +void WebBrowser::InitializeWeb() { + external_url = ParseStringValue(GetInputTLVData(WebArgInputTLVType::InitialURL).value()); +} void WebBrowser::InitializeWifi() {} @@ -456,8 +458,12 @@ void WebBrowser::ExecuteShare() { } void WebBrowser::ExecuteWeb() { - LOG_WARNING(Service_AM, "(STUBBED) called, Web Applet is not implemented"); - WebBrowserExit(WebExitReason::EndButtonPressed); + LOG_INFO(Service_AM, "Opening external URL at {}", external_url); + + frontend.OpenExternalWebPage(external_url, + [this](WebExitReason exit_reason, std::string last_url) { + WebBrowserExit(exit_reason, last_url); + }); } void WebBrowser::ExecuteWifi() { diff --git a/src/core/hle/service/am/applets/web_browser.h b/src/core/hle/service/am/applets/web_browser.h index 936a49a86..04c274754 100644 --- a/src/core/hle/service/am/applets/web_browser.h +++ b/src/core/hle/service/am/applets/web_browser.h @@ -79,6 +79,8 @@ private: std::string offline_document; FileSys::VirtualFile offline_romfs; + std::string external_url; + Core::System& system; }; -- cgit v1.2.3