gajim issueshttps://dev.gajim.org/gajim/gajim/-/issues2024-02-12T19:59:16Zhttps://dev.gajim.org/gajim/gajim/-/issues/11754Adhoc: Add resource chooser into AdHoc Wizard2024-02-12T19:59:16ZPhilipp Höristphilipp@hoerist.comAdhoc: Add resource chooser into AdHoc WizardThe dialog already receives a list of JIDs. Currently we only select the first one.
A resource chooser should be added to choose between different resource.The dialog already receives a list of JIDs. Currently we only select the first one.
A resource chooser should be added to choose between different resource.https://dev.gajim.org/gajim/gajim/-/issues/11737Chat invites are silently ignored if receiving user is already present in chat2024-02-12T19:45:35Zdiode24Chat invites are silently ignored if receiving user is already present in chat* Gajim version 1.8.4
When a chat invite is sent to gajim user who is already present in the given chat, gajim will silently ignore the invite. This could cause confusion or frustration. I think it would be better if gajim shows a modif...* Gajim version 1.8.4
When a chat invite is sent to gajim user who is already present in the given chat, gajim will silently ignore the invite. This could cause confusion or frustration. I think it would be better if gajim shows a modified notification when the invited user is already present, such as "tom@example.com has invited you to chat@example.org, but you are already present there".
## Hypothetical scenario:
Tom: Hey, I'm sending you an invite to this chat that I think you will like.
Bob: Sure.
_Tom sends chat invite to Bob, and waits a few minutes. Bob has not responded or joined._
Tom: Hey Bob, did you receive that invite?
Bob: Nope.
_Frustration ensues and further attempts also fail. Eventually Tom resolves to just paste the link into the chat._
What Tom didn't know is that:
1. Bob is already present in the chat that he is being invited to under a nickname that Tom doesn't know about
2. Gajim silently ignores invites when the user is already present where invitedhttps://dev.gajim.org/gajim/gajim/-/issues/11298Mirror message actions menu entries within row context menu2024-02-11T22:03:25ZJean LouisMirror message actions menu entries within row context menu12:10 - Louis: Gajim developers, the copy function on right side with ellipsis is almost invisible. Do what people expect in general from other software, and put copy, quote, select messages on the right mouse button menu12:10 - Louis: Gajim developers, the copy function on right side with ellipsis is almost invisible. Do what people expect in general from other software, and put copy, quote, select messages on the right mouse button menuhttps://dev.gajim.org/gajim/gajim/-/issues/11752Make multi-message selection easier2024-02-11T11:05:53ZChristian JaegerMake multi-message selection easierSelecting multiple messages for copy-pasting is part of my normal workflow dealing with chat partners. Simple direct selection with the mouse went away due to the move away from a single textbox. The issues with the new approach I'm seei...Selecting multiple messages for copy-pasting is part of my normal workflow dealing with chat partners. Simple direct selection with the mouse went away due to the move away from a single textbox. The issues with the new approach I'm seeing:
- What I was doing doesn't work anymore, with no solution apparent on first sight.
- I didn't notice the sandwich menu on mouse over, or subconsciously ignored it because I wanted to do multi-cell selection not do something with the particular cell that brought up the menu.
- After pointed out to me in the chat, going through the motions is massively slower than before: it went from simple select (selection alone is enough for middle click into the target app, hence 1 step) to a 5+ step process for copying (mouse over, hit the sandwich menu (which is very narrow), hit the "select messages" menu entry, hit cursor key multiple times to extend the selection, hit copy)
## Description of the new feature
lovetox suggested to add a shortcut that enables multi-selection mode. That will reduce it down from the 5+ steps down to some fewer steps, but can't bring it back to 1 unless further changes are made.
My suggestion is:
- Activate multi-selection modes when the user clicks into a message then drags the mouse to other messages. Alternatively, when the user triple-clicks into a message then drags the mouse to other messages. Alternatively when the user holds down control then clicks into a message then drags the mouse to other messages. (Choose according to whether you want to keep some of those actions free for other uses, if there might be any.)
- Make the multi-selection an actual selection that can be copied via ctl-c or is in the X selection ready to be pased (the button to copy seems redundant and less practical to use).https://dev.gajim.org/gajim/gajim/-/issues/11748Add "Members" section to the roster of MUCs2024-02-02T09:24:32ZJonas SteinAdd "Members" section to the roster of MUCsOwners, Administrators, Participants are grouped, but "Members" are not shown in their group.
This would support moderating MUCs and give a better overview.Owners, Administrators, Participants are grouped, but "Members" are not shown in their group.
This would support moderating MUCs and give a better overview.https://dev.gajim.org/gajim/gajim/-/issues/11596Clicking a picture preview fails to open the default image viewer (Windows, A...2024-01-28T01:21:49ZFrank LeekClicking a picture preview fails to open the default image viewer (Windows, AppX)## Actual behavior
The Windows appX Gajim fails to display a picture when clicked on an inline preview.
## Expected behavior
The image is displayed in the default image viewer when clicked on an inline preview.
## Versions
* OS: Win...## Actual behavior
The Windows appX Gajim fails to display a picture when clicked on an inline preview.
## Expected behavior
The image is displayed in the default image viewer when clicked on an inline preview.
## Versions
* OS: Windows 11 (build 22621.2070)
* Gajim version: 1.8.0
* GTK version: 3.24.38
* Python-nbxmpp version: 4.3.1
## Steps to reproduce the problem
1. Open a random chat
1. Click on a pic preview
1. The default img viewer can't open it
in my case it's Windows Photos app, it shows an error message:
"the file has been moved or renamed" (translated from italian).
![Screenshot_2023-08-05_150218](/uploads/ba93c79a921b39486e11bdb746f50361/Screenshot_2023-08-05_150218.png)
The image property inspector point to a file that is:
C:\Users\frapox\AppData\Roaming\Gajim\downloads\RImBlUN_QOO9nd_Xtr1KTg_d58f03e56b2a29d739f67afce0e1b6fc193f4f49.jpg
![Screenshot_2023-08-05_150228](/uploads/646097d69f643888418a05877c3dff5c/Screenshot_2023-08-05_150228.png)
That of course doesn't exist because it should point to:
C:\Users\frapox\AppData\Local\Packages\2126Gajim.Gajim_cyk1dwtbfm75p\LocalCache\Roaming\Gajim\downloads
Where the file actually reside.https://dev.gajim.org/gajim/gajim/-/issues/11209Jump to last mention2024-01-26T07:22:42ZmesoniumJump to last mention## Description of the new feature
If you are mentioned, the background color of the number of unread messages in the chat list turns blue and the message, in which you are mentioned is highlighted as well.
However, if there have been ma...## Description of the new feature
If you are mentioned, the background color of the number of unread messages in the chat list turns blue and the message, in which you are mentioned is highlighted as well.
However, if there have been many unread messages in between, e.g. in a public MUC, scrolling up and searching the message may turn out cumbersome.
It would therefore be convenient if there were a button to jump the last message(s), where you have been mentioned.
Alternatively, the Matrix messenger Element has implemented this feature quiet nicely: Here it looks like Gajim's search panel, but lists only the messages, where you have been mentioned. Clicking on the message, like in Gajim's search results, automatically opens the corresponding message.https://dev.gajim.org/gajim/gajim/-/issues/11143TypeError: JingleFileTransfer.init() missing 1 required positional argument: ...2024-01-26T04:12:08ZLuciano RosaTypeError: JingleFileTransfer.init() missing 1 required positional argument: 'file_props'Hello.
I'm using gajim with openfire server.
I am not able to do direct file transfers. When I send some file, nothing happens, the other PC does not receive any notification. But sending messages is working normally.
I've already disabl...Hello.
I'm using gajim with openfire server.
I am not able to do direct file transfers. When I send some file, nothing happens, the other PC does not receive any notification. But sending messages is working normally.
I've already disabled all firewalls and already freed up the port on the router.
In the log file there is an error: "TypeError: JingleFileTransfer.__init__() missing 1 required positional argument: 'file_props'"[13092022-103407-debug.log](/uploads/47574339150584bceace0572fd3c4e17/13092022-103407-debug.log)https://dev.gajim.org/gajim/gajim/-/issues/11746Support calling on Windows2024-01-23T20:11:33ZJohnSupport calling on WindowsHi,
I am using Windows 10 Home and downloaded the latest version of Gajim via the Microsoft Store. It installed successfully. However in each of my 1:1 chats, both `Start Voice Call...` and `Start Video Call...` options are grayed. Whe...Hi,
I am using Windows 10 Home and downloaded the latest version of Gajim via the Microsoft Store. It installed successfully. However in each of my 1:1 chats, both `Start Voice Call...` and `Start Video Call...` options are grayed. When I go to Help > Features, there is a red X beside `Audio / Video Calls` saying: `Feature not available on Windows`. Currently, only Movim supports calling on Windows. Since Gajim is a fully featured client, I would like to make calls with Gajim using Windows. Can I make this a feature request please?
Thank youhttps://dev.gajim.org/gajim/gajim/-/issues/11745Support registration through invitation (XEP-0401, XEP-0445, XEP-0379)2024-01-19T19:54:20ZAdam StückSupport registration through invitation (XEP-0401, XEP-0445, XEP-0379)**Please note by far the quickest way to get a new feature is to file a Merge Request.**
## Description of the new feature
I'd like to request support for account-only, and account-and-subscription XMPP invitation links. Gajim already ...**Please note by far the quickest way to get a new feature is to file a Merge Request.**
## Description of the new feature
I'd like to request support for account-only, and account-and-subscription XMPP invitation links. Gajim already supports creating account-only invite links through Ad-hoc commands, however cannot interpret them. This is part of the [Modern XMPP](https://docs.modernxmpp.org) client guidelines.
more info: https://docs.modernxmpp.org/client/invites/
## Scenario
I run an invite-only Prosody server for family and friends, and when onboarding a new user on desktop, my current options:
1. Manually create the user account, generate a password for them, securely send this password somehow.
2. Temporarily allow user account registrations.
Ideally I'd like to be able to generate an invite link, send it to them using e.g. [xmpp.link](https://xmpp.link/#romeo@example.org), and they're good to create their account. This works nicely in Conversations.https://dev.gajim.org/gajim/gajim/-/issues/11345ValueError: Trying to add GroupchatContact, but contact already exists2024-01-19T19:38:41ZJean LouisValueError: Trying to add GroupchatContact, but contact already exists## Versions:
- OS: Parabola GNU/Linux-libre rolling (n/a)
- GTK Version: 3.24.35
- PyGObject Version: 3.42.2
- GLib Version : 2.74.0
- python-nbxmpp Version: 3.2.5
- Gajim Version: 1.5.4
## Traceback
```
Traceback (most recent call last...## Versions:
- OS: Parabola GNU/Linux-libre rolling (n/a)
- GTK Version: 3.24.35
- PyGObject Version: 3.42.2
- GLib Version : 2.74.0
- python-nbxmpp Version: 3.2.5
- Gajim Version: 1.5.4
## Traceback
```
Traceback (most recent call last):
File "/usr/lib/python3.10/site-packages/gajim/gtk/application.py", line 384, in _handle_local_options
self._startup()
File "/usr/lib/python3.10/site-packages/gajim/gtk/application.py", line 269, in _startup
MainWindow()
File "/usr/lib/python3.10/site-packages/gajim/gtk/main.py", line 153, in __init__
self._load_chats()
File "/usr/lib/python3.10/site-packages/gajim/gtk/main.py", line 1216, in _load_chats
self._chat_page.load_workspace_chats(workspace_id)
File "/usr/lib/python3.10/site-packages/gajim/gtk/chat_page.py", line 266, in load_workspace_chats
self.add_chat_for_workspace(workspace_id,
File "/usr/lib/python3.10/site-packages/gajim/gtk/chat_page.py", line 235, in add_chat_for_workspace
client.get_module('Contacts').add_group_chat_contact(jid)
File "/usr/lib/python3.10/site-packages/gajim/common/modules/contacts.py", line 149, in add_group_chat_contact
raise ValueError(f'Trying to add GroupchatContact {jid}, '
ValueError: Trying to add GroupchatContact acihej@groups.xmpp.club, but contact already exists as acihej@groups.xmpp.club (xmpp.club) (in roster: True)
```
## Steps to reproduce the problem
...https://dev.gajim.org/gajim/gajim/-/issues/11393History is missing if one is joined a groupchat with 2 accounts2023-12-26T13:28:03ZPhilipp Höristphilipp@hoerist.comHistory is missing if one is joined a groupchat with 2 accountsWhen someone is joined with two accounts the same groupchat in Gajim, history is not downloaded for both accounts.
The problem seems to be that the database table who stores the last mam-id is not account specific.When someone is joined with two accounts the same groupchat in Gajim, history is not downloaded for both accounts.
The problem seems to be that the database table who stores the last mam-id is not account specific.https://dev.gajim.org/gajim/gajim/-/issues/11729Per-MUC / Per-Contact settings for automatic image preview2023-12-24T10:41:30Ztest4dPer-MUC / Per-Contact settings for automatic image preview**Please note by far the quickest way to get a new feature is to file a Merge Request.**
## Description of the new feature
I think there should be a setting that allows the user to disable and enable automatic image previews for each us...**Please note by far the quickest way to get a new feature is to file a Merge Request.**
## Description of the new feature
I think there should be a setting that allows the user to disable and enable automatic image previews for each user or MUC that overrides the global setting. I have plenty of MUCs that gajim considers 'public' that I do not mind seeing automatic previews from, but still generally would prefer the click-to-preview way of doing things.https://dev.gajim.org/gajim/gajim/-/issues/11719No password prompt with multiple accounts without saved password2023-12-19T08:36:21ZBoyan AnastasovNo password prompt with multiple accounts without saved password
## Versions
- OS: Fedora 39
- Gajim version: gajim-1.7.3-4.fc39.noarch
- GTK version: gtk3-3.24.38-3.fc39.x86_64
- Python-nbxmpp version: python3-nbxmpp-4.3.1-3.fc39.noarch
## Steps to reproduce the problem
1. Start gajim.
...
## Versions
- OS: Fedora 39
- Gajim version: gajim-1.7.3-4.fc39.noarch
- GTK version: gtk3-3.24.38-3.fc39.x86_64
- Python-nbxmpp version: python3-nbxmpp-4.3.1-3.fc39.noarch
## Steps to reproduce the problem
1. Start gajim.
2. Password prompt for the first account appears.
3. Enter password but don't press the Login button until 5-10sec
(simulate slow password entering to trigger the problem).
## Expected behavior
Opening prompt for the second (or any other account if you have more).
## Actual behavior
If you are fast enough there will appear second password prompt,
otherwise you have to click to the account icon in the workspace and
click on the Offline button to change it to Available. Then you can
enter password in the opened prompt.
In console debug for the second account I see:
```
12/07/2023 11:09:22 (I) nbxmpp.stream (second_server) Execute state machine
12/07/2023 11:09:22 (I) nbxmpp.stream (second_server) Set state: StreamState.PROCEED_WITH_AUTH
12/07/2023 11:09:22 (I) nbxmpp.sasl (second_server) Available mechanisms: {'PLAIN', 'SCRAM-SHA-1'}
12/07/2023 11:09:22 (I) nbxmpp.sasl (second_server) Chosen auth mechanism: SCRAM-SHA-1
12/07/2023 11:09:22 (I) nbxmpp.stream (second_server) Set state: StreamState.AUTH_FAILED
12/07/2023 11:09:22 (I) nbxmpp.stream (second_server) Execute state machine
12/07/2023 11:09:22 (I) nbxmpp.stream (second_server) Set error: StreamError.SASL, no-password, None
12/07/2023 11:09:22 (I) nbxmpp.stream (second_server) Set state: StreamState.DISCONNECTING
12/07/2023 11:09:22 (I) nbxmpp.smacks (second_server) Close session
12/07/2023 11:09:22 (I) nbxmpp.connection (second_server) Remove keepalive timer
12/07/2023 11:09:22 (I) nbxmpp.connection (second_server) Set Connection State: TCPState.DISCONNECTING
12/07/2023 11:09:22 (I) nbxmpp.connection (second_server) Shutdown output
....
....
12/07/2023 11:09:26 (I) nbxmpp.http Request(140323764263680): Set Error: TIMEOUT
12/07/2023 11:09:26 (I) nbxmpp.http Request(140323764263680): Cancel requested
12/07/2023 11:09:26 (I) nbxmpp.http Request(140323764263680): Message finished
12/07/2023 11:09:26 (I) nbxmpp.http Request(140323764263680): HTTP version: SOUP_HTTP_1_1
12/07/2023 11:09:26 (I) nbxmpp.http Request(140323764263680): Request response received
12/07/2023 11:09:26 (I) nbxmpp.http Request(140323764263680): Set Failed: CANCELLED
12/07/2023 11:09:26 (I) nbxmpp.addresses Failed to retrieve host-meta file: <HTTPRequestError.TIMEOUT: 5>
12/07/2023 11:09:26 (I) nbxmpp.addresses Signal: resolved
```https://dev.gajim.org/gajim/gajim/-/issues/11497xml console account filter produces undesired new lines2023-12-18T15:08:40Zdiode24xml console account filter produces undesired new linesUsing the account filter in the xml console causes the console to print new lines (newlines) continually, as I assume these are not filtered out of the input.Using the account filter in the xml console causes the console to print new lines (newlines) continually, as I assume these are not filtered out of the input.https://dev.gajim.org/gajim/gajim/-/issues/11720AttributeError: 'NoneType' object has no attribute 'set_password'2023-12-16T15:41:14Zdiode24AttributeError: 'NoneType' object has no attribute 'set_password'## Versions:
- OS: Ubuntu 23.10 23.10 (mantic)
- GTK Version: 3.24.38
- PyGObject Version: 3.46.0
- GLib Version : 2.78.0
- libsoup Version: 3.4.2
- python-nbxmpp Version: 4.5.3
- Gajim Version: 1.8.4
## Traceback
```plaintext
Traceba...## Versions:
- OS: Ubuntu 23.10 23.10 (mantic)
- GTK Version: 3.24.38
- PyGObject Version: 3.46.0
- GLib Version : 2.78.0
- libsoup Version: 3.4.2
- python-nbxmpp Version: 4.5.3
- Gajim Version: 1.8.4
## Traceback
```plaintext
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/gajim/common/client.py", line 559, in connect
self._client.set_password(password)
File "/usr/lib/python3/dist-packages/nbxmpp/client.py", line 236, in set_password
self._sasl.set_password(password)
^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'set_password'
```
## Steps to reproduce the problem
I don't know. I had gajim viewing a private message via muc. I was switched to a different application. I switched back to gajim with alt-tab and I briefly saw the private message, followed by gajim showing the "home screen" of my workspace, and the error window. This might have been related to an account that I have enabled that currently has its server down. Maybe I had tried to disable this account before the bug occurred, I can't remember. (currently, accounts will not disable when server is unreachable)https://dev.gajim.org/gajim/gajim/-/issues/9126Doesn't wait for password manager to finish2023-12-16T15:39:49ZCharlemagne LasseDoesn't wait for password manager to finish## Versions
- OS: Debian buster amd64
- Gajim version: 1.0.2-1
- GTK version: 3.22.30-1
- Python-nbxmpp version: 0.6.5+git20180501-1
## Steps to reproduce the problem
1. Boot my device in the morning (gajim is in autostart)
...## Versions
- OS: Debian buster amd64
- Gajim version: 1.0.2-1
- GTK version: 3.22.30-1
- Python-nbxmpp version: 0.6.5+git20180501-1
## Steps to reproduce the problem
1. Boot my device in the morning (gajim is in autostart)
1. Password manager prompt (kwallet5) opens (see #8875)
1. I make sure that the LAN/WLAN connection is established (see #8876)
1. enter my password (yes this and the previous step takes a while)
## Expected behavior
Gajim waits until I have finished entering my password for the password manager and then reads the jabber password from it + connects to the server with it
## Actual behavior
Gajim opens its own password prompt while I enter my password in the password manager prompt. It also doesn't close when I finished entering my password in the prompt for the password manager. Also closing the prompt afterwards + setting the status offline and later to online doesn't fix this problem. Problem will no longer try to get the password from the password manager.
I have to close gajim again and then start it up manually to re-enable the password manager supporthttps://dev.gajim.org/gajim/gajim/-/issues/11716Alt + numeric keypad changes chat instead of creating alt-code smilies alone2023-12-16T15:34:12ZGunnar Von DonaulandenAlt + numeric keypad changes chat instead of creating alt-code smilies alone## Versions
- OS: Win 10
- Gajim version: 1.8.4
- GTK version: 3.24.39
- Python-nbxmpp version: 4.5.3
## Steps to reproduce the problem
1. Select textinputfield
2. Press alt (hold) and for example 1 on numeric keypad (cre...## Versions
- OS: Win 10
- Gajim version: 1.8.4
- GTK version: 3.24.39
- Python-nbxmpp version: 4.5.3
## Steps to reproduce the problem
1. Select textinputfield
2. Press alt (hold) and for example 1 on numeric keypad (creates "☺") i just saw the smiley gets translated here to actual emojis, i refer to alt-codes (https://en.wikipedia.org/wiki/Alt_code)
3. Press alt (hold) and for example 3 on numeric keypad (creates "♥")
4. while doing so, another chat recipient will be selected as Alt+numeric keypad also seems to be a quickchange-keybinding
## Expected behavior
Chat will not change recipient when pressing alt (hold) and a number on numeric keypad but only create the smiley
## Actual behavior
chat recipient will be changed in addition to creation of the smileyhttps://dev.gajim.org/gajim/gajim/-/issues/11713Hangs when removing avatar2023-12-16T15:23:19ZNicocoHangs when removing avatar**Please first check if another issue has been opened for your problem**
## Versions
- OS: debian bookworm
- Gajim version: 25466559b
## Steps to reproduce the problem
1. Go to account settings
1. Edit profile
1. Click on t...**Please first check if another issue has been opened for your problem**
## Versions
- OS: debian bookworm
- Gajim version: 25466559b
## Steps to reproduce the problem
1. Go to account settings
1. Edit profile
1. Click on the trash bin icon to delete the avatar
1. Click save
## Expected behavior
The window should close.
## Actual behavior
The gear animation stays there until I manually close the window.
The console shows this warning:
> 2023-12-05T14:33:20 (W) gajim.gtk.profile Unable to get access model for urn:xmpp:avatar:data: Error from test@localhost: item-not-found
BTW, it is possible to "remove the avatar" while no avatar is set, which is a bit weird too.https://dev.gajim.org/gajim/gajim/-/issues/11728ValueError on disabling an account2023-12-16T15:17:46ZGreg SmallsValueError on disabling an account**Please first check if another issue has been opened for your problem**
## Versions
- OS: Linux
- GTK version: 3.
- Gajim version: 1.8.1
- Python-nbxmpp version: 4.5.3
## Steps to reproduce the problem
1. Disable a logge...**Please first check if another issue has been opened for your problem**
## Versions
- OS: Linux
- GTK version: 3.
- Gajim version: 1.8.1
- Python-nbxmpp version: 4.5.3
## Steps to reproduce the problem
1. Disable a logged in account from Modify Accounts window
2. quit Gajim
Also,
1. Disable a logged in account and from Modify Accounts window
2. enable the account
3. quit Gajim
## Expected behavior
Account should be disabled.
## Actual behavior
Account is disabled but following traceback is printed when Gajim is quit (not immediately after the disabling)
```
(E) nbxmpp.connection (jabb3r.de) Error while executing data-received:
Traceback (most recent call last):
File "$HOME/Documents/gajim/env/lib/python3.10/site-packages/nbxmpp/tcp.py", line 284, in _on_read_async_finish
self.notify('data-received', data)
File "$HOME/Documents/gajim/env/lib/python3.10/site-packages/nbxmpp/util.py", line 454, in notify
func(self, signal_name, *args, **kwargs)
File "$HOME/Documents/gajim/env/lib/python3.10/site-packages/nbxmpp/client.py", line 565, in _on_data_received
self._dispatcher.process_data(data)
File "$HOME/Documents/gajim/env/lib/python3.10/site-packages/nbxmpp/dispatcher.py", line 256, in process_data
self.notify('stream-end', self._parser.streamError)
File "$HOME/Documents/gajim/env/lib/python3.10/site-packages/nbxmpp/util.py", line 454, in notify
func(self, signal_name, *args, **kwargs)
File "$HOME/Documents/gajim/env/lib/python3.10/site-packages/nbxmpp/client.py", line 520, in _on_stream_end
self._con.shutdown_input()
File "$HOME/Documents/gajim/env/lib/python3.10/site-packages/nbxmpp/tcp.py", line 390, in shutdown_input
self._check_for_shutdown()
File "$HOME/Documents/gajim/env/lib/python3.10/site-packages/nbxmpp/tcp.py", line 383, in _check_for_shutdown
self._finalize('disconnected')
File "$HOME/Documents/gajim/env/lib/python3.10/site-packages/nbxmpp/tcp.py", line 408, in _finalize
self.notify(signal_name)
File "$HOME/Documents/gajim/env/lib/python3.10/site-packages/nbxmpp/util.py", line 454, in notify
func(self, signal_name, *args, **kwargs)
File "$HOME/Documents/gajim/env/lib/python3.10/site-packages/nbxmpp/client.py", line 492, in _on_disconnected
self.notify('disconnected')
File "$HOME/Documents/gajim/env/lib/python3.10/site-packages/nbxmpp/util.py", line 454, in notify
func(self, signal_name, *args, **kwargs)
File "$HOME/Documents/gajim/gajim/common/client.py", line 289, in _on_disconnected
self.notify('state-changed', SimpleClientState.DISCONNECTED)
File "$HOME/Documents/gajim/gajim/common/helpers.py", line 1384, in notify
self._callbacks[signal_name].remove(weak_method)
ValueError: list.remove(x): x not in list
```