[RAPPS] Prevent download dialog placeholder from displaying
authorAlexander Shaposhnikov <sanchaez@reactos.org>
Sat, 28 Oct 2017 20:44:17 +0000 (23:44 +0300)
committerAlexander Shaposhnikov <sanchaez@reactos.org>
Sat, 28 Oct 2017 20:48:05 +0000 (23:48 +0300)
CORE-13915

base/applications/rapps/loaddlg.cpp

index 346167c..166b383 100644 (file)
@@ -393,6 +393,7 @@ INT_PTR CALLBACK CDownloadManager::DownloadDlgProc(HWND Dlg, UINT uMsg, WPARAM w
     case WM_INITDIALOG:
     {
         HICON hIconSm, hIconBg;
+        ATL::CStringW szTempCaption;
 
         hIconBg = (HICON) GetClassLongW(hMainWnd, GCLP_HICON);
         hIconSm = (HICON) GetClassLongW(hMainWnd, GCLP_HICONSM);
@@ -423,11 +424,16 @@ INT_PTR CALLBACK CDownloadManager::DownloadDlgProc(HWND Dlg, UINT uMsg, WPARAM w
         }
         DownloadsListView.LoadList(AppsToInstallList);
 
-        ShowWindow(Dlg, SW_SHOW);
-
         // Get a dlg string for later use
         GetWindowTextW(Dlg, szCaption, MAX_PATH);
 
+        // Hide a placeholder from displaying
+        szTempCaption = szCaption;
+        szTempCaption.Replace(L"%ls", L"");
+        SetWindowText(Dlg, szTempCaption.GetString());
+
+        ShowWindow(Dlg, SW_SHOW);
+
         // Start download process
         DownloadParam *param = new DownloadParam(Dlg, AppsToInstallList, szCaption);
         DWORD ThreadId;
@@ -580,6 +586,25 @@ DWORD WINAPI CDownloadManager::ThreadFunc(LPVOID param)
 
     for (iAppId = 0; iAppId < InfoArray.GetSize(); ++iAppId)
     {
+        // Reset progress bar
+        Item = GetDlgItem(hDlg, IDC_DOWNLOAD_PROGRESS);
+        if (Item)
+        {
+            SendMessageW(Item, PBM_SETPOS, 0, 0);
+        }
+
+        // Change caption to show the currently downloaded app
+        if (!bCab)
+        {
+            szNewCaption.Format(szCaption, InfoArray[iAppId].szName.GetString());
+        }
+        else
+        {
+            szNewCaption.LoadStringW(IDS_DL_DIALOG_DB_DOWNLOAD_DISP);
+        }
+
+        SetWindowTextW(hDlg, szNewCaption.GetString());
+
         // build the path for the download
         p = wcsrchr(InfoArray[iAppId].szUrl.GetString(), L'/');
         q = wcsrchr(InfoArray[iAppId].szUrl.GetString(), L'?');
@@ -626,25 +651,6 @@ DWORD WINAPI CDownloadManager::ThreadFunc(LPVOID param)
                 goto run;
         }
 
-        // Reset progress bar
-        Item = GetDlgItem(hDlg, IDC_DOWNLOAD_PROGRESS);
-        if (Item)
-        {
-            SendMessageW(Item, PBM_SETPOS, 0, 0);
-        }
-
-        // Change caption to show the currently downloaded app
-        if (!bCab)
-        {
-            szNewCaption.Format(szCaption, InfoArray[iAppId].szName.GetString());
-        }
-        else
-        {
-            szNewCaption.LoadStringW(IDS_DL_DIALOG_DB_DOWNLOAD_DISP);
-        }
-
-        SetWindowTextW(hDlg, szNewCaption.GetString());
-
         // Add the download URL
         SetDlgItemTextW(hDlg, IDC_DOWNLOAD_STATUS, InfoArray[iAppId].szUrl.GetString());