From a865ac8f4a54770d08977e7854adb18eeb6f08cb Mon Sep 17 00:00:00 2001 From: among-us-official <110939205+among-us-official@users.noreply.github.com> Date: Thu, 13 Oct 2022 17:48:05 +0300 Subject: [PATCH 1/4] Restore Main_no_icons2 behavior for inline subitems --- Src/StartMenu/StartMenuDLL/MenuContainer.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Src/StartMenu/StartMenuDLL/MenuContainer.cpp b/Src/StartMenu/StartMenuDLL/MenuContainer.cpp index b6d6967fe..75230ce2b 100644 --- a/Src/StartMenu/StartMenuDLL/MenuContainer.cpp +++ b/Src/StartMenu/StartMenuDLL/MenuContainer.cpp @@ -1272,6 +1272,10 @@ void CMenuContainer::AddStandardItems( void ) item.bSplit=item.bFolder && (item.pStdItem->settings&StdMenuItem::MENU_SPLIT_BUTTON)!=0; // get icon + const MenuSkin::TIconSize mainIconSizeOrig=mainIconSize; + if (item.bInline && mainIconSize==MenuSkin::ICON_SIZE_NONE) + mainIconSize=s_Skin.Main_icon_size; + CItemManager::TIconSizeType iconSizeType; int refreshFlags; if (bSearchProvider7 || m_bSubMenu) @@ -1328,6 +1332,8 @@ void CMenuContainer::AddStandardItems( void ) else item.pItemInfo=g_ItemManager.GetCustomIcon(NULL,iconSizeType); + mainIconSize=mainIconSizeOrig; + // get name if (pStdItem->label && _wcsicmp(pStdItem->label,L"none")==0) { From aa56a9c58f3d9f0da588614207539953d9a52149 Mon Sep 17 00:00:00 2001 From: among-us-official <110939205+among-us-official@users.noreply.github.com> Date: Fri, 14 Oct 2022 20:49:37 +0300 Subject: [PATCH 2/4] Refactored previous commit --- Src/StartMenu/StartMenuDLL/MenuContainer.cpp | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/Src/StartMenu/StartMenuDLL/MenuContainer.cpp b/Src/StartMenu/StartMenuDLL/MenuContainer.cpp index 75230ce2b..f0289258d 100644 --- a/Src/StartMenu/StartMenuDLL/MenuContainer.cpp +++ b/Src/StartMenu/StartMenuDLL/MenuContainer.cpp @@ -1071,7 +1071,7 @@ void CMenuContainer::AddStandardItems( void ) const StdMenuItem *pInlineParent=NULL; int searchProviderIndex=-1; m_SearchProvidersCount=0; - MenuSkin::TIconSize mainIconSize=s_Skin.Main_icon_size; + bool bSecondColumn = false; for (const StdMenuItem *pStdItem=m_pStdItem;;pStdItem++) { if (pStdItem->id==MENU_LAST) @@ -1089,9 +1089,8 @@ void CMenuContainer::AddStandardItems( void ) if (m_bSubMenu && pStdItem->id==s_ShutdownCommand) continue; - const bool bTwoColumns = (!m_bSubMenu && s_Skin.TwoColumns); - if (pStdItem->id==MENU_COLUMN_BREAK && bTwoColumns) - mainIconSize=s_Skin.Main2_icon_size; + if (pStdItem->id==MENU_COLUMN_BREAK && !m_bSubMenu && s_Skin.TwoColumns) + bSecondColumn = true; int stdOptions=GetStdOptions(pStdItem->id); if (!(stdOptions&MENU_ENABLED)) continue; @@ -1272,9 +1271,9 @@ void CMenuContainer::AddStandardItems( void ) item.bSplit=item.bFolder && (item.pStdItem->settings&StdMenuItem::MENU_SPLIT_BUTTON)!=0; // get icon - const MenuSkin::TIconSize mainIconSizeOrig=mainIconSize; - if (item.bInline && mainIconSize==MenuSkin::ICON_SIZE_NONE) - mainIconSize=s_Skin.Main_icon_size; + MenuSkin::TIconSize mainIconSize = s_Skin.Main_icon_size; + if (bSecondColumn && !item.bInline) + mainIconSize = s_Skin.Main2_icon_size; CItemManager::TIconSizeType iconSizeType; int refreshFlags; @@ -1332,8 +1331,6 @@ void CMenuContainer::AddStandardItems( void ) else item.pItemInfo=g_ItemManager.GetCustomIcon(NULL,iconSizeType); - mainIconSize=mainIconSizeOrig; - // get name if (pStdItem->label && _wcsicmp(pStdItem->label,L"none")==0) { From 92be349e01aa09c17ea89b2cecd409468572c019 Mon Sep 17 00:00:00 2001 From: among-us-official <110939205+among-us-official@users.noreply.github.com> Date: Fri, 14 Oct 2022 20:52:12 +0300 Subject: [PATCH 3/4] More consistent formatting --- Src/StartMenu/StartMenuDLL/MenuContainer.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Src/StartMenu/StartMenuDLL/MenuContainer.cpp b/Src/StartMenu/StartMenuDLL/MenuContainer.cpp index f0289258d..66fd735e4 100644 --- a/Src/StartMenu/StartMenuDLL/MenuContainer.cpp +++ b/Src/StartMenu/StartMenuDLL/MenuContainer.cpp @@ -1071,7 +1071,7 @@ void CMenuContainer::AddStandardItems( void ) const StdMenuItem *pInlineParent=NULL; int searchProviderIndex=-1; m_SearchProvidersCount=0; - bool bSecondColumn = false; + bool bSecondColumn=false; for (const StdMenuItem *pStdItem=m_pStdItem;;pStdItem++) { if (pStdItem->id==MENU_LAST) @@ -1090,7 +1090,7 @@ void CMenuContainer::AddStandardItems( void ) continue; if (pStdItem->id==MENU_COLUMN_BREAK && !m_bSubMenu && s_Skin.TwoColumns) - bSecondColumn = true; + bSecondColumn=true; int stdOptions=GetStdOptions(pStdItem->id); if (!(stdOptions&MENU_ENABLED)) continue; @@ -1273,7 +1273,7 @@ void CMenuContainer::AddStandardItems( void ) // get icon MenuSkin::TIconSize mainIconSize = s_Skin.Main_icon_size; if (bSecondColumn && !item.bInline) - mainIconSize = s_Skin.Main2_icon_size; + mainIconSize=s_Skin.Main2_icon_size; CItemManager::TIconSizeType iconSizeType; int refreshFlags; From 19ee9bfb53cb32bc442c6375fe0a3e8a1784cc2c Mon Sep 17 00:00:00 2001 From: among-us-official <110939205+among-us-official@users.noreply.github.com> Date: Sat, 15 Oct 2022 00:28:28 +0300 Subject: [PATCH 4/4] Fix regression after refactor --- Src/StartMenu/StartMenuDLL/MenuContainer.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Src/StartMenu/StartMenuDLL/MenuContainer.cpp b/Src/StartMenu/StartMenuDLL/MenuContainer.cpp index 66fd735e4..1f7788b44 100644 --- a/Src/StartMenu/StartMenuDLL/MenuContainer.cpp +++ b/Src/StartMenu/StartMenuDLL/MenuContainer.cpp @@ -1271,9 +1271,9 @@ void CMenuContainer::AddStandardItems( void ) item.bSplit=item.bFolder && (item.pStdItem->settings&StdMenuItem::MENU_SPLIT_BUTTON)!=0; // get icon - MenuSkin::TIconSize mainIconSize = s_Skin.Main_icon_size; - if (bSecondColumn && !item.bInline) - mainIconSize=s_Skin.Main2_icon_size; + MenuSkin::TIconSize mainIconSize=!bSecondColumn ? s_Skin.Main_icon_size : s_Skin.Main2_icon_size; + if (item.bInline && mainIconSize==MenuSkin::ICON_SIZE_NONE) + mainIconSize=s_Skin.Main_icon_size; CItemManager::TIconSizeType iconSizeType; int refreshFlags;