-
mirux
not sure if pasting an application error here is ok or should I open an issue?
-
mirux
## Versions - OS: Windows 10.0.19045 - GTK: 4.18.6 - PyGObject: 3.52.3 - GLib: 2.84.3 - Adw: 1.7.5 - libsoup: 3.6.5 - python-nbxmpp: 6.2.0 - Gajim: 2.3.2 ## Traceback ``` Traceback (most recent call last): File "C:/msys64/home/appveyor/gajim/win/_build_root/mingw64/lib/python3.12/site-packages/gajim/gtk/control.py", line 586, in _request_history File "C:/msys64/home/appveyor/gajim/win/_build_root/mingw64/lib/python3.12/site-packages/gajim/gtk/control.py", line 559, in _request_messages File "C:/msys64/home/appveyor/gajim/win/_build_root/mingw64/lib/python3.12/site-packages/gajim/gtk/control.py", line 106, in contact AssertionError
-
cal0pteryx
mirux: a way to reproduce this would be nice :) how did this happen?
-
mirux
good point, I cant remember which exact action
-
mirux
trying to remember/reproduce, sry, no more info atm
-
mesonium
Screw pixbuf, just do `picture.set_file(Gio.File.new_for_path(filepath))` and all the performance bottlenecks are gone :D
-
mesonium
it's now as fluent as with the color tiles before
-
mesonium
(called in a thread though)
-
cal0pteryx
Picture loads the file as-is into ram? Or does it convert it to the required size on the fly?
-
mesonium
https://docs.gtk.org/gtk4/enum.ContentFit.html > Scale the content to fit the allocation, while taking its aspect ratio in consideration. I get it scales it automatically using this option
-
lovetox
mesonium: you should not call any gtk operations in a thread
-
mesonium
lovetox, yes, I noticed that right now, due to crashes.
-
lovetox
Gtk is not thread safe
-
lovetox
And loading a file needs no python thread because it offers a async api
-
lovetox
So simply assign the bytes to the picture on the callback
-
mesonium
like we do in Gajim, right?
-
lovetox
Somewhere yes
-
lovetox
But maybe you need some kind of queue
-
lovetox
Because calling async api on 1000 files at the same time will probably reach some glib task or thread limit
-
lovetox
You could also have a file loading thread that passes the bytes with idle_add
-
lovetox
Though also this has limits if you call 1000 times idle_add in the same mainloop iteration, the next iteration will still block
-
mesonium
alright, thanks, I will need some time to think about it and try things out.
-
lovetox
Also I think this will create a memory problem for many files, as I never seen any memory released, maybe check that
👍 1 -
bot
wurstsalat pushed 1 commits to branch gajim/master perf: Preferences: Load plugin manifests in idle fashion to avoid blocking the UI - https://dev.gajim.org/gajim/gajim/-/commit/9d8e36aa29bd53df1d0c5eef8ac9b7795b7ade9b
-
Link Mauve
Hi, I just upgraded to Gajim 2.3.2, but I get a log of “2025-07-08 20:14:47 (E) nbxmpp.stream (jabber.fr) Unable to connect to jabber.fr” and I can’t figure out how to open the XML console any more.
-
Patrick
Windows 11. Just upgraded to 2.3.2. Previous version used to blink/flash the chat window when I receive a new message. I can't seem to find where to make 2.3.2 flash the window.
-
lovetox
Link Mauve, ctrl + shift + x, or preferences -> advanced -> xml xonsile✎ -
lovetox
Link Mauve, ctrl + shift + x, or preferences -> advanced -> xml console ✏
-
lovetox
Patrick, it was missed, it comes back in the next version
👍 1 -
Patrick
> Patrick, it was missed, it comes back in the next version thank you for this information :) ↺
-
Link Mauve
lovetox, thanks, but it says the same error with no additional info: 2025-07-08 20:39:16 (E) nbxmpp.stream | (jabber.fr) Unable to connect to jabber.fr
-
lovetox
you need to run gajim -v
-
Link Mauve
Ah thanks, I didn’t have the Tor daemon running: 2025-07-08 20:46:25 (I) nbxmpp.connection (jabber.fr) Connecting to proxy ([::1]:9050) 2025-07-08 20:46:25 (I) nbxmpp.connection (jabber.fr) Connect Error: g-io-error-quark: Could not connect to proxy server 127.0.0.1: Connection refused (39)
-
Link Mauve
It might be useful to display this information to the user, if the proxy is failing rather than the connection to the server.
👍 1 -
bot
wurstsalat pushed 2 commits to branch gajim/master cfix: Certificate/device info: Make strings translatable - https://dev.gajim.org/gajim/gajim/-/commit/02b572d56cdc4b648d305c6524c84d05369a015e imprv: Group chat management: Use Adw widgets - https://dev.gajim.org/gajim/gajim/-/commit/f18309c03009ebf4b4614842f09318d91e6e1196
-
The Wild
> mesonium: wow! Your work seems great. Simple, fluid. I know people who will be very enthusiastic about thi. I know a friend for whom its a big criterion to have this tyle of feature (media viewer) > > Thanks > Always happy to see how much people in the FOSS communities are willing to put work into ❤️ ↺
-
bot
wurstsalat pushed 1 commits to branch gajim/master fix: Preview: Guard for errors while trying to create thumbnails - https://dev.gajim.org/gajim/gajim/-/commit/143a7c2be7ae9037cc18986a645c3cf03b3a9049
-
bot
wurstsalat pushed 1 commits to branch gajim/master fix: Preview: Guard file access checks - https://dev.gajim.org/gajim/gajim/-/commit/255e4fe3ba5460ba623bd67bc1e4f7a9f8613d9e
-
bot
wurstsalat pushed 1 commits to branch gajim/master fix: Preview: Guard for more errors while trying to save file - https://dev.gajim.org/gajim/gajim/-/commit/94986a1ccd888012a3b058018690a61d8181338a
-
Link Mauve
cal0pteryx, why do you copy the file rather than moving it there, or even saving it in place?
-
cal0pteryx
because it's "Save as"
-
Link Mauve
Ah, so you already saved the file in some internal Gajim directory, and then just copy it? Gotcha!
-
cal0pteryx
it's always saved in "downloads", but "Save as" works as a shortcut to save in a different place
-
Link Mauve
Thanks for the explanation. :)
-
cal0pteryx
Surprisingly many ways for things to go wrong :D
-
Link Mauve
Yeah. ^^'
-
Link Mauve
Especially in languages which don’t force you to handle exceptions.