https://git.reactos.org/?p=reactos.git;a=commitdiff;h=103c87d2b9738b91d6eea37747be2bc343411042

commit 103c87d2b9738b91d6eea37747be2bc343411042
Author:     Doug Lyons <dougly...@douglyons.com>
AuthorDate: Sun Oct 13 18:48:08 2019 -0500
Commit:     Thomas Faber <thomas.fa...@reactos.org>
CommitDate: Sat Oct 19 15:57:34 2019 +0200

    [SHELLFIND] Add Hidden Files & Folders Selection. CORE-16427
---
 dll/win32/browseui/lang/bg-BG.rc             | 21 +++++----
 dll/win32/browseui/lang/de-DE.rc             | 21 +++++----
 dll/win32/browseui/lang/en-US.rc             | 21 +++++----
 dll/win32/browseui/lang/es-ES.rc             | 21 +++++----
 dll/win32/browseui/lang/et-EE.rc             | 21 +++++----
 dll/win32/browseui/lang/fr-FR.rc             | 21 +++++----
 dll/win32/browseui/lang/he-IL.rc             | 21 +++++----
 dll/win32/browseui/lang/hi-IN.rc             | 21 +++++----
 dll/win32/browseui/lang/id-ID.rc             | 21 +++++----
 dll/win32/browseui/lang/it-IT.rc             | 21 +++++----
 dll/win32/browseui/lang/ja-JP.rc             | 21 +++++----
 dll/win32/browseui/lang/pl-PL.rc             | 21 +++++----
 dll/win32/browseui/lang/pt-BR.rc             | 21 +++++----
 dll/win32/browseui/lang/pt-PT.rc             | 21 +++++----
 dll/win32/browseui/lang/ro-RO.rc             | 21 +++++----
 dll/win32/browseui/lang/ru-RU.rc             | 21 +++++----
 dll/win32/browseui/lang/sq-AL.rc             | 21 +++++----
 dll/win32/browseui/lang/tr-TR.rc             | 21 +++++----
 dll/win32/browseui/lang/uk-UA.rc             | 21 +++++----
 dll/win32/browseui/lang/zh-CN.rc             | 21 +++++----
 dll/win32/browseui/lang/zh-TW.rc             | 21 +++++----
 dll/win32/browseui/resource.h                |  1 +
 dll/win32/browseui/shellfind/CFindFolder.cpp | 70 ++++++++++++++++++++++++++--
 dll/win32/browseui/shellfind/CSearchBar.cpp  | 38 +++++++++++++++
 dll/win32/browseui/shellfind/shellfind.h     |  1 +
 25 files changed, 358 insertions(+), 193 deletions(-)

diff --git a/dll/win32/browseui/lang/bg-BG.rc b/dll/win32/browseui/lang/bg-BG.rc
index ad5937ccb42..1ccbc75b544 100644
--- a/dll/win32/browseui/lang/bg-BG.rc
+++ b/dll/win32/browseui/lang/bg-BG.rc
@@ -138,19 +138,22 @@ FONT 8, "MS Shell Dlg"
 BEGIN
     LTEXT "Search by any or all of the criteria below.", IDC_SEARCH_LABEL, 4, 
2, 120, 20
 
-    LTEXT "All or part &of the file name:", -1, 10, 30, 500, 10
-    EDITTEXT IDC_SEARCH_FILENAME, 10, 40, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
+    LTEXT "All or part &of the file name:", -1, 10, 25, 500, 10
+    EDITTEXT IDC_SEARCH_FILENAME, 10, 35, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
 
-    LTEXT "A &word or phrase in the file:", -1, 10, 60, 500, 10
-    EDITTEXT IDC_SEARCH_QUERY, 10, 70, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
+    LTEXT "A &word or phrase in the file:", -1, 10, 50, 500, 10
+    EDITTEXT IDC_SEARCH_QUERY, 10, 60, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
 
-    LTEXT "&Look in:", -1, 10, 90, 500, 10
-    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 100, 200, 200
+    LTEXT "&Look in:", -1, 10, 75, 500, 10
+    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 85, 200, 200
 
-    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
-    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP
+    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
+    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP
 
-    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 150, 200, 8
+    AUTOCHECKBOX "Search Hidden Files and Folders",
+                 IDC_SEARCH_HIDDEN, 4, 130, 130, 8, WS_VISIBLE | WS_GROUP | 
WS_TABSTOP
+
+    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 155, 200, 8
 END
 
 /* Accelerators */
diff --git a/dll/win32/browseui/lang/de-DE.rc b/dll/win32/browseui/lang/de-DE.rc
index 5d2f14cf53f..3ac9989f67e 100644
--- a/dll/win32/browseui/lang/de-DE.rc
+++ b/dll/win32/browseui/lang/de-DE.rc
@@ -156,19 +156,22 @@ FONT 8, "MS Shell Dlg"
 BEGIN
     LTEXT "Suche nach allen oder einigen der folgenden Kriterien.", 
IDC_SEARCH_LABEL, 4, 2, 120, 20
 
-    LTEXT "Dateiname oder &Ordnername:", -1, 10, 30, 500, 10
-    EDITTEXT IDC_SEARCH_FILENAME, 10, 40, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
+    LTEXT "Dateiname oder &Ordnername:", -1, 10, 25, 500, 10
+    EDITTEXT IDC_SEARCH_FILENAME, 10, 35, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
 
-    LTEXT "&Enthaltener Text:", -1, 10, 60, 500, 10
-    EDITTEXT IDC_SEARCH_QUERY, 10, 70, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
+    LTEXT "&Enthaltener Text:", -1, 10, 50, 500, 10
+    EDITTEXT IDC_SEARCH_QUERY, 10, 60, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
 
-    LTEXT "&Suchen in:", -1, 10, 90, 500, 10
-    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 100, 200, 200
+    LTEXT "&Suchen in:", -1, 10, 75, 500, 10
+    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 85, 200, 200
 
-    DEFPUSHBUTTON "&Jetzt suchen", IDC_SEARCH_BUTTON, 80, 130, 40, 15, 
WS_GROUP | WS_TABSTOP | WS_VISIBLE
-    PUSHBUTTON "Abbrec&hen", IDC_SEARCH_STOP_BUTTON, 80, 130, 40, 15, WS_GROUP 
| WS_TABSTOP
+    DEFPUSHBUTTON "&Jetzt suchen", IDC_SEARCH_BUTTON, 80, 110, 40, 15, 
WS_GROUP | WS_TABSTOP | WS_VISIBLE
+    PUSHBUTTON "Abbrec&hen", IDC_SEARCH_STOP_BUTTON, 80, 110, 40, 15, WS_GROUP 
| WS_TABSTOP
 
