Ice icon indicating copy to clipboard operation
Ice copied to clipboard

[Bug]: Can't arrange or display menu bar items when the menu bar is automatically hidden

Open jordanbaird opened this issue 1 year ago • 2 comments

Check existing and frequent issues

  • [X] I have checked existing issues and believe that my issue is not a duplicate
  • [X] I have read the Frequent Issues document, and my issue is not included there

Description

When the menu bar is set to automatically hide and show in macOS System Settings (see screenshots), Ice can't capture their offscreen images. Trying to arrange items in the "Menu Bar Items" settings pane does result in them being moved, but for some reason, they no longer show whatever content is supposed to be displayed inside them, and they longer accept clicks or drags. Showing the menu bar on another display seems to reset the items, and they display normally until they are moved again.

The current solution is to disable both the Ice Bar and item arranging when the menu bar is automatically hidden, but it's always possible there are workarounds for this.

Steps to Reproduce

Displaying Items:

  1. Open System Settings > Control Center
  2. Set automatically hide and show the menu bar to "Always"
  3. Open Ice with the Ice Bar enabled, and a hotkey set to show the hidden section
  4. Show the Ice Bar with the hotkey
  5. Items will not display
  6. Hover over the menu bar to automatically show it
  7. Items will now display in the Ice Bar

Arranging Items:

  1. In the "Menu Bar Items" settings pane, move an item in the visible section with the menu bar hidden
  2. Hover over the menu bar to automatically show it
  3. There is now a blank space where the item should be that cannot be interacted with
  4. Hover over the menu bar on another display
  5. Note how the item now shows and behaves normally

Ice Version

0.10.0-beta.6

macOS Version

14.5

Screenshots

The setting that causes the bug:

image

Before arranging:

image

After arranging:

image

jordanbaird avatar Jul 03 '24 21:07 jordanbaird

My workaround was to:

  1. Make the menu bar visible in the control center
  2. Re-arrange the applications as needed using ice
  3. Make the menu bar auto-hide again

Worked flawlessley!

Olshansk avatar Jul 27 '24 23:07 Olshansk

https://github.com/jordanbaird/Ice/pull/302

Olshansk avatar Aug 07 '24 01:08 Olshansk

I’m getting this bug even though System Settings > Control Center > Automatically hide and show the menu bar is set to Never in macOS Sequoia 15.5 (24F74) on my 16-inch M4 Max with 36 GB UM.

BlazingFrag avatar Jun 04 '25 18:06 BlazingFrag

Update: I found the issue. Turns out it’s related to a game I (very occasionally) play that has a graphical glitch related to screen resolution & the Mac’s menu bar. I worked with ChatGPT to write the following script to toggle menu bar hiding on and off. Apparently Ice didn’t like the way I left it. Running the script a few times and relaunching Ice fixed the problem!

For reference, here’s the script:

#!/bin/bash

# Required parameters:
# @raycast.schemaVersion 1
# @raycast.title Toggle Menu Bar
# @raycast.mode silent

# Optional parameters:
# @raycast.icon 📷

# Documentation:
# @raycast.description Toggles the MenuBar visibility
# @raycast.author Nick
# @raycast.authorURL https://twitter.com/SquarkP

# Read the current value of the _HIHideMenuBar setting
current_value=$(defaults -currentHost read NSGlobalDomain _HIHideMenuBar 2>/dev/null || echo "0")

# Toggle the value based on the current state
if [[ "$current_value" == "1" ]]; then
  defaults -currentHost write NSGlobalDomain _HIHideMenuBar -int 0
  echo "MenuBar is now visible."
elif [[ "$current_value" == "0" ]]; then
  defaults -currentHost write NSGlobalDomain _HIHideMenuBar -int 1
  echo "MenuBar is now hidden."
else
  echo "Unexpected value: $current_value"
  exit 1
fi

# Apply changes to ensure the system reflects the new setting
osascript -e 'tell application "System Events" to tell dock preferences to set autohide menu bar to false' || {
  echo "Failed to apply changes with AppleScript."
  exit 1
}

echo "MenuBar visibility toggled successfully."

BlazingFrag avatar Jun 11 '25 02:06 BlazingFrag