diff --git a/atom/browser/browser_win.cc b/atom/browser/browser_win.cc index a2725b17c1f7..ce36d56b620c 100644 --- a/atom/browser/browser_win.cc +++ b/atom/browser/browser_win.cc @@ -15,6 +15,7 @@ #include "base/files/file_path.h" #include "base/memory/scoped_ptr.h" #include "base/path_service.h" +#include "base/strings/string_util.h" #include "base/strings/stringprintf.h" #include "base/strings/utf_string_conversions.h" #include "base/win/win_util.h" @@ -25,6 +26,8 @@ namespace atom { namespace { +const wchar_t kAppUserModelIDFormat[] = L"electron.app.$1"; + BOOL CALLBACK WindowsEnumerationHandler(HWND hwnd, LPARAM param) { DWORD target_process_id = *reinterpret_cast(param); DWORD process_id = 0; @@ -123,8 +126,10 @@ void Browser::SetUserTasks(const std::vector& tasks) { } PCWSTR Browser::GetAppUserModelID() { - if (app_user_model_id_.empty()) - SetAppUserModelID(base::UTF8ToUTF16(GetName())); + if (app_user_model_id_.empty()) { + SetAppUserModelID(ReplaceStringPlaceholders( + kAppUserModelIDFormat, base::UTF8ToUTF16(GetName()), nullptr)); + } return app_user_model_id_.c_str(); }