-    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 150, 200, 8
+    AUTOCHECKBOX "Search Hidden Files and Folders",
+                 IDC_SEARCH_HIDDEN, 4, 130, 130, 8, WS_VISIBLE | WS_GROUP | 
WS_TABSTOP
+
+    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 155, 200, 8
 END
 
 /* Accelerators */
diff --git a/dll/win32/browseui/lang/en-US.rc b/dll/win32/browseui/lang/en-US.rc
index b2e4063f3c0..e2d51923637 100644
--- a/dll/win32/browseui/lang/en-US.rc
+++ b/dll/win32/browseui/lang/en-US.rc
@@ -156,19 +156,22 @@ FONT 8, "MS Shell Dlg"
 BEGIN
     LTEXT "Search by any or all of the criteria below.", IDC_SEARCH_LABEL, 4, 
2, 120, 20
 
-    LTEXT "All or part &of the file name:", -1, 10, 30, 500, 10
-    EDITTEXT IDC_SEARCH_FILENAME, 10, 40, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
+    LTEXT "All or part &of the file name:", -1, 10, 25, 500, 10
+    EDITTEXT IDC_SEARCH_FILENAME, 10, 35, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
 
-    LTEXT "A &word or phrase in the file:", -1, 10, 60, 500, 10
-    EDITTEXT IDC_SEARCH_QUERY, 10, 70, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
+    LTEXT "A &word or phrase in the file:", -1, 10, 50, 500, 10
+    EDITTEXT IDC_SEARCH_QUERY, 10, 60, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
 
-    LTEXT "&Look in:", -1, 10, 90, 500, 10
-    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 100, 200, 200
+    LTEXT "&Look in:", -1, 10, 75, 500, 10
+    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 85, 200, 200
 
-    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
-    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP
+    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
+    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP
 
-    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 150, 200, 8
+    AUTOCHECKBOX "Search Hidden Files and Folders",
+                 IDC_SEARCH_HIDDEN, 4, 130, 130, 8, WS_VISIBLE | WS_GROUP | 
WS_TABSTOP
+
+    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 155, 200, 8
 END
 
 /* Accelerators */
diff --git a/dll/win32/browseui/lang/es-ES.rc b/dll/win32/browseui/lang/es-ES.rc
index 75bcf79790e..28b5d40bc7b 100644
--- a/dll/win32/browseui/lang/es-ES.rc
+++ b/dll/win32/browseui/lang/es-ES.rc
@@ -146,19 +146,22 @@ FONT 8, "MS Shell Dlg"
 BEGIN
     LTEXT "Search by any or all of the criteria below.", IDC_SEARCH_LABEL, 4, 
2, 120, 20
 
-    LTEXT "All or part &of the file name:", -1, 10, 30, 500, 10
-    EDITTEXT IDC_SEARCH_FILENAME, 10, 40, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
+    LTEXT "All or part &of the file name:", -1, 10, 25, 500, 10
+    EDITTEXT IDC_SEARCH_FILENAME, 10, 35, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
 
-    LTEXT "A &word or phrase in the file:", -1, 10, 60, 500, 10
-    EDITTEXT IDC_SEARCH_QUERY, 10, 70, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
+    LTEXT "A &word or phrase in the file:", -1, 10, 50, 500, 10
+    EDITTEXT IDC_SEARCH_QUERY, 10, 60, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
 
-    LTEXT "&Look in:", -1, 10, 90, 500, 10
-    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 100, 200, 200
+    LTEXT "&Look in:", -1, 10, 75, 500, 10
+    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 85, 200, 200
 
-    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
-    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP
+    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
+    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP
 
-    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 150, 200, 8
+    AUTOCHECKBOX "Search Hidden Files and Folders",
+                 IDC_SEARCH_HIDDEN, 4, 130, 130, 8, WS_VISIBLE | WS_GROUP | 
WS_TABSTOP
+
+    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 155, 200, 8
 END
 
 /* Accelerators */
diff --git a/dll/win32/browseui/lang/et-EE.rc b/dll/win32/browseui/lang/et-EE.rc
index 8c9ee044ae1..1c644d2e184 100644
--- a/dll/win32/browseui/lang/et-EE.rc
+++ b/dll/win32/browseui/lang/et-EE.rc
@@ -145,19 +145,22 @@ FONT 8, "MS Shell Dlg"
 BEGIN
     LTEXT "Search by any or all of the criteria below.", IDC_SEARCH_LABEL, 4, 
2, 120, 20
 
-    LTEXT "All or part &of the file name:", -1, 10, 30, 500, 10
-    EDITTEXT IDC_SEARCH_FILENAME, 10, 40, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
+    LTEXT "All or part &of the file name:", -1, 10, 25, 500, 10
+    EDITTEXT IDC_SEARCH_FILENAME, 10, 35, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
 
-    LTEXT "A &word or phrase in the file:", -1, 10, 60, 500, 10
-    EDITTEXT IDC_SEARCH_QUERY, 10, 70, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
+    LTEXT "A &word or phrase in the file:", -1, 10, 50, 500, 10
+    EDITTEXT IDC_SEARCH_QUERY, 10, 60, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
 
-    LTEXT "&Look in:", -1, 10, 90, 500, 10
-    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 100, 200, 200
+    LTEXT "&Look in:", -1, 10, 75, 500, 10
+    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 85, 200, 200
 
-    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
-    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP
+    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
+    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP
 
-    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 150, 200, 8
+    AUTOCHECKBOX "Search Hidden Files and Folders",
+                 IDC_SEARCH_HIDDEN, 4, 130, 130, 8, WS_VISIBLE | WS_GROUP | 
WS_TABSTOP
+
+    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 155, 200, 8
 END
 
 /* Accelerators */
diff --git a/dll/win32/browseui/lang/fr-FR.rc b/dll/win32/browseui/lang/fr-FR.rc
index 8651a672a29..2bb5d7f0ff4 100644
--- a/dll/win32/browseui/lang/fr-FR.rc
+++ b/dll/win32/browseui/lang/fr-FR.rc
@@ -156,19 +156,22 @@ FONT 8, "MS Shell Dlg"
 BEGIN
     LTEXT "Chercher en fonction d'un ou de tous les critères suivants.", 
IDC_SEARCH_LABEL, 4, 2, 120, 20
 
-    LTEXT "Tout ou partie du &nom de fichier :", -1, 10, 30, 500, 10
-    EDITTEXT IDC_SEARCH_FILENAME, 10, 40, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
+    LTEXT "Tout ou partie du &nom de fichier :", -1, 10, 25, 500, 10
+    EDITTEXT IDC_SEARCH_FILENAME, 10, 35, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
 
-    LTEXT "Un &mot ou une phrase dans le fichier :", -1, 10, 60, 500, 10
-    EDITTEXT IDC_SEARCH_QUERY, 10, 70, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
+    LTEXT "Un &mot ou une phrase dans le fichier :", -1, 10, 50, 500, 10
+    EDITTEXT IDC_SEARCH_QUERY, 10, 60, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
 
