diff options
Diffstat (limited to 'src/core/core.cpp')
| -rw-r--r-- | src/core/core.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/core/core.cpp b/src/core/core.cpp index fd10199ec..373dff2e6 100644 --- a/src/core/core.cpp +++ b/src/core/core.cpp | |||
| @@ -31,7 +31,9 @@ | |||
| 31 | #include "core/loader/loader.h" | 31 | #include "core/loader/loader.h" |
| 32 | #include "core/perf_stats.h" | 32 | #include "core/perf_stats.h" |
| 33 | #include "core/telemetry_session.h" | 33 | #include "core/telemetry_session.h" |
| 34 | #include "frontend/applets/profile_select.h" | ||
| 34 | #include "frontend/applets/software_keyboard.h" | 35 | #include "frontend/applets/software_keyboard.h" |
| 36 | #include "frontend/applets/web_browser.h" | ||
| 35 | #include "video_core/debug_utils/debug_utils.h" | 37 | #include "video_core/debug_utils/debug_utils.h" |
| 36 | #include "video_core/gpu.h" | 38 | #include "video_core/gpu.h" |
| 37 | #include "video_core/renderer_base.h" | 39 | #include "video_core/renderer_base.h" |
| @@ -103,6 +105,8 @@ struct System::Impl { | |||
| 103 | profile_selector = std::make_unique<Core::Frontend::DefaultProfileSelectApplet>(); | 105 | profile_selector = std::make_unique<Core::Frontend::DefaultProfileSelectApplet>(); |
| 104 | if (software_keyboard == nullptr) | 106 | if (software_keyboard == nullptr) |
| 105 | software_keyboard = std::make_unique<Core::Frontend::DefaultSoftwareKeyboardApplet>(); | 107 | software_keyboard = std::make_unique<Core::Frontend::DefaultSoftwareKeyboardApplet>(); |
| 108 | if (web_browser == nullptr) | ||
| 109 | web_browser = std::make_unique<Core::Frontend::DefaultWebBrowserApplet>(); | ||
| 106 | 110 | ||
| 107 | auto main_process = Kernel::Process::Create(kernel, "main"); | 111 | auto main_process = Kernel::Process::Create(kernel, "main"); |
| 108 | kernel.MakeCurrentProcess(main_process.get()); | 112 | kernel.MakeCurrentProcess(main_process.get()); |
| @@ -233,6 +237,7 @@ struct System::Impl { | |||
| 233 | /// Frontend applets | 237 | /// Frontend applets |
| 234 | std::unique_ptr<Core::Frontend::ProfileSelectApplet> profile_selector; | 238 | std::unique_ptr<Core::Frontend::ProfileSelectApplet> profile_selector; |
| 235 | std::unique_ptr<Core::Frontend::SoftwareKeyboardApplet> software_keyboard; | 239 | std::unique_ptr<Core::Frontend::SoftwareKeyboardApplet> software_keyboard; |
| 240 | std::unique_ptr<Core::Frontend::WebBrowserApplet> web_browser; | ||
| 236 | 241 | ||
| 237 | /// Service manager | 242 | /// Service manager |
| 238 | std::shared_ptr<Service::SM::ServiceManager> service_manager; | 243 | std::shared_ptr<Service::SM::ServiceManager> service_manager; |
| @@ -443,6 +448,14 @@ const Core::Frontend::SoftwareKeyboardApplet& System::GetSoftwareKeyboard() cons | |||
| 443 | return *impl->software_keyboard; | 448 | return *impl->software_keyboard; |
| 444 | } | 449 | } |
| 445 | 450 | ||
| 451 | void System::SetWebBrowser(std::unique_ptr<Core::Frontend::WebBrowserApplet> applet) { | ||
| 452 | impl->web_browser = std::move(applet); | ||
| 453 | } | ||
| 454 | |||
| 455 | const Core::Frontend::WebBrowserApplet& System::GetWebBrowser() const { | ||
| 456 | return *impl->web_browser; | ||
| 457 | } | ||
| 458 | |||
| 446 | System::ResultStatus System::Init(Frontend::EmuWindow& emu_window) { | 459 | System::ResultStatus System::Init(Frontend::EmuWindow& emu_window) { |
| 447 | return impl->Init(*this, emu_window); | 460 | return impl->Init(*this, emu_window); |
| 448 | } | 461 | } |