Florent Le Coz
4d73c29836
Add config_change handlers for the two keepalive options
...
We can now change the keepalive values with /set, without restarting
2013-06-18 20:37:57 +02:00
Florent Le Coz
39fa811374
Trigger config_change handlers when the config has changed using a USR1 signal
2013-06-18 20:37:04 +02:00
Florent Le Coz
ef9672c0fd
Add the possibility to watch the changes of a config value
...
Using add_configuration_handler() we can now set a callback to be called
whenever a given option value is changed using /set
2013-06-18 20:36:23 +02:00
Florent Le Coz
06d5ecb879
Message to join the room with an other nick only if the room is not joined yet
...
Because that message doesn’t make any sense if you are in the room and you
get a nick conflict from the /nick command.
2013-06-18 20:32:17 +02:00
mathieui
c8700dd06e
Fail properly when the config can’t be parsed.
2013-06-16 14:50:04 +02:00
mathieui
2b7676194f
Fix #2320 (TB on /info with an off-roster contact)
2013-06-14 20:36:04 +02:00
mathieui
833faa4f37
Improve the roster search
...
- now case-insensitive
- search in the bare jid instead of userpart only (and still in roster
names)
- do not display groups when searching
- display offline contacts
- do not expand resources if they were before the search
2013-06-13 01:00:53 +02:00
mathieui
2b4c06b6f8
Fix #2315 (send pings to the server every minute to check the connection)
...
add two new options:
connection_timeout_delay and connection_check_interval
2013-06-11 00:03:48 +02:00
mathieui
97d3690aea
Implement Message Carbons (XEP-280)
...
- Add an option enable_carbons (defaults to false)
- Make a disco on non-roster entites to determine if the message
commes from a muc private chat or not.
2013-06-10 23:49:10 +02:00
mathieui
4220c36021
Fix addstr_colored with colors that start with a -1
2013-06-10 20:53:16 +02:00
mathieui
2ab2eaf269
Lock on one forgotten curses operation
2013-06-09 17:12:39 +02:00
mathieui
d5ae6966f9
Fix #2301
2013-06-09 17:02:54 +02:00
mathieui
2668df740b
Fix #1892 (keep the contact selected in the roster)
2013-06-09 15:36:50 +02:00
mathieui
103d097acf
Fix #2183 (do not scroll one char at a time when you reach the end)
...
Now it scrolls horizontally of 1/4 the size of the input
2013-06-09 15:18:39 +02:00
mathieui
9d5fddf5ba
Use the new format in the roster log too (ref #2311 )
...
(and add the pep events and invites to it)
2013-06-09 12:56:51 +02:00
mathieui
71b6404b04
Adopt the mcabber log format ( Fix #2311 )
2013-06-09 03:47:16 +02:00
mathieui
9eaffe1369
Fix the os.makedirs calls so that they don’t traceback for nothing
2013-06-09 03:45:10 +02:00
mathieui
9b8ed569bb
Fix the regex for text attributes
2013-06-08 23:51:47 +02:00
mathieui
26ea842cee
Add a way to format background colors in a string
...
(also add colors to the /info command in MUCs)
2013-06-08 17:36:02 +02:00
mathieui
545e67c500
Fix setting autojoin with /bookmark
2013-06-08 12:28:07 +02:00
Florent Le Coz
463ec5ca0d
Accept NULL bytes in strings to be cut by the poopt module
...
fix #2296
2013-06-07 00:04:01 +02:00
Florent Le Coz
032d2b711b
Add a M-k keyboard shortcut to escape the next keyboard shortcut
...
fix #2227
2013-06-06 22:58:29 +02:00
Florent Le Coz
834546ac77
Do not traceback when receiving malformed XML in a xhtml-im body
2013-06-06 22:53:43 +02:00
mathieui
9e8860cd6a
Fix joining a domain-only room
...
(e.g. “/join @conference.prosody.im”)
- If the current tab is a MUC the @ prefix is mandatory as there is no
way to tell if the user meant a room name or a domain.
- If it is not a MUC, then the @ prefix is not mandatory (but works
anyway)
2013-06-05 20:44:27 +02:00
mathieui
ae009318b2
Fix #2299 (invalid characters causing a TB)
...
any character beyond 0x110000 does not exist and should be dropped
2013-06-04 13:20:59 +02:00
mathieui
0abc789403
Do not block on roster operations (and do not traceback on errors) #2315
2013-06-03 23:13:10 +02:00
mathieui
0dcc6f9cc4
Fix the caps updating (“do not verify” message in swift)
2013-06-01 21:43:15 +02:00
mathieui
4ee7708b14
Small workaround for the default config location
2013-05-29 15:32:25 +02:00
mathieui
2b42c6a3ea
Update setup.py to use distutils
...
(use new default directory, install the plugins as a separate
python module…)
2013-05-26 20:13:39 +02:00
Florent Le Coz
1b9dc72d14
Fix a traceback (plugin_manager)
2013-05-24 22:13:56 +02:00
Florent Le Coz
3356cac9ce
Fix a stupid traceback (common.datetime_tuple)
2013-05-24 21:52:12 +02:00
mathieui
0255968049
Fix a tb on "/ban "
2013-05-17 19:30:52 +02:00
mathieui
69af684494
Fix a traceback on /role completion if the tab is not connected
...
(also add outcast to the completed roles)
2013-05-17 11:53:32 +02:00
mathieui
ee8de89f9e
Fix #2307 (commandinput history)
2013-05-16 16:08:30 +02:00
mathieui
06e368f66e
Fix the parser for the rainbow plugin
2013-05-16 15:35:59 +02:00
mathieui
785b21ff02
Fix #2229 (prevent correction if the 2 fulljid differ)
...
(Except in MUC, where we check the User object for that)
2013-05-15 19:04:56 +02:00
mathieui
55dfc625b3
Fix a traceback on /nick [tab]
...
(introduced in 686352d22b
, because a
nick bookmark can now be None)
2013-05-15 13:17:24 +02:00
mathieui
58174d1bf1
Sort users in /names
2013-05-15 12:56:24 +02:00
mathieui
9de322bea3
Rewrite the poezio colors parser (also Fix #2279 )
...
The parser now handles text with multiple style attributes
(e.g. bold, underlined and red text).
2013-05-14 22:29:45 +02:00
mathieui
7f1562c4c2
Actually use it.
2013-05-11 21:43:45 +02:00
mathieui
a1ef835a37
Handle the roster order cache as a real cache
...
When an external (or internal) event may cause the order of the
cache to be modified, or new elements to be added, schedule it
for a rebuild. Otherwise, don’t, and only rebuild it when
refreshing (that should improve refresh speed a lot).
Also, if the position in the roster is further than the total size
of the roster, go back to the top instead of displaying an empty
window with “+++”.
2013-05-11 20:51:11 +02:00
mathieui
dde153e85b
Reverse the plugin loading path
2013-05-11 12:00:37 +02:00
mathieui
3d8c91dcb0
Fix the reason in the ban message
2013-05-11 00:33:06 +02:00
mathieui
686352d22b
Do not add a nick to each bookmarked room
2013-05-10 14:55:50 +02:00
mathieui
6767d04a1d
Fix #2295 (sanitize commands given to /help)
...
remove starting slashes and starting and trailing spaces
2013-05-10 13:41:13 +02:00
mathieui
ca8b67fca9
Fix #2131 (Input cursor when pasting text)
2013-05-10 00:49:38 +02:00
mathieui
60388686a5
Fix the exit message
2013-05-09 22:29:26 +02:00
Florent Le Coz
ffe33c5da3
Add a little workaround for MUC servers that do not send the 110 status
2013-05-09 13:20:46 +02:00
Florent Le Coz
53170fd4f2
Add the 'changing_nick' event
2013-05-09 13:18:44 +02:00
Florent Le Coz
38af82501c
Fix a crash introduce something like 5-6 commits ago, np.
2013-05-09 13:18:44 +02:00
mathieui
3eece64062
Fix #2284 (don’t send always send an inactive chatstate with /w)
2013-05-06 20:48:37 +02:00
mathieui
48614d6cf0
Fix #2286
...
Also fix the copy of the default config if -f is used
2013-05-06 20:23:33 +02:00
Florent Le Coz
ea5bfbfca4
Fix a typo "on on an unknown platform"
2013-05-01 19:38:47 +02:00
Florent Le Coz
beb374f7e3
Make Alt+backspace work on my freebsd
2013-05-01 19:03:32 +02:00
Florent Le Coz
ea12f4ccce
Document the new event
2013-05-01 18:44:14 +02:00
Florent Le Coz
e8f5c21fcd
Lets plugins change the presence BEFORE joining a muc, with a new plugin event
2013-05-01 18:39:33 +02:00
Florent Le Coz
fb21f337e7
Take into account the nick given by the MUC when joining a room.
...
This way, if the MUC service decides to give us an other nick than the one
we asked it works properly.
2013-05-01 18:37:27 +02:00
mathieui
9661854611
Typo
2013-04-23 12:37:47 +02:00
mathieui
62787af607
Actually use the deprecated method for versions INFERIOR to 3.2
2013-04-19 23:55:54 +02:00
mathieui
93cdac01ae
Use ''.join(str) instead of str += …
...
Should improve speed on xhtml parsing, but be noticeable only
with *heavy* (e.g. 1000chars with the rainbow plugin) xhtml stanzas.
2013-04-18 19:54:13 +02:00
mathieui
9fd15cc2a2
Use importlib for python 3.3 to load plugins
...
(also probably fix the I/O operation on closed file issue when using
imp)
2013-04-16 18:49:03 +02:00
mathieui
e5f219d43e
Do not attempt to log things when use_log = false
2013-04-06 11:45:34 +02:00
mathieui
91b960b797
Handle I/O errors better
...
- Do not crash because of low disk space
- Notify the user whenever it happens
- A few functions now return a boolean instead of nothing
- Config.silent_set is Config.set_and_save without toggle and returning
strings. It is used whenever we don’t need set_and_save
- Config.set_and_save now returns a tuple (that can be passed directly
to core.information())
TODO: display the precise error to the user (instead of “unable to…”)
2013-04-05 23:57:53 +02:00
mathieui
16268ba964
Consistency
2013-04-05 15:24:04 +02:00
mathieui
26fa83dd9a
Add an option to choose between shared and separate input history
...
- separate_history, defaults to false
2013-04-04 01:11:56 +02:00
mathieui
8a5a5bb644
Fix #2255 (search in input history)
...
- The input is split in two parts: on the left is what the user enters,
on the right is the first match (the right part has a different
color)
- Start and cancel a search with ^R
- Validate a search with enter, then press another time enter to send
- CommandInput and MessageInput now inherit from the HistoryInput class
and share some methods
2013-04-04 01:03:18 +02:00
mathieui
e8fae6f24c
Fix #2275 , ref #2229
...
- Refactor the message handlers to be more readable
- Add a group_corrections tab-specific option (#2229 )
- Fix issues with /correct in private tabs and conversation tabs
2013-03-31 16:33:10 +02:00
mathieui
f58cd588c2
Fix some PEP issues
2013-03-30 02:22:36 +01:00
mathieui
3f3d1a0a54
Fix the help of /gaming
2013-03-28 10:49:44 +01:00
mathieui
098bc9028a
Typo/traceback
2013-03-28 10:47:49 +01:00
Florent Le Coz
347e82b552
Add a (per-tab) notif_messages option to ignore MUC’s normal messages
2013-03-28 01:44:05 +01:00
Florent Le Coz
bbe041fd58
Catch CorrectionError to avoid tracebacking when /correct fails
2013-03-16 12:16:11 +01:00
Florent Le Coz
ad04d32b48
On /exit, save the config earlier.
2013-03-16 11:58:47 +01:00
mathieui
57ce4b6fdf
Fix #2265
...
also:
- fix Message.__str__/repr
- fix a traceback with user gaming
2013-03-13 22:49:19 +01:00
mathieui
d797b1fd65
Implement user gaming (xep-0196)
...
- configuration options
- theming options
- /gaming
2013-03-12 16:12:47 +01:00
mathieui
cec1151ecb
Fix #1839 (User mood/activity)
...
- Added as always new theming variables:
CHAR_ROSTER_MOOD, CHAR_ROSTER_ACTIVITY (a SNOWMAN!)
COLOR_ROSTER_MOOD, COLOR_ROSTER_ACTIVITY
- Added two new notification types in Theme.INFO_COLORS (mood/activity)
- Added new configuration options:
display_mood/activity/tune_notifications (those can be set for a
specific JID)
enable_user_tune/nick/activity/mood
- Added /activity and /mood commands, with completions
- Moved the old /activity to /last_activity
- Details are show in the ContactInfoWin if there is room, or with "i"
on a contact in the roster.
2013-03-11 23:06:52 +01:00
mathieui
d2d0416214
Fix #1841 (User nickname)
...
- add a use_pep_nick boolean option
- use it as a nickname for roster contacts, but it does not
supercede the user-defined handle
- send a <nick/> at the beginning of a normal chat
- not implemented in MUC (wontfix)
2013-03-11 17:54:29 +01:00
mathieui
34af8f69c7
Add a receive_user_tune option ( fix #2261 )
2013-03-11 11:43:32 +01:00
mathieui
71c35eb279
Implement XEP-0118 ( Fix #1840 )
...
- Add new theming options
- Show the tune in the roster (both in contact line and infowin)
- add an option to show tunes as info messages
2013-03-11 02:04:20 +01:00
mathieui
eb2e5825bc
Disable plugins on exit
2013-03-10 23:58:20 +01:00
mathieui
c33ee919ff
Fix #2241
2013-03-10 22:58:42 +01:00
mathieui
d87834760f
Fix #2122 (coloration of long messages)
...
- Add a “prepend” attribute to the Line tuple
I’m not sure of the impact of this on performance (we parse the message
yet another time)
2013-03-10 18:35:51 +01:00
mathieui
f00dd1b8fe
Fix #2254
...
(add a new theming option, too)
2013-03-09 22:38:31 +01:00
mathieui
9885203c67
Update the plugins to use the PluginAPI
...
Also:
- Add get_conversation_messages() to PluginAPI
- Make plugins_autoload colon-separated instead of space-separated
(for consistency)
- Replace a JID() with a safeJID() in the uptime plugin
2013-03-08 22:53:35 +01:00
mathieui
dbde08a526
Document with sphinx timed_events, common, and add methods to PluginAPI
...
- add methods related to timed events to the PluginAPI
- remove parse_command_args_to_alias because str.format does that, and
better
→ update the alias plugin
2013-03-08 19:39:34 +01:00
mathieui
0a2bd90c6d
Fix PluginAPI.run_command()
2013-03-08 16:55:27 +01:00
mathieui
370cc874c2
Introduce a new way for plugins to interact with poezio
...
- Try to reduce the use of the “core” object in the plugins
- New “api” member for each BasePlugin which is a wrapper around
the unique PluginAPI object. (instead of having the methods
directly in BasePlugin and then calling the PluginManager)
- Documented methods with rst (for sphinx)
2013-03-06 22:57:41 +01:00
mathieui
cbf563583c
FIX XHTML ISSUES DUE TO A SLEEKXMPP UPDATE
...
(THE NAMESPACE WAS NOT PRESENT ANYMORE)
2013-03-06 22:53:42 +01:00
mathieui
3f71405efd
Add a CHAR_NEW_TEXT_SEPARATOR theming option
2013-03-06 22:34:41 +01:00
mathieui
993c960aa6
Rename 'normal_chatstate' event to 'conversation_chatstate'
...
for consistency
2013-03-05 00:15:56 +01:00
mathieui
d99c09ffc3
Make /affiliation and /role non-blocking ( fix #2235 )
2013-03-04 16:20:07 +01:00
mathieui
f40cfe2669
Add a show_s2s_errors config option (cf #2182 )
2013-03-04 16:01:35 +01:00
mathieui
f7204ab0a3
Fix /xhtml
2013-03-04 11:41:19 +01:00
mathieui
1e9e2112f7
Fix #2126 (per-server configuration sections)
...
(also move replace_key_with_bound() to core.py, to prevent having
common.py depending of config.py)
2013-03-04 00:23:58 +01:00
mathieui
fb7586f049
Fix #1923 (caps)
2013-03-03 13:47:11 +01:00
mathieui
3d98f48ba2
Fix #2182 (show s2s errors)
...
- Add the theming options COLOR_ROSTER_ERROR, CHAR_ROSTER_ERRROR, and
CHAR_ROSTER_ASKED
2013-03-03 13:13:15 +01:00
mathieui
e861290d10
Add a plugins_conf_dir option
2013-03-03 00:24:18 +01:00
mathieui
98850ff877
Fix #2132 (/disconnect)
2013-03-02 19:50:59 +01:00
mathieui
dbba6b5e1a
Fix /reconnect
2013-03-02 19:45:24 +01:00
mathieui
6afc1f915c
Fix #2226 (TB on /activity)
2013-03-01 01:54:54 +01:00