-    LTEXT "&Chercher dans :", -1, 10, 90, 500, 10
-    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 100, 200, 200
+    LTEXT "&Chercher dans :", -1, 10, 75, 500, 10
+    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 85, 200, 200
 
-    DEFPUSHBUTTON "Che&rcher", IDC_SEARCH_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
-    PUSHBUTTON "&Arrêter", IDC_SEARCH_STOP_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP
+    DEFPUSHBUTTON "Che&rcher", IDC_SEARCH_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
+    PUSHBUTTON "&Arrêter", IDC_SEARCH_STOP_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP
 
-    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 150, 200, 8
+    AUTOCHECKBOX "Search Hidden Files and Folders",
+                 IDC_SEARCH_HIDDEN, 4, 130, 130, 8, WS_VISIBLE | WS_GROUP | 
WS_TABSTOP
+
+    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 155, 200, 8
 END
 
 /* Accelerators */
diff --git a/dll/win32/browseui/lang/he-IL.rc b/dll/win32/browseui/lang/he-IL.rc
index cfe09cdbb53..6bbabc19e28 100644
--- a/dll/win32/browseui/lang/he-IL.rc
+++ b/dll/win32/browseui/lang/he-IL.rc
@@ -140,19 +140,22 @@ FONT 8, "MS Shell Dlg"
 BEGIN
     LTEXT "חפש לפי חלק או כל כללי החיפוש המופיעים למטה.", IDC_SEARCH_LABEL, 4, 
2, 120, 20
 
-    LTEXT "ח&לק משם הקובץ או כולו:", -1, 10, 30, 500, 10
-    EDITTEXT IDC_SEARCH_FILENAME, 10, 40, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
+    LTEXT "ח&לק משם הקובץ או כולו:", -1, 10, 25, 500, 10
+    EDITTEXT IDC_SEARCH_FILENAME, 10, 35, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
 
-    LTEXT "&מילה או ביטוי בקובץ:", -1, 10, 60, 500, 10
-    EDITTEXT IDC_SEARCH_QUERY, 10, 70, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
+    LTEXT "&מילה או ביטוי בקובץ:", -1, 10, 50, 500, 10
+    EDITTEXT IDC_SEARCH_QUERY, 10, 60, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
 
-    LTEXT "&חפש ב:", -1, 10, 90, 500, 10
-    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 100, 200, 200
+    LTEXT "&חפש ב:", -1, 10, 75, 500, 10
+    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 85, 200, 200
 
-    DEFPUSHBUTTON "&חפש", IDC_SEARCH_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
-    PUSHBUTTON "&עצור", IDC_SEARCH_STOP_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP
+    DEFPUSHBUTTON "&חפש", IDC_SEARCH_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
+    PUSHBUTTON "&עצור", IDC_SEARCH_STOP_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP
 
-    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 150, 200, 8
+    AUTOCHECKBOX "Search Hidden Files and Folders",
+                 IDC_SEARCH_HIDDEN, 4, 130, 130, 8, WS_VISIBLE | WS_GROUP | 
WS_TABSTOP
+
+    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 155, 200, 8
 END
 
 /* Accelerators */
diff --git a/dll/win32/browseui/lang/hi-IN.rc b/dll/win32/browseui/lang/hi-IN.rc
index bfaace1cb0f..f9c55ff3709 100644
--- a/dll/win32/browseui/lang/hi-IN.rc
+++ b/dll/win32/browseui/lang/hi-IN.rc
@@ -138,19 +138,22 @@ FONT 8, "MS Shell Dlg"
 BEGIN
     LTEXT "Search by any or all of the criteria below.", IDC_SEARCH_LABEL, 4, 
2, 120, 20
 
-    LTEXT "All or part &of the file name:", -1, 10, 30, 500, 10
-    EDITTEXT IDC_SEARCH_FILENAME, 10, 40, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
+    LTEXT "All or part &of the file name:", -1, 10, 25, 500, 10
+    EDITTEXT IDC_SEARCH_FILENAME, 10, 35, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
 
-    LTEXT "A &word or phrase in the file:", -1, 10, 60, 500, 10
-    EDITTEXT IDC_SEARCH_QUERY, 10, 70, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
+    LTEXT "A &word or phrase in the file:", -1, 10, 50, 500, 10
+    EDITTEXT IDC_SEARCH_QUERY, 10, 60, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
 
-    LTEXT "&Look in:", -1, 10, 90, 500, 10
-    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 100, 200, 200
+    LTEXT "&Look in:", -1, 10, 75, 500, 10
+    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 85, 200, 200
 
-    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
-    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP
+    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
+    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP
 
-    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 150, 200, 8
+    AUTOCHECKBOX "Search Hidden Files and Folders",
+                 IDC_SEARCH_HIDDEN, 4, 130, 130, 8, WS_VISIBLE | WS_GROUP | 
WS_TABSTOP
+
+    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 155, 200, 8
 END
 
 /* Accelerators */
diff --git a/dll/win32/browseui/lang/id-ID.rc b/dll/win32/browseui/lang/id-ID.rc
index e51148805a3..955809cccc7 100644
--- a/dll/win32/browseui/lang/id-ID.rc
+++ b/dll/win32/browseui/lang/id-ID.rc
@@ -156,19 +156,22 @@ FONT 8, "MS Shell Dlg"
 BEGIN
     LTEXT "Search by any or all of the criteria below.", IDC_SEARCH_LABEL, 4, 
2, 120, 20
 
-    LTEXT "All or part &of the file name:", -1, 10, 30, 500, 10
-    EDITTEXT IDC_SEARCH_FILENAME, 10, 40, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
+    LTEXT "All or part &of the file name:", -1, 10, 25, 500, 10
+    EDITTEXT IDC_SEARCH_FILENAME, 10, 35, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
 
-    LTEXT "A &word or phrase in the file:", -1, 10, 60, 500, 10
-    EDITTEXT IDC_SEARCH_QUERY, 10, 70, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
+    LTEXT "A &word or phrase in the file:", -1, 10, 50, 500, 10
+    EDITTEXT IDC_SEARCH_QUERY, 10, 60, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
 
-    LTEXT "&Look in:", -1, 10, 90, 500, 10
-    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 100, 200, 200
+    LTEXT "&Look in:", -1, 10, 75, 500, 10
+    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 85, 200, 200
 
-    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
-    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP
+    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
+    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP
 
-    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 150, 200, 8
+    AUTOCHECKBOX "Search Hidden Files and Folders",
+                 IDC_SEARCH_HIDDEN, 4, 130, 130, 8, WS_VISIBLE | WS_GROUP | 
WS_TABSTOP
+
+    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 155, 200, 8
 END
 
 /* Accelerators */
