Hello! Thanks you very much for taking this project! You're doing an amazing job updating this app.
This issue is more a mix between a problem and an enhancement.
If you're using tiling manager like i3 and/or bspwm (on linux), you can set rules to automatically assign application on specific desktops.
This require the wm_class info to be defined inside the app.
This is a common requirement, most of the app (all of them?) have this data set on linux.
bspc rule -a Vlc desktop=^2
bspc rule -a messengerfordesktop desktop=^6
The problem is that the Messenger app doesn't have the requirements, so the rule can't work.
_NET_WM_USER_TIME(CARDINAL) = 74813799
_NET_WM_DESKTOP(CARDINAL) = 5
WM_NORMAL_HINTS(WM_SIZE_HINTS):
program specified location: 20, 62
WM_NAME(UTF8_STRING) = "Messenger"
_NET_WM_NAME(UTF8_STRING) = "Messenger"
_NET_WM_ICON(CARDINAL) =
XdndAware(ATOM) = BITMAP
_MOTIF_WM_HINTS(_MOTIF_WM_HINTS) = 0x2, 0x0, 0x1, 0x0, 0x0
_NET_WM_WINDOW_TYPE(ATOM) = _NET_WM_WINDOW_TYPE_NORMAL
_NET_WM_PID(CARDINAL) = 2539
WM_LOCALE_NAME(STRING) = "en_US.UTF-8"
WM_CLIENT_MACHINE(STRING) = "hostname"
WM_PROTOCOLS(ATOM): protocols WM_DELETE_WINDOW, _NET_WM_PING
XdndAware(ATOM) = BITMAP
_MOTIF_DRAG_RECEIVER_INFO(_MOTIF_DRAG_RECEIVER_INFO) = 0x6c, 0x0, 0x5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x10, 0x0, 0x0, 0x0
_NET_WM_NAME(UTF8_STRING) = "Multimedia Player VLC"
WM_CLIENT_LEADER(WINDOW): window id # 0x2e00005
WM_WINDOW_ROLE(STRING) = "vlc-main"
_NET_WM_PID(CARDINAL) = 2835
_NET_WM_WINDOW_TYPE(ATOM) = _NET_WM_WINDOW_TYPE_NORMAL
_MOTIF_WM_HINTS(_MOTIF_WM_HINTS) = 0x3, 0x3e, 0x7e, 0x0, 0x0
WM_PROTOCOLS(ATOM): protocols WM_DELETE_WINDOW, WM_TAKE_FOCUS, _NET_WM_PING, _NET_WM_SYNC_REQUEST
WM_NAME(STRING) = "Multimedia Player VLC"
WM_LOCALE_NAME(STRING) = "en_US.UTF-8"
WM_CLASS(STRING) = "vlc", "Vlc"
WM_HINTS(WM_HINTS):
Client accepts input or input focus: True
Initial state is Normal State.
bitmap id # to use for icon: 0x2e00012
window id # of group leader: 0x2e00005
WM_NORMAL_HINTS(WM_SIZE_HINTS):
user specified location: 20, 62
program specified location: 20, 62
user specified size: 1880 by 998
program specified size: 1880 by 998
program specified minimum size: 489 by 368
window gravity: NorthWest
WM_CLIENT_MACHINE(STRING) = "hostname"
WM_COMMAND(STRING) = { "vlc" }