summaryrefslogtreecommitdiff
path: root/src/windows.py
AgeCommit message (Collapse)Author
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)
2012-12-07Add a new show_timestamps option to hide/show timestamps in text buffers.Florent Le Coz
2012-11-30Add a hide_user_lits option that does what it says.Florent Le Coz
fix #2170
2012-11-22Make the search usable againmathieui
- Disable the history when searching - → allow moving the cursor around to select a contact when searching - fix refresh issues
2012-11-11Preload history into discussion windows (à la mcabber)mathieui
- New option load_log defaulting to 200 to indicate the number of lines to be loaded - It’s still very raw, and the format of the message does not match the format of the normal room history, for example - Works in the Private chat, MUC, and Conversation tabs Thanks to labedz <github@labedz.org> for the original code
2012-10-14Correctly use MORE instead of PLUS.Florent Le Coz
2012-10-13Fixes #2374 (Crash on " " in the MUC list)mathieui
- Also fixes arefresh issue (up&down keys didn’t refresh the win) - Rework the style of the Columns a bit (was 2-spaces indent & trailing spaces)
2012-10-09Send a real \t when pasting a text containing tabs.Florent Le Coz
2012-09-26Rewrite the tab number handlingmathieui
- Now the tab number is computed instead of assigned and fixed - Added tabs.GapTab to keep the old behaviour - Added a create_gaps option, defaults to true (may change in the future) - If there are gaps before using /set to change the option to false, they will be removed. (this is a preparation for the move_tab command)
2012-08-06Add a common.safeJID function, and use it everywheremathieui
2012-08-05Should fix most tracebacks due to the new sleek versionmathieui
(sleekxmpp added JID validation, which means that JID(something) now raises an exception if the jid is invalid, instead of failing silently and having JID('') as a default)
2012-08-01Add a roster_group_sort option, which works like roster_sortmathieui
- defaults to "name" (sort by group name) - document it - also, micro-optimize get_nb_connected_contacts()
2012-07-31Add a roster_sort option to sort the contacts inside the roster groupsmathieui
- defaults to jid_show (which means that they are sorted into sub-groups by show and are sorted by JID inside those) - See the default config file or the documentation for details
2012-07-26Change how scrolling is donemathieui
- All functions involved return a boolean, and the core function use that value to determine if a refresh is needed or not. (avoids useless refreshs) - Scrolling with PGUP/DOWN on the roster now only does _one_ action, an not a range corresponding to the screen size (should be way faster)