Yann Leboulanger
ce719a8317
No need to have one sleepy instance per connection object
2017-08-22 21:55:18 +02:00
mimi89999
1f506a14cf
fix import
2017-08-22 12:39:26 +02:00
Yann Leboulanger
d070d141bb
fix scrolling to iter in groupchat when we receive a pm. Fixes #8635
2017-08-21 21:59:47 +02:00
Yann Leboulanger
3c693a7a22
fix import
2017-08-21 16:38:27 +02:00
Yann Leboulanger
144c862dab
fix import
2017-08-21 16:34:50 +02:00
Yann Leboulanger
07ba85b456
Ability to be notified on all message. Option is now perroom. Fixes #8646
2017-08-20 23:07:58 +02:00
Yann Leboulanger
163306f78a
make log history checkbutton sensitive when we open history window with an account. Fixes #8705
2017-08-20 14:57:18 +02:00
Philipp Hörist
e8399dc2ed
Fix wrong call to Sleepy()
...
And place a log call so we can gather exceptions to lose the
general exception in the future.
2017-08-19 22:32:50 +02:00
Yann Leboulanger
c4383c16c6
Use correct account when opening history window
2017-08-18 22:05:48 +02:00
Yann Leboulanger
9bafd7698b
fix some Q_() call
2017-08-18 22:05:16 +02:00
André Apitzsch
89c7eb6e6a
Rename gajim.common.gajim to avoid name conflicts
2017-08-18 20:03:20 +02:00
André Apitzsch
ab041963b1
Fix start of history manager from gajim
2017-08-18 19:48:48 +02:00
André Apitzsch
674012042a
Mark gajim as a python package
2017-08-18 19:48:48 +02:00
André Apitzsch
675ebe54dd
Up Gajim version to 0.16.11
2017-08-18 19:48:48 +02:00
André Apitzsch
f7e83af297
GajimRemote: Fix invalid filename
2017-08-18 19:48:48 +02:00
André Apitzsch
efec098aef
Use absolute imports
2017-08-18 19:48:48 +02:00
Philipp Hörist
10f8fe2bb5
Use unique id as action name instead of jid
...
A jid can contain characters that are not allowed in an action name.
This creates a unique UUID4 for each MessageControl and uses it as
action name instead.
We can reuse the UUID for other actions that belong to the
MessageControl
Fixes #8636
2017-08-18 18:58:07 +02:00
Philipp Hörist
d20f2201f2
Print error on unhandled commandline arguments
2017-08-18 17:48:03 +02:00
Yann Leboulanger
43fbcbf8cf
remove call to old XEP-0136 function
2017-08-17 22:18:35 +02:00
Yann Leboulanger
a47bb9f03c
fix error when someone changes nick ina room
2017-08-17 21:40:00 +02:00
Yann Leboulanger
cfbf45cdf7
add missing config options to save pm position and size
2017-08-17 15:03:40 +02:00
Yann Leboulanger
2bb5ad7bca
fix DnD of files on roster
2017-08-16 23:06:05 +02:00
Yann Leboulanger
09bcbc0cef
Forget all unused streamhosts when we use one of our proposed streamhosts
2017-08-16 23:05:43 +02:00
Yann Leboulanger
99b27b4484
correctly compute file hash when file is received
2017-08-16 22:03:17 +02:00
Philipp Hörist
1211a1bc59
XMLConsole: Use glade file for building widgets
2017-08-16 19:05:13 +02:00
Yann Leboulanger
21e144d89d
use correct SID in Jingle FT to compute hostname of SOCKS5 connection. Fixes #8703
2017-08-16 15:27:35 +02:00
Philipp Hörist
4f4a58e51a
XMLConsole: Fix size allocate warning
...
It seems to be important to let all widgets realize and then
hide the ones we dont want to show, instead of not showing them
in the first place.
2017-08-15 19:45:42 +02:00
Philipp Hörist
4ad5fd9cdc
Add method for creating image buttons
2017-08-15 19:23:23 +02:00
Yann Leboulanger
9ce6299e1a
use netifaces to get local IPs if available. Fixes #8666
2017-08-14 18:37:11 +02:00
Yann Leboulanger
d994845212
Revert "use netifaces to get local IPs if available. Fixes #8666"
...
This reverts commit b9c363e9cd
.
2017-08-14 18:36:40 +02:00
Yann Leboulanger
b9c363e9cd
use netifaces to get local IPs if available. Fixes #8666
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 #8347
Closes #8347
See merge request !117
2017-08-14 10:15:07 +02:00
Yann Leboulanger
9b866fd1a0
do not create Event when we auto popup a normal message. Fixes #8645
2017-08-13 23:03:11 +02:00
Yann Leboulanger
89d3c3af14
rework password interface. Fixes #8347
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 #8566
See merge request !116
2017-08-12 14:55:08 +02:00
Yann Leboulanger
af547a1827
don't close the socket we're using to tranfer file. Fixes #8657
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 #8662
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 #8690
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 !111
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 !110
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
Philipp Hörist
b8aaf09c13
Fix infinite expand of MessageTextView
...
- The 'configure-event' does not trigger anymore when connected to
the MessageTextView. The reason is unknown.
- Use our own ScrolledWindow Widget instead so we can better control
the dimension of the MessageTextView
2017-07-28 20:40:30 +02:00
Philipp Hörist
c963fc5dcc
Fix use of deprecated method
2017-07-28 20:40:09 +02:00
Philipp Hörist
766458f394
HistorySync: Connect to different event for counting
...
This lets us better count how many messages we retrieved
2017-07-28 14:51:54 +02:00
Philipp Hörist
9bca51eb69
Implement XEP-0359 Stable Stanza IDs
...
- This allows us to better deduplicate Messages on MAM syncs
2017-07-28 14:03:14 +02:00
Philipp Hörist
8558a43651
Update config setting description
...
We dont use 0136 anymore
2017-07-28 00:34:18 +02:00
Philipp Hörist
9ff601d03b
Remove XEP-0136 support
2017-07-28 00:07:49 +02:00
Philipp Hörist
1e313cc7e2
Improve getting own jid
...
We get our full JID on the bind event.
After that it is saved in the `registered_name` attr on the Connection
Object.
In case the bind never occured we get the bare JID from config.
2017-07-27 22:14:29 +02:00
Philipp Hörist
914935f864
Use right amount of arguments on pack_start
2017-07-27 21:50:38 +02:00
Philipp Hörist
f449acd815
Refactor MamDecryptedMessageReceivedEvent
...
- Condition type = groupchat is not needed because we drop messages
type groupchat that come from the user archive. To get these messages
we will query the MUC.
- Because of this the logging method save_if_not_exists() can be much
simpler
2017-07-27 21:46:19 +02:00
Philipp Hörist
cb90f9decd
Merge branch 'logger' into 'master'
...
Refactor Logger
See merge request !108
2017-07-27 11:57:09 +02:00
Philipp Hörist
fe1f2c0103
Dont drop MAM Message on missing stanza-id
...
A missing stanza ID means, we will have to take some measures to make
sure we get no duplicates in the Database later on.
Also fix getting the origin-id. Third time is a charm.
2017-07-27 03:33:19 +02:00
Philipp Hörist
9d6e3f4323
Get the ID attr of origin-id instead of the Node
2017-07-26 02:41:08 +02:00
Philipp Hörist
7f0bcbb5bf
Correctly set stanza-id for received MAM messages
...
The gaol why we need to determine what ID should be used as stanza-id,
is so we can use the stanza-id in the future for deduplication.
Case we are the sender:
Either we look for a origin-id element, which we will include in the
Future in all messages we send, or until then the ID we set on the
message as attr.
Case we are the receiver:
If our server supports mam:2 we take the ID of the result element,
because mam:2 injects the archive ID live into every message we
receive. If we dont have mam:2 we fall back to the ID of the message
attr.
2017-07-26 02:35:34 +02:00
Philipp Hörist
a5480eb167
Add ServerInfo Dialog
2017-07-26 00:07:43 +02:00
Philipp Hörist
33a51f3180
Preparation for MUC Archive querys
...
- Refactor and clean up code around MamMessageReceivedEvent
- Goal is to add a GcMamMessageReceivedEvent later on
- For that cause added a raw-mam-message-received base event
2017-07-25 21:01:18 +02:00
Philipp Hörist
aefb571168
Add new NetworkEvents method
...
This lets us attach all attributes of the base event to the
new event. Often Events trigger other Events. When that happens
we often want to keep all attr from the previous Event, and just
continue under a new Event. Until now all attr had to be pulled
out of `self.base_event` again.
2017-07-25 21:00:20 +02:00
Philipp Hörist
89367a83ec
Add simple parse_delay() method
...
The XEP is pretty strict on Delay tags so we can make a simple
method.
2017-07-25 21:00:20 +02:00
Philipp Hörist
06d890eea7
Add more convenient get_own_jid() method
2017-07-25 21:00:20 +02:00
Philipp Hörist
85d220c80e
Add Synchronise History Dialog
...
- On first contact with the MAM Archive only request 7 days
- To sync the rest of the archive the new Dialog can be used.
2017-07-25 21:00:20 +02:00
Philipp Hörist
e548a89269
Add pylint hints
2017-07-25 21:00:20 +02:00
Philipp Hörist
78addad067
Fix InfoBarMessage on GC invite
2017-07-24 23:48:00 +02:00