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
mathieui
b2aa3abf50
Remove a debug that floods too much
2013-02-28 22:54:15 +01:00
mathieui
5a0cec9717
Fix a traceback due to a sleekxmpp API change
...
- remove the help message for people still using the old custom
sleekxmpp repo
2013-02-28 22:44:07 +01:00
mathieui
abfd50aacd
Fix signal handling
...
- reload the config/theme with SIGUSR1
- quit properly with SIGHUP/SIGTERM
2013-02-28 22:23:25 +01:00
mathieui
de11a00a8e
Improve XEP-0308 support
...
- Prevent correction of delayed messages
- Prevent correction of messages by someone else in a MUC (and in a
private tab)
- Messages with unauthorized corrections (above) or wrong message id
will be displayed as normal messages
TODO: restrict the corrections to the same fullJID (only in direct
"normal" conversations, because we can know in private an muc tabs, via
the User object)
2013-02-27 22:09:14 +01:00
mathieui
f1831cc0ec
Fix the background color of some messages
2013-02-21 21:50:05 +01:00
mathieui
23a1b4c353
Fix a potential traceback on /ignore
...
(if the room was not joined)
2013-02-15 21:22:08 +01:00
mathieui
f4c275eb07
Add an indicator of the number of participants
...
(like in weechat)
2013-02-13 21:29:14 +01:00
mathieui
14183c49c5
Do not add a space after /unignore completion
2013-02-11 22:23:44 +01:00
mathieui
27d85a0961
Fix the folding of contacts in multiple groups
...
(add a defaultdict to keep the folded state in each group)
2013-02-03 23:55:13 +01:00
Florent Le Coz
a76b016f95
Add a key (Alt+d) de delete the next word in the input.
2013-02-03 22:17:22 +01:00
Florent Le Coz
dd9f6936be
Remove some useless keys, and change the keys to scroll the info win.
...
M-d and M-c become M-D and M-C
2013-02-03 22:15:10 +01:00
mathieui
f0b03ceee7
Fix a traceback on the completion of /correct
...
when no message has been sent yet
2013-02-03 19:53:32 +01:00
Florent Le Coz
edd82fef9b
Fix a tb on /accept. Make sure jid is a JID object, not an str.
2013-01-29 17:34:26 +01:00
Florent Le Coz
73ebce5c91
make the options in the config files case sensitive.
2013-01-29 08:04:46 +01:00
Florent Le Coz
e0136e785a
scroll_to_separator now scrolls to the top if there’s no separator.
2013-01-29 07:58:20 +01:00
Florent Le Coz
13b5ab4b65
Makes next_hl and prev_hl work after a scroll_to_separator.
...
This makes it easy to review all the highlights after the separator was
placed, using M-h, M-n, M-n, M-n…
We just add a counter of highlights which is incremented each time there’s
an hl, and set to zero when we reset the separator. We use that counter to
set hl_pos when we scroll to the separator.
2013-01-29 07:58:20 +01:00
mathieui
80f689b2fa
Do not open new useless tabs with /message
2013-01-28 19:34:53 +01:00
mathieui
0c19f49e98
fix the completion of jids for /message
2013-01-28 19:08:42 +01:00
Florent Le Coz
6aa2a05f01
Remove a single trailing space. hihi.
2013-01-26 05:35:07 +01:00
Florent Le Coz
d6fec9775a
Add an /unlock command to manually unlock a DynamicConversationTab.
2013-01-26 05:35:07 +01:00
Florent Le Coz
dd2a6d1d65
Implement XEP 296 for locking resource in conversations.
...
With a few specific behaviours: When manually opening a conversation with a
bare jid, we open a normal conversation that follows the XEP (locked and
unlocked accordingly). If the user manually opens a conversation with a
fulljid (by selecting a specific resource in the roster, or by specifying a
fulljid to the /message command), we open a special tab that doesn’t follow
the XEP (it is always locked to the same resource, and cannot be unlocked).
When a message is received, unless a special tab has been manually opened by
the other with that specific resource, we always send the messages to a uniq
normal tab, unlocking or locking it according to the XEP.
This means that only one tab can be opened with a given contact, unless the
user specifically chooses to open a special tab for a specific resource.
fixes #2159
2013-01-26 05:35:07 +01:00
mathieui
61f469bc12
Don’t rebuild the lines on resize when the width has not changed
...
- because it is an heavy operation, and it is useless, since the lines
only change when the width changes.
2013-01-23 09:29:28 +01:00
mathieui
6a81c021e1
Fix it for real.
2013-01-21 19:45:19 +01:00
mathieui
43e01ce4a6
Fix a traceback when a tab failed to be joined in the first place
2013-01-21 19:34:44 +01:00
mathieui
1bf61cde38
Break the ugly roster refresh loop into two
...
- The code is more understandable
- The number of iterations may have slightly increased
- Less things are done inside the lock, so the overall experience should
be smoother
2013-01-21 19:23:23 +01:00
mathieui
bedf225749
Fix get_version and get_room_form
2013-01-19 16:20:17 +01:00
mathieui
3755b51430
Use the new command scheme in plugins too
...
(while staying backwards-compatible)
2013-01-18 23:25:33 +01:00
mathieui
b3341c6327
Open tabs for rooms without autojoin (but do not join them)
2013-01-18 23:25:33 +01:00
mathieui
40ff60ab24
Fix a (hidden) traceback
...
Do not traceback when we receive a chatstate from someone not in our
roster.
2013-01-17 18:17:44 +01:00
Florent Le Coz
8ab4fc05c3
Refresh the rooster when canceling the search.
...
fixes #2195
2013-01-17 17:51:25 +01:00
mathieui
c5cc462963
Move to the upstream SleekXMPP
...
- remove the decline command that is not in the trunk (and mediated
declines are supported nowhere anyway)
- change a bit xhtml-im support
- change the bookmarks management a bit
- Add a verification to avoid crashing when poezio will be launched the
next time
- Fix the (unrelated) bug when setting a jid affiliation
2013-01-17 17:37:06 +01:00
mathieui
b06240ee7b
Improve the xml tab
...
fix refresh bugs, display the scrolling status, add an info bar, add the
global info win
2013-01-11 19:54:30 +01:00
mathieui
b0fbbc9fa9
Fix the behaviour of /move_tab
2013-01-07 23:41:34 +01:00
Florent Le Coz
229d56456b
fix a tb on /accept
2013-01-07 17:30:08 +01:00
mathieui
2ea8673a04
Improve the help system ( #1986 )
...
TODO: change the plugin API to take advantage of this
This change is backwards-compatible (as in “should not break anything”)
2013-01-06 17:36:14 +01:00
mathieui
4873bab740
Do not display messages if they have an empty body after the hook
2013-01-05 15:55:45 +01:00
mathieui
15fce04294
Do not display the messages with type=headline and an empty body
...
(thanks, jappix)
2013-01-04 10:11:58 +01:00
mathieui
68c6c06095
Prevent a RuntimeError when there are too many revisions on a message
...
Python recursion sucks, and namedtuple.repr() uses that, so I rewrote
__str__ and __repr__ in order to make it the iterative way instead.
2013-01-02 20:36:38 +01:00
mathieui
ea1851e00d
Iterate over the messages from the end, not from the start
...
(the corrected message is way more likely to be recent)
2013-01-02 19:32:32 +01:00
mathieui
d0a8304e55
Add the save_status, status, and status_message options
...
(the name show is not intuitive, so I used status and status_message)
- The status is send when connecting, and is the same used when joining
rooms
- save_status is true by default, and will make poezio save the status
whenever it changes
- status and status_message are empty by default
2013-01-02 19:07:36 +01:00
mathieui
c04fbadf2f
Add a default color for “Warning” messages
2013-01-02 01:48:55 +01:00
mathieui
17d0527cf8
Fix a traceback with corrections
2013-01-02 01:36:53 +01:00
mathieui
677b944d38
Fix a TB on /move_tab
2013-01-02 01:19:47 +01:00
mathieui
a1607c4c6e
Fix #2082 (xml:lang)
...
This is now already done in sleekxmpp, so I added a “lang” configuration
option. TODO: use the locale of the system.
2012-12-31 14:00:09 +01:00
mathieui
d15c4e0b58
Fix #2138 (send xhtml with /say and /correct)
2012-12-31 03:02:18 +01:00
mathieui
26ecafc6e5
Fix #2161
2012-12-31 02:22:28 +01:00
mathieui
f1d2aa67d0
Fix #2158
...
Fix /accept for transports.
I think there are more people who use transports than people who have
\2f into a legitimate JID. So I believe this is ok.
2012-12-30 19:43:07 +01:00
mathieui
d66cf8e1fe
Typo
2012-12-30 19:31:27 +01:00
mathieui
80c79d8b79
Fix #2189 Fix #2139 - Make /correct work properly in all chat tabs
...
#2189 wasn’t crashing, but well.
Also fix a crash with the separator and /correct
2012-12-30 19:27:59 +01:00
mathieui
7ec85ae328
Fix #2143 Fix #2056
...
Show headline messages in the info buffer, and show error messages (or
other errors) with a special style.
2012-12-30 17:40:27 +01:00
mathieui
0f9b37b8a8
Do not rebuild everything in order to modify a message
...
(should fix the “leak” on /correct, and make it faster)
2012-12-30 14:54:54 +01:00
Emmanuel Gil Peyrot
65e097f410
Display the number of revisions of a corrected message.
2012-12-29 13:14:50 +01:00
Emmanuel Gil Peyrot
590afbd4bc
Fix /correct and /me highlights, and handle /correct a bit better.
2012-12-29 13:14:50 +01:00
mathieui
dc4e0302b4
Fix #1977
2012-12-28 20:44:49 +01:00
mathieui
8aa5828459
Fix #2174
...
/server_cycle now takes a suffix and will match all the rooms with this
same suffix. It also means that /server_cycle room@domain.tld will now only
cycle root@domain.tld instead of all the rooms of domain.tld.
2012-12-28 19:24:13 +01:00
mathieui
f2caca5f23
Fix #2153
2012-12-27 18:18:20 +01:00
mathieui
97c66b42c3
Fix the ^? for python 3.1
...
possibly lost keystrokes when there is lag, but who cares?
2012-12-27 16:22:29 +01:00
mathieui
2a145abf9b
Allow theming of the info buffer messages
...
(only the left part)
2012-12-20 19:20:30 +01:00
mathieui
2a980838a9
Fix #2186 (muc password in the config file)
...
Also use the passwords on start, and automatically use a password with
/join if there is one.
2012-12-20 18:50:34 +01:00
mathieui
519f3afe06
Fix a tb on /names (typo)
2012-12-18 13:18:49 +01:00
mathieui
cae7ccf132
try to fix the ^? issue
2012-12-18 13:02:21 +01:00
mathieui
f291d07567
Do not take 100% of the CPU when the certificate has changed
...
and let the user have a better chance to read the question entirely
2012-12-18 00:22:36 +01:00
Florent Le Coz
ca216a754e
Remove that buggy thing (don’t ask more details, just read the diff).
2012-12-17 03:55:29 +01:00
Florent Le Coz
88346b965e
Fix a tb on escape and no key after it.
2012-12-16 18:16:08 +01:00
mathieui
cb900858a0
Fix the per-tab options on logs
2012-12-16 13:42:22 +01:00
mathieui
344e8c8d6c
fix a traceback when we accidentally seek() in the middle of a char
2012-12-15 23:34:28 +01:00
mathieui
423bae05b0
Really make the use_log a tab-specific option.
...
and do not read the whole log file for the last lines.
2012-12-15 23:23:12 +01:00
mathieui
08ca9bd5c5
Sort the configurations options by name in the documentation
...
(instead of chaos)
2012-12-15 22:57:57 +01:00
mathieui
91975fd261
Fix a TB on python < 3.2
2012-12-15 21:51:14 +01:00
mathieui
4f084671d3
(should) Fix #2175 ; prevent bugs caused by tab gaps
2012-12-15 21:49:11 +01:00
mathieui
9f7a16141a
Fix #2172 (select which rooms are logged)
2012-12-15 20:29:37 +01:00
Florent Le Coz
266ba884e5
Make /w command better.
...
fix #2185
2012-12-15 19:51:07 +01:00
mathieui
4fe00ed069
Fix the '^?' characters appearing
2012-12-15 16:40:41 +01:00
Florent Le Coz
0190f9b017
In user lists, the upper line is now the upper most person.
...
This means you cannot scroll too high.
fix #2180
2012-12-15 04:33:20 +01:00
Florent Le Coz
b23e7751d2
Fix the position of the ++ indicator in muc user list when asc sort is in use.
...
fix #2181
2012-12-15 03:51:38 +01:00
Florent Le Coz
c7f4abaef6
Add support for /set <option> toggle, which toggles the current value
...
fix #2184
2012-12-15 03:28:06 +01:00
Florent Le Coz
786f0e7222
Introduce a special "reverse" value for the COLOR_HIGHLIGHT_NICK theme option.
...
If COLOR_HIGHLIGHT_NICK = "reverse", the highlight nick will be in reverse
mode.
fix #2165
2012-12-15 02:42:30 +01:00
Florent Le Coz
fb8295c05f
Do not use COLOR_HIGHLIGHT_NICK for things not related to highlighted nicks.
2012-12-15 02:05:21 +01:00
Florent Le Coz
0ef9d3594b
Use get_wch() if available, otherwise use the old (maybe buggy) method.
...
This makes it possible to read the ctrl+arrows keys with python3.3, assign
ctrl+left/right to next/previous tab, in the default config.
2012-12-14 04:21:17 +01:00
Łabędź
1835d36495
bugfix: count roster list length by real listed item and not count filtered items
...
bugfix: use cache table of roster (created on every refresh) to get selected row object,
fixing bad row selecting when jumping over group (was changing pos variable and
not selected_row while moving to next contact after group)
2012-12-13 22:03:36 +01:00
Florent Le Coz
e2592f5cdf
Add a new show_timestamps option to hide/show timestamps in text buffers.
2012-12-07 23:39:49 +01:00
mathieui
59be8bdd62
Sort items in /help
2012-12-05 19:40:05 +01:00
Florent Le Coz
7b9ee9cdb7
Force a resize of the interface whenever we /set something.
...
This avoid some garbage on the screen when we set an option that changes the
behaviour of the UI.
2012-11-30 15:14:47 +01:00
Florent Le Coz
5bfbbb2c24
Add a hide_user_lits option that does what it says.
...
fix #2170
2012-11-30 15:14:47 +01:00
Florent Le Coz
5db9144303
Fix a byte value in the utf-8 decoding in poopt.
2012-11-30 15:14:21 +01:00
mathieui
9e0fe54a49
Fix the timedelta for python 3.1
2012-11-23 09:01:35 +01:00