diff --git a/dll/win32/browseui/lang/it-IT.rc b/dll/win32/browseui/lang/it-IT.rc
index 75054d87060..bb2384481cb 100644
--- a/dll/win32/browseui/lang/it-IT.rc
+++ b/dll/win32/browseui/lang/it-IT.rc
@@ -138,19 +138,22 @@ FONT 8, "MS Shell Dlg"
 BEGIN
     LTEXT "Search by any or all of the criteria below.", IDC_SEARCH_LABEL, 4, 
2, 120, 20
 
-    LTEXT "All or part &of the file name:", -1, 10, 30, 500, 10
-    EDITTEXT IDC_SEARCH_FILENAME, 10, 40, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
+    LTEXT "All or part &of the file name:", -1, 10, 25, 500, 10
+    EDITTEXT IDC_SEARCH_FILENAME, 10, 35, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
 
-    LTEXT "A &word or phrase in the file:", -1, 10, 60, 500, 10
-    EDITTEXT IDC_SEARCH_QUERY, 10, 70, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
+    LTEXT "A &word or phrase in the file:", -1, 10, 50, 500, 10
+    EDITTEXT IDC_SEARCH_QUERY, 10, 60, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
 
-    LTEXT "&Look in:", -1, 10, 90, 500, 10
-    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 100, 200, 200
+    LTEXT "&Look in:", -1, 10, 75, 500, 10
+    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 85, 200, 200
 
-    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
-    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP
+    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
+    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP
 
-    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 150, 200, 8
+    AUTOCHECKBOX "Search Hidden Files and Folders",
+                 IDC_SEARCH_HIDDEN, 4, 130, 130, 8, WS_VISIBLE | WS_GROUP | 
WS_TABSTOP
+
+    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 155, 200, 8
 END
 
 /* Accelerators */
diff --git a/dll/win32/browseui/lang/ja-JP.rc b/dll/win32/browseui/lang/ja-JP.rc
index 22c66a5873c..43c46bf8c56 100644
--- a/dll/win32/browseui/lang/ja-JP.rc
+++ b/dll/win32/browseui/lang/ja-JP.rc
@@ -156,19 +156,22 @@ FONT 8, "MS Shell Dlg"
 BEGIN
     LTEXT "Search by any or all of the criteria below.", IDC_SEARCH_LABEL, 4, 
2, 120, 20
 
-    LTEXT "All or part &of the file name:", -1, 10, 30, 500, 10
-    EDITTEXT IDC_SEARCH_FILENAME, 10, 40, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
+    LTEXT "All or part &of the file name:", -1, 10, 25, 500, 10
+    EDITTEXT IDC_SEARCH_FILENAME, 10, 35, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
 
-    LTEXT "A &word or phrase in the file:", -1, 10, 60, 500, 10
-    EDITTEXT IDC_SEARCH_QUERY, 10, 70, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
+    LTEXT "A &word or phrase in the file:", -1, 10, 50, 500, 10
+    EDITTEXT IDC_SEARCH_QUERY, 10, 60, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
 
-    LTEXT "&Look in:", -1, 10, 90, 500, 10
-    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 100, 200, 200
+    LTEXT "&Look in:", -1, 10, 75, 500, 10
+    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 85, 200, 200
 
-    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
-    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP
+    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
+    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP
 
-    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 150, 200, 8
+    AUTOCHECKBOX "Search Hidden Files and Folders",
+                 IDC_SEARCH_HIDDEN, 4, 130, 130, 8, WS_VISIBLE | WS_GROUP | 
WS_TABSTOP
+
+    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 155, 200, 8
 END
 
 /* Accelerators */
diff --git a/dll/win32/browseui/lang/pl-PL.rc b/dll/win32/browseui/lang/pl-PL.rc
index 314fb6baf36..f0c033eff89 100644
--- a/dll/win32/browseui/lang/pl-PL.rc
+++ b/dll/win32/browseui/lang/pl-PL.rc
@@ -146,19 +146,22 @@ FONT 8, "MS Shell Dlg"
 BEGIN
     LTEXT "Wyszukiwanie według dowolnego lub wszystkich kryteriów wymienionych 
poniżej.", IDC_SEARCH_LABEL, 4, 2, 120, 20
 
-    LTEXT "Cała nazwa pliku lu&b jej część:", -1, 10, 30, 500, 10
-    EDITTEXT IDC_SEARCH_FILENAME, 10, 40, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
+    LTEXT "Cała nazwa pliku lu&b jej część:", -1, 10, 25, 500, 10
+    EDITTEXT IDC_SEARCH_FILENAME, 10, 35, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
 
-    LTEXT "Wyraz lub &fraza w pliku:", -1, 10, 60, 500, 10
-    EDITTEXT IDC_SEARCH_QUERY, 10, 70, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
+    LTEXT "Wyraz lub &fraza w pliku:", -1, 10, 50, 500, 10
+    EDITTEXT IDC_SEARCH_QUERY, 10, 60, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
 
-    LTEXT "Szu&kaj w:", -1, 10, 90, 500, 10
-    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 100, 200, 200
+    LTEXT "Szu&kaj w:", -1, 10, 75, 500, 10
+    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 85, 200, 200
 
-    DEFPUSHBUTTON "Wy&szukaj", IDC_SEARCH_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
-    PUSHBUTTON "&Zatrzymaj", IDC_SEARCH_STOP_BUTTON, 80, 130, 40, 15, WS_GROUP 
| WS_TABSTOP
+    DEFPUSHBUTTON "Wy&szukaj", IDC_SEARCH_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
+    PUSHBUTTON "&Zatrzymaj", IDC_SEARCH_STOP_BUTTON, 80, 110, 40, 15, WS_GROUP 
| WS_TABSTOP
 
-    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 150, 200, 8
+    AUTOCHECKBOX "Search Hidden Files and Folders",
+                 IDC_SEARCH_HIDDEN, 4, 130, 130, 8, WS_VISIBLE | WS_GROUP | 
WS_TABSTOP
+
+    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 155, 200, 8
 END
 
 /* Accelerators */
diff --git a/dll/win32/browseui/lang/pt-BR.rc b/dll/win32/browseui/lang/pt-BR.rc
index 2d5174e8c1a..55e1bebde05 100644
--- a/dll/win32/browseui/lang/pt-BR.rc
+++ b/dll/win32/browseui/lang/pt-BR.rc
@@ -140,19 +140,22 @@ FONT 8, "MS Shell Dlg"
 BEGIN
     LTEXT "Search by any or all of the criteria below.", IDC_SEARCH_LABEL, 4, 
2, 120, 20
 
-    LTEXT "All or part &of the file name:", -1, 10, 30, 500, 10
-    EDITTEXT IDC_SEARCH_FILENAME, 10, 40, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
+    LTEXT "All or part &of the file name:", -1, 10, 25, 500, 10
+    EDITTEXT IDC_SEARCH_FILENAME, 10, 35, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
 
