Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: Dato menu loads in far left corner instead of being anchored to icon in far right corner #169

Closed
1 task done
autonome opened this issue Jun 19, 2024 · 23 comments
Closed
1 task done
Labels
Bug Something isn't working

Comments

@autonome
Copy link

Check existing issues

  • I have checked existing issues and believe that my issue is not a duplicate

Description

The menu loads on the far left, but should load on the far right.

Steps to Reproduce

  1. Install Dato: https://sindresorhus.com/dato
  2. Open the Dato menu

Ice Version

0.9.0

macOS Version

14.5

Screenshots

CleanShot 2024-06-19 at 17 31 14@2x

@autonome autonome added the Bug Something isn't working label Jun 19, 2024
@luckman212
Copy link
Sponsor

I have this too. Same OS, same app (although I am using the Setapp version)

@luckman212
Copy link
Sponsor

luckman212 commented Jun 24, 2024

Running 0.10b5 now, and still having the issue where "new" icons (not really new, just re-appearing ones that I've moved out from the "always-hidden" section before) are being placed at the end of the line and thus not visible when I need them to be.

It also affects menubar icons that are added by Hammerspoon, of which I have several that appear and disappear depending on various things happening on my Mac.

I was wondering if there was a hidden setting to control this behavior somewhere that I'm not seeing in the UI?

I see that some of the other related issues around this are now closed, so I'm hopeful there are still some more changes coming... probably #6 is the correct one to follow?

I'll link these here just for reference:

@jordanbaird
Copy link
Owner

jordanbaird commented Jun 24, 2024

@luckman212 #6 would be the correct one to follow, yes. That and #26, which will enable Ice to remember the locations of existing items.

@luckman212
Copy link
Sponsor

Is this problem unique to Dato.app? I have other menubar items e.g. DatWeatherDoe whose text also changes periodically, yet their position remains correct. For some reason, Dato constantly "jumps" to the back of the line. Is there a reason to ask @sindresorhus if he's doing something unorthodox that would cause this behavior?

@jordanbaird
Copy link
Owner

@luckman212 Does Dato dynamically create its item(s) during runtime? As in, it might add and remove them while it's still running? If so, I think it's following the default behavior, which deletes the item's stored position when the it is removed. I had to manually work around it with Ice by caching the position before removing the item and storing it again afterward.

@luckman212
Copy link
Sponsor

Yes, it definitely adds/removes elements during its lifetime. It displays upcoming calendar events so is constantly changing. It's not open source so I am not sure what methods are being used, but I will say, when Ice is not running, Dato's menubar position stays intact.

@luckman212
Copy link
Sponsor

luckman212 commented Jul 9, 2024

I just installed 0.10.1 and after the dialog appeared telling me it had to trash my prefs due to corruption, it seems the Dato menuitem is staying where I put it now! I didn't see this mentioned in the release notes anywhere but—has something changed here that might have caused this to be fixed? Or was it the recreation of the prefs you think?

Strangely, now my "WiFi" icon seems to be suffering from the same problem- it keeps disappearing and getting moved to the hidden section, even after dragging it back.

edit: Dato is misbehaving again.

@jordanbaird
Copy link
Owner

@luckman212 Hmm...I can't think of any reason why it would be working now when it wasn't before. Strange that your WiFi icon is doing this. Is it the standard macOS WiFi icon, or do you use a third party app?

@luckman212
Copy link
Sponsor

luckman212 commented Jul 9, 2024

Just the standard WiFi icon. I quit Ice and relaunched it, and so far it's working again. Maybe a fluke. Where does Ice store its preferences for the icon ordering? (just in case I want to manually trash it again) I glanced over the source but couldn't spot it.

edit: I just checked and the behavior is back to the way it was before (Dato always appearing at the far left end in the Hidden section).

@luckman212
Copy link
Sponsor

For anyone having this problem, I found a temporary workaround inside Dato itself:

If you go to Dato's Settings → Events and click Customize, and then scroll all the way down, there is a toggle called Show menu bar item even when there are no upcoming events:


If enabled, a small "diamond" appears as a placeholder. This seems to allow Ice and/or macOS to preserve the menuitem ordering for the Dato meeting reminders.

@autonome
Copy link
Author

FYI the problem originally reported in this issue no longer seems to occur in latest Ice.

@luckman212
Copy link
Sponsor

@autonome Was it an Ice update or a Dato update (or both) that fixed the issue?

@autonome
Copy link
Author

autonome commented Aug 28, 2024 via email

@luckman212
Copy link
Sponsor

I just tested it, still broken for me: Ice 0.11.0-beta1, Dato v5.3.6 Setapp.

If I don't use the workaround above then new calendar reminders are inserted at the far left, hidden in the Ice bar... so I never see them.

@autonome
Copy link
Author

I'm specifically talking about the issue that I reported in the first comment here - the menu loading on the right.

I'm seeing that Dato's meeting reminders are continually moved to the Always-Hidden section even though I move them back. But that's different entirely, and should be a separate issue probably.

@luckman212
Copy link
Sponsor

@autonome I believe instead of opening a new issue, #119 should just be re-opened. I understand that we are waiting for the 0.12.x milestone for this, but IMO that issue should still be marked Open, if not at least to avoid people re-posting the same problem.

@autonome
Copy link
Author

I agree, but is up to @jordanbaird really.

@jordanbaird
Copy link
Owner

@luckman212 @autonome It's not just Dato that has this problem. Honestly, I've lost count of how many nearly identical issues have been opened, but for different apps. I've been closing them since the "fix" for all of them is the profiles feature. I have already created a discussion (#298) that details this, but maybe it would be good to convert it into an issue and pin it.

@jordanbaird
Copy link
Owner

Seems I lost track of this issue. I'm confident that this was a bug with Dato. Ice doesn't do anything to change where an item's menu appears. Regardless, as it seems to be fixed now, I'm going to close this.

@luckman212
Copy link
Sponsor

@jordanbaird Sorry to throw cold water on this, but...

"I'm confident that this was a bug with Dato."

Any chance you could reach out to @sindresorhus about that, because it's an awfully popular app, and seems a shame that it appears to have this incompatibility with arguably the best menubar-taming app on macOS these days. I've messaged him about it, but as the developer of the app I'm sure your message would carry more weight.

"as it seems to be fixed now, I'm going to close this."

I can't find any evidence that this is fixed. I'm using macOS 15.0.1 (also tried 15.1b6) with Ice 0.11.9 + Dato 5.3.7, and I can't get this to behave properly at all unless I enable Dato's "diamond item workaround" mentioned a little further up in this thread.

The symptom is: upcoming reminders completely disappear. They are not visible in the menu bar, or in Ice's hidden sections either. They also do not appear in the Ice settings dialog under Menu Bar Layout. They're simply invisible until I quit Ice completely, at which point they appear.

@jordanbaird
Copy link
Owner

@luckman212 This issue is specifically for Dato's menu appearing at the far left of the screen, and is not related to the issue with its menu bar item appearing in the always-hidden section. That issue is due to the lack of profiles, and is tracked as a feature request in #26. Unfortnuately, I still haven't had time to implement it, as I've been focusing on fixing lots of other bugs, especially usability issues that have popped up since the Sequoia release.

I'm going off of what @autonome said here as evidence that this is fixed.

As for the behavior your referring to, this would not be a bug with Dato, nor is it a bug with Ice. It's simply due to the way macOS treats new menu bar items. Ice just doesn't have a feature to compensate for this, which is why #26 is a feature request and not a bug report (see #298 for more details). Regardless, I don't think there's anything for Sindre to do on his end, as Dato needs to be able to create new menu bar items on the fly. It's on Ice to keep track of them.

@luckman212
Copy link
Sponsor

Thanks for that, ok I'll stop asking about this one. Sounds like it's on your radar and we just need to have patience and a bit of faith.

@jordanbaird
Copy link
Owner

@luckman212 No worries. I'm hoping to get started on it soon, barring any unforseen circumstances.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants