diff options
Diffstat (limited to 'Common/NativeApp/src/UWP/App.cpp')
| -rw-r--r-- | Common/NativeApp/src/UWP/App.cpp | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/Common/NativeApp/src/UWP/App.cpp b/Common/NativeApp/src/UWP/App.cpp index e0af485..6147e6d 100644 --- a/Common/NativeApp/src/UWP/App.cpp +++ b/Common/NativeApp/src/UWP/App.cpp @@ -32,6 +32,7 @@ #endif #include "App.h" +#include "StringTools.h" #include <ppltasks.h> @@ -83,7 +84,7 @@ void App::Initialize(CoreApplicationView^ applicationView) // can make the CoreWindow active and start rendering on the window. applicationView->Activated += ref new TypedEventHandler<CoreApplicationView^, IActivatedEventArgs^>(this, &App::OnActivated); - + CoreApplication::Suspending += ref new EventHandler<SuspendingEventArgs^>(this, &App::OnSuspending); @@ -180,8 +181,18 @@ void App::Uninitialize() void App::OnActivated(CoreApplicationView^ applicationView, IActivatedEventArgs^ args) { - // Run() won't start until the CoreWindow is activated. - CoreWindow::GetForCurrentThread()->Activate(); + if (args->Kind == ActivationKind::Launch) + { + LaunchActivatedEventArgs^ launchArgs = (LaunchActivatedEventArgs^)args; + auto CmdLine = Diligent::NarrowString(launchArgs->Arguments->Data()); + m_Main->ProcessCommandLine(CmdLine.c_str()); + } + + auto Title = Diligent::WidenString(m_Main->GetAppTitle()); + Windows::UI::ViewManagement::ApplicationView::GetForCurrentView()->Title = ref new Platform::String(Title.c_str()); + + // Run() won't start until the CoreWindow is activated. + CoreWindow::GetForCurrentThread()->Activate(); } void App::OnSuspending(Platform::Object^ sender, SuspendingEventArgs^ args) |