-    LTEXT "A &word or phrase in the file:", -1, 10, 60, 500, 10
-    EDITTEXT IDC_SEARCH_QUERY, 10, 70, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
+    LTEXT "A &word or phrase in the file:", -1, 10, 50, 500, 10
+    EDITTEXT IDC_SEARCH_QUERY, 10, 60, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
 
-    LTEXT "&Look in:", -1, 10, 90, 500, 10
-    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 100, 200, 200
+    LTEXT "&Look in:", -1, 10, 75, 500, 10
+    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 85, 200, 200
 
-    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
-    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP
+    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
+    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP
 
-    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 150, 200, 8
+    AUTOCHECKBOX "Search Hidden Files and Folders",
+                 IDC_SEARCH_HIDDEN, 4, 130, 130, 8, WS_VISIBLE | WS_GROUP | 
WS_TABSTOP
+
+    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 155, 200, 8
 END
 
 /* Accelerators */
diff --git a/dll/win32/browseui/lang/pt-PT.rc b/dll/win32/browseui/lang/pt-PT.rc
index 6886bafec8d..9f4fbc19e33 100644
--- a/dll/win32/browseui/lang/pt-PT.rc
+++ b/dll/win32/browseui/lang/pt-PT.rc
@@ -140,19 +140,22 @@ FONT 8, "MS Shell Dlg"
 BEGIN
     LTEXT "Search by any or all of the criteria below.", IDC_SEARCH_LABEL, 4, 
2, 120, 20
 
-    LTEXT "All or part &of the file name:", -1, 10, 30, 500, 10
-    EDITTEXT IDC_SEARCH_FILENAME, 10, 40, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
+    LTEXT "All or part &of the file name:", -1, 10, 25, 500, 10
+    EDITTEXT IDC_SEARCH_FILENAME, 10, 35, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
 
-    LTEXT "A &word or phrase in the file:", -1, 10, 60, 500, 10
-    EDITTEXT IDC_SEARCH_QUERY, 10, 70, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
+    LTEXT "A &word or phrase in the file:", -1, 10, 50, 500, 10
+    EDITTEXT IDC_SEARCH_QUERY, 10, 60, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
 
-    LTEXT "&Look in:", -1, 10, 90, 500, 10
-    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 100, 200, 200
+    LTEXT "&Look in:", -1, 10, 75, 500, 10
+    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 85, 200, 200
 
-    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
-    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP
+    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
+    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP
 
-    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 150, 200, 8
+    AUTOCHECKBOX "Search Hidden Files and Folders",
+                 IDC_SEARCH_HIDDEN, 4, 130, 130, 8, WS_VISIBLE | WS_GROUP | 
WS_TABSTOP
+
+    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 155, 200, 8
 END
 
 /* Accelerators */
diff --git a/dll/win32/browseui/lang/ro-RO.rc b/dll/win32/browseui/lang/ro-RO.rc
index 9a0962b7cba..22702a9a4b6 100644
--- a/dll/win32/browseui/lang/ro-RO.rc
+++ b/dll/win32/browseui/lang/ro-RO.rc
@@ -140,19 +140,22 @@ FONT 8, "MS Shell Dlg"
 BEGIN
     LTEXT "Search by any or all of the criteria below.", IDC_SEARCH_LABEL, 4, 
2, 120, 20
 
-    LTEXT "All or part &of the file name:", -1, 10, 30, 500, 10
-    EDITTEXT IDC_SEARCH_FILENAME, 10, 40, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
+    LTEXT "All or part &of the file name:", -1, 10, 25, 500, 10
+    EDITTEXT IDC_SEARCH_FILENAME, 10, 35, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
 
-    LTEXT "A &word or phrase in the file:", -1, 10, 60, 500, 10
-    EDITTEXT IDC_SEARCH_QUERY, 10, 70, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
+    LTEXT "A &word or phrase in the file:", -1, 10, 50, 500, 10
+    EDITTEXT IDC_SEARCH_QUERY, 10, 60, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
 
-    LTEXT "&Look in:", -1, 10, 90, 500, 10
-    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 100, 200, 200
+    LTEXT "&Look in:", -1, 10, 75, 500, 10
+    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 85, 200, 200
 
-    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
-    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP
+    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
+    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP
 
-    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 150, 200, 8
+    AUTOCHECKBOX "Search Hidden Files and Folders",
+                 IDC_SEARCH_HIDDEN, 4, 130, 130, 8, WS_VISIBLE | WS_GROUP | 
WS_TABSTOP
+
+    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 155, 200, 8
 END
 
 /* Accelerators */
diff --git a/dll/win32/browseui/lang/ru-RU.rc b/dll/win32/browseui/lang/ru-RU.rc
index cfe7d49bd06..76ee2d043bf 100644
--- a/dll/win32/browseui/lang/ru-RU.rc
+++ b/dll/win32/browseui/lang/ru-RU.rc
@@ -147,19 +147,22 @@ FONT 8, "MS Shell Dlg"
 BEGIN
     LTEXT "Поиск по одному или нескольким критериям.", IDC_SEARCH_LABEL, 4, 2, 
120, 20
 
-    LTEXT "Полное или &частичное имя файла:", -1, 10, 30, 500, 10
-    EDITTEXT IDC_SEARCH_FILENAME, 10, 40, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
+    LTEXT "Полное или &частичное имя файла:", -1, 10, 25, 500, 10
+    EDITTEXT IDC_SEARCH_FILENAME, 10, 35, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
 
-    LTEXT "С&лово или фраза в файле:", -1, 10, 60, 500, 10
-    EDITTEXT IDC_SEARCH_QUERY, 10, 70, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
+    LTEXT "С&лово или фраза в файле:", -1, 10, 50, 500, 10
+    EDITTEXT IDC_SEARCH_QUERY, 10, 60, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
 
-    LTEXT "П&оиск в:", -1, 10, 90, 500, 10
-    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 100, 200, 200
+    LTEXT "П&оиск в:", -1, 10, 75, 500, 10
+    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 85, 200, 200
 
-    DEFPUSHBUTTON "Най&ти", IDC_SEARCH_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
-    PUSHBUTTON "Остановит&ь", IDC_SEARCH_STOP_BUTTON, 80, 130, 40, 15, 
WS_GROUP | WS_TABSTOP
+    DEFPUSHBUTTON "Най&ти", IDC_SEARCH_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
+    PUSHBUTTON "Остановит&ь", IDC_SEARCH_STOP_BUTTON, 80, 110, 40, 15, 
WS_GROUP | WS_TABSTOP
 
-    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 150, 200, 8
+    AUTOCHECKBOX "Search Hidden Files and Folders",
+                 IDC_SEARCH_HIDDEN, 4, 130, 130, 8, WS_VISIBLE | WS_GROUP | 
WS_TABSTOP
+
+    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 155, 200, 8
 END
 
 /* Accelerators */
