FelixKratz / SketchyBar

A highly customizable macOS status bar replacement
https://felixkratz.github.io/SketchyBar/
GNU General Public License v3.0
6.67k stars 97 forks source link

Displays have separate Spaces #495

Closed FelixKratz closed 1 week ago

FelixKratz commented 10 months ago

Since v2.20.0 SketchyBar will refuse to start if the system settings "Displays have separate Spaces" is turned off. The macOS default is that this option is turned on and it is required for certain things to work properly.

The setting is located in System Settings -> Desktop & Dock -> Displays have separate Spaces and should be on.

FancyFurret commented 4 months ago

@FelixKratz This unfortunately makes it impossible for me to use SketchyBar. I have a bit of a unique scenario - I have an ultrawide monitor (32:9), that in order to make the full resolution and refresh rate work with my macbook - I have to run in "Picture by Picture" mode. Meaning the monitor acts as two 16:9 displays side by side to macos. Now, in order to have windows across this middle "seam" without part of the window getting cut off, I have to disable "Displays have separate Spaces".

It would be fantastic if SketchyBar could support this configuration (even better if we could make it so the bar can span multiple displays, so I could have one long bar spanning the full width of my ultrawide monitor, broken up into two displays in macos) (this is a pain point with macos's native bar, it only shows up on one display, ie: half of my full ultrawide monitor)

incanus commented 4 months ago

Related to this, I'm using SketchyBar with AeroSpace WM and they recently began recommending turning this setting off.

https://nikitabobko.github.io/AeroSpace/guide#a-note-on-displays-have-separate-spaces

I only found out when I logged out/in to toggle the setting and SketchyBar wouldn't come up, then I tried it manually and got the error message.

Just an FYI / linking the info for context.

diogox commented 3 months ago

Came here to say the same thing as @incanus.

Can this restriction be removed? Will have to use something else otherwise :(

FelixKratz commented 3 months ago

I am all for supporting this configuration. If I remember correctly, there where some issues with this configuration

That being said, I took the lazy route back then and simply assumed no one would really need that setting disabled, hence I did not feel like putting the effort required to create a workaround solution and put in the check on startup (and also because yabai will not start with this option disabled as well): https://github.com/FelixKratz/SketchyBar/blob/c713afe574d1652eee7967ea490c6061ecca9f29/src/sketchybar.c#L200-L202 But if there is significant demand then it might be time to put this back on the agenda because there definitely is a way to make it work with a bit of effort.

What is needed is the following:

diocletiann commented 3 months ago

works again, thanks!

FelixKratz commented 3 months ago

This is my first shot at it: https://github.com/FelixKratz/SketchyBar/commit/fb5923291182e5070b1aef5feaed0caaa2b36074 everything seems to work at a first glance. I would appreciate help testing this commit. There is still some work required to get it ready for a release.

PhrantiK commented 3 months ago

Unrelated but in the neighbourhood - https://github.com/FelixKratz/SketchyBar/discussions/213#discussioncomment-10255366

bassamsdata commented 3 months ago

@incanus @diogox Would you mind sharing your SketchyBar configuration for Aerospace? I've been trying to set it up but haven't had any luck so far.

Thank you in advance!

thewinger commented 2 months ago

This is my first shot at it: fb59232 everything seems to work at a first glance. I would appreciate help testing this commit. There is still some work required to get it ready for a release.

To install this commit I have to compile from source or is there a brew-ish way of installing it?

albinabc commented 2 months ago

Tried compiling from source on a MBP with M3 Pro, then running ./sketchybar_arm64 -c ~/.config/sketchybar/sketchybarrc (got "could not locate config file if not specifying the config path). Just getting a blank bar on both my screens. And I have the display have separate spaces off, since I'm also running Aerospace. Any suggestions?

Edit: oh and ofc, this is running from the fb59232 commit

albinabc commented 2 months ago

https://github.com/user-attachments/assets/324632f6-9fee-4cdb-9d3b-525434dfc8c9

albinabc commented 2 months ago

Aha! Found this: https://github.com/FelixKratz/SketchyBar/issues/608 and updated lua, and now it's working!

aspauldingcode commented 2 months ago

This is great, I can't wait for this to be a feature!

zhuoqun-chen commented 3 weeks ago

Any updates on this thread? Will we be able to use sketchy bar with displays have separate spaces disabled in the next release?

FelixKratz commented 3 weeks ago

Yes, I think it should be ok to do a release with the current state of this feature if no one else has encountered issues with the current HEAD version.

Anaritus commented 3 weeks ago

For folks who are wondering how to easily install HEAD version (which includes that fix), it is very easy. brew install sketchybar --HEAD

credit to https://github.com/FelixKratz/SketchyBar/issues/646#issuecomment-2460283104

aspauldingcode commented 3 weeks ago

Omg I’m so excited

FelixKratz commented 1 week ago

v2.22.0 now contains compatibility