https://git.reactos.org/?p=reactos.git;a=commitdiff;h=8f3079c67f85f61727f6f…
commit 8f3079c67f85f61727f6f8a3cfaaa7d42264702e
Author: Katayama Hirofumi MZ <katayama.hirofumi.mz(a)gmail.com>
AuthorDate: Thu Apr 30 17:09:14 2020 +0900
Commit: GitHub <noreply(a)github.com>
CommitDate: Thu Apr 30 17:09:14 2020 +0900
[SHELL32][EXPLORER] Improve Recent Documents of Start Menu (#2648)
Improve Recent Documents of Start Menu. Add items of "My Documents" and
"My Pictures" into Recent menu item.
CORE-3588, CORE-11483
---
dll/win32/shell32/lang/bg-BG.rc | 10 +++
dll/win32/shell32/lang/ca-ES.rc | 10 +++
dll/win32/shell32/lang/cs-CZ.rc | 10 +++
dll/win32/shell32/lang/da-DK.rc | 10 +++
dll/win32/shell32/lang/de-DE.rc | 10 +++
dll/win32/shell32/lang/el-GR.rc | 10 +++
dll/win32/shell32/lang/en-GB.rc | 10 +++
dll/win32/shell32/lang/en-US.rc | 10 +++
dll/win32/shell32/lang/es-ES.rc | 10 +++
dll/win32/shell32/lang/et-EE.rc | 10 +++
dll/win32/shell32/lang/fi-FI.rc | 10 +++
dll/win32/shell32/lang/fr-FR.rc | 10 +++
dll/win32/shell32/lang/he-IL.rc | 10 +++
dll/win32/shell32/lang/hi-IN.rc | 10 +++
dll/win32/shell32/lang/hu-HU.rc | 10 +++
dll/win32/shell32/lang/id-ID.rc | 10 +++
dll/win32/shell32/lang/it-IT.rc | 10 +++
dll/win32/shell32/lang/ja-JP.rc | 10 +++
dll/win32/shell32/lang/ko-KR.rc | 10 +++
dll/win32/shell32/lang/nl-NL.rc | 10 +++
dll/win32/shell32/lang/no-NO.rc | 10 +++
dll/win32/shell32/lang/pl-PL.rc | 10 +++
dll/win32/shell32/lang/pt-BR.rc | 10 +++
dll/win32/shell32/lang/pt-PT.rc | 10 +++
dll/win32/shell32/lang/ro-RO.rc | 10 +++
dll/win32/shell32/lang/ru-RU.rc | 10 +++
dll/win32/shell32/lang/sk-SK.rc | 10 +++
dll/win32/shell32/lang/sl-SI.rc | 10 +++
dll/win32/shell32/lang/sq-AL.rc | 10 +++
dll/win32/shell32/lang/sv-SE.rc | 10 +++
dll/win32/shell32/lang/tr-TR.rc | 10 +++
dll/win32/shell32/lang/uk-UA.rc | 10 +++
dll/win32/shell32/lang/zh-CN.rc | 10 +++
dll/win32/shell32/lang/zh-TW.rc | 10 +++
dll/win32/shell32/shellmenu/CMenuToolbars.cpp | 2 +-
dll/win32/shell32/shellmenu/CStartMenu.cpp | 123 ++++++++++++++++++++++----
dll/win32/shell32/shresdef.h | 4 +-
37 files changed, 449 insertions(+), 20 deletions(-)
diff --git a/dll/win32/shell32/lang/bg-BG.rc b/dll/win32/shell32/lang/bg-BG.rc
index 60dfdef12b6..be31a2a5fa8 100644
--- a/dll/win32/shell32/lang/bg-BG.rc
+++ b/dll/win32/shell32/lang/bg-BG.rc
@@ -89,6 +89,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Търсене на папка"
diff --git a/dll/win32/shell32/lang/ca-ES.rc b/dll/win32/shell32/lang/ca-ES.rc
index eaa4ef533fa..4ff2d225cb5 100644
--- a/dll/win32/shell32/lang/ca-ES.rc
+++ b/dll/win32/shell32/lang/ca-ES.rc
@@ -88,6 +88,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Browse for Folder"
diff --git a/dll/win32/shell32/lang/cs-CZ.rc b/dll/win32/shell32/lang/cs-CZ.rc
index eb22e09d24d..3a376f7cee2 100644
--- a/dll/win32/shell32/lang/cs-CZ.rc
+++ b/dll/win32/shell32/lang/cs-CZ.rc
@@ -94,6 +94,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Procházet..."
diff --git a/dll/win32/shell32/lang/da-DK.rc b/dll/win32/shell32/lang/da-DK.rc
index 44024aa74a9..090a4fc746e 100644
--- a/dll/win32/shell32/lang/da-DK.rc
+++ b/dll/win32/shell32/lang/da-DK.rc
@@ -94,6 +94,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Søg efter Mappe"
diff --git a/dll/win32/shell32/lang/de-DE.rc b/dll/win32/shell32/lang/de-DE.rc
index 83e925a1c97..1161df3b3cf 100644
--- a/dll/win32/shell32/lang/de-DE.rc
+++ b/dll/win32/shell32/lang/de-DE.rc
@@ -88,6 +88,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Verzeichnis auswählen"
diff --git a/dll/win32/shell32/lang/el-GR.rc b/dll/win32/shell32/lang/el-GR.rc
index c1aa53d59bd..363fac9c214 100644
--- a/dll/win32/shell32/lang/el-GR.rc
+++ b/dll/win32/shell32/lang/el-GR.rc
@@ -88,6 +88,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Αναζήτηση φακέλου"
diff --git a/dll/win32/shell32/lang/en-GB.rc b/dll/win32/shell32/lang/en-GB.rc
index 4d22e4619a0..6ba9876c71f 100644
--- a/dll/win32/shell32/lang/en-GB.rc
+++ b/dll/win32/shell32/lang/en-GB.rc
@@ -88,6 +88,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Browse for Folder"
diff --git a/dll/win32/shell32/lang/en-US.rc b/dll/win32/shell32/lang/en-US.rc
index 59e73d761b3..b2916a320cd 100644
--- a/dll/win32/shell32/lang/en-US.rc
+++ b/dll/win32/shell32/lang/en-US.rc
@@ -88,6 +88,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Browse for Folder"
diff --git a/dll/win32/shell32/lang/es-ES.rc b/dll/win32/shell32/lang/es-ES.rc
index 480f3485d0b..b3901213946 100644
--- a/dll/win32/shell32/lang/es-ES.rc
+++ b/dll/win32/shell32/lang/es-ES.rc
@@ -97,6 +97,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Explorar carpeta"
diff --git a/dll/win32/shell32/lang/et-EE.rc b/dll/win32/shell32/lang/et-EE.rc
index 6216de12c16..ac80fae969d 100644
--- a/dll/win32/shell32/lang/et-EE.rc
+++ b/dll/win32/shell32/lang/et-EE.rc
@@ -95,6 +95,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Vali kaust"
diff --git a/dll/win32/shell32/lang/fi-FI.rc b/dll/win32/shell32/lang/fi-FI.rc
index 06a1f29be93..43581eadaa6 100644
--- a/dll/win32/shell32/lang/fi-FI.rc
+++ b/dll/win32/shell32/lang/fi-FI.rc
@@ -88,6 +88,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Valitse Kansio"
diff --git a/dll/win32/shell32/lang/fr-FR.rc b/dll/win32/shell32/lang/fr-FR.rc
index a6278672fa2..73c689127cc 100644
--- a/dll/win32/shell32/lang/fr-FR.rc
+++ b/dll/win32/shell32/lang/fr-FR.rc
@@ -88,6 +88,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Parcourir"
diff --git a/dll/win32/shell32/lang/he-IL.rc b/dll/win32/shell32/lang/he-IL.rc
index 0efa91a6fd9..bfcefecc97f 100644
--- a/dll/win32/shell32/lang/he-IL.rc
+++ b/dll/win32/shell32/lang/he-IL.rc
@@ -90,6 +90,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "בחירת תיקיה"
diff --git a/dll/win32/shell32/lang/hi-IN.rc b/dll/win32/shell32/lang/hi-IN.rc
index 091a130073a..83f6132d795 100644
--- a/dll/win32/shell32/lang/hi-IN.rc
+++ b/dll/win32/shell32/lang/hi-IN.rc
@@ -88,6 +88,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "फोल्डर खोंजे"
diff --git a/dll/win32/shell32/lang/hu-HU.rc b/dll/win32/shell32/lang/hu-HU.rc
index 0af2780e621..0b0d475dac0 100644
--- a/dll/win32/shell32/lang/hu-HU.rc
+++ b/dll/win32/shell32/lang/hu-HU.rc
@@ -88,6 +88,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Mappák böngészése"
diff --git a/dll/win32/shell32/lang/id-ID.rc b/dll/win32/shell32/lang/id-ID.rc
index 98263fe8e29..8cb23ff593a 100644
--- a/dll/win32/shell32/lang/id-ID.rc
+++ b/dll/win32/shell32/lang/id-ID.rc
@@ -88,6 +88,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Jelajah Folder"
diff --git a/dll/win32/shell32/lang/it-IT.rc b/dll/win32/shell32/lang/it-IT.rc
index 2434c653566..a2eca5662f2 100644
--- a/dll/win32/shell32/lang/it-IT.rc
+++ b/dll/win32/shell32/lang/it-IT.rc
@@ -88,6 +88,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Sfoglia Cartella"
diff --git a/dll/win32/shell32/lang/ja-JP.rc b/dll/win32/shell32/lang/ja-JP.rc
index fbbaab06efb..443bb981d88 100644
--- a/dll/win32/shell32/lang/ja-JP.rc
+++ b/dll/win32/shell32/lang/ja-JP.rc
@@ -88,6 +88,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "フォルダの参照"
diff --git a/dll/win32/shell32/lang/ko-KR.rc b/dll/win32/shell32/lang/ko-KR.rc
index 443dc3a49a7..bf28de47ffa 100644
--- a/dll/win32/shell32/lang/ko-KR.rc
+++ b/dll/win32/shell32/lang/ko-KR.rc
@@ -88,6 +88,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Browse for Folder"
diff --git a/dll/win32/shell32/lang/nl-NL.rc b/dll/win32/shell32/lang/nl-NL.rc
index aec45c77f48..f663fc09504 100644
--- a/dll/win32/shell32/lang/nl-NL.rc
+++ b/dll/win32/shell32/lang/nl-NL.rc
@@ -88,6 +88,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Browse for Folder"
diff --git a/dll/win32/shell32/lang/no-NO.rc b/dll/win32/shell32/lang/no-NO.rc
index 1fa6e372702..75763afc44c 100644
--- a/dll/win32/shell32/lang/no-NO.rc
+++ b/dll/win32/shell32/lang/no-NO.rc
@@ -88,6 +88,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Bla etter mappe"
diff --git a/dll/win32/shell32/lang/pl-PL.rc b/dll/win32/shell32/lang/pl-PL.rc
index 86e87f196ad..98b68baa8f4 100644
--- a/dll/win32/shell32/lang/pl-PL.rc
+++ b/dll/win32/shell32/lang/pl-PL.rc
@@ -94,6 +94,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Wybierz folder"
diff --git a/dll/win32/shell32/lang/pt-BR.rc b/dll/win32/shell32/lang/pt-BR.rc
index 8cee41dbe22..92e5083e343 100644
--- a/dll/win32/shell32/lang/pt-BR.rc
+++ b/dll/win32/shell32/lang/pt-BR.rc
@@ -88,6 +88,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Procurar pasta"
diff --git a/dll/win32/shell32/lang/pt-PT.rc b/dll/win32/shell32/lang/pt-PT.rc
index bc225294c1a..b435f9e3933 100644
--- a/dll/win32/shell32/lang/pt-PT.rc
+++ b/dll/win32/shell32/lang/pt-PT.rc
@@ -88,6 +88,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Procurar pastas"
diff --git a/dll/win32/shell32/lang/ro-RO.rc b/dll/win32/shell32/lang/ro-RO.rc
index 42c613287fd..e6acbd58c2b 100644
--- a/dll/win32/shell32/lang/ro-RO.rc
+++ b/dll/win32/shell32/lang/ro-RO.rc
@@ -90,6 +90,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Specificare dosar"
diff --git a/dll/win32/shell32/lang/ru-RU.rc b/dll/win32/shell32/lang/ru-RU.rc
index de203d29dc8..27e5ef0c1ec 100644
--- a/dll/win32/shell32/lang/ru-RU.rc
+++ b/dll/win32/shell32/lang/ru-RU.rc
@@ -95,6 +95,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Обзор"
diff --git a/dll/win32/shell32/lang/sk-SK.rc b/dll/win32/shell32/lang/sk-SK.rc
index a84187e4eb3..bd7365ad04f 100644
--- a/dll/win32/shell32/lang/sk-SK.rc
+++ b/dll/win32/shell32/lang/sk-SK.rc
@@ -88,6 +88,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Browse for Folder"
diff --git a/dll/win32/shell32/lang/sl-SI.rc b/dll/win32/shell32/lang/sl-SI.rc
index 55ba4f299c6..400bb4a583b 100644
--- a/dll/win32/shell32/lang/sl-SI.rc
+++ b/dll/win32/shell32/lang/sl-SI.rc
@@ -88,6 +88,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Browse for Folder"
diff --git a/dll/win32/shell32/lang/sq-AL.rc b/dll/win32/shell32/lang/sq-AL.rc
index 8bccc16665a..c4ad1c21d2e 100644
--- a/dll/win32/shell32/lang/sq-AL.rc
+++ b/dll/win32/shell32/lang/sq-AL.rc
@@ -92,6 +92,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Shfleto për Dosje"
diff --git a/dll/win32/shell32/lang/sv-SE.rc b/dll/win32/shell32/lang/sv-SE.rc
index 51bac8cb790..b76b26c1683 100644
--- a/dll/win32/shell32/lang/sv-SE.rc
+++ b/dll/win32/shell32/lang/sv-SE.rc
@@ -88,6 +88,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Bläddra efter mapp"
diff --git a/dll/win32/shell32/lang/tr-TR.rc b/dll/win32/shell32/lang/tr-TR.rc
index 5980461b725..1891bbed366 100644
--- a/dll/win32/shell32/lang/tr-TR.rc
+++ b/dll/win32/shell32/lang/tr-TR.rc
@@ -90,6 +90,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Dizin İçin Göz At"
diff --git a/dll/win32/shell32/lang/uk-UA.rc b/dll/win32/shell32/lang/uk-UA.rc
index 94405fdcd52..8a6679163c8 100644
--- a/dll/win32/shell32/lang/uk-UA.rc
+++ b/dll/win32/shell32/lang/uk-UA.rc
@@ -88,6 +88,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Огляд папок"
diff --git a/dll/win32/shell32/lang/zh-CN.rc b/dll/win32/shell32/lang/zh-CN.rc
index d280cb26a3f..e465aa01a66 100644
--- a/dll/win32/shell32/lang/zh-CN.rc
+++ b/dll/win32/shell32/lang/zh-CN.rc
@@ -98,6 +98,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "浏览文件夹"
diff --git a/dll/win32/shell32/lang/zh-TW.rc b/dll/win32/shell32/lang/zh-TW.rc
index 292a780ebda..e8446a8fb3a 100644
--- a/dll/win32/shell32/lang/zh-TW.rc
+++ b/dll/win32/shell32/lang/zh-TW.rc
@@ -97,6 +97,16 @@ BEGIN
END
END
+IDM_RECENTMENUHEAD MENU
+BEGIN
+ POPUP ""
+ BEGIN
+ MENUITEM "My Documents", IDM_MYDOCUMENTS
+ MENUITEM "My Pictures", IDM_MYPICTURES
+ MENUITEM SEPARATOR
+ END
+END
+
IDD_BROWSE_FOR_FOLDER DIALOGEX 15, 40, 188, 192
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "瀏覽資料夾"
diff --git a/dll/win32/shell32/shellmenu/CMenuToolbars.cpp
b/dll/win32/shell32/shellmenu/CMenuToolbars.cpp
index b006b881460..86bacd2a6f8 100644
--- a/dll/win32/shell32/shellmenu/CMenuToolbars.cpp
+++ b/dll/win32/shell32/shellmenu/CMenuToolbars.cpp
@@ -1497,7 +1497,7 @@ HRESULT CMenuSFToolbar::InternalPopupItem(INT iItem, INT index,
DWORD_PTR dwData
if (FAILED_UNEXPECTEDLY(hr))
return hr;
- hr = shellMenu->SetShellFolder(childFolder, NULL, NULL, 0);
+ hr = shellMenu->SetShellFolder(childFolder, NULL, NULL, SMSET_TOP);
if (FAILED_UNEXPECTEDLY(hr))
return hr;
diff --git a/dll/win32/shell32/shellmenu/CStartMenu.cpp
b/dll/win32/shell32/shellmenu/CStartMenu.cpp
index c853cb4af14..105be22c5dc 100644
--- a/dll/win32/shell32/shellmenu/CStartMenu.cpp
+++ b/dll/win32/shell32/shellmenu/CStartMenu.cpp
@@ -61,7 +61,6 @@ class CShellMenuCallback :
public IShellMenuCallback
{
private:
-
HWND m_hwndTray;
CComPtr<IShellMenu> m_pShellMenu;
CComPtr<IBandSite> m_pBandSite;
@@ -70,6 +69,7 @@ private:
CComPtr<IShellFolder> m_psfPrograms;
LPITEMIDLIST m_pidlPrograms;
+ HMENU m_hRecentMenu;
HRESULT OnInitMenu()
{
@@ -95,6 +95,12 @@ private:
if (FAILED_UNEXPECTEDLY(hr))
return hr;
+ m_hRecentMenu = ::LoadMenuW(shell32_hInstance,
MAKEINTRESOURCEW(IDM_RECENTMENUHEAD));
+ if (m_hRecentMenu == NULL)
+ {
+ ERR("m_hRecentMenu == NULL\n");
+ }
+
return hr;
}
@@ -106,20 +112,22 @@ private:
{
// Smaller "24x24" icons used for the start menu
// The bitmaps are still 32x32, but the image is centered
- case IDM_FAVORITES: iconIndex = -322; break;
- case IDM_SEARCH: iconIndex = -323; break;
- case IDM_HELPANDSUPPORT: iconIndex = -324; break;
- case IDM_LOGOFF: iconIndex = -325; break;
- case IDM_PROGRAMS: iconIndex = -326; break;
- case IDM_DOCUMENTS: iconIndex = -327; break;
- case IDM_RUN: iconIndex = -328; break;
- case IDM_SHUTDOWN: iconIndex = -329; break;
- case IDM_SETTINGS: iconIndex = -330; break;
-
- case IDM_CONTROLPANEL: iconIndex = -22; break;
- case IDM_NETWORKCONNECTIONS: iconIndex = -257; break;
- case IDM_PRINTERSANDFAXES: iconIndex = -138; break;
- case IDM_TASKBARANDSTARTMENU: iconIndex = -40; break;
+ case IDM_FAVORITES: iconIndex = -IDI_SHELL_FAVOTITES; break;
+ case IDM_SEARCH: iconIndex = -IDI_SHELL_SEARCH1; break;
+ case IDM_HELPANDSUPPORT: iconIndex = -IDI_SHELL_HELP2; break;
+ case IDM_LOGOFF: iconIndex = -IDI_SHELL_LOGOFF1; break;
+ case IDM_PROGRAMS: iconIndex = -IDI_SHELL_PROGRAMS_FOLDER1; break;
+ case IDM_DOCUMENTS: iconIndex = -IDI_SHELL_RECENT_DOCUMENTS1; break;
+ case IDM_RUN: iconIndex = -IDI_SHELL_RUN1; break;
+ case IDM_SHUTDOWN: iconIndex = -IDI_SHELL_SHUTDOWN1; break;
+ case IDM_SETTINGS: iconIndex = -IDI_SHELL_CONTROL_PANEL1; break;
+ case IDM_MYDOCUMENTS: iconIndex = -IDI_SHELL_MY_DOCUMENTS; break;
+ case IDM_MYPICTURES: iconIndex = -IDI_SHELL_MY_PICTURES; break;
+
+ case IDM_CONTROLPANEL: iconIndex = -IDI_SHELL_CONTROL_PANEL; break;
+ case IDM_NETWORKCONNECTIONS: iconIndex = -IDI_SHELL_NETWORK_CONNECTIONS2; break;
+ case IDM_PRINTERSANDFAXES: iconIndex = -IDI_SHELL_PRINTER2; break;
+ case IDM_TASKBARANDSTARTMENU: iconIndex = -IDI_SHELL_TSKBAR_STARTMENU; break;
//case IDM_SECURITY: iconIndex = -21; break;
//case IDM_SYNCHRONIZE: iconIndex = -21; break;
//case IDM_DISCONNECT: iconIndex = -21; break;
@@ -149,6 +157,54 @@ private:
return S_OK;
}
+ HMENU CreateRecentMenu(BOOL bExpandMyDocuments, BOOL bExpandMyPictures) const
+ {
+ HMENU hMenu = ::CreateMenu();
+ if (hMenu == NULL)
+ {
+ ERR("HMenu == NULL\n");
+ return NULL;
+ }
+
+ HMENU hSubMenu = ::GetSubMenu(m_hRecentMenu, 0);
+ if (hSubMenu == NULL)
+ {
+ ERR("hSubMenu == NULL\n");
+ return NULL;
+ }
+
+ WCHAR szText[128];
+ UINT i, nCount = GetMenuItemCount(hSubMenu);
+ for (i = 0; i < nCount; ++i)
+ {
+ UINT nID = GetMenuItemID(hSubMenu, i);
+ if (GetMenuString(hSubMenu, i, szText, _countof(szText), MF_BYPOSITION))
+ {
+ if ((nID == IDM_MYDOCUMENTS && bExpandMyDocuments) ||
+ (nID == IDM_MYPICTURES && bExpandMyPictures))
+ {
+ MENUITEMINFOW mii = { sizeof(mii), MIIM_TYPE | MIIM_ID | MIIM_SUBMENU
};
+ mii.fType = MFT_STRING;
+ mii.wID = nID;
+ mii.hSubMenu = ::CreatePopupMenu();
+ mii.dwTypeData = szText;
+ mii.cch = lstrlenW(szText);
+ InsertMenuItemW(hMenu, i, TRUE, &mii);
+ }
+ else
+ {
+ AppendMenuW(hMenu, MF_STRING | MF_ENABLED, nID, szText);
+ }
+ }
+ else
+ {
+ AppendMenuW(hMenu, MF_SEPARATOR, 0, NULL);
+ }
+ }
+
+ return hMenu;
+ }
+
HRESULT OnGetSubMenu(LPSMDATA psmd, REFIID iid, void ** pv)
{
HRESULT hr;
@@ -168,11 +224,14 @@ private:
case IDM_PROGRAMS: csidl = CSIDL_PROGRAMS; break;
case IDM_FAVORITES: csidl = CSIDL_FAVORITES; break;
case IDM_DOCUMENTS: csidl = CSIDL_RECENT; break;
+ case IDM_MYDOCUMENTS: csidl = CSIDL_MYDOCUMENTS; break;
+ case IDM_MYPICTURES: csidl = CSIDL_MYPICTURES; break;
}
if (csidl)
{
IShellFolder *psfStartMenu;
+ DWORD dwFlags = SMSET_TOP;
if (csidl == CSIDL_PROGRAMS && m_psfPrograms)
{
@@ -180,6 +239,19 @@ private:
}
else
{
+ if (csidl == CSIDL_RECENT)
+ {
+ BOOL bExpandMyDocuments = FALSE; /* FIXME: Get value from registry
*/
+ BOOL bExpandMyPictures = FALSE; /* FIXME: Get value from registry
*/
+ HMENU hMenu = CreateRecentMenu(bExpandMyDocuments,
bExpandMyPictures);
+
+ hr = pShellMenu->SetMenu(hMenu, NULL, SMSET_BOTTOM);
+ if (FAILED_UNEXPECTEDLY(hr))
+ return hr;
+
+ dwFlags = SMSET_BOTTOM;
+ }
+
LPITEMIDLIST pidlStartMenu;
IShellFolder *psfDestop;
hr = SHGetFolderLocation(NULL, csidl, 0, 0, &pidlStartMenu);
@@ -195,10 +267,9 @@ private:
return hr;
}
- hr = pShellMenu->SetShellFolder(psfStartMenu, NULL, NULL, 0);
+ hr = pShellMenu->SetShellFolder(psfStartMenu, NULL, NULL, dwFlags);
if (FAILED_UNEXPECTEDLY(hr))
return hr;
-
}
else
{
@@ -240,6 +311,8 @@ private:
HRESULT OnExec(LPSMDATA psmd)
{
+ WCHAR szPath[MAX_PATH];
+
// HACK: Because our ShellExecute can't handle CLSID components in paths, we
can't launch the paths using the "open" verb.
// FIXME: Change this back to using the path as the filename and the
"open" verb, once ShellExecute can handle CLSID path components.
@@ -249,6 +322,20 @@ private:
ShellExecuteW(NULL, NULL, L"explorer.exe",
L"::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{7007ACC7-3202-11D1-AAD2-00805FC1270E}",
NULL, SW_SHOWNORMAL);
else if (psmd->uId == IDM_PRINTERSANDFAXES)
ShellExecuteW(NULL, NULL, L"explorer.exe",
L"::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{2227A280-3AEA-1069-A2DE-08002B30309D}",
NULL, SW_SHOWNORMAL);
+ else if (psmd->uId == IDM_MYDOCUMENTS)
+ {
+ if (SHGetSpecialFolderPathW(NULL, szPath, CSIDL_PERSONAL, FALSE))
+ ShellExecuteW(NULL, NULL, szPath, NULL, NULL, SW_SHOWNORMAL);
+ else
+ ERR("SHGetSpecialFolderPathW failed\n");
+ }
+ else if (psmd->uId == IDM_MYPICTURES)
+ {
+ if (SHGetSpecialFolderPathW(NULL, szPath, CSIDL_MYPICTURES, FALSE))
+ ShellExecuteW(NULL, NULL, szPath, NULL, NULL, SW_SHOWNORMAL);
+ else
+ ERR("SHGetSpecialFolderPathW failed\n");
+ }
else
PostMessageW(m_hwndTray, WM_COMMAND, psmd->uId, 0);
@@ -497,7 +584,7 @@ RSHELL_CStartMenu_CreateInstance(REFIID riid, void **ppv)
if (FAILED_UNEXPECTEDLY(hr))
return hr;
- hr = pShellMenu->SetShellFolder(psf, NULL, NULL, 0);
+ hr = pShellMenu->SetShellFolder(psf, NULL, NULL, SMSET_TOP);
if (FAILED_UNEXPECTEDLY(hr))
return hr;
diff --git a/dll/win32/shell32/shresdef.h b/dll/win32/shell32/shresdef.h
index 7cd84a0f4c8..f9efb726a3c 100644
--- a/dll/win32/shell32/shresdef.h
+++ b/dll/win32/shell32/shresdef.h
@@ -794,8 +794,10 @@
#define IDM_COPYHERE 0x7
#define IDM_MOVEHERE 0x8
#define IDM_LINKHERE 0xB
+#define IDM_RECENTMENUHEAD 401
-
+#define IDM_MYDOCUMENTS 516
+#define IDM_MYPICTURES 518
/* Registrar scripts (RGS) */
#define IDR_ADMINFOLDERSHORTCUT 128