Gajim - 2024-11-05


  1. hannibal

    diane: looks like your theme is broken. The light/dark switch in Gajim or of the system (if system was selected in Gajim), should change the colors immediately

  2. diane

    Thanks hannibal I'll have to dig around more.

  3. roughnecks

    if you disable an account and then re-enable it, you lose pinned room and also workspaces setting (like which rooms are in which workspace)

  4. roughnecks

    1.9.5 Windows

  5. lovetox

    Yes not a bug

    🤔 2
  6. cal0pteryx

    roughnecks: there is a merge request waiting to fix that ;)

    👍 3
  7. debacle

    Would be nice to store workspaces and pinning in a private PEP node, so that Gajim at home and at work have that synchronized.

    👍 3
  8. debacle does use pinning a lot, but only one workspace for now

  9. Kris

    > Would be nice to store workspaces and pinning in a private PEP node, so that Gajim at home and at work have that synchronized. 👍

  10. lovetox

    Sounds easy, is sadly not trivial

  11. roughnecks

    is this also to be expected?

  12. roughnecks

    https://xmpp.woodpeckersnest.space/file_share/yJIV5TUHTZq1ImnbdKyuaKwt/ecf20f0d-0405-4bfe-a176-4717e577b243.png

  13. roughnecks

    window heigth

  14. meson

    when I try to run `python gajim/gtk/builder.py` I get `ImportError: cannot import name 'TYPE_CHECKING' from partially initialized module 'typing' (most likely due to a circular import) (/usr/lib64/python3.13/typing.py)`

  15. cal0pteryx

    What are you trying to achieve by running builder.py?

  16. meson

    I've confused in the rush

    🤦 1😸 1
  17. meson

    Which python version does the windows build use?

  18. cal0pteryx

    meson: the latest from msys

  19. cal0pteryx

    Should be 3.11.10

    👍 1
  20. danielstein

    > Would be nice to store workspaces and pinning in a private PEP node, so that Gajim at home and at work have that synchronized. 👍

  21. sch

    Does Gajim support MIX group chat?

  22. lovetox

    No

    👍 1
  23. lovetox

    Meson please make the python change against master

    👍 1
  24. bot

    lovetox pushed 1 commits to branch gajim/master refactor: Remove obsolete code - https://dev.gajim.org/gajim/gajim/-/commit/fab432add7f0efacb32f998a9aec360ecea33911

  25. nomehacenada

    > There is a menu above it that shows you sort option Could you provide more details? I can't find any sort option for chats nor the possibility to pin some contacts to top. I only see all of them in alphabetic order

  26. Kris

    are you maybe on an old version?

  27. Kris

    the current version has a pin option

  28. nomehacenada

    1.3.3

  29. lovetox

    nomehacenada, this comment talked about the roster, not chats

  30. nomehacenada

    > nomehacenada, this comment talked about the roster, not chats Ah

  31. nomehacenada

    I'm seeing that there's 1.9.5 How come i got 1.3.3 installed on mint recently

  32. meson

    cal0pteryx: create_thumbnail always saves previews in the png format, but the thumbnails are stored with their original suffix. Any reasons not to change the suffic to fixed .png?

  33. meson

    cal0pteryx: create_thumbnail always saves previews in the png format, but the thumbnails are stored with their original suffix. Any reasons not to change the suffic to always .png?

  34. lovetox

    I did that and forgot to change the prefix maybe

  35. lovetox

    I did that and forgot to change the suffix maybe

  36. meson

    If this were now corrected, the cache folder would needed to be cleared once?

  37. nomehacenada

    > I'm seeing that there's 1.9.5 > How come i got 1.3.3 installed on mint recently Ah, ubuntu 22.04, I see :(

  38. meson

    Talking about these two code locations https://dev.gajim.org/gajim/gajim/-/blob/gtk4/gajim/common/util/image.py?ref_type=heads#L130 https://dev.gajim.org/gajim/gajim/-/blob/gtk4/gajim/common/util/preview.py?ref_type=heads#L70

  39. lovetox

    thanks should be fied

    👍 1
  40. lovetox

    thanks should be fixed

  41. lovetox

    nomehacenada, you can download the most current version via flathub

  42. nomehacenada

    Yes, true. I may try that if it lets me pin chats and sort by last message

  43. lovetox

    hannibal, switch to something different then the system theme, does also not work for me anymore on the newest ubuntu

  44. lovetox

    my theme is Yaru-dark it seems this theme does not support any light color

  45. lovetox

    if i set it to Yaru, then there is a switch in GTK inspector "Dark Variant" if i switch that it correctly switches between light and dark

  46. lovetox

    the same button does nothing for Yaru-dark

  47. lovetox

    crazy, i cannot even look at the light theme after using years dark

  48. lovetox

    it hurts my eyes

  49. meson

    > Gajim is currently migrating from GTK3 to GTK4. 🔧 GTK is Gajim's user interface toolkit. It provides building blocks, like windows, buttons and labels. 🧩 Read more here: https://fosstodon.org/@gajim/113426619160581769 in the current gtk4 branch: do I need to enable something to make nickname completion work?

  50. meson

    there's no popup for me if I hit tab

  51. lovetox

    type @

  52. meson

    nice :)

  53. meson

    there's a white space missing after the " , " :p

  54. lovetox

    hannibal, diane, i found out the problem, you need to set a system theme that does not have a -dark prefix

  55. lovetox

    as these system themes simply do not support light style

  56. lovetox

    so changing the option in gajim does nothing

  57. lovetox

    > there's a white space missing after the " , " :p fixed

  58. diane

    lovetox, I found if I set Dark Theme to system, and theme to default the topic box in a group chat would change color. But nothing else changes for me. There's quite possibly something missing I'd expect the widget backgrounds would change.

  59. lovetox

    its because your system os theme is set to something with prefix -dark

  60. lovetox

    are you on gnome?

  61. diane

    Debian testing with gnome 46.4

  62. diane

    I also just read the developing instructions and cloned the repository, I wonder if it's something like files are missing from the debian package

  63. lovetox

    download Tweaks, then you can see what theme is set

  64. hannibal

    lovetox, we had the problem with the dark theme already in ubuntu 22.04 https://dev.gajim.org/gajim/gajim/-/issues/10996#note_206262

  65. bot

    lovetox pushed 2 commits to branch gajim/master cq: Add black config - https://dev.gajim.org/gajim/gajim/-/commit/00d8cab18ce9bd90857e3bd13134f341d795eb8c cq: Format support scripts with black - https://dev.gajim.org/gajim/gajim/-/commit/c3a20e554012891f9fa44540cb145b1fc5901ba4

  66. meson

    I'm a little bit confused: > # Gio does also guess based on file content https://dev.gajim.org/gajim/gajim/-/blob/gtk4/gajim/common/util/preview.py?ref_type=heads#L204 `guess_mime_type(preview.orig_path, data)` https://dev.gajim.org/gajim/gajim/-/blob/gtk4/gajim/common/preview.py?ref_type=heads#L393 If I understand it correctly data presenets the thumbnail == png? if so, how would it help here to guess the correct mime type of the orig file?

  67. meson

    I'm a little bit confused: > # Gio does also guess based on file content https://dev.gajim.org/gajim/gajim/-/blob/gtk4/gajim/common/util/preview.py?ref_type=heads#L204 `guess_mime_type(preview.orig_path, data)` https://dev.gajim.org/gajim/gajim/-/blob/gtk4/gajim/common/preview.py?ref_type=heads#L393 If I understand it correctly data is of the thumbnail == png? if so, how would it help here to guess the correct mime type of the orig file?

  68. lovetox

    why would we want to know the mime-type of a thumbnail?

  69. lovetox

    we dont need to guess, if we store all thumbnails in png

  70. lovetox

    not sure why you think data is of the thumbnail

  71. lovetox

    the method is called _on_orig_load_finished()

  72. lovetox

    we load the bytes of the original file, meaning not the thumbnail

  73. lovetox

    ah i think you mislinked and you mean the method underneath

  74. lovetox

    hmm yeah thats a problem if we load just the thumb .. i need to look into if we then need the mime-type

    👍 1
  75. lovetox

    hm it doesnt matter anywhere

  76. lovetox

    we can basically set it to None when we just load the thumbnail

  77. meson

    perfect, confusion resolved

  78. lovetox

    because we dont really know what the mime-type will be, and im not inclined to load the original

  79. meson

    I ask bc I've written a frame extractor to generate previews of videos as a start before implementing the gtk4 media player:

  80. meson

    https://share.conversations.im/meeson_/Z7uj3tyXKHHDjAAf/Screenshot_20241105_230740.png

  81. meson

    Works, but the code will need a review definitely

  82. meson

    Good thing, it's not much

  83. lovetox

    i can get down with a frame extraktor for a preview picture, but having a media player in Gajim seems overdoing it

  84. meson

    lovetox, it's bascially ``` media_stream = Gtk.MediaFile.new_for_filename("video.mp4") video = Gtk.Video.new_for_media_stream(media_stream) video.set_autoplay(False) video.set_hexpand(True) video.set_vexpand(True) ````

  85. meson

    lovetox, it's bascially ``` media_stream = Gtk.MediaFile.new_for_filename("video.mp4") video = Gtk.Video.new_for_media_stream(media_stream) ````

  86. meson

    lovetox, it's bascially ``` media_stream = Gtk.MediaFile.new_for_filename("video.mp4") video = Gtk.Video.new_for_media_stream(media_stream) ```

  87. lovetox

    yes, for probably like a handful of formats

  88. lovetox

    and then people send videos with god know what encoding from their phones

  89. lovetox

    and we have 17 issues "I send a video but it does not play in Gajim"

  90. lovetox

    This GTK thing is just a proof of concept or not? its not trying to be a mediaplayer

  91. lovetox

    and it probably needs a shit tone of dependencies

  92. lovetox

    depending on what codecs you want to support

  93. meson

    🙃 Link told me yesterday that in the #gtk they were > talking about what the widget should be and what it currently is and how nobody is using it currently.

  94. lovetox

    what does that sentence tell me?

  95. meson

    :D

  96. Link Mauve

    lovetox, err, you will never support all formats people might use.

  97. Link Mauve

    Current phones like to use codecs you have to pay multiple companies and can’t really know which ones before you get sued.

  98. Link Mauve

    So no one really bothers with that.

  99. Link Mauve

    It’s usually fine to use whatever is supported by Gstreamer, and to let users open them in a different application if you can’t play it.

  100. lovetox

    not convincing

  101. lovetox

    if i offer a media player, users will think its a goal of Gajim to play videos

  102. lovetox

    and will report everything that does not work

  103. lovetox

    sorry, its one click, and it opens in your favourite media player

  104. Link Mauve

    If you make it clear why it isn’t working, just like web browsers do, it should be fine.

  105. lovetox

    why do i need to look at it in a 100x100 frame?

  106. Link Mauve

    What do you mean?

  107. lovetox

    i dont implement stuff "because i can"

  108. lovetox

    there needs to be a clear benefit

  109. lovetox

    i dont see it, its the same amount of clicks the user has to do

  110. lovetox

    we let them use a dedicated application, he will be more happy with that in any case

  111. Link Mauve

    You prefer to display a link and users can click on it to play the video? I think current chat software all try to make it look integrated into it.

  112. lovetox

    no we show a image preview

  113. lovetox

    and he can click the play button

  114. lovetox

    but it opens in another app

  115. Link Mauve

    So you still have to have all of the machinery to generate an image from a video, it isn’t much more to also display the video itself then.

  116. Link Mauve

    I know I personally prefer to use mpv for all of my videos, but most people I know don’t do that.

  117. lovetox

    ?! what do they do?

  118. lovetox

    even phone clients like conversations dont have a integrated video player

  119. Link Mauve

    Try literally any other phone client, such as WhatsApp, Signal, Telegram…

  120. lovetox

    not a single user i remember ever asked for a integrated video player

  121. lovetox

    you proposing this only because GTK provides a widget, not because it fills a need for someone

  122. lovetox

    can it playback GIF? because thats something people really want to play in the app

  123. Link Mauve

    I don’t think I proposed anything, but I also don’t know what people actually want, I’ve never done any user study on Gajim.

  124. Link Mauve

    I think GIF is done using GtkPicture instead, but also no one uses GIF any more, it’s always encoded as video nowadays.

  125. cal0pteryx

    there is a gif plugin in gstreamer rs plugins :D

  126. Link Mauve

    GIF means a short video without sound, nowadays.

  127. Link Mauve

    Right, if your distribution packages those plugins that should also work.

  128. cal0pteryx

    mine doesn't that's why I gave up on porting gajim's video preview for now. there is no gtk4 gstreamer widget I think apart from that in gstreamers rs plugins

  129. Link Mauve

    cal0pteryx, the GtkVideo widget is kind of that.

  130. lovetox

    true most gifs are now videos, giphy seems to use webp

  131. cal0pteryx

    but it doesn't allow for pipelines afaiu. I mean the video preview of your webcam in preferences, I didn't specify that

  132. cal0pteryx

    but generally regarding video preview for gajim's file preview: I'm all for integrating GTK's default video widget. if it's not a supported format, just put a label there and a button "No direct playback available. Click to open", done. it doesn't hurt and it's nice to have it integrated

  133. Link Mauve

    lovetox, webm*

  134. cal0pteryx

    most importantly, there is no media break, if you like to call it that. all actions stay within the app

  135. lovetox

    Link Mauve, hmm at least the fileextension is webp if you copy the link

  136. Link Mauve

    WebP can also do animations, but just like APNG it encodes every frame standalone, instead of taking advantage of the previous frame like real video formats.

  137. Link Mauve

    Most websites will encode “GIFs” to proper video formats to drastically reduce their weight.

  138. gooya

    I've seen websites autoplaying loading several mp4 files of 100 mb

  139. gooya

    I've seen websites autoplaying/loading several mp4 files of 100 mb

  140. gooya

    .

  141. meson

    Is there an easy way to add an a transparent play-button overlay onto an image button?

  142. meson

    Of the default file preview widget

  143. lovetox

    yes GtkOverlay

  144. meson

    Right, then I will go with the simple frame preview solution first for now only :) The video player - if it should come - can wait ;)

  145. lovetox

    meson, cal0pteryx , i rebased the branch and force pushed