From 211d12be706894d0515f6bc16f7f5f1693a836aa Mon Sep 17 00:00:00 2001
From: ge0rdi
Date: Mon, 25 Mar 2024 20:10:34 +0100
Subject: [PATCH 01/39] Don't install new Immersive skin on Windows 7
It uses metro colors so it works only on Win8+.
https://github.com/Open-Shell/Open-Shell-Menu/discussions/1866#discussioncomment-8906191
---
Src/Setup/Setup.wxs | 2 ++
1 file changed, 2 insertions(+)
diff --git a/Src/Setup/Setup.wxs b/Src/Setup/Setup.wxs
index 18e41875a..58b5cddc4 100644
--- a/Src/Setup/Setup.wxs
+++ b/Src/Setup/Setup.wxs
@@ -538,9 +538,11 @@
+ VersionNT>601
+ VersionNT>601
From 7770e3b98b23cfcf4c6753303b7502b916a79d90 Mon Sep 17 00:00:00 2001
From: ge0rdi
Date: Sat, 30 Mar 2024 18:11:32 +0100
Subject: [PATCH 02/39] Make `FixFolderScroll` available in all Windows
versions (#1887)
---
Src/ClassicExplorer/ExplorerBHO.cpp | 2 +-
Src/ClassicExplorer/SettingsUI.cpp | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/Src/ClassicExplorer/ExplorerBHO.cpp b/Src/ClassicExplorer/ExplorerBHO.cpp
index edabf46cf..cfd456364 100644
--- a/Src/ClassicExplorer/ExplorerBHO.cpp
+++ b/Src/ClassicExplorer/ExplorerBHO.cpp
@@ -243,7 +243,7 @@ LRESULT CALLBACK CExplorerBHO::HookExplorer( int nCode, WPARAM wParam, LPARAM lP
if (GetClassName(parent,name,_countof(name)) && _wcsicmp(name,L"CabinetWClass")==0)
{
DWORD_PTR settings=0;
- if (GetWinVersion()==WIN_VER_WIN7 && GetSettingBool(L"FixFolderScroll"))
+ if (GetSettingBool(L"FixFolderScroll"))
settings|=1;
SetWindowSubclass(hWnd,SubclassTreeProc,'CLSH',settings);
PostMessage(hWnd,TVM_SETEXTENDEDSTYLE,TVS_EX_FADEINOUTEXPANDOS|TVS_EX_AUTOHSCROLL|0x80000000,0);
diff --git a/Src/ClassicExplorer/SettingsUI.cpp b/Src/ClassicExplorer/SettingsUI.cpp
index 8be0eedad..458500eba 100644
--- a/Src/ClassicExplorer/SettingsUI.cpp
+++ b/Src/ClassicExplorer/SettingsUI.cpp
@@ -621,7 +621,7 @@ void UpdateSettings( void )
UpdateSetting(L"ShowCaption",CComVariant(0),false); HideSetting(L"ShowCaption",true);
UpdateSetting(L"ShowIcon",CComVariant(0),false); HideSetting(L"ShowIcon",true);
- UpdateSetting(L"FixFolderScroll",CComVariant(0),false); HideSetting(L"FixFolderScroll",true);
+ UpdateSetting(L"FixFolderScroll",CComVariant(0),false);
UpdateSetting(L"ToolbarItems",CComVariant(g_DefaultToolbar2),false);
if (GetWinVersion()>=WIN_VER_WIN10)
From 040d3d08d3b1f9d1a39bf181134d95d8105c4a07 Mon Sep 17 00:00:00 2001
From: Alex G <10374678+darthmooguy@users.noreply.github.com>
Date: Tue, 3 Dec 2024 04:18:43 -0500
Subject: [PATCH 03/39] Update README.md (#1912)
---
README.md | 3 +++
1 file changed, 3 insertions(+)
diff --git a/README.md b/README.md
index b53baa2a8..76e3aa704 100644
--- a/README.md
+++ b/README.md
@@ -23,6 +23,9 @@ You can find the latest stable version here:
[](https://github.com/Open-Shell/Open-Shell-Menu/releases/latest)
+### ⚠️ Windows for ARM compatibility ⚠️
+Open-Shell is not compatible with Windows for ARM. If you install it on a Windows for ARM installation (ex. using Parallels Desktop on an Apple Silicon Mac), you will no longer be able to log into your account the next time you reboot. Please refrain from installing Open-Shell on Windows for ARM.
+
### Temporary Translation/Language Solution
1. Download [language DLL](https://coddec.github.io/Classic-Shell/www.classicshell.net/translations/index.html)
2. Place it either in the Open-Shell's __install folder__ or in the `%ALLUSERSPROFILE%\OpenShell\Languages` folder
From 0aa78709e6d56bcd5ce357348416e98b0bce3a6d Mon Sep 17 00:00:00 2001
From: Curious Insatiable <113294705+Need74@users.noreply.github.com>
Date: Tue, 3 Dec 2024 10:20:49 +0100
Subject: [PATCH 04/39] Update OpenShellADMX.txt (#1793)
---
Src/Localization/French/OpenShellADMX.txt | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/Src/Localization/French/OpenShellADMX.txt b/Src/Localization/French/OpenShellADMX.txt
index d29752a6d..aaac49839 100644
--- a/Src/Localization/French/OpenShellADMX.txt
+++ b/Src/Localization/French/OpenShellADMX.txt
@@ -1,7 +1,7 @@
; TRANSLATE ===================================================================
Title.text = Paramètres Open-Shell
-State.text = Etat:
+State.text = État:
State1.text = Verrouillé sur cette valeur
State2.text = Verrouillé sur le paramètre par défaut
State3.text = Déverrouillé
@@ -13,7 +13,7 @@ OpenShellCat.text = Open-Shell
OpenShellCatHelp.text = Paramètres de la stratégie de groupe de Open-Shell
SUPPORTED_CS404.text = Nécessite Open-Shell 4.0.4 ou plus.
-Language.nameOverride = Langage pour les composants Open-Shell
-Language.tipOverride = Sélectionnez la langue pour être utilisée avec Open-Shell (par exemple en-US ou de-DE). La langue affectera le texte dans le menu démarrer, les barres d'outils, etc. Si la DLL de langue appropriée est installée, les paramètres UI peuvent aussi être traduits
+Language.nameOverride = Langue pour les composants Open-Shell
+Language.tipOverride = Sélectionnez la langue à utiliser avec Open-Shell (par exemple en-US ou de-DE). Le choix de langue affectera le texte dans le menu démarrer, les barres d'outils, etc. Si la DLL de langue appropriée est installée, les paramètres UI peuvent aussi être traduits
Update.nameOverride = Activer la vérification automatique de nouvelles versions
-Update.tipOverride = Lorsque ceci est coché, Open-Shell vérifiera s'il y a des nouvelles versions chaque semaine. Vous serez averti s'il y a une nouvelle version du logiciel ou une mise à jour pour votre langage actuel
+Update.tipOverride = Lorsque ceci est coché, Open-Shell vérifiera s'il y a des nouvelles versions chaque semaine. Vous serez averti s'il y a une nouvelle version du logiciel ou une mise à jour pour votre langue actuelle
From 32c75254b995d21f85f9cb4bb59c9cf1f2a7de19 Mon Sep 17 00:00:00 2001
From: Curious Insatiable <113294705+Need74@users.noreply.github.com>
Date: Tue, 3 Dec 2024 10:21:16 +0100
Subject: [PATCH 05/39] Update MenuADMX.txt (#1794)
---
Src/Localization/French/MenuADMX.txt | 1 +
1 file changed, 1 insertion(+)
diff --git a/Src/Localization/French/MenuADMX.txt b/Src/Localization/French/MenuADMX.txt
index 1303a761e..d4dc11c92 100644
--- a/Src/Localization/French/MenuADMX.txt
+++ b/Src/Localization/French/MenuADMX.txt
@@ -190,3 +190,4 @@ StartHoverDelay.nameOverride = Délai du survol (pour le bouton Démarrer)
AllProgramsDelay.nameOverride = Délai du survol (Pour Tous les Programmes dans Windows 7)
CSMHotkey.tipAddition = .\n\nLa valeur de base est le code virtuel principal de la touche. Ajouter 256 pour Maj, 512 pour Contrôle et 1024 pour and 1024 Alt.\nLa meilleur façon pour obtenir la valeur est de sélectionnez la touche raccourcie dans le boîte de dialogue des Paramètres et de chercher la valeur nommée CSMHotkey dans HKCU\Software\OpenShell\StartMenu\Settings
WSMHotkey.tipAddition = .\n\nLa valeur de base est le code virtuel principal de la touche. Ajouter 256 pour Maj, 512 pour Contrôle et 1024 pour and 1024 Alt.\nLa meilleur façon pour obtenir la valeur est de sélectionnez la touche raccourcie dans le boîte de dialogue des Paramètres et de chercher la valeur nommée WSMHotkey in HKCU\Software\OpenShell\StartMenu\Settings
+SearchFiles.tipOverride = Lorsque cette case est cochée, les résultats de la recherche incluront les fichiers, e-mails et autres éléments provenant d'emplacements indexés
From cc3336ea260530e4dc6993de03c6711af18e21a4 Mon Sep 17 00:00:00 2001
From: Curious Insatiable <113294705+Need74@users.noreply.github.com>
Date: Tue, 3 Dec 2024 10:21:50 +0100
Subject: [PATCH 06/39] Update StartMenu.html (#1795)
---
Src/Localization/French/StartMenu.html | 48 +++++++++++++-------------
1 file changed, 24 insertions(+), 24 deletions(-)
diff --git a/Src/Localization/French/StartMenu.html b/Src/Localization/French/StartMenu.html
index 56ce1ed05..0ef81685f 100644
--- a/Src/Localization/French/StartMenu.html
+++ b/Src/Localization/French/StartMenu.html
@@ -37,13 +37,13 @@
Styles
Le menu démarrer offre 3 choix de styles.
1) Simple colonne style classique (classic)

-Ce style est très similaire au menu trouvé dans Windows 2000. Il a une colonne dans le menu principal avec du texte vertical sur le côté, vous pouvez personnaliser l'ordre des éléments, icônes et texte.
+Ce style est très similaire au menu trouvé dans Windows 2000. Il a une colonne dans le menu principal avec du texte vertical sur le côté, vous pouvez personnaliser l’ordre des éléments, icônes et texte.
-Programmes, listes de raccourcis, et résultats de recherche s'affichent comme des sous-menus cascadés.
+Programmes, listes de raccourcis, et résultats de recherche s’affichent comme des sous-menus cascadés.
2) Style classique (classic) 2 colonnes

Ceci est similaire au menu de Windows XP. Il y a 2 colonnes où vous pouvez arranger vos éléments de menu.
Personnaliser leurs ordres, icônes et texte.
-Programmes, listes de raccourcis, et résultats de recherche s'affichent comme des sous-menus cascadés.
+Programmes, listes de raccourcis, et résultats de recherche s’affichent comme des sous-menus cascadés.
3) Style Windows 7

Ceci est similaire au menu Windows Vista et Windows 7. Les éléments dans la première colonne sont prédéfinis comme épingler et Programmes Récents, la liste de Tous les Programmes et la zone de recherche.
Les éléments dans la seconde colonne sont entièrement personnalisable.
-Les listes de raccourcis et les résultats de recherche sont affichés à l'intérieur du menu principal. Les programmes peuvent être à l'intérieur du menu principal ou
-s'afficher sous la forme d’un sous-menu cascadé.
+Les listes de raccourcis et les résultats de recherche sont affichés à l’intérieur du menu principal. Les programmes peuvent être à l’intérieur du menu principal ou
+s’afficher sous la forme d’un sous-menu cascadé.
Ce style offre moins d’ options de personnalisation que les styles classiques (classic), mais donne une apparence et un sentiment plus familier aux personnes ayant utilisé Windows 7.
@@ -87,16 +87,16 @@ Opération
Appuyez sur la touche Windows ou cliquez sur l’ orbe de Open-Shell dans le coin de l’ écran pour ouvrir le menu démarrer.
-Maintenez Majuscule enfoncée pendant que vous cliquez sur l’ orbe de Open-Shell pour accéder au menu démarrer d'origine du système d'exploitation.
+Maintenez Majuscule enfoncée pendant que vous cliquez sur l’ orbe de Open-Shell pour accéder au menu démarrer d’origine du système d’exploitation.
-Cliquez sur un élément pour l'exécuter.
+Cliquez sur un élément pour l’exécuter.
-Glissez un programme pour changer l'ordre des programmes dans un menu, ou pour le déplacer dans un autre dossier.
+Glissez un programme pour changer l’ordre des programmes dans un menu, ou pour le déplacer dans un autre dossier.
-Clic droit sur un élément pour le renomer, le supprimer, l’explorer, trier le menu, ou effectuer d'autres tches.
+Clic droit sur un élément pour le renomer, le supprimer, l’explorer, trier le menu, ou effectuer d’autres tâches.
Clic droit sur l’orbe de Open-Shell pour modifier les paramètres du menu démarrer, pour voir ce fichier d’aide, ou pour stopper le menu démarrer.
@@ -109,7 +109,7 @@

Vous pouvez choisir d'afficher les paramètres de base ou tous les paramètres disponibles. Survolez chaque paramètre pour obtenir une description de sa fonction.
-Saisissez un mot dans la zone de recherche pour trouver un paramètre grce à son nom.
+Saisissez un mot dans la zone de recherche pour trouver un paramètre grâce à son nom.
Chaque paramètre à une valeur par défaut. La valeur par défaut peut-être une constante, ou elle peut dépendre des paramètres systèmes actuels.
Une fois que vous modifiez un paramètre, celui-ci devient "modifié" et est affiché en gras. Pour revenir au paramètre par défaut, clic droit sur le paramètre.
@@ -184,7 +184,7 @@ Paramètres Administratifs
nom de la valeur. Par exemple si vous voulez que le menu contextuel soit désactivé par défaut mais que vous voulez autoriser les utilisateurs à modifier cette valeur s’ils le veulent, créez
une valeur DWORD nommée "EnableContextMenu_Default" et configurez là à 0.
-La façon la plus facile de connaître le nom registrerie d'un paramètre et ça valeur pour la modifier, est de la rechercher dans HKEY_CURRENT_USER\Software\OpenShell\StartMenu\Settings.
+La façon la plus facile de connaître le nom registrerie d’un paramètre et ça valeur pour la modifier, est de la rechercher dans HKEY_CURRENT_USER\Software\OpenShell\StartMenu\Settings.
Quelqes fois vous voudrez verrouiller un paramètre à sa valeur par défaut, mais vous ne savez quelle est la valeur par défaut. Dans ce cas créez une valeur DWORD et
configurez là à 0xDEFA.
@@ -194,7 +194,7 @@ Paramètres Administratifs

-Le menu démarrer vérifie aussi la plupart des stratégies de groupe configurées par l’administrateur. Exécutez gpedit.msc et aller à Configuration User Configuration -> Modèles Administratifs -> Menu Démarrer et Barre des Tches. A partir de là, vous pouvez désactiver Exécuter, Arrêter, Aide, et d'autres fonctions. (Non disponible sur les version Home de Windows).
+Le menu démarrer vérifie aussi la plupart des stratégies de groupe configurées par l’administrateur. Exécutez gpedit.msc et aller à Configuration User Configuration -> Modèles Administratifs -> Menu Démarrer et Barre des Tâches. A partir de là, vous pouvez désactiver Exécuter, Arrêter, Aide, et d’autres fonctions. (Non disponible sur les version Home de Windows).
Modifier les paramètres au travers des stratégies de groupe est aussi supporté. Décompressez le fichier PolicyDefinitions.zip qui se trouve dans le dossier d’installation et lisez le document PolicyDefinitions.rtf pour plus de détails.
@@ -208,24 +208,24 @@ En savoir plus à propos des Peaux (Skins)
Files\Open-Shell\Skins. Après cela, elle sera disponible dans les paramètres.
Note: Certaines peaux (skins) peuvent être spécifiquement conçues pour le mode
-Classic, Basic, ou Aero. Par exemple une peau (skin) Aero nécessitera peut être le support de l'option verre, les autres auront une apparence bizarre si le thème Classique (Classic) ou Base (Basic) est sélectionné. Certaines peaux (skins) Aero nécessiteront aussi peut être une couleur de verre spécifique à sélectionner.
+Classic, Basic, ou Aero. Par exemple une peau (skin) Aero nécessitera peut être le support de l’option verre, les autres auront une apparence bizarre si le thème Classique (Classic) ou Base (Basic) est sélectionné. Certaines peaux (skins) Aero nécessiteront aussi peut être une couleur de verre spécifique à sélectionner.
-Vous pouvez créer votre propre peau (skin). Vous aurez besoin d'un logiciel de retouche d’image qui supporte le canal Alpha (comme Gimp ou Photoshop) et un outil pour modifier les fichiers ressources (comme Resource Hacker ou Visual Studio). Et bien sûr quelques talents en conception de graphisme :). Lisez le Tutoriel de peaux (Skinning Tutorial) en anglais avant de commencer.
+Vous pouvez créer votre propre peau (skin). Vous aurez besoin d’un logiciel de retouche d’image qui supporte le canal Alpha (comme Gimp ou Photoshop) et un outil pour modifier les fichiers ressources (comme Resource Hacker ou Visual Studio). Et bien sûr quelques talents en conception de graphisme :). Lisez le Tutoriel de peaux (Skinning Tutorial) en anglais avant de commencer.
Recherche

- La zone de recherche vous laisse rechercher du contenu dans le menu démarrer, les programmes qui se trouvent dans la variable d'environnement PATH et les fichiers indexés.
-Vous pouvez avoir la zone de recherche apparaître sous forme d'élément de menu normal et ensuite vous pouvez y aller en utilisant les touches claviers flèches haut/bas.
-Vous pouvez choisir d'avoir la zone de recherche sélectionné par défaut quand vous ouvrez le menu démarrer. Ou vous pouvez choisir d’activer la zone de recherche seulement avec la touche Tab, de façon que tant que vous n'utilisez pas la touche tab vous pouvez utiliser le clavier pour naviguer comme si la zone de recherche n'était pas là.
+ La zone de recherche vous laisse rechercher du contenu dans le menu démarrer, les programmes qui se trouvent dans la variable d’environnement PATH et les fichiers indexés.
+Vous pouvez avoir la zone de recherche apparaître sous forme d’élément de menu normal et ensuite vous pouvez y aller en utilisant les touches claviers flèches haut/bas.
+Vous pouvez choisir d’avoir la zone de recherche sélectionné par défaut quand vous ouvrez le menu démarrer. Ou vous pouvez choisir d’activer la zone de recherche seulement avec la touche Tab, de façon que tant que vous n’utilisez pas la touche tab vous pouvez utiliser le clavier pour naviguer comme si la zone de recherche n’était pas là.
Les résultats de recherche s'affichent dans le menu principal si vous utilisez le style Windows 7 ou dans un sous-menu pour les styles Classiques (Classic).
Cliquez sur chaque catégorie pour la développer et voir plus de résultats. Cliquez sur l’icône à la fin pour voir tous les résultats dans l’Explorateur.
-Les styles Classiques (Classic) vous permettent de configurer des "fournisseurs de recherche" additionnels, que vous pouvez utiliser pour rechercher du texte à partir de la zone de recherche. Vous pouvez exécuter ce programme de recherche soit en le sélectionnant à partir du menu, soit en appuyant sur la touche Alt. Dans cet exemple utilisez Alt+A pour l'Agent Ransack.
+Les styles Classiques (Classic) vous permettent de configurer des "fournisseurs de recherche" additionnels, que vous pouvez utiliser pour rechercher du texte à partir de la zone de recherche. Vous pouvez exécuter ce programme de recherche soit en le sélectionnant à partir du menu, soit en appuyant sur la touche Alt. Dans cet exemple utilisez Alt+A pour l’Agent Ransack.

-Ceci est fait en ajoutant des sous-éléments à l'élément zone de recherche dans l’onglet Personnaliser le Menu Démarrer :
+Ceci est fait en ajoutant des sous-éléments à l’élément zone de recherche dans l’onglet Personnaliser le Menu Démarrer :

Ouvrez chaque sous-élément et saisissez la commande pour démarrer le programme de recherche. Si vous utilisez %1 dans la commande, cela sera remplacé par le contenu de la zone de recherche. Si vous utilisez %2 cela sera remplacé par le texte de la zone de recherche encodé au format url.
@@ -240,7 +240,7 @@ Recherche
Bouton Démarrer Personnalisable
-
Open-Shell peut ajouter son propre bouton démarrer à la barre des tches. Il peut même remplacer le bouton démarrer par défaut de Windows 7.
+Open-Shell peut ajouter son propre bouton démarrer à la barre des tâches. Il peut même remplacer le bouton démarrer par défaut de Windows 7.
Vous pouvez choisir entre un bouton orbe style Aero, un bouton classique rectangulaire, ou vous pouvez faire le vôtre. Pour un bouton démarrer personnalisé vous avez besoin
d’une image qui contient 3 états du bouton - normal, chaud et cliqué :

From b17d08b7a6f9688a80cd993b88a04a6ca257c09b Mon Sep 17 00:00:00 2001
From: ge0rdi
Date: Tue, 19 Nov 2024 07:12:20 +0100
Subject: [PATCH 07/39] Fix start button/menu misalignment on touch-screen
devices
Windows 11 22H2 introduced new touch-optimized taskbar for devices with
touch screen.
It seems that in this mode taskbar window size is bigger than actual
taskbar on screen. There is region defined for the window that covers
actually displayed portion of the window.
We should account for that region (if present) when obtaining taskbar
window dimensions.
More info about how to enable/disable touch taskbar:
https://www.elevenforum.com/t/turn-on-or-off-tablet-optimized-taskbar-in-windows-11.5133/
---
Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp b/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp
index d8da25b26..ce80cee8f 100644
--- a/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp
+++ b/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp
@@ -603,6 +603,11 @@ UINT GetTaskbarPosition( HWND taskBar, MONITORINFO *pInfo, HMONITOR *pMonitor, R
SHAppBarMessage(ABM_GETTASKBARPOS,&appbar);
if (pRc)
{
+ if (RECT rc; GetWindowRgnBox(taskBar,&rc)!=ERROR)
+ {
+ MapWindowPoints(taskBar,NULL,(POINT*)&rc,2);
+ appbar.rc=rc;
+ }
*pRc=appbar.rc;
RECT rc;
GetWindowRect(taskBar,&rc);
@@ -1217,9 +1222,8 @@ static void UpdateStartButtonPosition(const TaskbarInfo* taskBar, const WINDOWPO
RecreateStartButton(taskBar->taskbarId);
RECT rcTask;
- GetWindowRect(taskBar->taskBar, &rcTask);
MONITORINFO info;
- UINT uEdge = GetTaskbarPosition(taskBar->taskBar, &info, NULL, NULL);
+ UINT uEdge = GetTaskbarPosition(taskBar->taskBar, &info, NULL, &rcTask);
DWORD buttonFlags = SWP_NOACTIVATE | SWP_NOOWNERZORDER | SWP_NOSIZE;
if (IsWindowVisible(taskBar->taskBar))
buttonFlags |= SWP_SHOWWINDOW;
From 5809217adc48ca4ee6c210d9472839176d757adb Mon Sep 17 00:00:00 2001
From: ge0rdi
Date: Tue, 19 Nov 2024 07:31:52 +0100
Subject: [PATCH 08/39] Use WiX Toolset v3.14
---
Src/BUILDME.txt | 2 +-
Src/Setup/__MakeFinal.bat | 2 +-
Src/Setup/__MakeFinalAllLanguages.bat | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/Src/BUILDME.txt b/Src/BUILDME.txt
index 2f3a43cff..b9ed47e5b 100644
--- a/Src/BUILDME.txt
+++ b/Src/BUILDME.txt
@@ -10,7 +10,7 @@ Visual Studio 2022 (Community Edition is enough)
- Windows 11 SDK (10.0.22621.0) for Desktop C++
- Visual C++ ATL support
HTML Help Workshop
-WiX 3.11
+WiX 3.14
7-Zip
It is possible to convert the projects to newer versions of Visual Studio and newer SDKs.
Newer versions of WiX will probably work fine.
diff --git a/Src/Setup/__MakeFinal.bat b/Src/Setup/__MakeFinal.bat
index 16bcdf1e4..d1b1ebbf3 100644
--- a/Src/Setup/__MakeFinal.bat
+++ b/Src/Setup/__MakeFinal.bat
@@ -1,5 +1,5 @@
@echo off
-set PATH=C:\Program Files\7-Zip\;C:\Program Files (x86)\HTML Help Workshop;C:\Program Files (x86)\WiX Toolset v3.11\bin\;%PATH%
+set PATH=C:\Program Files\7-Zip\;C:\Program Files (x86)\HTML Help Workshop;C:\Program Files (x86)\WiX Toolset v3.14\bin\;%PATH%
cd %~dp0
diff --git a/Src/Setup/__MakeFinalAllLanguages.bat b/Src/Setup/__MakeFinalAllLanguages.bat
index ad73e7a04..161527007 100644
--- a/Src/Setup/__MakeFinalAllLanguages.bat
+++ b/Src/Setup/__MakeFinalAllLanguages.bat
@@ -1,7 +1,7 @@
@echo off
rem This file is to create all the files required for a new release to publish
-set PATH=C:\Program Files\7-Zip\;C:\Program Files (x86)\HTML Help Workshop;C:\Program Files (x86)\WiX Toolset v3.11\bin\;%PATH%
+set PATH=C:\Program Files\7-Zip\;C:\Program Files (x86)\HTML Help Workshop;C:\Program Files (x86)\WiX Toolset v3.14\bin\;%PATH%
cd %~dp0
From 348d8fa54e5442d90ef855c90794eaa3bc88dc66 Mon Sep 17 00:00:00 2001
From: ge0rdi
Date: Tue, 3 Dec 2024 10:10:23 +0100
Subject: [PATCH 09/39] ModernSettings: Use proper AllSystemSettings file on
newer Win11
It seems that AllSystemSettings file name changed since 24H2.
We will look for new file first and then fall-back to original one.
Fixes #2033.
---
Src/StartMenu/StartMenuHelper/ModernSettings.cpp | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/Src/StartMenu/StartMenuHelper/ModernSettings.cpp b/Src/StartMenu/StartMenuHelper/ModernSettings.cpp
index 88f5a987e..a177340e5 100644
--- a/Src/StartMenu/StartMenuHelper/ModernSettings.cpp
+++ b/Src/StartMenu/StartMenuHelper/ModernSettings.cpp
@@ -327,9 +327,15 @@ static std::vector> ParseModernSettings()
doc->put_async(VARIANT_FALSE);
wchar_t path[MAX_PATH]{};
- wcscpy_s(path, LR"(%windir%\ImmersiveControlPanel\Settings\AllSystemSettings_{253E530E-387D-4BC2-959D-E6F86122E5F2}.xml)");
+ wcscpy_s(path, LR"(%windir%\ImmersiveControlPanel\Settings\AllSystemSettings_{FDB289F3-FCFC-4702-8015-18926E996EC1}.xml)");
DoEnvironmentSubst(path, _countof(path));
+ if (!PathFileExists(path))
+ {
+ wcscpy_s(path, LR"(%windir%\ImmersiveControlPanel\Settings\AllSystemSettings_{253E530E-387D-4BC2-959D-E6F86122E5F2}.xml)");
+ DoEnvironmentSubst(path, _countof(path));
+ }
+
VARIANT_BOOL loaded;
if (SUCCEEDED(doc->load(CComVariant(path), &loaded)) && loaded)
{
From 4e7ca97def8f811d23a913a4343346be2add6b26 Mon Sep 17 00:00:00 2001
From: Curious Insatiable <113294705+Need74@users.noreply.github.com>
Date: Tue, 3 Dec 2024 17:15:01 +0100
Subject: [PATCH 10/39] Update StartMenu.html (#2036)
---
Src/Localization/French/StartMenu.html | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/Src/Localization/French/StartMenu.html b/Src/Localization/French/StartMenu.html
index 0ef81685f..e22e58aab 100644
--- a/Src/Localization/French/StartMenu.html
+++ b/Src/Localization/French/StartMenu.html
@@ -37,9 +37,9 @@
Opération
Glissez un programme pour changer l’ordre des programmes dans un menu, ou pour le déplacer dans un autre dossier.
-Clic droit sur un élément pour le renomer, le supprimer, l’explorer, trier le menu, ou effectuer d’autres tâches.
+Clic droit sur un élément pour le renomer, le supprimer, l’explorer, trier le menu, ou effectuer d’autres tâches.
Clic droit sur l’orbe de Open-Shell pour modifier les paramètres du menu démarrer, pour voir ce fichier d’aide, ou pour stopper le menu démarrer.
@@ -109,7 +109,7 @@

Vous pouvez choisir d'afficher les paramètres de base ou tous les paramètres disponibles. Survolez chaque paramètre pour obtenir une description de sa fonction.
-Saisissez un mot dans la zone de recherche pour trouver un paramètre grâce à son nom.
+Saisissez un mot dans la zone de recherche pour trouver un paramètre grâce à son nom.
Chaque paramètre à une valeur par défaut. La valeur par défaut peut-être une constante, ou elle peut dépendre des paramètres systèmes actuels.
Une fois que vous modifiez un paramètre, celui-ci devient "modifié" et est affiché en gras. Pour revenir au paramètre par défaut, clic droit sur le paramètre.
@@ -194,7 +194,7 @@ Paramètres Administratifs

-Le menu démarrer vérifie aussi la plupart des stratégies de groupe configurées par l’administrateur. Exécutez gpedit.msc et aller à Configuration User Configuration -> Modèles Administratifs -> Menu Démarrer et Barre des Tâches. A partir de là, vous pouvez désactiver Exécuter, Arrêter, Aide, et d’autres fonctions. (Non disponible sur les version Home de Windows).
+Le menu démarrer vérifie aussi la plupart des stratégies de groupe configurées par l’administrateur. Exécutez gpedit.msc et aller à Configuration User Configuration -> Modèles Administratifs -> Menu Démarrer et Barre des Tâches. A partir de là, vous pouvez désactiver Exécuter, Arrêter, Aide, et d’autres fonctions. (Non disponible sur les version Home de Windows).
Modifier les paramètres au travers des stratégies de groupe est aussi supporté. Décompressez le fichier PolicyDefinitions.zip qui se trouve dans le dossier d’installation et lisez le document PolicyDefinitions.rtf pour plus de détails.
@@ -240,7 +240,7 @@ Recherche
Bouton Démarrer Personnalisable
-
Open-Shell peut ajouter son propre bouton démarrer à la barre des tâches. Il peut même remplacer le bouton démarrer par défaut de Windows 7.
+Open-Shell peut ajouter son propre bouton démarrer à la barre des tâches. Il peut même remplacer le bouton démarrer par défaut de Windows 7.
Vous pouvez choisir entre un bouton orbe style Aero, un bouton classique rectangulaire, ou vous pouvez faire le vôtre. Pour un bouton démarrer personnalisé vous avez besoin
d’une image qui contient 3 états du bouton - normal, chaud et cliqué :

From f60e2a18cbc6e3ad3db4da74d2e58d528b0d1e4c Mon Sep 17 00:00:00 2001
From: ge0rdi
Date: Wed, 4 Dec 2024 19:54:58 +0100
Subject: [PATCH 11/39] Fix custom button auto-hiding (#2041)
---
Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp b/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp
index ce80cee8f..0cfcdee7b 100644
--- a/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp
+++ b/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp
@@ -1222,8 +1222,14 @@ static void UpdateStartButtonPosition(const TaskbarInfo* taskBar, const WINDOWPO
RecreateStartButton(taskBar->taskbarId);
RECT rcTask;
+ GetWindowRect(taskBar->taskBar, &rcTask);
+ if (RECT rc; GetWindowRgnBox(taskBar->taskBar, &rc) != ERROR)
+ {
+ MapWindowPoints(taskBar->taskBar, NULL, (POINT*)&rc, 2);
+ rcTask = rc;
+ }
MONITORINFO info;
- UINT uEdge = GetTaskbarPosition(taskBar->taskBar, &info, NULL, &rcTask);
+ UINT uEdge = GetTaskbarPosition(taskBar->taskBar, &info, NULL, NULL);
DWORD buttonFlags = SWP_NOACTIVATE | SWP_NOOWNERZORDER | SWP_NOSIZE;
if (IsWindowVisible(taskBar->taskBar))
buttonFlags |= SWP_SHOWWINDOW;
From 680e6eedbb6f78d8331d8c321f49554d03a0ba8f Mon Sep 17 00:00:00 2001
From: ge0rdi
Date: Fri, 6 Dec 2024 07:25:00 +0100
Subject: [PATCH 12/39] AppVeyor: New deployment token
---
appveyor.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/appveyor.yml b/appveyor.yml
index 3d8500970..a7d00344c 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -21,5 +21,5 @@ deploy:
on:
APPVEYOR_ACCOUNT_NAME: passionate-coder
auth_token:
- secure: D0QZnRZfea3qJlWOwrxE6M2jrbiSrOfz/6U7RzdeeG8N0qNDFKI7LFjYyw2I/PcR
+ secure: SOu6Y71k0oIxXJR35x+7ZTrqDa3HqUM4kLNJc+DbohPz9zhVHh9O8QYwmI7LI0qslug5L11fo9pZVfVgZttw4eBgooHaX9TNBTTA6sJItkXqMX+M6mKAG7tbI/O3Eg0v
prerelease: true
From 077afd2377d2addbf53a5083bb0793374b5b5b60 Mon Sep 17 00:00:00 2001
From: ge0rdi
Date: Fri, 20 Dec 2024 14:07:09 +0100
Subject: [PATCH 13/39] Add missing version info
---
Src/Setup/SetupHelper/SetupHelper.rc | 61 +++++++++++++++++++++++
Src/Setup/SetupHelper/SetupHelper.vcxproj | 3 ++
Src/Setup/Utility/Utility.rc | 38 ++++++++++++++
3 files changed, 102 insertions(+)
create mode 100644 Src/Setup/SetupHelper/SetupHelper.rc
diff --git a/Src/Setup/SetupHelper/SetupHelper.rc b/Src/Setup/SetupHelper/SetupHelper.rc
new file mode 100644
index 000000000..beff246c0
--- /dev/null
+++ b/Src/Setup/SetupHelper/SetupHelper.rc
@@ -0,0 +1,61 @@
+// Microsoft Visual C++ generated resource script.
+//
+
+#define APSTUDIO_READONLY_SYMBOLS
+/////////////////////////////////////////////////////////////////////////////
+//
+// Generated from the TEXTINCLUDE 2 resource.
+//
+#include "winres.h"
+/////////////////////////////////////////////////////////////////////////////
+#undef APSTUDIO_READONLY_SYMBOLS
+
+/////////////////////////////////////////////////////////////////////////////
+// English (U.S.) resources
+
+#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
+#ifdef _WIN32
+LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
+#pragma code_page(1252)
+#endif //_WIN32
+
+/////////////////////////////////////////////////////////////////////////////
+//
+// Version
+//
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION _PRODUCT_VERSION
+ PRODUCTVERSION _PRODUCT_VERSION
+ FILEFLAGSMASK 0x3fL
+#ifdef _DEBUG
+ FILEFLAGS 0x1L
+#else
+ FILEFLAGS 0x0L
+#endif
+ FILEOS 0x4L
+ FILETYPE 0x2L
+ FILESUBTYPE 0x0L
+BEGIN
+ BLOCK "StringFileInfo"
+ BEGIN
+ BLOCK "040904e4"
+ BEGIN
+ VALUE "CompanyName", "Open-Shell"
+ VALUE "FileDescription", "Setup helper"
+ VALUE "FileVersion", _PRODUCT_VERSION_STR
+ VALUE "InternalName", "SetupHelper.exe"
+ VALUE "LegalCopyright", "Copyright (C) 2017-2018, The Open-Shell Team"
+ VALUE "OriginalFilename", "SetupHelper.exe"
+ VALUE "ProductName", "Open-Shell"
+ VALUE "ProductVersion", _PRODUCT_VERSION_STR
+ END
+ END
+ BLOCK "VarFileInfo"
+ BEGIN
+ VALUE "Translation", 0x409, 1252
+ END
+END
+
+#endif // English (U.S.) resources
+/////////////////////////////////////////////////////////////////////////////
diff --git a/Src/Setup/SetupHelper/SetupHelper.vcxproj b/Src/Setup/SetupHelper/SetupHelper.vcxproj
index 4a99fa415..4b5e328d2 100644
--- a/Src/Setup/SetupHelper/SetupHelper.vcxproj
+++ b/Src/Setup/SetupHelper/SetupHelper.vcxproj
@@ -38,6 +38,9 @@
+
+
+
diff --git a/Src/Setup/Utility/Utility.rc b/Src/Setup/Utility/Utility.rc
index 5e6ee6904..a544464a8 100644
--- a/Src/Setup/Utility/Utility.rc
+++ b/Src/Setup/Utility/Utility.rc
@@ -207,6 +207,44 @@ BEGIN
END
#endif // APSTUDIO_INVOKED
+/////////////////////////////////////////////////////////////////////////////
+//
+// Version
+//
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION _PRODUCT_VERSION
+ PRODUCTVERSION _PRODUCT_VERSION
+ FILEFLAGSMASK 0x3fL
+#ifdef _DEBUG
+ FILEFLAGS 0x1L
+#else
+ FILEFLAGS 0x0L
+#endif
+ FILEOS 0x4L
+ FILETYPE 0x2L
+ FILESUBTYPE 0x0L
+BEGIN
+ BLOCK "StringFileInfo"
+ BEGIN
+ BLOCK "040904e4"
+ BEGIN
+ VALUE "CompanyName", "Open-Shell"
+ VALUE "FileDescription", "Utility"
+ VALUE "FileVersion", _PRODUCT_VERSION_STR
+ VALUE "InternalName", "Utility.exe"
+ VALUE "LegalCopyright", "Copyright (C) 2017-2018, The Open-Shell Team"
+ VALUE "OriginalFilename", "Utility.exe"
+ VALUE "ProductName", "Open-Shell"
+ VALUE "ProductVersion", _PRODUCT_VERSION_STR
+ END
+ END
+ BLOCK "VarFileInfo"
+ BEGIN
+ VALUE "Translation", 0x409, 1252
+ END
+END
+
#endif // English (U.S.) resources
/////////////////////////////////////////////////////////////////////////////
From 31acb6b092846a35920fc4b4f331f708ff8eaa33 Mon Sep 17 00:00:00 2001
From: ge0rdi
Date: Fri, 20 Dec 2024 14:11:20 +0100
Subject: [PATCH 14/39] Remove obsolete product version fallback
---
Src/StartMenu/StartMenu.rc | 8 --------
1 file changed, 8 deletions(-)
diff --git a/Src/StartMenu/StartMenu.rc b/Src/StartMenu/StartMenu.rc
index f2c965607..00b951f3c 100644
--- a/Src/StartMenu/StartMenu.rc
+++ b/Src/StartMenu/StartMenu.rc
@@ -52,14 +52,6 @@ END
// Version
//
-// Solution loading fail-safe
-#ifndef _PRODUCT_VERSION
-#define _PRODUCT_VERSION 4.4.102
-#endif
-#ifndef _PRODUCT_VERSION_STR
-#define _PRODUCT_VERSION_STR "4.4.102"
-#endif
-
VS_VERSION_INFO VERSIONINFO
FILEVERSION _PRODUCT_VERSION
PRODUCTVERSION _PRODUCT_VERSION
From d82fadb926d69a4c6f7a294b8448d976f99ece44 Mon Sep 17 00:00:00 2001
From: Curious Insatiable <113294705+Need74@users.noreply.github.com>
Date: Thu, 2 Jan 2025 21:02:28 +0100
Subject: [PATCH 15/39] Update StartMenuL10N.ini for all languages (#2086)
---
Src/StartMenu/StartMenuL10N.ini | 40 +++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)
diff --git a/Src/StartMenu/StartMenuL10N.ini b/Src/StartMenu/StartMenuL10N.ini
index ae1dbd891..b39d674aa 100644
--- a/Src/StartMenu/StartMenuL10N.ini
+++ b/Src/StartMenu/StartMenuL10N.ini
@@ -93,6 +93,7 @@ Menu.SearchPeople = عن أ&شخاص...
Menu.SortByName = فرز &حسب الاسم
Menu.Open = ف&تح
Menu.OpenAll = &فتح كافة المستخدمين
+Menu.OpenPinned = Open Pinned
Menu.Explore = ا&ستكشاف
Menu.ExploreAll = است&كشاف كافة المستخدمين
Menu.MenuSettings = إعدادات
@@ -229,6 +230,7 @@ Menu.SearchPeople = За хо&ра...
Menu.SortByName = &Сортирай по име
Menu.Open = &Отвори
Menu.OpenAll = О&твори "Всички потребители"
+Menu.OpenPinned = Отворете фиксираните елементи
Menu.Explore = &Преглед
Menu.ExploreAll = Пре&глед на "Всички потребители"
Menu.MenuSettings = Настройки
@@ -365,6 +367,7 @@ Menu.SearchPeople = &Persones...
Menu.SortByName = Ordenar per &Nom
Menu.Open = &Obrir
Menu.OpenAll = Ob&rir tots els usuaris
+Menu.OpenPinned = Obre elements fixats
Menu.Explore = E&xplorar
Menu.ExploreAll = &Explorar tots els usuaris
Menu.MenuSettings = Configuració
@@ -503,6 +506,7 @@ Menu.SearchPeople = Oso&by...
Menu.SortByName = Seřadit podle &názvu
Menu.Open = &Otevřít
Menu.OpenAll = Ot&evřít položky všech uživatele
+Menu.OpenPinned = Otevřít připnuté položky
Menu.Explore = Proz&koumat
Menu.ExploreAll = P&rocházet položky všech uživatelů
Menu.MenuSettings = Nastavení
@@ -639,6 +643,7 @@ Menu.SearchPeople = Efter &personer...
Menu.SortByName = So&rter efter navn
Menu.Open = Å&bn
Menu.OpenAll = &Åbn mappen Alle brugere
+Menu.OpenPinned = Åbn fastgjorte elementer
Menu.Explore = &Stifinder
Menu.ExploreAll = &Gennemse mappen Alle brugere
Menu.MenuSettings = Indstillinger
@@ -912,6 +917,7 @@ Menu.SearchPeople = Για ά&τομα...
Menu.SortByName = Ταξι&νόμηση κατά όνομα
Menu.Open = Άν&οιγμα
Menu.OpenAll = Άνοιγμα ό&λων των χρηστών
+Menu.OpenPinned = Άνοιγμα καρφιτσωμένων στοιχείων
Menu.Explore = Ε&ξερεύνηση
Menu.ExploreAll = &Εξερεύνηση όλων των χρηστών
Menu.MenuSettings = Ρυθμίσεις
@@ -1048,6 +1054,7 @@ Menu.SearchPeople = For &People...
Menu.SortByName = Sort &by Name
Menu.Open = &Open
Menu.OpenAll = O&pen All Users
+Menu.OpenPinned = Open Pinned
Menu.Explore = &Explore
Menu.ExploreAll = E&xplore All Users
Menu.MenuSettings = Settings
@@ -1184,6 +1191,7 @@ Menu.SearchPeople = &Personas...
Menu.SortByName = Ordenar por &Nombre
Menu.Open = &Abrir
Menu.OpenAll = Ab&rir todos los usuarios
+Menu.OpenPinned = Abrir elementos fijados
Menu.Explore = E&xplorar
Menu.ExploreAll = &Explorar todos los usuarios
Menu.MenuSettings = Configuración
@@ -1320,6 +1328,7 @@ Menu.SearchPeople = &Inimesi...
Menu.SortByName = Sor&di nime järgi
Menu.Open = &Ava
Menu.OpenAll = A&va kaust Kõik kasutajad
+Menu.OpenPinned = Ava kinnitatud üksused
Menu.Explore = Uu&ri
Menu.ExploreAll = Uur&i kausta Kõik kasutajad
Menu.MenuSettings = Sätted
@@ -1456,6 +1465,7 @@ Menu.SearchPeople = برای ا&فراد...
Menu.SortByName = &ترتیب بر اساس نام
Menu.Open = با&ز کردن
Menu.OpenAll = باز کردن تمام &کاربرها
+Menu.OpenPinned = Open Pinned
Menu.Explore = کاو&ش
Menu.ExploreAll = کاوش ت&مام کاربرها
Menu.MenuSettings = تنظیمات
@@ -1594,6 +1604,7 @@ Menu.SearchPeople = &Henkilöitä...
Menu.SortByName = &Lajittele nimen mukaan
Menu.Open = &Avaa
Menu.OpenAll = Avaa &kaikki käyttäjät
+Menu.OpenPinned = Avaa kiinnitetyt kohteet
Menu.Explore = &Resurssienhallinta
Menu.ExploreAll = &Selaa kaikkia käyttäjiä
Menu.MenuSettings = Asetukset
@@ -1730,6 +1741,7 @@ Menu.SearchPeople = Des &personnes…
Menu.SortByName = Trier par &nom
Menu.Open = &Ouvrir
Menu.OpenAll = Ouvrir &tous les utilisateurs
+Menu.OpenPinned = Ouvrir les éléments épinglés
Menu.Explore = E&xplorer
Menu.ExploreAll = &Explorer Tous les utilisateurs
Menu.MenuSettings = Paramètres
@@ -1866,6 +1878,7 @@ Menu.SearchPeople = Airson &daoine...
Menu.SortByName = Seòrsaich a-rèir ain&m
Menu.Open = F&osgail
Menu.OpenAll = &Fosgail a h-uile cleachdaiche
+Menu.OpenPinned = Fosgail nithean pinnte
Menu.Explore = &Rùraich
Menu.ExploreAll = Rùraic&h a h-uile cleachdaiche
Menu.MenuSettings = Roghainnean
@@ -2002,6 +2015,7 @@ Menu.SearchPeople = עבור &אנשים...
Menu.SortByName = מיין לפי &שם
Menu.Open = &פתח
Menu.OpenAll = פתח את &כל המשתמשים
+Menu.OpenPinned = Open Pinned
Menu.Explore = &סייר
Menu.ExploreAll = סיי&ר בכל המשתמשים
Menu.MenuSettings = הגדרות
@@ -2138,6 +2152,7 @@ Menu.SearchPeople = Za &osobe...
Menu.SortByName = Poredaj po i&menu
Menu.Open = &Otvori
Menu.OpenAll = Ot&vori sve korisnike
+Menu.OpenPinned = Otvaranje zakačenih stavki
Menu.Explore = Ist&raži
Menu.ExploreAll = Istr&aži sve korisnike
Menu.MenuSettings = Postavke
@@ -2274,6 +2289,7 @@ Menu.SearchPeople = &Személyek...
Menu.SortByName = &Név szerinti rendezés
Menu.Open = &Megnyitás
Menu.OpenAll = M&egnyitás - All Users
+Menu.OpenPinned = Open Pinned
Menu.Explore = T&allózás
Menu.ExploreAll = Ta&llózás - All Users
Menu.MenuSettings = Beállítások
@@ -2412,6 +2428,7 @@ Menu.SearchPeople = Að &fólki...
Menu.SortByName = Raða &eftir heiti
Menu.Open = &Opna
Menu.OpenAll = O&pna Allir notendur
+Menu.OpenPinned = Opnaðu fest atriði
Menu.Explore = Opna &möppu
Menu.ExploreAll = Opna m&öppu Allir notendur
Menu.MenuSettings = Stillingar
@@ -2548,6 +2565,7 @@ Menu.SearchPeople = &Contatti...
Menu.SortByName = Or&dina per nome
Menu.Open = &Apri
Menu.OpenAll = Apri &cartella Utenti
+Menu.OpenPinned = Apri gli elementi appuntati
Menu.Explore = &Esplora
Menu.ExploreAll = Esplora cartella &Utenti
Menu.MenuSettings = Impostazioni
@@ -2684,6 +2702,7 @@ Menu.SearchPeople = 人(&P)...
Menu.SortByName = 名前順で並べ替え(&B)
Menu.Open = 開く(&O)
Menu.OpenAll = 開く - All Users(&P)
+Menu.OpenPinned = 開く - Pinned
Menu.Explore = エクスプローラー(&E)
Menu.ExploreAll = エクスプローラー - All Users(&X)
Menu.MenuSettings = 設定
@@ -2820,6 +2839,7 @@ Menu.SearchPeople = 사람 찾기(&P)...
Menu.SortByName = 이름순 정렬(&B)
Menu.Open = 열기(&O)
Menu.OpenAll = 열기 - All Users(&P)
+Menu.OpenPinned = 열기 - Pinned
Menu.Explore = 탐색(&E)
Menu.ExploreAll = 탐색 - All Users(&X)
Menu.MenuSettings = 설정
@@ -2956,6 +2976,7 @@ Menu.SearchPeople = &Asmenims...
Menu.SortByName = &Rūšiuoti pagal vardus
Menu.Open = &Atidaryti
Menu.OpenAll = A&tidaryti aplanką Visi vartotojai
+Menu.OpenPinned = Atidaryti prisegtus elementus
Menu.Explore = Naršyt&i
Menu.ExploreAll = Na&ršyti visus vartotojus
Menu.MenuSettings = Parametrai
@@ -3092,6 +3113,7 @@ Menu.SearchPeople = &Personām...
Menu.SortByName = &Kārtot pēc nosaukuma
Menu.Open = A&tvērt
Menu.OpenAll = &Atvērt visus lietotājus
+Menu.OpenPinned = Atvērt piespraustos vienumus
Menu.Explore = &Pārlūkot
Menu.ExploreAll = Pār&lūkot visus lietotājus
Menu.MenuSettings = Iestatījumi
@@ -3228,6 +3250,7 @@ Menu.SearchPeople = За луѓе...
Menu.SortByName = Сортирај по име
Menu.Open = Отвори
Menu.OpenAll = Отвори "Сите корисници"
+Menu.OpenPinned = Отворете закачени ставки
Menu.Explore = Преглед
Menu.ExploreAll = Преглед на "Сите корисници"
Menu.MenuSettings = Подесувања
@@ -3364,6 +3387,7 @@ Menu.SearchPeople = Etter &personer...
Menu.SortByName = Sorter etter &navn
Menu.Open = Å&pne
Menu.OpenAll = &Åpne mappen All users
+Menu.OpenPinned = Åpne festede elementer
Menu.Explore = &Utforsk
Menu.ExploreAll = Utforsk &mappen All users
Menu.MenuSettings = Innstillinger
@@ -3500,6 +3524,7 @@ Menu.SearchPeople = &Personen...
Menu.SortByName = S&orteren op naam
Menu.Open = &Openen
Menu.OpenAll = &Alle gebruikers weergeven
+Menu.OpenPinned = Open vastgezette items
Menu.Explore = Ve&rkennen
Menu.ExploreAll = Alle &gebruikers verkennen
Menu.MenuSettings = Instellingen
@@ -3636,6 +3661,7 @@ Menu.SearchPeople = &Do osób...
Menu.SortByName = Sortuj w&edług nazw
Menu.Open = &Otwórz
Menu.OpenAll = Otwórz &wszystkich użytkowników
+Menu.OpenPinned = Otwórz przypięte elementy
Menu.Explore = &Eksploruj
Menu.ExploreAll = E&ksploruj wszystkich użytkowników
Menu.MenuSettings = Ustawienia
@@ -3772,6 +3798,7 @@ Menu.SearchPeople = Para &Pessoas...
Menu.SortByName = C&lassificar por nome
Menu.Open = &Abrir
Menu.OpenAll = A&brir a pasta All Users
+Menu.OpenPinned = Abrir itens fixados
Menu.Explore = E&xplorar
Menu.ExploreAll = Expl&orar a pasta All Users
Menu.MenuSettings = Configurações
@@ -3908,6 +3935,7 @@ Menu.SearchPeople = &Pessoas...
Menu.SortByName = Ordenar pelo &nome
Menu.Open = &Abrir
Menu.OpenAll = A&brir All Users
+Menu.OpenPinned = Abrir os itens fixados
Menu.Explore = E&xplorar
Menu.ExploreAll = Explorar All &Users
Menu.MenuSettings = Definições
@@ -4044,6 +4072,7 @@ Menu.SearchPeople = &Persoane...
Menu.SortByName = &Sortare după nume
Menu.Open = &Deschidere
Menu.OpenAll = Desc&hidere Toți utilizatorii
+Menu.OpenPinned = Deschideți elementele fixate
Menu.Explore = &Explorare
Menu.ExploreAll = E&xplorare Toți utilizatorii
Menu.MenuSettings = Setări
@@ -4180,6 +4209,7 @@ Menu.SearchPeople = &Людей...
Menu.SortByName = &Сортировать по имени
Menu.Open = &Открыть
Menu.OpenAll = Открыть о&бщее для всех меню
+Menu.OpenPinned = Open Pinned
Menu.Explore = &Проводник
Menu.ExploreAll = Проводни&к в общее для всех меню
Menu.MenuSettings = Настройка
@@ -4316,6 +4346,7 @@ Menu.SearchPeople = Ľu&dia...
Menu.SortByName = &Usporiadať podľa názvov
Menu.Open = &Otvoriť
Menu.OpenAll = Ot&voriť profil All Users
+Menu.OpenPinned = Otvoriť Pinned
Menu.Explore = &Preskúmať
Menu.ExploreAll = P&reskúmať profil All Users
Menu.MenuSettings = Nastavenie
@@ -4452,6 +4483,7 @@ Menu.SearchPeople = &Za osebe ...
Menu.SortByName = &Razvrsti po imenih
Menu.Open = &Odpri
Menu.OpenAll = O&dpri mapo »All users«
+Menu.OpenPinned = Odpri »Pinned«
Menu.Explore = R&azišči
Menu.ExploreAll = &Razišči mapo »All users«
Menu.MenuSettings = Nastavitve
@@ -4588,6 +4620,7 @@ Menu.SearchPeople = &Za osobe...
Menu.SortByName = &Sortiraj po imenu
Menu.Open = &Otvori
Menu.OpenAll = O&tvori sve korisnike
+Menu.OpenPinned = Otvori dodato
Menu.Explore = &Istraži
Menu.ExploreAll = Istraži sve &korisnike
Menu.MenuSettings = Postavke
@@ -4724,6 +4757,7 @@ Menu.SearchPeople = Efter &personer...
Menu.SortByName = Sortera efter &namn
Menu.Open = &Öppna
Menu.OpenAll = Öppna &delade Start-menyn
+Menu.OpenPinned = Öppna fästa objekt
Menu.Explore = &Utforska
Menu.ExploreAll = Utf&orska delade Start-menyn
Menu.MenuSettings = Inställningar
@@ -4861,6 +4895,7 @@ Menu.SearchPeople = สำหรับ&บุคคล...
Menu.SortByName = เรียงลำดั&บตามชื่อ
Menu.Open = เ&ปิด
Menu.OpenAll = &เปิดโฟลเดอร์ All Users
+Menu.OpenPinned = เ&ปิด Pinned
Menu.Explore = สำรว&จ
Menu.ExploreAll = &สำรวจโฟลเดอร์ All Users
Menu.MenuSettings = การตั้งค่า
@@ -4997,6 +5032,7 @@ Menu.SearchPeople = &Kişiler...
Menu.SortByName = A&da Göre Sırala
Menu.Open = &Aç
Menu.OpenAll = Tü&m Kullanıcıları Aç
+Menu.OpenPinned = Sabitlenmiş öğeleri Aç
Menu.Explore = A&raştır
Menu.ExploreAll = &Tüm Kullanıcıları Araştır
Menu.MenuSettings = Ayarlar
@@ -5133,6 +5169,7 @@ Menu.SearchPeople = Л&юдей...
Menu.SortByName = Сортувати за &іменем
Menu.Open = &Відкрити
Menu.OpenAll = В&ідкрити спільне для всіх меню
+Menu.OpenPinned = Open Pinned
Menu.Explore = &Провідник
Menu.ExploreAll = Пр&овідник до спільного для всіх меню
Menu.MenuSettings = Настройки
@@ -5269,6 +5306,7 @@ Menu.SearchPeople = 个人(&P)...
Menu.SortByName = 按名称排序(&B)
Menu.Open = 打开(&O)
Menu.OpenAll = 打开所有用户(&P)
+Menu.OpenPinned = Open Pinned
Menu.Explore = 浏览(&E)
Menu.ExploreAll = 浏览所有用户(&X)
Menu.MenuSettings = 设置
@@ -5405,6 +5443,7 @@ Menu.SearchPeople = 人員(&P)...
Menu.SortByName = 依名稱排序(&B)
Menu.Open = 開啟(&O)
Menu.OpenAll = 開啟所有使用者(&P)
+Menu.OpenPinned = Open Pinned
Menu.Explore = 檔案總管(&E)
Menu.ExploreAll = 瀏覽所有使用者(&X)
Menu.MenuSettings = 設定
@@ -5541,6 +5580,7 @@ Menu.SearchPeople = 人員(&P)...
Menu.SortByName = 依名稱排序(&B)
Menu.Open = 開啟(&O)
Menu.OpenAll = 開啟所有使用者(&P)
+Menu.OpenPinned = Open Pinned
Menu.Explore = 檔案總管(&E)
Menu.ExploreAll = 瀏覽所有使用者(&X)
Menu.MenuSettings = 設定
From 055ac870390bfbafafaf8b62855e771a677db69e Mon Sep 17 00:00:00 2001
From: ge0rdi
Date: Sat, 4 Jan 2025 09:47:32 +0100
Subject: [PATCH 16/39] Fix modern settings on Win11 24H2+ (#2091)
---
.../StartMenuHelper/ModernSettings.cpp | 23 +++++++++++++++----
1 file changed, 19 insertions(+), 4 deletions(-)
diff --git a/Src/StartMenu/StartMenuHelper/ModernSettings.cpp b/Src/StartMenu/StartMenuHelper/ModernSettings.cpp
index a177340e5..5e6232427 100644
--- a/Src/StartMenu/StartMenuHelper/ModernSettings.cpp
+++ b/Src/StartMenu/StartMenuHelper/ModernSettings.cpp
@@ -274,15 +274,30 @@ static void ParseApplicationInformation(CComPtr& parent, AttributeW
}
}
+static void ParseSettingIDs(CComPtr& node, AttributeWriter& writer)
+{
+ writer.addString(Id::PageId, GetTranslatedString(node, L"PageID"));
+ writer.addString(Id::HostId, GetTranslatedString(node, L"HostID"));
+ writer.addString(Id::GroupId, GetTranslatedString(node, L"GroupID"));
+ writer.addString(Id::SettingId, GetTranslatedString(node, L"SettingID"));
+}
+
+static void ParseSettingPaths(CComPtr& parent, AttributeWriter& writer)
+{
+ CComPtr node;
+ if (parent->selectSingleNode(CComBSTR(L"SettingPaths/Path"), &node) == S_OK)
+ ParseSettingIDs(node, writer);
+}
+
static void ParseSettingIdentity(CComPtr& parent, AttributeWriter& writer)
{
CComPtr node;
if (parent->selectSingleNode(CComBSTR(L"SettingIdentity"), &node) == S_OK)
{
- writer.addString(Id::PageId, GetTranslatedString(node, L"PageID"));
- writer.addString(Id::HostId, GetTranslatedString(node, L"HostID"));
- writer.addString(Id::GroupId, GetTranslatedString(node, L"GroupID"));
- writer.addString(Id::SettingId, GetTranslatedString(node, L"SettingID"));
+ // Win11 24H2+
+ ParseSettingPaths(node, writer);
+ // older
+ ParseSettingIDs(node, writer);
}
}
From 552fbd8296edfcb239d076a5b8d7b0b39de2a299 Mon Sep 17 00:00:00 2001
From: ge0rdi
Date: Sat, 4 Jan 2025 16:10:52 +0100
Subject: [PATCH 17/39] Set position of tray buttons on primary taskbar only
It seems that secondary taskbars handle try button positioning
correctly. So there is no need for this workaround.
Original change was introduced in 674a486 due to #1232 issue.
---
Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp b/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp
index 0cfcdee7b..5022f67f0 100644
--- a/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp
+++ b/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp
@@ -3179,11 +3179,14 @@ static void RecreateStartButton( size_t taskbarId )
RECT rcTask;
GetWindowRect(taskBar.taskBar,&rcTask);
PostMessage(taskBar.taskBar,WM_SIZE,SIZE_RESTORED,MAKELONG(rcTask.right-rcTask.left,rcTask.bottom-rcTask.top));
- for (auto btn : taskBar.trayButtons)
+ if (taskBar.taskBar==g_TaskBar)
{
- RECT rc;
- GetWindowRect(btn,&rc);
- SetWindowPos(btn,HWND_TOP,rc.left,rc.top,0,0,SWP_NOSIZE|SWP_NOACTIVATE|SWP_NOZORDER);
+ for (auto btn : taskBar.trayButtons)
+ {
+ RECT rc;
+ GetWindowRect(btn,&rc);
+ SetWindowPos(btn,HWND_TOP,rc.left,rc.top,0,0,SWP_NOSIZE|SWP_NOACTIVATE|SWP_NOZORDER);
+ }
}
}
}
From faf79de4d558f23b0493a96f0b23e83e80d25ee2 Mon Sep 17 00:00:00 2001
From: ge0rdi
Date: Sat, 4 Jan 2025 16:10:52 +0100
Subject: [PATCH 18/39] Fix custom button position on auto-hiding taskbar
Fixes #2067.
---
Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp | 22 ++++++++++++++++++---
1 file changed, 19 insertions(+), 3 deletions(-)
diff --git a/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp b/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp
index 5022f67f0..1a3c64db0 100644
--- a/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp
+++ b/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp
@@ -1216,6 +1216,19 @@ void EnableHotkeys( THotkeys enable )
}
}
+bool IsTouchTaskbar(void)
+{
+ if (!IsWin11())
+ return false;
+
+ CRegKey regKey;
+ if (regKey.Open(HKEY_CURRENT_USER, L"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer") != ERROR_SUCCESS)
+ return false;
+
+ DWORD val;
+ return regKey.QueryDWORDValue(L"TabletPostureTaskbar", val) == ERROR_SUCCESS && val;
+}
+
static void UpdateStartButtonPosition(const TaskbarInfo* taskBar, const WINDOWPOS* pPos)
{
if (IsStartButtonSmallIcons(taskBar->taskbarId) != IsTaskbarSmallIcons())
@@ -1223,10 +1236,13 @@ static void UpdateStartButtonPosition(const TaskbarInfo* taskBar, const WINDOWPO
RECT rcTask;
GetWindowRect(taskBar->taskBar, &rcTask);
- if (RECT rc; GetWindowRgnBox(taskBar->taskBar, &rc) != ERROR)
+ if (IsTouchTaskbar())
{
- MapWindowPoints(taskBar->taskBar, NULL, (POINT*)&rc, 2);
- rcTask = rc;
+ if (RECT rc; GetWindowRgnBox(taskBar->taskBar, &rc) != ERROR)
+ {
+ MapWindowPoints(taskBar->taskBar, NULL, (POINT*)&rc, 2);
+ rcTask = rc;
+ }
}
MONITORINFO info;
UINT uEdge = GetTaskbarPosition(taskBar->taskBar, &info, NULL, NULL);
From f22f10c7d5e516bd51b2cf891df225fbf3eceb3b Mon Sep 17 00:00:00 2001
From: ge0rdi
Date: Sat, 4 Jan 2025 16:10:52 +0100
Subject: [PATCH 19/39] Apply taskbar customizations to News and interests
Fixes #676
---
Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp | 5 +++++
Src/StartMenu/StartMenuDLL/StartMenuDLL.h | 3 ++-
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp b/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp
index 1a3c64db0..7cf742a2c 100644
--- a/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp
+++ b/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp
@@ -3106,6 +3106,9 @@ static void InitStartMenuDLL( void )
taskBar.chevron=FindWindowEx(tray,NULL,L"Button",NULL);
if (taskBar.chevron)
SetWindowSubclass(taskBar.chevron,SubclassTrayChevronProc,'CLSH',taskBar.taskbarId);
+ taskBar.news=FindWindowEx(g_TaskBar,NULL,L"DynamicContent2",NULL);
+ if (taskBar.news)
+ SetWindowSubclass(taskBar.news,SubclassTrayChevronProc,'CLSH',taskBar.taskbarId);
}
HandleTaskbarParts(taskBar,true);
@@ -3295,6 +3298,8 @@ if (!g_bTrimHooks)
}
if (it->second.chevron)
RemoveWindowSubclass(it->second.chevron,SubclassTrayChevronProc,'CLSH');
+ if (it->second.news)
+ RemoveWindowSubclass(it->second.news,SubclassTrayChevronProc,'CLSH');
if (it->second.desktop)
RemoveWindowSubclass(it->second.desktop,SubclassDesktopButtonProc,'CLSH');
if (it->second.bTimer)
diff --git a/Src/StartMenu/StartMenuDLL/StartMenuDLL.h b/Src/StartMenu/StartMenuDLL/StartMenuDLL.h
index fb27b980a..456a88475 100644
--- a/Src/StartMenu/StartMenuDLL/StartMenuDLL.h
+++ b/Src/StartMenu/StartMenuDLL/StartMenuDLL.h
@@ -47,7 +47,7 @@ void EnableStartTooltip( bool bEnable );
struct TaskbarInfo
{
- TaskbarInfo( void ) { taskbarId=pointerId=0; taskBar=startButton=oldButton=rebar=taskList=chevron=desktop=NULL; startButtonSize.cx=startButtonSize.cy=0; oldButtonSize.cx=oldButtonSize.cy=0; bTimer=bCustomLook=bReplaceButton=bHideButton=bRecreatingButton=bThemeChanging=false; }
+ TaskbarInfo( void ) { taskbarId=pointerId=0; taskBar=startButton=oldButton=rebar=taskList=chevron=news=desktop=NULL; startButtonSize.cx=startButtonSize.cy=0; oldButtonSize.cx=oldButtonSize.cy=0; bTimer=bCustomLook=bReplaceButton=bHideButton=bRecreatingButton=bThemeChanging=false; }
int taskbarId;
HWND taskBar;
HWND startButton; // either own start button or the win7 start button (depending on bReplaceButton)
@@ -55,6 +55,7 @@ struct TaskbarInfo
HWND rebar;
HWND taskList;
HWND chevron;
+ HWND news;
HWND desktop;
SIZE startButtonSize;
SIZE oldButtonSize;
From a280fa92e1ffc0d77b6cd60f0bc0645b205c1fdb Mon Sep 17 00:00:00 2001
From: vodek3
Date: Mon, 13 Jan 2025 09:01:26 +0300
Subject: [PATCH 20/39] Update StartMenuL10N.ini (#2103)
---
Src/StartMenu/StartMenuL10N.ini | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Src/StartMenu/StartMenuL10N.ini b/Src/StartMenu/StartMenuL10N.ini
index b39d674aa..8c915b8e4 100644
--- a/Src/StartMenu/StartMenuL10N.ini
+++ b/Src/StartMenu/StartMenuL10N.ini
@@ -4209,7 +4209,7 @@ Menu.SearchPeople = &Людей...
Menu.SortByName = &Сортировать по имени
Menu.Open = &Открыть
Menu.OpenAll = Открыть о&бщее для всех меню
-Menu.OpenPinned = Open Pinned
+Menu.OpenPinned = Открыть папку "Pinned"
Menu.Explore = &Проводник
Menu.ExploreAll = Проводни&к в общее для всех меню
Menu.MenuSettings = Настройка
From 58d804d22a77428df83f1db26a9417d2b460cd25 Mon Sep 17 00:00:00 2001
From: ge0rdi
Date: Sun, 2 Mar 2025 11:18:32 +0100
Subject: [PATCH 21/39] Remove obsolete links from help
Fixes #2148
---
Src/Localization/English/Links.html | 16 ++++------------
Src/Localization/English/OpenShellReadme.rtf | 5 +----
2 files changed, 5 insertions(+), 16 deletions(-)
diff --git a/Src/Localization/English/Links.html b/Src/Localization/English/Links.html
index ffc0e90ce..589bcc149 100644
--- a/Src/Localization/English/Links.html
+++ b/Src/Localization/English/Links.html
@@ -24,23 +24,15 @@

Links
The latest version can be found on the Open-Shell website:
https://github.com/Open-Shell/Open-Shell-Menu/releases/latest/
-
-View the project history here:
-History: https://coddec.github.io/Classic-Shell/www.classicshell.net/history/
-
-
-