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

Wayland support cannot be enabled through settings #273

Closed
alvinpeters opened this issue Aug 15, 2023 · 8 comments · Fixed by #373
Closed

Wayland support cannot be enabled through settings #273

alvinpeters opened this issue Aug 15, 2023 · 8 comments · Fixed by #373

Comments

@alvinpeters
Copy link

alvinpeters commented Aug 15, 2023

OS: Arch Linux (btw) (last update 15-08-2023)
DE: KDE Plasma 5.27.7 on Wayland
Tidal-hifi version: 5.6.0

Hi, just like to say cheers for delivering a first class support that we deserve from Tidal to Linux users on your own spare time. Really appreciate it.

I just can't seem to make Tidal run on Wayland by just using the Support Wayland settings. I have also tried uninstalling it and reinstalling but still doesn't work. Although I can run tidal-hifi --enable-features=UseOzonePlatform --ozone-platform-hint=auto --enable-features=WaylandWindowDecorations just fine and it runs on Wayland as expected.

Just want to add a minor issue is that global menu doesn't work somehow unlike some other Electron apps but then I suspect it might be Electron issue instead.

@Mastermindzh
Copy link
Owner

Hey,

What do you mean with "global menu"?
Can you set other settings correctly? Do they stay applied after changing?

When facing issues with settings you can always choose to remove the caching directory that TIDAL makes (it includes the config) by executing: rm -rf ~/.config/tidal-hifi/

@alvinpeters
Copy link
Author

alvinpeters commented Aug 15, 2023

Settings appear to work fine, I can set/unset settings like MPRIS, Discord, etc. and they are actually toggled, plus the settings are saved to the JSON file.
I deleted the config folder, Wayland settings still no worky :(

This is the global menu (basically detached from the main window):
Screenshot_20230815_173850

This is what current Tidal (both X11 and Wayland) looks like, note that it actually never showed anything in the global menu, but now it is showing 'Search' just like all Electron apps:
tidal

This is Bitwarden (using system's Electron):
bitwarden

This is Discord (using its own Electron):
discord

My conclusion is that it is more likely to be a Plasma bug or lesser extent an Electron bug.

@Mastermindzh
Copy link
Owner

So what things aren't working now that you have to manually enable the flag for?

@Mar0xy
Copy link
Contributor

Mar0xy commented Aug 15, 2023

the global menu not working on KDE in electron apps has been known for years and it primarily is a bug when they run on wayland instead of x11/xwayland (https://www.reddit.com/r/kde/comments/pa6bxz/comment/i6l7hsw/?utm_source=share&utm_medium=web2x&context=3)

in case for flatpaks you need to enable additional stuff in KDE to get those to work (https://www.reddit.com/r/kde/comments/pa6bxz/tip_enable_the_global_menu_for_flatpaks/?utm_source=share&utm_medium=web2x&context=3)

@alvinpeters
Copy link
Author

alvinpeters commented Aug 15, 2023

So what things aren't working now that you have to manually enable the flag for?

Basically nothing ig, it is running on Wayland as intended (checked with xprop). The only issue really is the Wayland support in settings not working.

@Mastermindzh
Copy link
Owner

Mastermindzh commented Aug 15, 2023

Could you explain what you are doing and what you are expecting to happen?
I can freely switch the flag on and off in the settings and that will be replicated in the behaviour (which you can check by running TIDAL Hi-Fi from the CLI) and settings file.

To export your settings file you can export it like so:

cat ~/.config/tidal-hifi/config.json | jq 'del(.ListenBrainz.token)'

Picture of it starting with and without the flag:
image

@alvinpeters
Copy link
Author

I am just toggling the 'Wayland support' option on and expect to be running natively on Wayland (by not being able to be selected with xprop) but that does not happen until I manually pass the flags from CLI or application arguments. The config.json is working as intended, being able to successfully toggle the enableWaylandSupport boolean.

What shows up when I run 3 instances of Tidal, first one is with the setting off, second one is with the setting on, third one with the flags being passed, making it run natively on Wayland (cannot be selected with xprop):
3t

Output of xprop after selecting the Tidal window running on XWayland:

`xprop | wl-copy`

_KDE_NET_WM_APPMENU_OBJECT_PATH(STRING) = "/com/canonical/menu/1200003"
_KDE_NET_WM_APPMENU_SERVICE_NAME(STRING) = ":1.365"
_NET_WM_ALLOWED_ACTIONS(ATOM) = _NET_WM_ACTION_MOVE, _NET_WM_ACTION_RESIZE, _NET_WM_ACTION_MINIMIZE, _NET_WM_ACTION_SHADE, _NET_WM_ACTION_MAXIMIZE_VERT, _NET_WM_ACTION_MAXIMIZE_HORZ, _NET_WM_ACTION_FULLSCREEN, _NET_WM_ACTION_CHANGE_DESKTOP, _NET_WM_ACTION_CLOSE
_KDE_NET_WM_FRAME_STRUT(CARDINAL) = 0, 0, 58, 0
_NET_FRAME_EXTENTS(CARDINAL) = 0, 0, 58, 0
_NET_WM_DESKTOP(CARDINAL) = 0
_KDE_NET_WM_ACTIVITIES(STRING) = "cc32db90-3954-46ad-aefb-d2f802303bf1"
WM_STATE(WM_STATE):
		window state: Normal
		icon window: 0x0
_NET_WM_STATE(ATOM) = _NET_WM_STATE_FOCUSED
_NET_WM_USER_TIME(CARDINAL) = 28093621
_NET_WM_ICON(CARDINAL) = 
WM_NORMAL_HINTS(WM_SIZE_HINTS):
		program specified location: 0, 0
		program specified maximum size: 2147483647 by 2147483647
_MOTIF_WM_HINTS(_MOTIF_WM_HINTS) = 0x2, 0x0, 0x1, 0x0, 0x0
XdndAware(ATOM) = BITMAP
_NET_WM_BYPASS_COMPOSITOR(CARDINAL) = 2
WM_NAME(UTF8_STRING) = "Home – TIDAL"
_NET_WM_NAME(UTF8_STRING) = "Home – TIDAL"
WM_WINDOW_ROLE(STRING) = "browser-window"
WM_CLASS(STRING) = "tidal-hifi", "tidal-hifi"
_NET_WM_WINDOW_TYPE(ATOM) = _NET_WM_WINDOW_TYPE_NORMAL
_NET_WM_PID(CARDINAL) = 2987127
WM_CLIENT_MACHINE(STRING) = "alvins-xps9320"
WM_PROTOCOLS(ATOM): protocols  WM_DELETE_WINDOW, _NET_WM_PING, _NET_WM_SYNC_REQUEST
_KDE_NET_WM_USER_CREATION_TIME(CARDINAL) = 28093596

@Mastermindzh
Copy link
Owner

Mmmm,

Only thing I can think of is properties not being correctly set on the "app" window.
Unfortunately, "app" (from electron) is rather buggy in the castlabs version so various things don't really seem to work (e.g restart hasn't worked in ages either).

Will investigate further. Thanks for the detailed steps and feedback.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants