Commit graph

102 commits

Author SHA1 Message Date
Yann Leboulanger
d994845212 Revert "use netifaces to get local IPs if available. Fixes "
This reverts commit b9c363e9cd.
2017-08-14 18:36:40 +02:00
Yann Leboulanger
b9c363e9cd use netifaces to get local IPs if available. Fixes 2017-08-14 16:43:44 +02:00
Philipp Hörist
dbbd3fe111 Fix broken menus when renaming an account 2017-08-14 15:02:55 +02:00
Yann Leboulanger
f8383954e3 Fix socks5 problem:
receive() returns bytes, not str
2017-08-14 14:44:04 +02:00
Yann Leboulanger
bda11b7d39 Merge branch 'master' into 'master'
rework password interface. Fixes 

Closes 

See merge request 
2017-08-14 10:15:07 +02:00
Yann Leboulanger
9b866fd1a0 do not create Event when we auto popup a normal message. Fixes 2017-08-13 23:03:11 +02:00
Yann Leboulanger
89d3c3af14 rework password interface. Fixes 2017-08-13 14:22:28 +02:00
Philipp Hörist
27afece678 OptionsDialog: Center switch button vertically 2017-08-13 00:50:39 +02:00
Philipp Hörist
5554e99452 Add maximize button to XMLConsole window 2017-08-13 00:45:03 +02:00
Yann Leboulanger
43b3d1bd83 unify cid -> candidate_id 2017-08-12 22:55:17 +02:00
Yann Leboulanger
baa54f5010 Merge branch 'use_precis' into 'master'
Use precis instead of stringprep when available. Fixes 

See merge request 
2017-08-12 14:55:08 +02:00
Yann Leboulanger
af547a1827 don't close the socket we're using to tranfer file. Fixes 2017-08-12 14:40:26 +02:00
Yann Leboulanger
b6189a60cf use idna python module to check domainpart when available 2017-08-11 08:12:00 +02:00
Yann Leboulanger
1a2ac87f46 use precis_i18n instead of stringprepare when available to sanitize JIDs 2017-08-11 08:11:52 +02:00
Philipp Hörist
5a7a6766b8 Fix rare bug in scroll_to_end() 2017-08-10 11:07:57 +02:00
Philipp Hörist
a25a38edd3 Correctly destroy all windows on quit()
Not all Dialogs have a window instance, some inherit Gtk.Window
2017-08-10 11:04:21 +02:00
Philipp Hörist
512e6d2c8e Redesign XML Console
- Use modern GTK Widgets (HeaderBar, ActionBar, Switch)
- Add an option to filter Stream Management stanzas
- Add a generic Option Dialog that we can reuse later
2017-08-10 02:13:20 +02:00
Philipp Hörist
e6f1d29471 Remove old XML Console 2017-08-10 02:13:20 +02:00
Yann Leboulanger
b5c3b15c0f Fix running tests 2017-08-09 21:05:45 +02:00
Philipp Hörist
c57af6dade Retract nickname from pubsub correctly 2017-08-08 19:58:20 +02:00
Philipp Hörist
f3bdb596bd Refactor remove_roster()
- Execute as script to save roundtrips
2017-08-08 18:53:25 +02:00
Philipp Hörist
10b0865291 Refactor set_room_last_message_time()
- Dont depend on get_jid_id(), this saves roundtrips
2017-08-08 18:22:29 +02:00
Philipp Hörist
c53e2b1bb9 Dont try to insert if JID is already in DB
- This is added because even an ignored INSERT raises the
autoincrement value of the table.
This means the jid id gets high really fast.
2017-08-08 18:22:29 +02:00
Philipp Hörist
f88e8d835b Remove old DB methods 2017-08-08 18:22:29 +02:00
Philipp Hörist
25a764a656 Port logging incoming messages to new DB API 2017-08-08 18:22:23 +02:00
Philipp Hörist
8c920b35ff Move logging GC messages into connection_handlers
- It should be where all other message received handlers are
- Port to new DB API
2017-08-08 15:24:41 +02:00
Philipp Hörist
608655deed Use new DB API for logging status and errors 2017-08-08 14:41:55 +02:00
Philipp Hörist
635ce52856 PluginManager: prefer plugins in user path
As we always load plugins from the user path first, we should not
reload them later from Gajims plugin base dir
2017-08-07 20:02:03 +02:00
Philipp Hörist
7e0e4cced0 PluginManager: remove plugin path from sys.path
Remove plugin path from sys.path after importing.