diff --git a/dll/win32/browseui/lang/sq-AL.rc b/dll/win32/browseui/lang/sq-AL.rc
index 17a9e42ee62..631ea5928bb 100644
--- a/dll/win32/browseui/lang/sq-AL.rc
+++ b/dll/win32/browseui/lang/sq-AL.rc
@@ -157,19 +157,22 @@ FONT 8, "MS Shell Dlg"
 BEGIN
     LTEXT "Search by any or all of the criteria below.", IDC_SEARCH_LABEL, 4, 
2, 120, 20
 
-    LTEXT "All or part &of the file name:", -1, 10, 30, 500, 10
-    EDITTEXT IDC_SEARCH_FILENAME, 10, 40, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
+    LTEXT "All or part &of the file name:", -1, 10, 25, 500, 10
+    EDITTEXT IDC_SEARCH_FILENAME, 10, 35, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
 
-    LTEXT "A &word or phrase in the file:", -1, 10, 60, 500, 10
-    EDITTEXT IDC_SEARCH_QUERY, 10, 70, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
+    LTEXT "A &word or phrase in the file:", -1, 10, 50, 500, 10
+    EDITTEXT IDC_SEARCH_QUERY, 10, 60, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
 
-    LTEXT "&Look in:", -1, 10, 90, 500, 10
-    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 100, 200, 200
+    LTEXT "&Look in:", -1, 10, 75, 500, 10
+    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 85, 200, 200
 
-    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
-    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP
+    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
+    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP
 
-    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 150, 200, 8
+    AUTOCHECKBOX "Search Hidden Files and Folders",
+                 IDC_SEARCH_HIDDEN, 4, 130, 130, 8, WS_VISIBLE | WS_GROUP | 
WS_TABSTOP
+
+    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 155, 200, 8
 END
 
 /* Accelerators */
diff --git a/dll/win32/browseui/lang/tr-TR.rc b/dll/win32/browseui/lang/tr-TR.rc
index 0131050e4f9..e652a5cb37b 100644
--- a/dll/win32/browseui/lang/tr-TR.rc
+++ b/dll/win32/browseui/lang/tr-TR.rc
@@ -140,19 +140,22 @@ FONT 8, "MS Shell Dlg"
 BEGIN
     LTEXT "Search by any or all of the criteria below.", IDC_SEARCH_LABEL, 4, 
2, 120, 20
 
-    LTEXT "All or part &of the file name:", -1, 10, 30, 500, 10
-    EDITTEXT IDC_SEARCH_FILENAME, 10, 40, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
+    LTEXT "All or part &of the file name:", -1, 10, 25, 500, 10
+    EDITTEXT IDC_SEARCH_FILENAME, 10, 35, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
 
-    LTEXT "A &word or phrase in the file:", -1, 10, 60, 500, 10
-    EDITTEXT IDC_SEARCH_QUERY, 10, 70, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
+    LTEXT "A &word or phrase in the file:", -1, 10, 50, 500, 10
+    EDITTEXT IDC_SEARCH_QUERY, 10, 60, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
 
-    LTEXT "&Look in:", -1, 10, 90, 500, 10
-    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 100, 200, 200
+    LTEXT "&Look in:", -1, 10, 75, 500, 10
+    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 85, 200, 200
 
-    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
-    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP
+    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
+    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP
 
-    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 150, 200, 8
+    AUTOCHECKBOX "Search Hidden Files and Folders",
+                 IDC_SEARCH_HIDDEN, 4, 130, 130, 8, WS_VISIBLE | WS_GROUP | 
WS_TABSTOP
+
+    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 155, 200, 8
 END
 
 /* Accelerators */
diff --git a/dll/win32/browseui/lang/uk-UA.rc b/dll/win32/browseui/lang/uk-UA.rc
index a7bd6a33de7..9bc13c71524 100644
--- a/dll/win32/browseui/lang/uk-UA.rc
+++ b/dll/win32/browseui/lang/uk-UA.rc
@@ -146,19 +146,22 @@ FONT 8, "MS Shell Dlg"
 BEGIN
     LTEXT "Search by any or all of the criteria below.", IDC_SEARCH_LABEL, 4, 
2, 120, 20
 
-    LTEXT "All or part &of the file name:", -1, 10, 30, 500, 10
-    EDITTEXT IDC_SEARCH_FILENAME, 10, 40, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
+    LTEXT "All or part &of the file name:", -1, 10, 25, 500, 10
+    EDITTEXT IDC_SEARCH_FILENAME, 10, 35, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
 
-    LTEXT "A &word or phrase in the file:", -1, 10, 60, 500, 10
-    EDITTEXT IDC_SEARCH_QUERY, 10, 70, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
+    LTEXT "A &word or phrase in the file:", -1, 10, 50, 500, 10
+    EDITTEXT IDC_SEARCH_QUERY, 10, 60, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
 
-    LTEXT "&Look in:", -1, 10, 90, 500, 10
-    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 100, 200, 200
+    LTEXT "&Look in:", -1, 10, 75, 500, 10
+    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 85, 200, 200
 
-    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
-    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP
+    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
+    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP
 
-    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 150, 200, 8
+    AUTOCHECKBOX "Search Hidden Files and Folders",
+                 IDC_SEARCH_HIDDEN, 4, 130, 130, 8, WS_VISIBLE | WS_GROUP | 
WS_TABSTOP
+
+    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 155, 200, 8
 END
 
 /* Accelerators */
diff --git a/dll/win32/browseui/lang/zh-CN.rc b/dll/win32/browseui/lang/zh-CN.rc
index 91973e5af28..2627baaf12b 100644
--- a/dll/win32/browseui/lang/zh-CN.rc
+++ b/dll/win32/browseui/lang/zh-CN.rc
@@ -159,19 +159,22 @@ FONT 8, "MS Shell Dlg"
 BEGIN
     LTEXT "Search by any or all of the criteria below.", IDC_SEARCH_LABEL, 4, 
2, 120, 20
 
-    LTEXT "All or part &of the file name:", -1, 10, 30, 500, 10
-    EDITTEXT IDC_SEARCH_FILENAME, 10, 40, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
+    LTEXT "All or part &of the file name:", -1, 10, 25, 500, 10
+    EDITTEXT IDC_SEARCH_FILENAME, 10, 35, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
 
-    LTEXT "A &word or phrase in the file:", -1, 10, 60, 500, 10
-    EDITTEXT IDC_SEARCH_QUERY, 10, 70, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
+    LTEXT "A &word or phrase in the file:", -1, 10, 50, 500, 10
+    EDITTEXT IDC_SEARCH_QUERY, 10, 60, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
 
-    LTEXT "&Look in:", -1, 10, 90, 500, 10
-    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 100, 200, 200
+    LTEXT "&Look in:", -1, 10, 75, 500, 10
+    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 85, 200, 200
 
