From ff77193e5774aca7a0f2d694a3bb7ad83ee03e17 Mon Sep 17 00:00:00 2001 From: Ashton <38200084+Alphalaneous@users.noreply.github.com> Date: Wed, 13 May 2026 18:10:10 -0400 Subject: [PATCH 1/9] start of iOS safe areas --- mod.json | 2 +- src/EditorPauseLayer.cpp | 4 ++-- src/EditorUI.cpp | 8 ++++---- src/LevelBrowserLayer.cpp | 21 +++++++++++++++++---- src/LevelInfoLayer.cpp | 8 +++----- src/LevelListLayer.cpp | 4 ++-- src/LevelSearchLayer.cpp | 2 +- 7 files changed, 30 insertions(+), 19 deletions(-) diff --git a/mod.json b/mod.json index 22f60a6..e424d1f 100644 --- a/mod.json +++ b/mod.json @@ -1,5 +1,5 @@ { - "geode": "5.3.0", + "geode": "5.6.0", "gd": { "win": "2.2081", "android": "2.2081", diff --git a/src/EditorPauseLayer.cpp b/src/EditorPauseLayer.cpp index 30f9a08..44b7c78 100644 --- a/src/EditorPauseLayer.cpp +++ b/src/EditorPauseLayer.cpp @@ -224,7 +224,7 @@ class GuidelinesButtonDummy { } } optionsMenu->setContentSize({ 120.f, winSize.height - 60.f }); - optionsMenu->setPosition(75.f, winSize.height / 2 - 25.f + 10.f); + optionsMenu->setPosition(75.f GEODE_IOS(+ geode::utils::getSafeAreaRect().x), winSize.height / 2 - 25.f + 10.f); optionsMenu->updateLayout(); auto settingsMenu = detachAndCreateMenu( @@ -288,7 +288,7 @@ class GuidelinesButtonDummy { ); } menu->setContentSize({ 180.f, 100.f }); - menu->setPosition(100.f, winSize.height - 55.f); + menu->setPosition(100.f GEODE_IOS(+ geode::utils::getSafeAreaRect().x), winSize.height - 55.f); menu->updateLayout(); } } diff --git a/src/EditorUI.cpp b/src/EditorUI.cpp index 88e86fd..39ca229 100644 --- a/src/EditorUI.cpp +++ b/src/EditorUI.cpp @@ -72,7 +72,7 @@ using namespace geode::node_ids; menu->getChildByID("snap-button") ); toolbarTogglesMenu->setPosition( - winSize.width - 47.f, + winSize.width - 47.f GEODE_IOS(- geode::utils::getSafeAreaRect().x), 45.f ); toolbarTogglesMenu->setContentSize({ 90.f, 90.f }); @@ -155,7 +155,7 @@ using namespace geode::node_ids; linkMenu->setPositionY(playTestMenu->getPositionY() + 3 - (linkMenu->getContentHeight() / 2) GEODE_MOBILE(- 24.f)); linkMenu->updateLayout(); - menu->setPosition(42.f, 45.f); + menu->setPosition(42.f GEODE_IOS(+ geode::utils::getSafeAreaRect().x), 45.f); menu->setContentSize({ 100.f, 90.f }); menu->setLayout( ColumnLayout::create() @@ -414,7 +414,7 @@ using namespace geode::node_ids; } rightMenu->setContentSize({ 210.f, 160.f }); rightMenu->setPosition( - winSize.width - 210.f / 2, + winSize.width - 210.f / 2 GEODE_IOS(- geode::utils::getSafeAreaRect().x), winSize.height - 117.5f ); rightMenu->updateLayout(); @@ -436,7 +436,7 @@ using namespace geode::node_ids; this->getChildByID("layer-index-label"), menu->getChildByID("next-layer-button") ); - layerMenu->setPositionX(winSize.width - 110.f / 2 - 6.f); + layerMenu->setPositionX(winSize.width - 110.f / 2 - 6.f GEODE_IOS(- geode::utils::getSafeAreaRect().x)); layerMenu->setContentSize({ 110.f, 30.f }); layerMenu->updateLayout(); } diff --git a/src/LevelBrowserLayer.cpp b/src/LevelBrowserLayer.cpp index 17f84ef..ab14221 100644 --- a/src/LevelBrowserLayer.cpp +++ b/src/LevelBrowserLayer.cpp @@ -80,7 +80,7 @@ using namespace geode::node_ids; pageMenu->setContentSize({ 40.f, 110.f }); pageMenu->setAnchorPoint({ 1.f, .5f }); pageMenu->setPosition( - pageMenu->getPositionX() + 20.f, + winSize.width - 10 GEODE_IOS(- geode::utils::getSafeAreaRect().x), pageMenu->getPositionY() - 110.f / 2 + 12.5f ); pageMenu->updateLayout(); @@ -146,7 +146,7 @@ using namespace geode::node_ids; ); menu->setContentSize({ navMenuWidth, 40.f }); menu->setPositionX( - winSize.width - navMenuWidth / 2 - 5.f + winSize.width - navMenuWidth / 2 - 5.f GEODE_IOS(- geode::utils::getSafeAreaRect().x) ); menu->updateLayout(); } @@ -194,11 +194,16 @@ using namespace geode::node_ids; ->setAxisAlignment(AxisAlignment::Start), myLevelsBtn ); + menu->setContentSize({ 50.f, 125.f }); + #ifdef GEODE_IS_IOS + if (menu->getChildrenCount() > 1) { + menu->setPositionX(menu->getContentWidth() / 2 + 5 + geode::utils::getSafeAreaRect().x) + } + #endif menu->setPositionY( menu->getPositionY() + 125.f / 2 - myLevelsBtn->getScaledContentSize().height / 2 ); - menu->setContentSize({ 50.f, 125.f }); menu->updateLayout(); } } @@ -209,11 +214,19 @@ using namespace geode::node_ids; ColumnLayout::create() ->setAxisAlignment(AxisAlignment::Start) ); + + menu->setContentSize({ 50.f, 130.f }); + + #ifdef GEODE_IS_IOS + if (menu->getChildrenCount() > 2) { + menu->setPositionX(winSize.width - menu->getContentWidth() / 2 - 5 - geode::utils::getSafeAreaRect().x) + } + #endif + menu->setPositionY( menu->getPositionY() + 130.f / 2 - getSizeSafe(newLvlBtn).height / 2 ); - menu->setContentSize({ 50.f, 130.f }); menu->updateLayout(); } } diff --git a/src/LevelInfoLayer.cpp b/src/LevelInfoLayer.cpp index d21bb9a..8c95fd4 100644 --- a/src/LevelInfoLayer.cpp +++ b/src/LevelInfoLayer.cpp @@ -111,7 +111,7 @@ using namespace geode::node_ids; } auto leftSideMenu = CCMenu::create(); - leftSideMenu->setPosition(30.f, winSize.height / 2); + leftSideMenu->setPosition(30.f GEODE_IOS(+ geode::utils::getSafeAreaRect().x), winSize.height / 2); leftSideMenu->setLayout(ColumnLayout::create()); leftSideMenu->setID("left-side-menu"); leftSideMenu->setContentSize({ 50.f, 145.f }); @@ -137,13 +137,11 @@ using namespace geode::node_ids; setIDSafe(menu, rightMenuIdx++, "like-button"); setIDSafe(menu, rightMenuIdx++, "rate-button"); + menu->setContentSize({ 60.f, winSize.height - 15.f }); menu->setPosition( - menu->getPositionX() + static_cast( - menu->getChildren()->objectAtIndex(0) - )->getPositionX(), + winSize.width - 30 GEODE_IOS(- geode::utils::getSafeAreaRect().x), winSize.height / 2 ); - menu->setContentSize({ 60.f, winSize.height - 15.f }); menu->setLayout( ColumnLayout::create() ->setGap(3.f) diff --git a/src/LevelListLayer.cpp b/src/LevelListLayer.cpp index d4a31e7..9124aa7 100644 --- a/src/LevelListLayer.cpp +++ b/src/LevelListLayer.cpp @@ -101,7 +101,7 @@ using namespace geode::node_ids; if(!mainMenu) return; auto rightSideMenu = CCMenu::create(); - rightSideMenu->setPosition(winSize.width - 25.f, winSize.height / 2); + rightSideMenu->setPosition(winSize.width - 25.f GEODE_IOS(- geode::utils::getSafeAreaRect().x), winSize.height / 2); rightSideMenu->setLayout( ColumnLayout::create() ->setAxisReverse(true) @@ -215,7 +215,7 @@ struct LevelListLayerIDs : Modify { auto winSize = CCDirector::sharedDirector()->getWinSize(); auto leftSideMenu = CCMenu::create(); - leftSideMenu->setPosition(26.f, winSize.height / 2); + leftSideMenu->setPosition(26.f GEODE_IOS(+ geode::utils::getSafeAreaRect().x), winSize.height / 2); leftSideMenu->setLayout( ColumnLayout::create() ->setAxisReverse(true) diff --git a/src/LevelSearchLayer.cpp b/src/LevelSearchLayer.cpp index c7c92af..911d95b 100644 --- a/src/LevelSearchLayer.cpp +++ b/src/LevelSearchLayer.cpp @@ -32,7 +32,7 @@ using namespace geode::node_ids; ->setAxisAlignment(AxisAlignment::End) ); filtermenu->setAnchorPoint({1, 0.5f}); - filtermenu->setPosition({winSize.width - 5, filtermenu->getPositionY()}); + filtermenu->setPosition({winSize.width - 5 GEODE_IOS(- geode::utils::getSafeAreaRect().x), filtermenu->getPositionY()}); filtermenu->setContentSize({filtermenu->getContentSize().width, winSize.height-10}); setIDSafe(filtermenu, 0, "clear-filters-button"); From 71a8a0fb1f99787c88cac2e423f446920faeba1c Mon Sep 17 00:00:00 2001 From: Ashton <38200084+Alphalaneous@users.noreply.github.com> Date: Wed, 13 May 2026 18:14:50 -0400 Subject: [PATCH 2/9] Fix a doofus mistake --- src/EditorPauseLayer.cpp | 4 ++-- src/EditorUI.cpp | 8 ++++---- src/LevelBrowserLayer.cpp | 8 ++++---- src/LevelInfoLayer.cpp | 4 ++-- src/LevelListLayer.cpp | 4 ++-- src/LevelSearchLayer.cpp | 2 +- 6 files changed, 15 insertions(+), 15 deletions(-) diff --git a/src/EditorPauseLayer.cpp b/src/EditorPauseLayer.cpp index 44b7c78..e769e76 100644 --- a/src/EditorPauseLayer.cpp +++ b/src/EditorPauseLayer.cpp @@ -224,7 +224,7 @@ class GuidelinesButtonDummy { } } optionsMenu->setContentSize({ 120.f, winSize.height - 60.f }); - optionsMenu->setPosition(75.f GEODE_IOS(+ geode::utils::getSafeAreaRect().x), winSize.height / 2 - 25.f + 10.f); + optionsMenu->setPosition(75.f GEODE_IOS(+ geode::utils::getSafeAreaRect().getMinX()), winSize.height / 2 - 25.f + 10.f); optionsMenu->updateLayout(); auto settingsMenu = detachAndCreateMenu( @@ -288,7 +288,7 @@ class GuidelinesButtonDummy { ); } menu->setContentSize({ 180.f, 100.f }); - menu->setPosition(100.f GEODE_IOS(+ geode::utils::getSafeAreaRect().x), winSize.height - 55.f); + menu->setPosition(100.f GEODE_IOS(+ geode::utils::getSafeAreaRect().getMinX()), winSize.height - 55.f); menu->updateLayout(); } } diff --git a/src/EditorUI.cpp b/src/EditorUI.cpp index 39ca229..cc1c51a 100644 --- a/src/EditorUI.cpp +++ b/src/EditorUI.cpp @@ -72,7 +72,7 @@ using namespace geode::node_ids; menu->getChildByID("snap-button") ); toolbarTogglesMenu->setPosition( - winSize.width - 47.f GEODE_IOS(- geode::utils::getSafeAreaRect().x), + winSize.width - 47.f GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX()), 45.f ); toolbarTogglesMenu->setContentSize({ 90.f, 90.f }); @@ -155,7 +155,7 @@ using namespace geode::node_ids; linkMenu->setPositionY(playTestMenu->getPositionY() + 3 - (linkMenu->getContentHeight() / 2) GEODE_MOBILE(- 24.f)); linkMenu->updateLayout(); - menu->setPosition(42.f GEODE_IOS(+ geode::utils::getSafeAreaRect().x), 45.f); + menu->setPosition(42.f GEODE_IOS(+ geode::utils::getSafeAreaRect().getMinX()), 45.f); menu->setContentSize({ 100.f, 90.f }); menu->setLayout( ColumnLayout::create() @@ -414,7 +414,7 @@ using namespace geode::node_ids; } rightMenu->setContentSize({ 210.f, 160.f }); rightMenu->setPosition( - winSize.width - 210.f / 2 GEODE_IOS(- geode::utils::getSafeAreaRect().x), + winSize.width - 210.f / 2 GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX()), winSize.height - 117.5f ); rightMenu->updateLayout(); @@ -436,7 +436,7 @@ using namespace geode::node_ids; this->getChildByID("layer-index-label"), menu->getChildByID("next-layer-button") ); - layerMenu->setPositionX(winSize.width - 110.f / 2 - 6.f GEODE_IOS(- geode::utils::getSafeAreaRect().x)); + layerMenu->setPositionX(winSize.width - 110.f / 2 - 6.f GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX())); layerMenu->setContentSize({ 110.f, 30.f }); layerMenu->updateLayout(); } diff --git a/src/LevelBrowserLayer.cpp b/src/LevelBrowserLayer.cpp index ab14221..72e975b 100644 --- a/src/LevelBrowserLayer.cpp +++ b/src/LevelBrowserLayer.cpp @@ -80,7 +80,7 @@ using namespace geode::node_ids; pageMenu->setContentSize({ 40.f, 110.f }); pageMenu->setAnchorPoint({ 1.f, .5f }); pageMenu->setPosition( - winSize.width - 10 GEODE_IOS(- geode::utils::getSafeAreaRect().x), + winSize.width - 10 GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX()), pageMenu->getPositionY() - 110.f / 2 + 12.5f ); pageMenu->updateLayout(); @@ -146,7 +146,7 @@ using namespace geode::node_ids; ); menu->setContentSize({ navMenuWidth, 40.f }); menu->setPositionX( - winSize.width - navMenuWidth / 2 - 5.f GEODE_IOS(- geode::utils::getSafeAreaRect().x) + winSize.width - navMenuWidth / 2 - 5.f GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX()) ); menu->updateLayout(); } @@ -197,7 +197,7 @@ using namespace geode::node_ids; menu->setContentSize({ 50.f, 125.f }); #ifdef GEODE_IS_IOS if (menu->getChildrenCount() > 1) { - menu->setPositionX(menu->getContentWidth() / 2 + 5 + geode::utils::getSafeAreaRect().x) + menu->setPositionX(menu->getContentWidth() / 2 + 5 + geode::utils::getSafeAreaRect().getMinX()) } #endif menu->setPositionY( @@ -219,7 +219,7 @@ using namespace geode::node_ids; #ifdef GEODE_IS_IOS if (menu->getChildrenCount() > 2) { - menu->setPositionX(winSize.width - menu->getContentWidth() / 2 - 5 - geode::utils::getSafeAreaRect().x) + menu->setPositionX(winSize.width - menu->getContentWidth() / 2 - 5 - geode::utils::getSafeAreaRect().getMinX()) } #endif diff --git a/src/LevelInfoLayer.cpp b/src/LevelInfoLayer.cpp index 8c95fd4..e917def 100644 --- a/src/LevelInfoLayer.cpp +++ b/src/LevelInfoLayer.cpp @@ -111,7 +111,7 @@ using namespace geode::node_ids; } auto leftSideMenu = CCMenu::create(); - leftSideMenu->setPosition(30.f GEODE_IOS(+ geode::utils::getSafeAreaRect().x), winSize.height / 2); + leftSideMenu->setPosition(30.f GEODE_IOS(+ geode::utils::getSafeAreaRect().getMinX()), winSize.height / 2); leftSideMenu->setLayout(ColumnLayout::create()); leftSideMenu->setID("left-side-menu"); leftSideMenu->setContentSize({ 50.f, 145.f }); @@ -139,7 +139,7 @@ using namespace geode::node_ids; menu->setContentSize({ 60.f, winSize.height - 15.f }); menu->setPosition( - winSize.width - 30 GEODE_IOS(- geode::utils::getSafeAreaRect().x), + winSize.width - 30 GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX()), winSize.height / 2 ); menu->setLayout( diff --git a/src/LevelListLayer.cpp b/src/LevelListLayer.cpp index 9124aa7..bdfd651 100644 --- a/src/LevelListLayer.cpp +++ b/src/LevelListLayer.cpp @@ -101,7 +101,7 @@ using namespace geode::node_ids; if(!mainMenu) return; auto rightSideMenu = CCMenu::create(); - rightSideMenu->setPosition(winSize.width - 25.f GEODE_IOS(- geode::utils::getSafeAreaRect().x), winSize.height / 2); + rightSideMenu->setPosition(winSize.width - 25.f GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX()), winSize.height / 2); rightSideMenu->setLayout( ColumnLayout::create() ->setAxisReverse(true) @@ -215,7 +215,7 @@ struct LevelListLayerIDs : Modify { auto winSize = CCDirector::sharedDirector()->getWinSize(); auto leftSideMenu = CCMenu::create(); - leftSideMenu->setPosition(26.f GEODE_IOS(+ geode::utils::getSafeAreaRect().x), winSize.height / 2); + leftSideMenu->setPosition(26.f GEODE_IOS(+ geode::utils::getSafeAreaRect().getMinX()), winSize.height / 2); leftSideMenu->setLayout( ColumnLayout::create() ->setAxisReverse(true) diff --git a/src/LevelSearchLayer.cpp b/src/LevelSearchLayer.cpp index 911d95b..ddf2d8c 100644 --- a/src/LevelSearchLayer.cpp +++ b/src/LevelSearchLayer.cpp @@ -32,7 +32,7 @@ using namespace geode::node_ids; ->setAxisAlignment(AxisAlignment::End) ); filtermenu->setAnchorPoint({1, 0.5f}); - filtermenu->setPosition({winSize.width - 5 GEODE_IOS(- geode::utils::getSafeAreaRect().x), filtermenu->getPositionY()}); + filtermenu->setPosition({winSize.width - 5 GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX()), filtermenu->getPositionY()}); filtermenu->setContentSize({filtermenu->getContentSize().width, winSize.height-10}); setIDSafe(filtermenu, 0, "clear-filters-button"); From 1da4fdd454e7ded95224f9b3824149b19b4df776 Mon Sep 17 00:00:00 2001 From: Ashton <38200084+Alphalaneous@users.noreply.github.com> Date: Wed, 13 May 2026 18:17:30 -0400 Subject: [PATCH 3/9] Update LevelBrowserLayer.cpp --- src/LevelBrowserLayer.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/LevelBrowserLayer.cpp b/src/LevelBrowserLayer.cpp index 72e975b..43a674a 100644 --- a/src/LevelBrowserLayer.cpp +++ b/src/LevelBrowserLayer.cpp @@ -197,7 +197,7 @@ using namespace geode::node_ids; menu->setContentSize({ 50.f, 125.f }); #ifdef GEODE_IS_IOS if (menu->getChildrenCount() > 1) { - menu->setPositionX(menu->getContentWidth() / 2 + 5 + geode::utils::getSafeAreaRect().getMinX()) + menu->setPositionX(menu->getContentWidth() / 2 + 5 + geode::utils::getSafeAreaRect().getMinX()); } #endif menu->setPositionY( @@ -219,7 +219,7 @@ using namespace geode::node_ids; #ifdef GEODE_IS_IOS if (menu->getChildrenCount() > 2) { - menu->setPositionX(winSize.width - menu->getContentWidth() / 2 - 5 - geode::utils::getSafeAreaRect().getMinX()) + menu->setPositionX(winSize.width - menu->getContentWidth() / 2 - 5 - geode::utils::getSafeAreaRect().getMinX()); } #endif From 1e04a2a4b05e9f6379e964dc4c152d18a7e88fa5 Mon Sep 17 00:00:00 2001 From: Ashton <38200084+Alphalaneous@users.noreply.github.com> Date: Wed, 13 May 2026 18:30:17 -0400 Subject: [PATCH 4/9] Adjustments --- src/EditorPauseLayer.cpp | 4 ++-- src/EditorUI.cpp | 8 ++++---- src/LevelBrowserLayer.cpp | 20 ++++++++++++-------- src/LevelInfoLayer.cpp | 4 ++-- src/LevelListLayer.cpp | 4 ++-- src/LevelSearchLayer.cpp | 2 +- 6 files changed, 23 insertions(+), 19 deletions(-) diff --git a/src/EditorPauseLayer.cpp b/src/EditorPauseLayer.cpp index e769e76..39caf04 100644 --- a/src/EditorPauseLayer.cpp +++ b/src/EditorPauseLayer.cpp @@ -224,7 +224,7 @@ class GuidelinesButtonDummy { } } optionsMenu->setContentSize({ 120.f, winSize.height - 60.f }); - optionsMenu->setPosition(75.f GEODE_IOS(+ geode::utils::getSafeAreaRect().getMinX()), winSize.height / 2 - 25.f + 10.f); + optionsMenu->setPosition(75.f GEODE_IOS(+ (geode::utils::getSafeAreaRect().getMinX() - 20.f)), winSize.height / 2 - 25.f + 10.f); optionsMenu->updateLayout(); auto settingsMenu = detachAndCreateMenu( @@ -288,7 +288,7 @@ class GuidelinesButtonDummy { ); } menu->setContentSize({ 180.f, 100.f }); - menu->setPosition(100.f GEODE_IOS(+ geode::utils::getSafeAreaRect().getMinX()), winSize.height - 55.f); + menu->setPosition(100.f GEODE_IOS(+ (geode::utils::getSafeAreaRect().getMinX() - 20.f)), winSize.height - 55.f); menu->updateLayout(); } } diff --git a/src/EditorUI.cpp b/src/EditorUI.cpp index cc1c51a..0da1bfa 100644 --- a/src/EditorUI.cpp +++ b/src/EditorUI.cpp @@ -72,7 +72,7 @@ using namespace geode::node_ids; menu->getChildByID("snap-button") ); toolbarTogglesMenu->setPosition( - winSize.width - 47.f GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX()), + winSize.width - 47.f GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() - 20.f)), 45.f ); toolbarTogglesMenu->setContentSize({ 90.f, 90.f }); @@ -155,7 +155,7 @@ using namespace geode::node_ids; linkMenu->setPositionY(playTestMenu->getPositionY() + 3 - (linkMenu->getContentHeight() / 2) GEODE_MOBILE(- 24.f)); linkMenu->updateLayout(); - menu->setPosition(42.f GEODE_IOS(+ geode::utils::getSafeAreaRect().getMinX()), 45.f); + menu->setPosition(42.f GEODE_IOS(+ (geode::utils::getSafeAreaRect().getMinX() - 20.f)), 45.f); menu->setContentSize({ 100.f, 90.f }); menu->setLayout( ColumnLayout::create() @@ -414,7 +414,7 @@ using namespace geode::node_ids; } rightMenu->setContentSize({ 210.f, 160.f }); rightMenu->setPosition( - winSize.width - 210.f / 2 GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX()), + winSize.width - 210.f / 2 GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() - 20.f)), winSize.height - 117.5f ); rightMenu->updateLayout(); @@ -436,7 +436,7 @@ using namespace geode::node_ids; this->getChildByID("layer-index-label"), menu->getChildByID("next-layer-button") ); - layerMenu->setPositionX(winSize.width - 110.f / 2 - 6.f GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX())); + layerMenu->setPositionX(winSize.width - 110.f / 2 - 6.f GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() - 20.f))); layerMenu->setContentSize({ 110.f, 30.f }); layerMenu->updateLayout(); } diff --git a/src/LevelBrowserLayer.cpp b/src/LevelBrowserLayer.cpp index 43a674a..ef88512 100644 --- a/src/LevelBrowserLayer.cpp +++ b/src/LevelBrowserLayer.cpp @@ -80,7 +80,7 @@ using namespace geode::node_ids; pageMenu->setContentSize({ 40.f, 110.f }); pageMenu->setAnchorPoint({ 1.f, .5f }); pageMenu->setPosition( - winSize.width - 10 GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX()), + winSize.width - 10 GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() - 20.f)), pageMenu->getPositionY() - 110.f / 2 + 12.5f ); pageMenu->updateLayout(); @@ -146,7 +146,7 @@ using namespace geode::node_ids; ); menu->setContentSize({ navMenuWidth, 40.f }); menu->setPositionX( - winSize.width - navMenuWidth / 2 - 5.f GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX()) + winSize.width - navMenuWidth / 2 - 5.f GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() - 20.f)) ); menu->updateLayout(); } @@ -196,9 +196,11 @@ using namespace geode::node_ids; ); menu->setContentSize({ 50.f, 125.f }); #ifdef GEODE_IS_IOS - if (menu->getChildrenCount() > 1) { - menu->setPositionX(menu->getContentWidth() / 2 + 5 + geode::utils::getSafeAreaRect().getMinX()); - } + menu->addOnEnterCallback([menu] { + if (menu->getChildrenCount() > 1) { + menu->setPositionX(menu->getContentWidth() / 2 + 5 + (geode::utils::getSafeAreaRect().getMinX() - 20.f)); + } + }); #endif menu->setPositionY( menu->getPositionY() + 125.f / 2 - @@ -218,9 +220,11 @@ using namespace geode::node_ids; menu->setContentSize({ 50.f, 130.f }); #ifdef GEODE_IS_IOS - if (menu->getChildrenCount() > 2) { - menu->setPositionX(winSize.width - menu->getContentWidth() / 2 - 5 - geode::utils::getSafeAreaRect().getMinX()); - } + menu->addOnEnterCallback([menu] { + if (menu->getChildrenCount() > 2) { + menu->setPositionX(winSize.width - menu->getContentWidth() / 2 - 5 - (geode::utils::getSafeAreaRect().getMinX() - 20.f)); + } + }); #endif menu->setPositionY( diff --git a/src/LevelInfoLayer.cpp b/src/LevelInfoLayer.cpp index e917def..4f4f945 100644 --- a/src/LevelInfoLayer.cpp +++ b/src/LevelInfoLayer.cpp @@ -111,7 +111,7 @@ using namespace geode::node_ids; } auto leftSideMenu = CCMenu::create(); - leftSideMenu->setPosition(30.f GEODE_IOS(+ geode::utils::getSafeAreaRect().getMinX()), winSize.height / 2); + leftSideMenu->setPosition(30.f GEODE_IOS(+ (geode::utils::getSafeAreaRect().getMinX() - 20.f)), winSize.height / 2); leftSideMenu->setLayout(ColumnLayout::create()); leftSideMenu->setID("left-side-menu"); leftSideMenu->setContentSize({ 50.f, 145.f }); @@ -139,7 +139,7 @@ using namespace geode::node_ids; menu->setContentSize({ 60.f, winSize.height - 15.f }); menu->setPosition( - winSize.width - 30 GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX()), + winSize.width - 30 GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() - 20.f)), winSize.height / 2 ); menu->setLayout( diff --git a/src/LevelListLayer.cpp b/src/LevelListLayer.cpp index bdfd651..959d7b6 100644 --- a/src/LevelListLayer.cpp +++ b/src/LevelListLayer.cpp @@ -101,7 +101,7 @@ using namespace geode::node_ids; if(!mainMenu) return; auto rightSideMenu = CCMenu::create(); - rightSideMenu->setPosition(winSize.width - 25.f GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX()), winSize.height / 2); + rightSideMenu->setPosition(winSize.width - 25.f GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() - 20.f)), winSize.height / 2); rightSideMenu->setLayout( ColumnLayout::create() ->setAxisReverse(true) @@ -215,7 +215,7 @@ struct LevelListLayerIDs : Modify { auto winSize = CCDirector::sharedDirector()->getWinSize(); auto leftSideMenu = CCMenu::create(); - leftSideMenu->setPosition(26.f GEODE_IOS(+ geode::utils::getSafeAreaRect().getMinX()), winSize.height / 2); + leftSideMenu->setPosition(26.f GEODE_IOS(+ (geode::utils::getSafeAreaRect().getMinX() - 20.f)), winSize.height / 2); leftSideMenu->setLayout( ColumnLayout::create() ->setAxisReverse(true) diff --git a/src/LevelSearchLayer.cpp b/src/LevelSearchLayer.cpp index ddf2d8c..f800f94 100644 --- a/src/LevelSearchLayer.cpp +++ b/src/LevelSearchLayer.cpp @@ -32,7 +32,7 @@ using namespace geode::node_ids; ->setAxisAlignment(AxisAlignment::End) ); filtermenu->setAnchorPoint({1, 0.5f}); - filtermenu->setPosition({winSize.width - 5 GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX()), filtermenu->getPositionY()}); + filtermenu->setPosition({winSize.width - 5 GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() - 20.f)), filtermenu->getPositionY()}); filtermenu->setContentSize({filtermenu->getContentSize().width, winSize.height-10}); setIDSafe(filtermenu, 0, "clear-filters-button"); From ff7df769e472c5c6d567dce8de6bf9a10a98f63e Mon Sep 17 00:00:00 2001 From: Ashton <38200084+Alphalaneous@users.noreply.github.com> Date: Wed, 13 May 2026 18:33:49 -0400 Subject: [PATCH 5/9] Update LevelBrowserLayer.cpp --- src/LevelBrowserLayer.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/LevelBrowserLayer.cpp b/src/LevelBrowserLayer.cpp index ef88512..0107420 100644 --- a/src/LevelBrowserLayer.cpp +++ b/src/LevelBrowserLayer.cpp @@ -220,7 +220,7 @@ using namespace geode::node_ids; menu->setContentSize({ 50.f, 130.f }); #ifdef GEODE_IS_IOS - menu->addOnEnterCallback([menu] { + menu->addOnEnterCallback([menu, winSize] { if (menu->getChildrenCount() > 2) { menu->setPositionX(winSize.width - menu->getContentWidth() / 2 - 5 - (geode::utils::getSafeAreaRect().getMinX() - 20.f)); } From 944e842857242894b00a266b279fbd1fce61aa50 Mon Sep 17 00:00:00 2001 From: Ashton <38200084+Alphalaneous@users.noreply.github.com> Date: Wed, 13 May 2026 19:43:14 -0400 Subject: [PATCH 6/9] Revert mod.json change --- mod.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mod.json b/mod.json index e424d1f..22f60a6 100644 --- a/mod.json +++ b/mod.json @@ -1,5 +1,5 @@ { - "geode": "5.6.0", + "geode": "5.3.0", "gd": { "win": "2.2081", "android": "2.2081", From 0a6396dd4ca720640b4cf9d943d881623a93e904 Mon Sep 17 00:00:00 2001 From: Ashton <38200084+Alphalaneous@users.noreply.github.com> Date: Wed, 13 May 2026 19:46:22 -0400 Subject: [PATCH 7/9] Test halving instead --- src/EditorPauseLayer.cpp | 4 ++-- src/EditorUI.cpp | 8 ++++---- src/LevelBrowserLayer.cpp | 8 ++++---- src/LevelInfoLayer.cpp | 4 ++-- src/LevelListLayer.cpp | 4 ++-- src/LevelSearchLayer.cpp | 2 +- 6 files changed, 15 insertions(+), 15 deletions(-) diff --git a/src/EditorPauseLayer.cpp b/src/EditorPauseLayer.cpp index 39caf04..455e33d 100644 --- a/src/EditorPauseLayer.cpp +++ b/src/EditorPauseLayer.cpp @@ -224,7 +224,7 @@ class GuidelinesButtonDummy { } } optionsMenu->setContentSize({ 120.f, winSize.height - 60.f }); - optionsMenu->setPosition(75.f GEODE_IOS(+ (geode::utils::getSafeAreaRect().getMinX() - 20.f)), winSize.height / 2 - 25.f + 10.f); + optionsMenu->setPosition(75.f GEODE_IOS(+ (geode::utils::getSafeAreaRect().getMinX() / 2.f)), winSize.height / 2 - 25.f + 10.f); optionsMenu->updateLayout(); auto settingsMenu = detachAndCreateMenu( @@ -288,7 +288,7 @@ class GuidelinesButtonDummy { ); } menu->setContentSize({ 180.f, 100.f }); - menu->setPosition(100.f GEODE_IOS(+ (geode::utils::getSafeAreaRect().getMinX() - 20.f)), winSize.height - 55.f); + menu->setPosition(100.f GEODE_IOS(+ (geode::utils::getSafeAreaRect().getMinX() / 2.f)), winSize.height - 55.f); menu->updateLayout(); } } diff --git a/src/EditorUI.cpp b/src/EditorUI.cpp index 0da1bfa..5c1901c 100644 --- a/src/EditorUI.cpp +++ b/src/EditorUI.cpp @@ -72,7 +72,7 @@ using namespace geode::node_ids; menu->getChildByID("snap-button") ); toolbarTogglesMenu->setPosition( - winSize.width - 47.f GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() - 20.f)), + winSize.width - 47.f GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() / 2.f)), 45.f ); toolbarTogglesMenu->setContentSize({ 90.f, 90.f }); @@ -155,7 +155,7 @@ using namespace geode::node_ids; linkMenu->setPositionY(playTestMenu->getPositionY() + 3 - (linkMenu->getContentHeight() / 2) GEODE_MOBILE(- 24.f)); linkMenu->updateLayout(); - menu->setPosition(42.f GEODE_IOS(+ (geode::utils::getSafeAreaRect().getMinX() - 20.f)), 45.f); + menu->setPosition(42.f GEODE_IOS(+ (geode::utils::getSafeAreaRect().getMinX() / 2.f)), 45.f); menu->setContentSize({ 100.f, 90.f }); menu->setLayout( ColumnLayout::create() @@ -414,7 +414,7 @@ using namespace geode::node_ids; } rightMenu->setContentSize({ 210.f, 160.f }); rightMenu->setPosition( - winSize.width - 210.f / 2 GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() - 20.f)), + winSize.width - 210.f / 2 GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() / 2.f)), winSize.height - 117.5f ); rightMenu->updateLayout(); @@ -436,7 +436,7 @@ using namespace geode::node_ids; this->getChildByID("layer-index-label"), menu->getChildByID("next-layer-button") ); - layerMenu->setPositionX(winSize.width - 110.f / 2 - 6.f GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() - 20.f))); + layerMenu->setPositionX(winSize.width - 110.f / 2 - 6.f GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() / 2.f))); layerMenu->setContentSize({ 110.f, 30.f }); layerMenu->updateLayout(); } diff --git a/src/LevelBrowserLayer.cpp b/src/LevelBrowserLayer.cpp index 0107420..062a48a 100644 --- a/src/LevelBrowserLayer.cpp +++ b/src/LevelBrowserLayer.cpp @@ -80,7 +80,7 @@ using namespace geode::node_ids; pageMenu->setContentSize({ 40.f, 110.f }); pageMenu->setAnchorPoint({ 1.f, .5f }); pageMenu->setPosition( - winSize.width - 10 GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() - 20.f)), + winSize.width - 10 GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() / 2.f)), pageMenu->getPositionY() - 110.f / 2 + 12.5f ); pageMenu->updateLayout(); @@ -146,7 +146,7 @@ using namespace geode::node_ids; ); menu->setContentSize({ navMenuWidth, 40.f }); menu->setPositionX( - winSize.width - navMenuWidth / 2 - 5.f GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() - 20.f)) + winSize.width - navMenuWidth / 2 - 5.f GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() / 2.f)) ); menu->updateLayout(); } @@ -198,7 +198,7 @@ using namespace geode::node_ids; #ifdef GEODE_IS_IOS menu->addOnEnterCallback([menu] { if (menu->getChildrenCount() > 1) { - menu->setPositionX(menu->getContentWidth() / 2 + 5 + (geode::utils::getSafeAreaRect().getMinX() - 20.f)); + menu->setPositionX(menu->getContentWidth() / 2 + 5 + (geode::utils::getSafeAreaRect().getMinX() / 2.f)); } }); #endif @@ -222,7 +222,7 @@ using namespace geode::node_ids; #ifdef GEODE_IS_IOS menu->addOnEnterCallback([menu, winSize] { if (menu->getChildrenCount() > 2) { - menu->setPositionX(winSize.width - menu->getContentWidth() / 2 - 5 - (geode::utils::getSafeAreaRect().getMinX() - 20.f)); + menu->setPositionX(winSize.width - menu->getContentWidth() / 2 - 5 - (geode::utils::getSafeAreaRect().getMinX() / 2.f)); } }); #endif diff --git a/src/LevelInfoLayer.cpp b/src/LevelInfoLayer.cpp index 4f4f945..187079f 100644 --- a/src/LevelInfoLayer.cpp +++ b/src/LevelInfoLayer.cpp @@ -111,7 +111,7 @@ using namespace geode::node_ids; } auto leftSideMenu = CCMenu::create(); - leftSideMenu->setPosition(30.f GEODE_IOS(+ (geode::utils::getSafeAreaRect().getMinX() - 20.f)), winSize.height / 2); + leftSideMenu->setPosition(30.f GEODE_IOS(+ (geode::utils::getSafeAreaRect().getMinX() / 2.f)), winSize.height / 2); leftSideMenu->setLayout(ColumnLayout::create()); leftSideMenu->setID("left-side-menu"); leftSideMenu->setContentSize({ 50.f, 145.f }); @@ -139,7 +139,7 @@ using namespace geode::node_ids; menu->setContentSize({ 60.f, winSize.height - 15.f }); menu->setPosition( - winSize.width - 30 GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() - 20.f)), + winSize.width - 30 GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() / 2.f)), winSize.height / 2 ); menu->setLayout( diff --git a/src/LevelListLayer.cpp b/src/LevelListLayer.cpp index 959d7b6..8b54ea2 100644 --- a/src/LevelListLayer.cpp +++ b/src/LevelListLayer.cpp @@ -101,7 +101,7 @@ using namespace geode::node_ids; if(!mainMenu) return; auto rightSideMenu = CCMenu::create(); - rightSideMenu->setPosition(winSize.width - 25.f GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() - 20.f)), winSize.height / 2); + rightSideMenu->setPosition(winSize.width - 25.f GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() / 2.f)), winSize.height / 2); rightSideMenu->setLayout( ColumnLayout::create() ->setAxisReverse(true) @@ -215,7 +215,7 @@ struct LevelListLayerIDs : Modify { auto winSize = CCDirector::sharedDirector()->getWinSize(); auto leftSideMenu = CCMenu::create(); - leftSideMenu->setPosition(26.f GEODE_IOS(+ (geode::utils::getSafeAreaRect().getMinX() - 20.f)), winSize.height / 2); + leftSideMenu->setPosition(26.f GEODE_IOS(+ (geode::utils::getSafeAreaRect().getMinX() / 2.f)), winSize.height / 2); leftSideMenu->setLayout( ColumnLayout::create() ->setAxisReverse(true) diff --git a/src/LevelSearchLayer.cpp b/src/LevelSearchLayer.cpp index f800f94..043d9bb 100644 --- a/src/LevelSearchLayer.cpp +++ b/src/LevelSearchLayer.cpp @@ -32,7 +32,7 @@ using namespace geode::node_ids; ->setAxisAlignment(AxisAlignment::End) ); filtermenu->setAnchorPoint({1, 0.5f}); - filtermenu->setPosition({winSize.width - 5 GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() - 20.f)), filtermenu->getPositionY()}); + filtermenu->setPosition({winSize.width - 5 GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() / 2.f)), filtermenu->getPositionY()}); filtermenu->setContentSize({filtermenu->getContentSize().width, winSize.height-10}); setIDSafe(filtermenu, 0, "clear-filters-button"); From 5bfd92bad779385f3e322930b870ad826b14f4d9 Mon Sep 17 00:00:00 2001 From: Ashton <38200084+Alphalaneous@users.noreply.github.com> Date: Wed, 13 May 2026 19:47:36 -0400 Subject: [PATCH 8/9] Update mod.json --- mod.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mod.json b/mod.json index 22f60a6..b981295 100644 --- a/mod.json +++ b/mod.json @@ -1,5 +1,5 @@ { - "geode": "5.3.0", + "geode": "5.7.1", "gd": { "win": "2.2081", "android": "2.2081", From 69cc3d4eb7949e9e31825cae439ae0bfc6664c12 Mon Sep 17 00:00:00 2001 From: Ashton <38200084+Alphalaneous@users.noreply.github.com> Date: Wed, 13 May 2026 19:55:22 -0400 Subject: [PATCH 9/9] Formatting fix --- src/EditorPauseLayer.cpp | 4 ++-- src/EditorUI.cpp | 8 ++++---- src/LevelBrowserLayer.cpp | 8 ++++---- src/LevelInfoLayer.cpp | 4 ++-- src/LevelListLayer.cpp | 4 ++-- src/LevelSearchLayer.cpp | 2 +- 6 files changed, 15 insertions(+), 15 deletions(-) diff --git a/src/EditorPauseLayer.cpp b/src/EditorPauseLayer.cpp index 455e33d..a2cd5f8 100644 --- a/src/EditorPauseLayer.cpp +++ b/src/EditorPauseLayer.cpp @@ -224,7 +224,7 @@ class GuidelinesButtonDummy { } } optionsMenu->setContentSize({ 120.f, winSize.height - 60.f }); - optionsMenu->setPosition(75.f GEODE_IOS(+ (geode::utils::getSafeAreaRect().getMinX() / 2.f)), winSize.height / 2 - 25.f + 10.f); + optionsMenu->setPosition(75.f GEODE_IOS(+ geode::utils::getSafeAreaRect().getMinX() / 2.f), winSize.height / 2 - 25.f + 10.f); optionsMenu->updateLayout(); auto settingsMenu = detachAndCreateMenu( @@ -288,7 +288,7 @@ class GuidelinesButtonDummy { ); } menu->setContentSize({ 180.f, 100.f }); - menu->setPosition(100.f GEODE_IOS(+ (geode::utils::getSafeAreaRect().getMinX() / 2.f)), winSize.height - 55.f); + menu->setPosition(100.f GEODE_IOS(+ geode::utils::getSafeAreaRect().getMinX() / 2.f), winSize.height - 55.f); menu->updateLayout(); } } diff --git a/src/EditorUI.cpp b/src/EditorUI.cpp index 5c1901c..c33adcd 100644 --- a/src/EditorUI.cpp +++ b/src/EditorUI.cpp @@ -72,7 +72,7 @@ using namespace geode::node_ids; menu->getChildByID("snap-button") ); toolbarTogglesMenu->setPosition( - winSize.width - 47.f GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() / 2.f)), + winSize.width - 47.f GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX() / 2.f), 45.f ); toolbarTogglesMenu->setContentSize({ 90.f, 90.f }); @@ -155,7 +155,7 @@ using namespace geode::node_ids; linkMenu->setPositionY(playTestMenu->getPositionY() + 3 - (linkMenu->getContentHeight() / 2) GEODE_MOBILE(- 24.f)); linkMenu->updateLayout(); - menu->setPosition(42.f GEODE_IOS(+ (geode::utils::getSafeAreaRect().getMinX() / 2.f)), 45.f); + menu->setPosition(42.f GEODE_IOS(+ geode::utils::getSafeAreaRect().getMinX() / 2.f), 45.f); menu->setContentSize({ 100.f, 90.f }); menu->setLayout( ColumnLayout::create() @@ -414,7 +414,7 @@ using namespace geode::node_ids; } rightMenu->setContentSize({ 210.f, 160.f }); rightMenu->setPosition( - winSize.width - 210.f / 2 GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() / 2.f)), + winSize.width - 210.f / 2 GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX() / 2.f), winSize.height - 117.5f ); rightMenu->updateLayout(); @@ -436,7 +436,7 @@ using namespace geode::node_ids; this->getChildByID("layer-index-label"), menu->getChildByID("next-layer-button") ); - layerMenu->setPositionX(winSize.width - 110.f / 2 - 6.f GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() / 2.f))); + layerMenu->setPositionX(winSize.width - 110.f / 2 - 6.f GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX() / 2.f)); layerMenu->setContentSize({ 110.f, 30.f }); layerMenu->updateLayout(); } diff --git a/src/LevelBrowserLayer.cpp b/src/LevelBrowserLayer.cpp index 062a48a..141a823 100644 --- a/src/LevelBrowserLayer.cpp +++ b/src/LevelBrowserLayer.cpp @@ -80,7 +80,7 @@ using namespace geode::node_ids; pageMenu->setContentSize({ 40.f, 110.f }); pageMenu->setAnchorPoint({ 1.f, .5f }); pageMenu->setPosition( - winSize.width - 10 GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() / 2.f)), + winSize.width - 10 GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX() / 2.f), pageMenu->getPositionY() - 110.f / 2 + 12.5f ); pageMenu->updateLayout(); @@ -146,7 +146,7 @@ using namespace geode::node_ids; ); menu->setContentSize({ navMenuWidth, 40.f }); menu->setPositionX( - winSize.width - navMenuWidth / 2 - 5.f GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() / 2.f)) + winSize.width - navMenuWidth / 2 - 5.f GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX() / 2.f) ); menu->updateLayout(); } @@ -198,7 +198,7 @@ using namespace geode::node_ids; #ifdef GEODE_IS_IOS menu->addOnEnterCallback([menu] { if (menu->getChildrenCount() > 1) { - menu->setPositionX(menu->getContentWidth() / 2 + 5 + (geode::utils::getSafeAreaRect().getMinX() / 2.f)); + menu->setPositionX(menu->getContentWidth() / 2 + 5 + geode::utils::getSafeAreaRect().getMinX() / 2.f); } }); #endif @@ -222,7 +222,7 @@ using namespace geode::node_ids; #ifdef GEODE_IS_IOS menu->addOnEnterCallback([menu, winSize] { if (menu->getChildrenCount() > 2) { - menu->setPositionX(winSize.width - menu->getContentWidth() / 2 - 5 - (geode::utils::getSafeAreaRect().getMinX() / 2.f)); + menu->setPositionX(winSize.width - menu->getContentWidth() / 2 - 5 - geode::utils::getSafeAreaRect().getMinX() / 2.f); } }); #endif diff --git a/src/LevelInfoLayer.cpp b/src/LevelInfoLayer.cpp index 187079f..bf45cf7 100644 --- a/src/LevelInfoLayer.cpp +++ b/src/LevelInfoLayer.cpp @@ -111,7 +111,7 @@ using namespace geode::node_ids; } auto leftSideMenu = CCMenu::create(); - leftSideMenu->setPosition(30.f GEODE_IOS(+ (geode::utils::getSafeAreaRect().getMinX() / 2.f)), winSize.height / 2); + leftSideMenu->setPosition(30.f GEODE_IOS(+ geode::utils::getSafeAreaRect().getMinX() / 2.f), winSize.height / 2); leftSideMenu->setLayout(ColumnLayout::create()); leftSideMenu->setID("left-side-menu"); leftSideMenu->setContentSize({ 50.f, 145.f }); @@ -139,7 +139,7 @@ using namespace geode::node_ids; menu->setContentSize({ 60.f, winSize.height - 15.f }); menu->setPosition( - winSize.width - 30 GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() / 2.f)), + winSize.width - 30 GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX() / 2.f), winSize.height / 2 ); menu->setLayout( diff --git a/src/LevelListLayer.cpp b/src/LevelListLayer.cpp index 8b54ea2..25dc7ec 100644 --- a/src/LevelListLayer.cpp +++ b/src/LevelListLayer.cpp @@ -101,7 +101,7 @@ using namespace geode::node_ids; if(!mainMenu) return; auto rightSideMenu = CCMenu::create(); - rightSideMenu->setPosition(winSize.width - 25.f GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() / 2.f)), winSize.height / 2); + rightSideMenu->setPosition(winSize.width - 25.f GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX() / 2.f), winSize.height / 2); rightSideMenu->setLayout( ColumnLayout::create() ->setAxisReverse(true) @@ -215,7 +215,7 @@ struct LevelListLayerIDs : Modify { auto winSize = CCDirector::sharedDirector()->getWinSize(); auto leftSideMenu = CCMenu::create(); - leftSideMenu->setPosition(26.f GEODE_IOS(+ (geode::utils::getSafeAreaRect().getMinX() / 2.f)), winSize.height / 2); + leftSideMenu->setPosition(26.f GEODE_IOS(+ geode::utils::getSafeAreaRect().getMinX() / 2.f), winSize.height / 2); leftSideMenu->setLayout( ColumnLayout::create() ->setAxisReverse(true) diff --git a/src/LevelSearchLayer.cpp b/src/LevelSearchLayer.cpp index 043d9bb..0a644d9 100644 --- a/src/LevelSearchLayer.cpp +++ b/src/LevelSearchLayer.cpp @@ -32,7 +32,7 @@ using namespace geode::node_ids; ->setAxisAlignment(AxisAlignment::End) ); filtermenu->setAnchorPoint({1, 0.5f}); - filtermenu->setPosition({winSize.width - 5 GEODE_IOS(- (geode::utils::getSafeAreaRect().getMinX() / 2.f)), filtermenu->getPositionY()}); + filtermenu->setPosition({winSize.width - 5 GEODE_IOS(- geode::utils::getSafeAreaRect().getMinX() / 2.f), filtermenu->getPositionY()}); filtermenu->setContentSize({filtermenu->getContentSize().width, winSize.height-10}); setIDSafe(filtermenu, 0, "clear-filters-button");