Philipp Hörist
de4cd80b83
Make namedtuple local
2018-12-18 22:52:29 +01:00
Philipp Hörist
ced387e719
Remove legacy code
2018-12-18 22:49:07 +01:00
Philipp Hörist
7286f4286f
Add feature-discovered event
...
This lets us move more GUI code out of the common module
2018-12-18 22:41:06 +01:00
Philipp Hörist
89d9940933
Roster: Register our-show with lower priority
...
This event is used to shutdown the roster if we quit, it destroys all windows.
This should be run last because other objects like the ChatControl need a reference to the window to shutdown properly
2018-12-18 14:40:38 +01:00
Philipp Hörist
0ac52a390e
Allow handlers list to be modifed while iterating
2018-12-18 14:08:27 +01:00
Philipp Hörist
a6b8ecf6f5
Fix error when opening sign-in/out notification
2018-12-17 15:02:40 +01:00
Philipp Hörist
b449567600
Make copying text work with different layouts
...
This makes it possible so text can be copied from the conversation textview with other keyboard layouts than english
2018-12-17 14:49:50 +01:00
Philipp Hörist
841f12f75b
Fix mypy errors
2018-12-17 00:41:46 +01:00
Philipp Hörist
96edd79963
Handle PEP bookmarks notifications
...
- Handle PEP bookmark notifications
- On new bookmarks with the auto join flag set, join the MUC
- Dont merge private and pubsub bookmarks
- Only use pubsub if the conversion feature is announced
2018-12-17 00:36:45 +01:00
Philipp Hörist
19b0e73f44
Fix error on key press
...
Fixes #9471
2018-12-16 01:01:44 +01:00
Philipp Hörist
674ec48fa2
DBus: Show correct unread message number
...
Fixes #8362
2018-12-15 23:59:27 +01:00
Philipp Hörist
760645f5c3
Improve MUC notifications
...
- Play sound for received messages, if notify for all messages is activated
- Send system notifications on MUC messages
- Make notify for all the default in private MUCs
Fixes #9383
2018-12-15 23:37:44 +01:00
Philipp Hörist
dac5370780
Dont draw contact after selection change
...
This seems to be an old codepath, currently there is no need to redraw a contact on selection change
Fixes #9496
2018-12-14 21:39:58 +01:00
Philipp Hörist
5843827abc
Fix start chat menu action
...
Fixes #8275
2018-12-12 23:35:36 +01:00
Philipp Hörist
be420d44fc
Implement XEP-0411 Bookmarks Conversion
...
If bookmarks conversion is announced by the server:
- Dont merge bookmarks
- Only push to either private storage or pubsub
2018-12-10 22:30:45 +01:00
Philipp Hörist
4e814dabcf
Fix disabled join groupchat menu
...
When there are no bookmarks on the server the join groupchat menu
was disabled, preventing the user to open the join groupchat dialog
2018-12-10 22:30:37 +01:00
Philipp Hörist
6e30d3af64
Adapt to nbxmpp API changes
...
- Remove support for OAUTH2
- Remove insecure password dialog, its impossible now that a user can connect plain by mistake
- Refactor requesting the password
- Add possibility to delete passwords
2018-12-09 18:48:44 +01:00
Philipp Hörist
b8863e82be
MUC: Identify subject change correctly
...
Fixes #9491
2018-12-09 00:29:20 +01:00
Philipp Hörist
293156f670
Find correct contact on private message
...
get_contact() returns also a contact if only the bare jid matches,
which for private messages is the groupchat contact object.
2018-12-09 00:01:18 +01:00
Philipp Hörist
d129f5559a
DataFormWidget: Fix some UI issues
...
- Textview: Wrap text, set padding
- ListMultiTreeView: Align checkboxes to the right
- Add a adjustment element that sets default sizes on the columns
- Allow two new options 'form-width' and 'left-width' to customize sizes
2018-12-06 23:06:10 +01:00
Philipp Hörist
ace1113d02
Fix pylint errors
2018-12-05 21:40:12 +01:00
Philipp Hörist
a979874fa1
Sort imports
2018-12-05 17:05:29 +01:00
Philipp Hörist
e419f75217
Remove unused imports
2018-12-05 17:05:10 +01:00
Philipp Hörist
4968fe39e2
Correctly remove ping timeout
...
Fixes #9481
2018-12-05 17:03:34 +01:00
Philipp Hörist
62253c804a
Discover the bookmarks conversion server feature
2018-12-04 20:41:44 +01:00
Philipp Hörist
c2e2dd9a87
Fix MUC nick change
2018-12-04 19:43:55 +01:00
Philipp Hörist
86bbdd21fd
Encode resource with correct profile
...
Fixes #9465
2018-12-04 19:43:13 +01:00
Philipp Hörist
932377f533
Remove unused event
2018-12-04 19:32:13 +01:00
Philipp Hörist
700666b820
Refactor send timeouts
...
Fixes #9459
2018-12-04 19:29:32 +01:00
Philipp Hörist
78f439c611
Refactor disconnect code
...
Fixes #9467
2018-12-04 19:28:50 +01:00
Philipp Hörist
59855a6c8d
Determine delay timestamp correctly
...
- Check the from attr on the delay node to determine if its a user timestamp or from the server
- Dont use user timestamp for sorting
- Record the user timestamp in additional data so its saved to the database
Fixes #9444
2018-12-04 12:18:17 +01:00
Philipp Hörist
fd6dec1208
Handle presence without from attr correctly
...
Fixes #9472
2018-12-03 15:40:43 +01:00
Philipp Hörist
1d11e06647
Fix error when creating MUC
...
Fixes #9473
2018-12-03 14:17:46 +01:00
Philipp Hörist
3f2e3c6bb2
Better handle not available keyring backends
2018-12-01 21:46:58 +01:00
Philipp Hörist
432a4edbc1
Use custom dict for additional data
...
This makes it easier to retrive and store values
2018-11-30 23:05:15 +01:00
Philipp Hörist
91ebe37359
AccountsWindow: Fix back button
2018-11-27 21:04:13 +01:00
Philipp Hörist
f1ab9fb683
Fix connection resume
...
Fixes #9458
2018-11-27 19:23:34 +01:00
Andrey Gursky
f942e2c70f
Fix receipts for chat
...
This is a regression from e3050697
2018-11-27 02:17:25 +01:00
Philipp Hörist
5fa56684c7
Adapt to nbxmpp API changes
2018-11-25 20:02:20 +01:00
Philipp Hörist
cb05671254
Dont fail when importing plugin_i18n for tests
2018-11-21 21:44:19 +01:00
Philipp Hörist
35b5a4d7a9
Satisfy pylint/mypy
2018-11-20 23:06:27 +01:00
Philipp Hörist
6327679461
Refactor set_unset_urgency_hint()
2018-11-20 22:59:02 +01:00
Philipp Hörist
c97fddf0f8
Move PrivateChatControl into own module
2018-11-20 22:41:43 +01:00
Philipp Hörist
fa0f35da01
Fix opening links in MUC subject
...
The default GTK link handler does not work on Windows and Mac
Fixes #9453
2018-11-20 18:44:58 +01:00
Philipp Hörist
c8b5eb94a9
Remove unused imports
2018-11-20 16:16:30 +01:00
Philipp Hörist
15c3de2b4d
Add option to show chatstate in roster
...
- Preferences: Add options for display in banner, tab, roster
- This makes the chatstate Plugin obsolete
2018-11-20 15:32:01 +01:00
Philipp Hörist
b74468b9c3
Move chatstate css to default theme
...
This is needed so we can query the current chatstate colors in cellrenderers
2018-11-20 15:32:01 +01:00
Philipp Hörist
c61bd65607
Simplify PEP module inits
2018-11-20 15:32:01 +01:00
Marcin Mielniczuk
9d8b56bc0f
Refactor groupchat nick auto completion
2018-11-20 10:37:12 +01:00
Philipp Hörist
a00e8e3abb
Dont use deprecated GLib.glib_version
2018-11-20 00:04:41 +01:00
Philipp Hörist
e305069798
Fix receipts for MUC-PMs
2018-11-19 19:33:28 +01:00
Philipp Hörist
b5bd5f15f0
Dont check mam:2 compliance for error messages
2018-11-19 18:04:32 +01:00
Philipp Hörist
1504805575
Dont answer groupchat receipt requests
2018-11-19 17:51:18 +01:00
Philipp Hörist
596f268f14
Fix missing default arg
2018-11-19 15:04:04 +01:00
Philipp Hörist
b98f0a3f76
Remove all usage of get_gtk_builder()
2018-11-18 22:24:34 +01:00
Philipp Hörist
3c32d51174
Fix deprecated init
2018-11-18 22:24:33 +01:00
Philipp Hörist
dffa54f7d3
Refactor Windows Notifications
...
- Only show one notification at a time
- Fix pylint errors
2018-11-18 22:24:33 +01:00
Philipp Hörist
fedc00eb83
Move notify to gtk folder
...
- Rename notify to notification
- Move get_show_in_roster() to gtk.util
- Move get_show_in_systray() to gtk.util
2018-11-18 22:24:33 +01:00
Philipp Hörist
2ece342de2
Notification: Use load_icon()
2018-11-18 22:24:33 +01:00
Philipp Hörist
1179333fa0
Refactor loading user supplied iconsets
2018-11-18 22:24:33 +01:00
Philipp Hörist
aca34d5c35
Remove old icons
2018-11-18 22:24:33 +01:00
Philipp Hörist
3ba34fa396
Remove old iconset code
2018-11-18 22:24:32 +01:00
Philipp Hörist
619793a085
Groupchat: Use icons from IconTheme
2018-11-18 22:24:32 +01:00
Philipp Hörist
acc89ad622
Roster: Use icons from IconTheme for Roster
...
With this Gajim loses the ability to draw animated GIFs in the Roster
GIFs have numerous drawbacks:
- We cant add them to the IconTheme, which means we need a different interface to load them
- The IconTheme scales all icons we load for the current scale (HiDPI)
- The animation causes many updates to the Roster, and causes high cpu usage
Fixes #8814 , #8655
2018-11-18 22:24:10 +01:00
Philipp Hörist
8be5562b92
Dont fail when IconTheme is not available
...
This is needed for tests to work
2018-11-18 12:52:24 +01:00
Philipp Hörist
d13baed80f
Improve Entity Time parsing
...
- Use parse_datetime()
- Improve tzo node validation
2018-11-18 10:35:13 +01:00
Philipp Hörist
f40f171ecd
Refactor parse_datetime and add unit test
2018-11-18 10:35:13 +01:00
Philipp Hörist
b5b3820328
Remove unused methods
2018-11-18 10:35:13 +01:00
Philipp Hörist
431d8075a6
Use get_cursor from gtk.util
2018-11-18 10:35:13 +01:00
Philipp Hörist
cee63aa0d8
Move htmltextview into gtk module
2018-11-18 10:35:13 +01:00
Philipp Hörist
fb5cee69cb
Dont use deprecated begins_tag()
2018-11-16 21:44:20 +01:00
Philipp Hörist
80954e9534
HtmlTextView: minor refactoring
...
- Move updating tags into HtmlTextView
- Rename some vars
- Remove legacy GTK code
2018-11-16 21:39:45 +01:00
Philipp Hörist
eedd0c2a72
HtmlTextView: Fix pylint errors and minor refactoring
2018-11-16 21:39:19 +01:00
Philipp Hörist
97310a059a
HtmlTextView: Remove some unnecessary methods
2018-11-16 21:36:04 +01:00
Philipp Hörist
63ff9478bd
XHTML: Fix parsing font-size
...
Remove checking for font_scale, Gtk.TextIter.get_attributes() seems buggy at
the moment, and we dont need to check the current scale to apply a new scale
Fixes #9067
2018-11-16 16:23:42 +01:00
Philipp Hörist
7f1dfe5a8c
New DataFormWidget: Add Captcha support
2018-11-15 21:02:09 +01:00
Bronko
4be4998704
fix typos in config.py
2018-11-14 22:44:41 +01:00
Philipp Hörist
9e24c72ba5
Fix incorrect contact status on tabs
2018-11-13 23:47:54 +01:00
Philipp Hörist
9c5de3bf25
Correctly remove placeholder on focus in
...
This is a regression from e281fb68
Fixes #9440
2018-11-12 17:47:04 +01:00
Andrey Gursky
e281fb6839
Fix clipboard paste in inactive window
...
Fixes #9427
2018-11-11 17:20:36 +01:00
Philipp Hörist
e509a68139
Determine absolut path for custom config folder
...
When a relative custom config path is passed via commandline, the logic
which decides if a plugin can be deleted from the plugin manager fails
2018-11-11 15:15:10 +01:00
Philipp Hörist
62b210a9e5
Pass account to plugins when encrypting a file
2018-11-11 10:40:48 +01:00
Philipp Hörist
30a20e16d2
Enforce min and max version for plugin manifest
...
This reduces problems with old plugins without max version
2018-11-11 10:21:46 +01:00
Philipp Hörist
e4a9ffe1ca
Dont test for sys.platform == 'linux'
...
This excludes other unix systems which was not intended
2018-11-10 19:30:19 +01:00
Philipp Hörist
02a9615b94
Dont test if precis_i18n is available
...
Its listed as dependency
2018-11-10 19:30:19 +01:00
Philipp Hörist
a7cc815ca4
Move imports into function
2018-11-10 19:30:18 +01:00
Philipp Hörist
5152611ad7
Try to play sound on all unix systems
...
sys.platform == 'linux' excludeds other unix systems, for example FreeBSD
2018-11-10 19:30:18 +01:00
Philipp Hörist
0d70352460
Dont test if winsound is available
...
Its a standard library which will be always available in our builds
2018-11-10 19:30:13 +01:00
Philipp Hörist
1f31ab04f2
Remove unused code
...
Code is also not cross-platform compatible
2018-11-10 19:30:13 +01:00
Philipp Hörist
8d95eb9b99
Better determine soundplayer on unix systems
...
- sys.platform == 'linux', excludes many other unix systems
- use shutil.which() to test if a command is available
2018-11-10 19:30:12 +01:00
Philipp Hörist
62cfd7293a
Remove unused import
2018-11-07 23:49:29 +01:00
Philipp Hörist
4534f3dbac
Do not use own window for RosterTooltip
2018-11-07 23:44:16 +01:00
Daniel Brötzmann
13c82ae777
Update look on GCTooltip and RosterTooltip
2018-11-07 23:07:26 +01:00
Daniel Brötzmann
bd7e32187d
Update History Manager GUI
2018-11-07 22:52:23 +01:00
Daniel Brötzmann
02f16d53f4
Remove None from list, rename None to No Proxy in combobox
2018-11-07 21:22:25 +01:00
Daniel Brötzmann
56f948f56b
Remove unnecessary .destroy
2018-11-07 17:07:24 +01:00
Daniel Brötzmann
43f07c19e5
Merge destroy handlers, connect ESC key, remove transient
2018-11-07 17:07:24 +01:00
Daniel Brötzmann
d106c0d316
ManageProxies GUI update
2018-11-07 17:07:24 +01:00
Philipp Hörist
ea2f76f24e
Show correct icon in roster tooltip
2018-11-06 21:31:43 +01:00
Philipp Hörist
f5a19c24a9
Cast messages from a bare muc jid to groupchat
2018-11-05 21:08:34 +01:00
Emmanuel Gil Peyrot
b4d34bf7f6
Move XEP-0231 into its own module
2018-11-05 19:58:49 +01:00
André
2ec1baa7bd
Roster: Improve contact filter look
2018-11-04 22:59:56 +01:00
Philipp Hörist
b6c4fcfb54
Use always an action to open the history window
...
- Make all menus and shortcuts use the 'app.browse-history' action
- HistoryWindow: Inherit from Gtk.ApplicationWindow
2018-11-04 22:50:21 +01:00
Philipp Hörist
3e387f5215
GroupchatConfig: Valid form before sending
2018-11-04 17:45:27 +01:00
Philipp Hörist
4753e6015e
ServiceRegistration: Validate form before sending
2018-11-04 01:01:39 +01:00
Philipp Hörist
6b65a23371
DataForms: Make validation possible
...
- Show orange warning icon if a field is required
- Show red error icon if validation of the field failed
- Set validation error text as tooltip of the icon
- DataFormWidget emits a signal 'is-valid' on every change
2018-11-04 00:58:34 +01:00
André Apitzsch
09f0835fbd
Fix some PyGObject deprecation warnings
...
like
The "flags" argument for dialog construction is deprecated. Please use initializer keywords: modal=True and/or destroy_with_parent=True.
or
Using positional arguments with the GObject constructor has been deprecated. Please specify keyword(s) for "title, transient_for, flags" or use a class specific constructor.
See: https://wiki.gnome.org/PyGObject/InitializerDeprecations
2018-11-03 13:58:11 +01:00
André Apitzsch
4e0295fcd9
gui_menu_builder: remove unused variable
2018-11-03 13:47:03 +01:00
Philipp Hörist
6e41699297
GroupchatConfig: Tidy up some rough edges
2018-11-03 13:44:50 +01:00
Philipp Hörist
5d5d686408
DataFormWidget: Color required fields red
2018-11-03 13:44:36 +01:00
Philipp Hörist
bf9e01ee31
Fix displaying PEP icons
...
- Rename get_pep_as_pixbuf to get_pep_icon
2018-11-02 22:51:57 +01:00
Philipp Hörist
61a791d67c
Rewrite GroupchatConfig dialog
...
- Complete rewrite of the dialog
- Use new DataFormWidget
2018-11-02 22:24:28 +01:00
Philipp Hörist
e615a8e2e3
Add possibility to get windows by jid
...
This also makes it possible to get windows by an account/jid combination
2018-11-02 22:21:15 +01:00
Philipp Hörist
0662374c14
Set active window as transient for dialogs
2018-11-02 22:17:08 +01:00
Philipp Hörist
32e736aa32
Remove unused shortcut
2018-11-02 21:01:26 +01:00
Daniel Brötzmann
7cae880920
ManageSounds GUI Update
2018-11-02 17:09:28 +01:00
Philipp Hörist
c2521a41d6
Add margin to DataFormWidget
2018-11-01 08:23:04 +01:00
Philipp Hörist
f46fdee464
Make DataFormWidget configurable
...
- A option dict can be passed which controls how the DataForfWidget looks
- Analyse the field label lengths and adjust the label justification (left/right)
2018-11-01 08:23:04 +01:00
Daniel Brötzmann
4736f518d6
Scroll history window to bottom when day changed or selected
2018-11-01 00:29:40 +01:00
Philipp Hörist
985fced940
Roster: Use icon names instead of pixbufs
...
- Use icon names for Tune and Location notifications
- Use None instead of an empty pixbuf when there is no data
2018-10-29 00:12:48 +01:00
Philipp Hörist
7a070a583e
Use get_image_button() from gtk.util
2018-10-29 00:12:48 +01:00
Philipp Hörist
3ae03a24b1
Remove unused method
2018-10-29 00:12:44 +01:00
Philipp Hörist
a6d9b2c193
Set the Window icon correctly
...
Set the default list after the first window has been initialized. Only
set icons on Windows that are different from the default.
2018-10-28 23:01:09 +01:00
Philipp Hörist
e958755a24
HistoryManager: Refactor code
...
- Use get_builder
- Add get_app_icon_list() to gtk.util
2018-10-28 22:42:02 +01:00
Philipp Hörist
0e3b74da16
Fix pylint errors
2018-10-28 22:04:29 +01:00
Philipp Hörist
ac3bc74952
Remove unused methods
2018-10-28 21:58:30 +01:00
Philipp Hörist
5769ca1e29
Remove dead servers from servers list
...
All removed servers did not answer to a IBR request
2018-10-28 21:45:04 +01:00
Philipp Hörist
2a0d6dc1ad
Use json format for the servers list
2018-10-28 21:26:25 +01:00
Philipp Hörist
69309d283d
AccountWizard: Use icon name instead of filename
2018-10-28 20:58:32 +01:00
Philipp Hörist
95e67ab7c1
AdHocCommands: move to gtk module
2018-10-28 20:43:36 +01:00
Philipp Hörist
cdeb902fda
FiletransferWindow: Move to gtk module
2018-10-28 20:20:49 +01:00
Philipp Hörist
9ae63b6f70
FiletransferWindow: Use icon name instead of pixbufs
2018-10-28 20:18:33 +01:00
Philipp Hörist
dcfaba09b9
PluginsWindow: Refactor code
...
- Use get_builder
- Sort imports
- Use load_icon instead of get_icon_pixmap
2018-10-28 20:17:59 +01:00
Philipp Hörist
f4a7e2a353
Move AtomWindow to gtk folder
2018-10-28 19:45:10 +01:00
Philipp Hörist
59ccac4831
Move ServiceDiscoveryWindow to gtk folder
2018-10-28 19:41:19 +01:00
Philipp Hörist
cb58fc86f0
Move GroupsPostWindow into disco module
2018-10-28 19:38:35 +01:00
Philipp Hörist
efbd22723c
DiscoveryWindow: Use icon name instead of pixbufs
2018-10-28 19:34:46 +01:00
Philipp Hörist
88f30f92f7
Move SearchWindow to gtk folder
2018-10-28 17:29:12 +01:00
Philipp Hörist
39dfe41af5
Remove print statement
2018-10-28 17:15:38 +01:00
Philipp Hörist
b5441b6169
Move ManageSounds into own module
2018-10-28 17:15:34 +01:00
Philipp Hörist
9af4b4f016
Move GroupchatConfig into own module
2018-10-28 15:36:43 +01:00
Philipp Hörist
4e2f00e569
Move ManageProxies into own module
2018-10-28 15:36:11 +01:00
Philipp Hörist
c109db6eeb
Switch some calls to gtk.util helper methods
2018-10-28 15:00:04 +01:00
Philipp Hörist
6b5d559d7a
Fix error with some foreign keyboard layouts
2018-10-28 14:37:19 +01:00
Philipp Hörist
960008a69a
Use get_icon_name() instead of get_iconset_name_for()
2018-10-28 14:32:54 +01:00
Philipp Hörist
9734e7bdea
Preferences: Use icons from icontheme
2018-10-28 14:19:03 +01:00
Philipp Hörist
e86c619379
Rename and extend get_iconset_name_for()
2018-10-28 14:17:04 +01:00
Philipp Hörist
a4077502d5
Tooltips: Use icons from icontheme
2018-10-28 10:44:05 +01:00
Philipp Hörist
7faebf2be5
Tooltips: Refactor code
...
- Use get_builder
- Fix pylint errors
- Move fill_table_with_accounts() to StatusTable class
2018-10-28 10:20:59 +01:00
Philipp Hörist
5c97f0a91c
Move tooltips module into gtk folder
2018-10-28 09:33:40 +01:00