-    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
-    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP
+    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
+    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP
 
-    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 150, 200, 8
+    AUTOCHECKBOX "Search Hidden Files and Folders",
+                 IDC_SEARCH_HIDDEN, 4, 130, 130, 8, WS_VISIBLE | WS_GROUP | 
WS_TABSTOP
+
+    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 155, 200, 8
 END
 
 /* Accelerators */
diff --git a/dll/win32/browseui/lang/zh-TW.rc b/dll/win32/browseui/lang/zh-TW.rc
index 557032657e9..bb526dbc3d6 100644
--- a/dll/win32/browseui/lang/zh-TW.rc
+++ b/dll/win32/browseui/lang/zh-TW.rc
@@ -159,19 +159,22 @@ FONT 8, "MS Shell Dlg"
 BEGIN
     LTEXT "Search by any or all of the criteria below.", IDC_SEARCH_LABEL, 4, 
2, 120, 20
 
-    LTEXT "All or part &of the file name:", -1, 10, 30, 500, 10
-    EDITTEXT IDC_SEARCH_FILENAME, 10, 40, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
+    LTEXT "All or part &of the file name:", -1, 10, 25, 500, 10
+    EDITTEXT IDC_SEARCH_FILENAME, 10, 35, 100, 12, ES_AUTOHSCROLL | WS_BORDER 
| WS_TABSTOP
 
-    LTEXT "A &word or phrase in the file:", -1, 10, 60, 500, 10
-    EDITTEXT IDC_SEARCH_QUERY, 10, 70, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
+    LTEXT "A &word or phrase in the file:", -1, 10, 50, 500, 10
+    EDITTEXT IDC_SEARCH_QUERY, 10, 60, 100, 12, ES_AUTOHSCROLL | WS_BORDER | 
WS_TABSTOP
 
-    LTEXT "&Look in:", -1, 10, 90, 500, 10
-    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 100, 200, 200
+    LTEXT "&Look in:", -1, 10, 75, 500, 10
+    CONTROL "", IDC_SEARCH_COMBOBOX, WC_COMBOBOXEXW, WS_CHILD | WS_VISIBLE | 
WS_CLIPCHILDREN | WS_TABSTOP | CCS_NODIVIDER | CCS_NOMOVEY | 
CBS_OWNERDRAWFIXED, 10, 85, 200, 200
 
-    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
-    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 130, 40, 15, WS_GROUP | 
WS_TABSTOP
+    DEFPUSHBUTTON "Sea&rch", IDC_SEARCH_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP | WS_VISIBLE
+    PUSHBUTTON "&Stop", IDC_SEARCH_STOP_BUTTON, 80, 110, 40, 15, WS_GROUP | 
WS_TABSTOP
 
-    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 150, 200, 8
+    AUTOCHECKBOX "Search Hidden Files and Folders",
+                 IDC_SEARCH_HIDDEN, 4, 130, 130, 8, WS_VISIBLE | WS_GROUP | 
WS_TABSTOP
+
+    CONTROL "", IDC_PROGRESS_BAR, PROGRESS_CLASSA, WS_BORDER | PBS_MARQUEE, 
10, 155, 200, 8
 END
 
 /* Accelerators */
diff --git a/dll/win32/browseui/resource.h b/dll/win32/browseui/resource.h
index bc9ad642b6a..8f032f2b7cd 100644
--- a/dll/win32/browseui/resource.h
+++ b/dll/win32/browseui/resource.h
@@ -164,6 +164,7 @@
 #define IDC_SEARCH_BUTTON       1004
 #define IDC_SEARCH_STOP_BUTTON  1005
 #define IDC_SEARCH_COMBOBOX     1006
+#define IDC_SEARCH_HIDDEN       1007
 #define IDS_SEARCHINVALID       4518
 #define IDS_COL_NAME            8976
 #define IDS_COL_LOCATION        8977
diff --git a/dll/win32/browseui/shellfind/CFindFolder.cpp 
b/dll/win32/browseui/shellfind/CFindFolder.cpp
index dcac0c0c60c..5509f38f78b 100644
--- a/dll/win32/browseui/shellfind/CFindFolder.cpp
+++ b/dll/win32/browseui/shellfind/CFindFolder.cpp
@@ -160,6 +160,7 @@ struct _SearchData
     CStringW szFileName;
     CStringA szQueryA;
     CStringW szQueryW;
+    BOOL SearchHidden;
     CComPtr<CFindFolder> pFindFolder;
 };
 
@@ -235,6 +236,33 @@ static UINT SearchFile(LPCWSTR lpFilePath, _SearchData 
*pSearchData)
     return uMatches;
 }
 
