Code Monkey home page Code Monkey logo

Comments (16)

iwalton3 avatar iwalton3 commented on May 17, 2024 6

Wow I usually don't like to raise opinions on these things but that's really unfriendly to application developers. No other platform does this. Naturally anyone is free to PR something to resolve this as long as it doesn't affect platforms that draw decorations normally.

from jellyfin-media-player.

TingPing avatar TingPing commented on May 17, 2024 2

Again, I think Qt defaults to X11 (at least on GNOME), but you could verify that.

The flatpak just defaults it to Wayland. I do not believe it has other meaningful changes.

from jellyfin-media-player.

iwalton3 avatar iwalton3 commented on May 17, 2024 1

Nice. If this issue pops up again please comment.

from jellyfin-media-player.

DMouse10462 avatar DMouse10462 commented on May 17, 2024

I'm actually seeing decorations on my side running it from the .desktop file shipping with this application in the focal .deb package. Note in the terminal window that I'm running GNOME in a wayland session (though I can't vouch that the program is running as a Wayland app). The Qt Wayland platform plugin also appears to be supporting a fallback UI from as far back as this blog post from 2018:

https://www.qt.io/blog/2018/12/14/whats-new-wayland-platform-plugin-qt-5-12

Screenshot from 2021-04-18 00-22-46

from jellyfin-media-player.

tydog98 avatar tydog98 commented on May 17, 2024

Did you install with the Flatpak? The Flatpak doesn't give titlebars for me but the AUR package does.

from jellyfin-media-player.

iwalton3 avatar iwalton3 commented on May 17, 2024

I'm using the most recent SDK with Flatpak, but I have not even the slightest idea what might be happening.

from jellyfin-media-player.

ilya-zlobintsev avatar ilya-zlobintsev commented on May 17, 2024

You can use xprop and try clicking on the window, if it doesn't show info after clicking on the window that means it's running on native wayland. You can also launch the app with QT_QPA_PLATFORM=wayland to force wayland, I've seen some QT apps fall back to xwayland when it's not specified. I've only tried the flatpak version on gnome (and also, flatpak forces wayland due to the x11-fallback permission being set, so without altering the permissions the app can't fall back to xwayland even if it wants to).

from jellyfin-media-player.

a1ad avatar a1ad commented on May 17, 2024

So we cant have full screen when using the flatpak version in wayland?

from jellyfin-media-player.

strugee avatar strugee commented on May 17, 2024

The docs weren't very helpful on this so I filed a bug upstream: flatpak/flatpak-docs#250

from jellyfin-media-player.

TingPing avatar TingPing commented on May 17, 2024

Just to be clear about this behavior:

  • Wayland, the protocol, doesn't specify that compositors render window decorations, that was never the intention
    • There are optional, and relatively new, extensions to request the compositor render window decorations
      • GNOME does not and will not, at least in the short term, support this.
      • I'm not sure if Qt uses this or not already.
  • Flatpak isn't relevant here, except for the fact it defaults to the Wayland backend, when Qt normally defaults to X11
    • This can be changed in the package if so desired, at least for now

The solution is likely just the application rendering its own titlebar, I'm not familiar with Qt but I assume thats just another widget?

from jellyfin-media-player.

freshgum-bubbles avatar freshgum-bubbles commented on May 17, 2024
  • Flatpak isn't relevant here, except for the fact it defaults to the Wayland backend, when Qt normally defaults to X11
    • This can be changed in the package if so desired, at least for now

@TingPing, It seems strange to suggest the use of X11 to work around the lack of SSD's in GNOME Wayland.
Perhaps there's a middle ground here that wouldn't meaningfully impact performance of JMP, while also requiring
the least implementation work on Jellyfin's part. After all, window decorations have been provided by the WM for well over 50 years now.

For the record, JMP also works totally fine on KDE, Sway, etc.: it's got the title bar, window decorations, the works. Would there maybe be something GNOME-specific to apply here as a patch?

from jellyfin-media-player.

TingPing avatar TingPing commented on May 17, 2024

You implement CSD. That is all you can do. Again Qt surely has wigetry for this. Just need a close button really if a titlebar isn't important.

from jellyfin-media-player.

techtino avatar techtino commented on May 17, 2024

Qt supports client side decorations for sure.

See here:
https://wiki.archlinux.org/title/Uniform_look_for_Qt_and_GTK_applications#Qt_apps_run_on_GNOME_Wayland_have_a_non-matching_window_decoration_look,_even_after_setting_a_Qt_theme

Can even get it to match adwaita's title bar if you want.

For some reason the QT in flatpak doesn't do this at all. AUR package obeys the system QT ofc so it works.

from jellyfin-media-player.

sourpatched avatar sourpatched commented on May 17, 2024

Another comment from someone was to use sudo flatpak override --nosocket=wayland com.github.iwalton3.jellyfin-media-player command. Worked for me

from jellyfin-media-player.

TingPing avatar TingPing commented on May 17, 2024

I've simply disabled Wayland support on the flathub package. If upstream ever wants to support it let me know to re-enable it.

from jellyfin-media-player.

julianschacher avatar julianschacher commented on May 17, 2024

I think this issue can be closed.
After updating the Jellyfin Media Player Flatpak yesterday, I noticed that I now get a titlebar while running natively under Gnome Wayland (not XWayland).

from jellyfin-media-player.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.