If we scan multiple plugin dirs and never remove the path from
sys.path, it is hard to predict from which path python will import
a package.

The chance that the same plugin package is in multiple plugin paths
is high.
2017-08-07 19:28:54 +02:00
Philipp Hörist
413c7f52d7 Add senders attr to Jingle FT
This is a MUST see https://xmpp.org/extensions/xep-0234.html

Fixes 
2017-08-07 17:41:32 +02:00
Philipp Hörist
1eeb53bee6 Use correct file date on Jingle FT
- XEP-0234 demands UTC
- we missed the 'Z' at the end
- simplified the code
2017-08-07 13:34:23 +02:00
Philipp Hörist
a2e2fb2ed1 Remove useless code
Simplify whats left
2017-08-02 23:40:55 +02:00
Philipp Hörist
9d2898bb35 Log sent messages with new logger method
- also save stanza id to the DB
2017-08-02 23:34:24 +02:00
Philipp Hörist
a01611178d Logger: dont try to parse None with json 2017-08-02 21:32:59 +02:00
Philipp Hörist
0c6002b9ac Zeroconf: handle only zeroconf messages 2017-08-02 21:03:12 +02:00
Philipp Hörist
97f6b84b90 Remove old unused code 2017-08-02 19:24:09 +02:00
Philipp Hörist
f1a29fcb6a About Dialog: Update Copyright 2017-08-02 18:59:21 +02:00
Philipp Hörist
6f3c21118f Stay compatible to python 3.4
Fixes 
2017-08-02 18:57:02 +02:00
Philipp Hörist
651611b28b Improve timestamp usage for MAM
- Use new parse_datetime() method
- Drop message with error if MAM doesnt supply a timestamp.
- If the user supplys an own timestamp, save it so we can decide in the
future how to display it.
2017-08-01 21:43:28 +02:00
Philipp Hörist
e24d4f8caf Fix receiving MAM Messages from ourself
This is a regression from the refactoring
2017-08-01 21:39:11 +02:00
Philipp Hörist
1f5e927ca6 Use new DB methods for MAM Messages
- also push a new MamDecryptedMessageReceived
event after disco instead of writing directly to the DB
2017-08-01 21:39:11 +02:00
Philipp Hörist
16fd64873e Add new logger methods
Goal is to make the logger module easier to maintain in the future

- extract deduplication out into a own method, so we can use it
on its own in some other places.

- add new insert_into_logs() method
the DB fields we want to write to are passed as arguments, this makes
it so we dont have to change the method when we add or remove DB fields
in the future.

- instead of using get_jid_id() all around gajim to get the jid_id
before we write to the DB, we only have to pass the jid to
insert_into_logs(), it makes sure to get the correct jid_id or add
one in case it doesnt exist.
2017-08-01 21:39:06 +02:00
Philipp Hörist
6925ce0628 Merge branch 'master' into 'master'
Add a new XEP-0082 parsing method

See merge request 
2017-08-01 20:57:15 +02:00
Philipp Hörist
0fee27928d Add a new XEP-0082 parsing method
This handles every possible XEP-0082 timestamp

It has some additional options:

- Check if a timestring is a valid UTC timestamp, as required by some
XEPs (for example: XEP-0203)
- Return timestamp as datetime in UTC
- Return timestamp as datetime in localtime
- Return timestamp as epoch
2017-08-01 20:53:00 +02:00
Philipp Hörist
e493606070 Fix typo 2017-07-31 19:30:18 +02:00
Yann Leboulanger
6a95fe79ae Merge branch 'xep-0319' into 'master'
Xep 0319

See merge request 
2017-07-31 19:16:27 +02:00
Yann Leboulanger
28917aaf56 Do not use XEP-0012 anymore to know idle time. Use XEP-0319 2017-07-31 19:14:12 +02:00
Philipp Hörist
850e273605 Correctly remove timeout source
Set source IDs to None after removing the source
except when shutting down, because the Control ist destroyed anyway

Only try to remove if we have a source ID
2017-07-31 02:59:52 +02:00
Philipp Hörist
81566df8a1 Fix some regressions with MAM
- On single messages use the bare JID for DB querys
- Add more debug logging
- Some light refactoring
2017-07-30 23:04:50 +02:00
Philipp Hörist
c1decf682b Adapt to latest nbxmpp changes 2017-07-29 21:35:45 +02:00