+static BOOL FileNameMatch(LPCWSTR FindDataFileName, _SearchData *pSearchData)
+{
+    if (pSearchData->szFileName.IsEmpty() || PathMatchSpecW(FindDataFileName, 
pSearchData->szFileName))
+    {
+        return TRUE;
+    }
+    return FALSE;
+}
+
+static BOOL ContentsMatch(LPCWSTR szPath, _SearchData *pSearchData)
+{
+    if (pSearchData->szQueryA.IsEmpty() || SearchFile(szPath, pSearchData))
+    {
+        return TRUE;
+    }
+    return FALSE;
+}
+
+static BOOL AttribHiddenMatch(DWORD FileAttributes, _SearchData *pSearchData)
+{
+    if (!(FileAttributes & FILE_ATTRIBUTE_HIDDEN) || 
(pSearchData->SearchHidden))
+    {
+        return TRUE;
+    }
+    return FALSE;
+}
+
 static UINT RecursiveFind(LPCWSTR lpPath, _SearchData *pSearchData)
 {
     if (WaitForSingleObject(pSearchData->hStopEvent, 0) != WAIT_TIMEOUT)
@@ -260,8 +288,8 @@ static UINT RecursiveFind(LPCWSTR lpPath, _SearchData 
*pSearchData)
         if (FindData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
         {
             CStringW status;
-            if ((pSearchData->szFileName.IsEmpty() || 
PathMatchSpecW(FindData.cFileName, pSearchData->szFileName))
-                && (pSearchData->szQueryA.IsEmpty() || SearchFile(szPath, 
pSearchData)))
+            if (FileNameMatch(FindData.cFileName, pSearchData)
+                && AttribHiddenMatch(FindData.dwFileAttributes, pSearchData))
             {
                 PostMessageW(pSearchData->hwnd, WM_SEARCH_ADD_RESULT, 0, 
(LPARAM) StrDupW(szPath));
                 uTotalFound++;
@@ -271,8 +299,9 @@ static UINT RecursiveFind(LPCWSTR lpPath, _SearchData 
*pSearchData)
 
             uTotalFound += RecursiveFind(szPath, pSearchData);
         }
-        else if ((pSearchData->szFileName.IsEmpty() || 
PathMatchSpecW(FindData.cFileName, pSearchData->szFileName))
-                && (pSearchData->szQueryA.IsEmpty() || SearchFile(szPath, 
pSearchData)))
+        else if (FileNameMatch(FindData.cFileName, pSearchData)
+                && AttribHiddenMatch(FindData.dwFileAttributes, pSearchData)
+                && ContentsMatch(szPath, pSearchData))
         {
             uTotalFound++;
             PostMessageW(pSearchData->hwnd, WM_SEARCH_ADD_RESULT, 0, (LPARAM) 
StrDupW(szPath));
@@ -325,6 +354,11 @@ void CFindFolder::NotifyConnections(DISPID id)
 
 LRESULT CFindFolder::StartSearch(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL 
&bHandled)
 {
+    HKEY hkey;
+    DWORD size = sizeof(DWORD);
+    DWORD result;
+    DWORD SearchHiddenValue = 0;
+
     if (!lParam)
         return 0;
 
@@ -341,8 +375,36 @@ LRESULT CFindFolder::StartSearch(UINT uMsg, WPARAM wParam, 
LPARAM lParam, BOOL &
     pSearchData->szFileName = pSearchParams->szFileName;
     pSearchData->szQueryA = pSearchParams->szQuery;
     pSearchData->szQueryW = pSearchParams->szQuery;
+    pSearchData->SearchHidden = pSearchParams->SearchHidden;
     SHFree(pSearchParams);
 
+    TRACE("pSearchParams->SearchHidden is '%d'.\n", pSearchData->SearchHidden);
+
+    if (pSearchData->SearchHidden)
+        SearchHiddenValue = 1;
+    else
+        SearchHiddenValue = 0;
+
+    /* Placing the code to save the changed settings to the registry here has 
the effect of not saving any changes */
+    /* to the registry unless the user clicks on the "Search" button. This is 
the same as what we see in Windows.  */
+    result = RegOpenKeyEx(HKEY_CURRENT_USER, 
L"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer", 0, KEY_SET_VALUE, 
&hkey);
+    if (result == ERROR_SUCCESS)
+    {
+        if (RegSetValueExW(hkey, L"SearchHidden", NULL, REG_DWORD, (const 
BYTE*)&SearchHiddenValue, size) == ERROR_SUCCESS)
+        {
+            TRACE("SearchHidden is '%d'.\n", SearchHiddenValue);
+        }
+        else
+        {
+            ERR("RegSetValueEx for 
\"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\SearchHidden\" 
Failed.\n");
+        }
+        RegCloseKey(hkey);
+    }
+    else
+    {
+        ERR("RegOpenKey for 
\"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\" Failed.\n");
+    }
+
     if (m_hStopEvent)
         SetEvent(m_hStopEvent);
     pSearchData->hStopEvent = m_hStopEvent = CreateEvent(NULL, TRUE, FALSE, 
NULL);
diff --git a/dll/win32/browseui/shellfind/CSearchBar.cpp 
b/dll/win32/browseui/shellfind/CSearchBar.cpp
index 5e7117193d4..b7d97123798 100644
--- a/dll/win32/browseui/shellfind/CSearchBar.cpp
+++ b/dll/win32/browseui/shellfind/CSearchBar.cpp
@@ -32,6 +32,41 @@ CSearchBar::~CSearchBar()
 
 LRESULT CSearchBar::OnInitDialog(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL 
&bHandled)
 {
+    HKEY hkey;
+    DWORD dwType;
+    DWORD size = sizeof(DWORD);
+    DWORD result;
+    DWORD SearchHiddenValue = 0;
+
+    result = RegOpenKeyEx(HKEY_CURRENT_USER, 
L"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer", 0, KEY_QUERY_VALUE, 
&hkey);
+    if (result == ERROR_SUCCESS)
+    {
+        if (RegQueryValueEx(hkey, L"SearchHidden", NULL, &dwType, 
(LPBYTE)&SearchHiddenValue, &size) == ERROR_SUCCESS)
+        {
+            if ((dwType != REG_DWORD) || (size != sizeof(DWORD)))
+            {
+                ERR("RegQueryKey for 
\"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\SearchHidden\" 
returned error(s).\n");
+                SearchHiddenValue = 1;
+            }
+            else
+            {
+                TRACE("SearchHidden is '%d'.\n", SearchHiddenValue);
+            }
+        }
+        else
+        {
+            ERR("RegQueryKey for 
\"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\SearchHidden\" 
Failed.\n");
+        }
+        RegCloseKey(hkey);
+    }
+    else
+        ERR("RegOpenKey for 
\"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\" Failed.\n");
+
+    if (SearchHiddenValue != 0)
+        CheckDlgButton(IDC_SEARCH_HIDDEN, BST_CHECKED);
+    else
+        CheckDlgButton(IDC_SEARCH_HIDDEN, BST_UNCHECKED);
+
     SetSearchInProgress(FALSE);
 
     HWND hCombobox = GetDlgItem(IDC_SEARCH_COMBOBOX);
@@ -129,6 +164,9 @@ LRESULT CSearchBar::OnSearchButtonClicked(WORD wNotifyCode, 
WORD wID, HWND hWndC
     CComHeapPtr<SearchStart> pSearchStart(static_cast<SearchStart 
*>(CoTaskMemAlloc(sizeof(SearchStart))));
     GetDlgItemText(IDC_SEARCH_FILENAME, pSearchStart->szFileName, 
_countof(pSearchStart->szFileName));
     GetDlgItemText(IDC_SEARCH_QUERY, pSearchStart->szQuery, 
_countof(pSearchStart->szQuery));
+
+    pSearchStart->SearchHidden = IsDlgButtonChecked(IDC_SEARCH_HIDDEN);
+
     if (!GetAddressEditBoxPath(pSearchStart->szPath))
     {
         ShellMessageBoxW(_AtlBaseModule.GetResourceInstance(), m_hWnd, 
MAKEINTRESOURCEW(IDS_SEARCHINVALID), MAKEINTRESOURCEW(IDS_SEARCHLABEL), MB_OK | 
MB_ICONERROR, pSearchStart->szPath);
diff --git a/dll/win32/browseui/shellfind/shellfind.h 
b/dll/win32/browseui/shellfind/shellfind.h
index c955cf192b1..93256cb7970 100644
--- a/dll/win32/browseui/shellfind/shellfind.h
+++ b/dll/win32/browseui/shellfind/shellfind.h
@@ -36,6 +36,7 @@ struct SearchStart
     WCHAR szPath[MAX_PATH];
     WCHAR szFileName[MAX_PATH];
     WCHAR szQuery[MAX_PATH];
+    BOOL  SearchHidden;
 };
 
 #endif /* _SHELLFIND_PCH_ */

Reply via email to