summaryrefslogtreecommitdiff
path: root/src/windows.py
AgeCommit message (Collapse)Author
2013-07-03Move backwards in the input the same way we move forward (ref #2183)mathieui
2013-06-30Fix #2329 (display the info buffer in the muclisttab)mathieui
also fix some typos in the comments, and a refresh issue with the input
2013-06-20Use a logical order of arguments in the poopt functions, nowFlorent Le Coz
2013-06-20Use cut_by_columns to properly cut nicks in the UserWin windowFlorent Le Coz
2013-06-19Remove the now useless (and fucking slow) wcwidth python implementationFlorent Le Coz
2013-06-19And actually use poopt.wcswidth to properly count the nicks' sizeFlorent Le Coz
see #2142
2013-06-19Consider the number of columns of each characters in the poopt moduleFlorent Le Coz
Some characters take 0 columns, others take 1 or 2 (full-width characters) fixes #2142
2013-06-13Improve the roster searchmathieui
- 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-10Fix addstr_colored with colors that start with a -1mathieui
2013-06-09Fix #1892 (keep the contact selected in the roster)mathieui
2013-06-09Fix #2183 (do not scroll one char at a time when you reach the end)mathieui
Now it scrolls horizontally of 1/4 the size of the input
2013-06-08Add a way to format background colors in a stringmathieui
(also add colors to the /info command in MUCs)
2013-06-07Accept NULL bytes in strings to be cut by the poopt moduleFlorent Le Coz
fix #2296
2013-05-16Fix #2307 (commandinput history)mathieui
2013-05-11Actually use it.mathieui
2013-05-11Handle the roster order cache as a real cachemathieui
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-10Fix #2131 (Input cursor when pasting text)mathieui
2013-05-01Make Alt+backspace work on my freebsdFlorent Le Coz
2013-04-04Add an option to choose between shared and separate input historymathieui
- separate_history, defaults to false
2013-04-04Fix #2255 (search in input history)mathieui
- 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-03-13Fix #2265mathieui
also: - fix Message.__str__/repr - fix a traceback with user gaming
2013-03-12Implement user gaming (xep-0196)mathieui
- configuration options - theming options - /gaming
2013-03-11Fix #1839 (User mood/activity)mathieui
- 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-11Implement XEP-0118 (Fix #1840)mathieui
- 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-10Fix #2122 (coloration of long messages)mathieui
- 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-06Add a CHAR_NEW_TEXT_SEPARATOR theming optionmathieui
2013-03-04Add a show_s2s_errors config option (cf #2182)mathieui
2013-03-03Fix #2182 (show s2s errors)mathieui
- Add the theming options COLOR_ROSTER_ERROR, CHAR_ROSTER_ERRROR, and CHAR_ROSTER_ASKED
2013-02-13Add an indicator of the number of participantsmathieui
(like in weechat)
2013-02-03Fix the folding of contacts in multiple groupsmathieui
(add a defaultdict to keep the folded state in each group)
2013-02-03Add a key (Alt+d) de delete the next word in the input.Florent Le Coz
2013-02-03Remove some useless keys, and change the keys to scroll the info win.Florent Le Coz
M-d and M-c become M-D and M-C
2013-01-29scroll_to_separator now scrolls to the top if there’s no separator.Florent Le Coz
2013-01-29Makes next_hl and prev_hl work after a scroll_to_separator.Florent Le Coz
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-26Implement XEP 296 for locking resource in conversations.Florent Le Coz
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-23Don’t rebuild the lines on resize when the width has not changedmathieui
- because it is an heavy operation, and it is useless, since the lines only change when the width changes.
2013-01-21Break the ugly roster refresh loop into twomathieui
- 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-11Improve the xml tabmathieui
fix refresh bugs, display the scrolling status, add an info bar, add the global info win
2013-01-02Fix a traceback with correctionsmathieui
2012-12-30Typomathieui
2012-12-30Fix #2189 Fix #2139 - Make /correct work properly in all chat tabsmathieui
#2189 wasn’t crashing, but well. Also fix a crash with the separator and /correct
2012-12-30Do not rebuild everything in order to modify a messagemathieui
(should fix the “leak” on /correct, and make it faster)
2012-12-29Display the number of revisions of a corrected message.Emmanuel Gil Peyrot
2012-12-29Fix /correct and /me highlights, and handle /correct a bit better.Emmanuel Gil Peyrot
2012-12-15Make /w command better.Florent Le Coz
fix #2185
2012-12-15In user lists, the upper line is now the upper most person.Florent Le Coz
This means you cannot scroll too high. fix #2180
2012-12-15Fix the position of the ++ indicator in muc user list when asc sort is in use.Florent Le Coz
fix #2181
2012-12-15Introduce a special "reverse" value for the COLOR_HIGHLIGHT_NICK theme option.Florent Le Coz
If COLOR_HIGHLIGHT_NICK = "reverse", the highlight nick will be in reverse mode. fix #2165
2012-12-15Do not use COLOR_HIGHLIGHT_NICK for things not related to highlighted nicks.Florent Le Coz
2012-12-13bugfix: count roster list length by real listed item and not count filtered ↵Łabędź
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)