summaryrefslogtreecommitdiff
path: root/poezio
AgeCommit message (Collapse)Author
2019-06-22Merge remote-tracking branch 'origin/mr/31'Maxime “pep” Buquet
2019-06-22Rework priority handling for eventsMaxime “pep” Buquet
Introduce the concept of priority for event handlers, instead of the position parameter. The new `priority` parameter replacing `position` should be an integer between 0 and 100. It defaults to 50. The previous `position` parameter was only used to insert at a certain position in the list of handlers (for this particular event). No reference of it was kept, which means that it was not possible to ensure an event was called in the position is was supposed to be. I am now using per-event dicts, containing priority buckets (lists) of handlers. I am using OrderedDicts to make it easier to loop through all of the handlers, as insertion happens less often than reading. I was also suggested using bisect with a simple list of tuples (priority, handler) per event, but bisect tries to compare bound methods, which is obviously not possible. Maybe it would be interesting to find a way use this method instead of OrderedDict as that might be less resource consuming. This said, I don't think this part of poezio is a bottleneck at all, so maybe this is just fine as is. Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-06-20Added few comments in the code and splitted a part of code into different ↵Madhur Garg
function.
2019-06-20Fixed some mistakes in coding styleMadhur Garg
2019-06-20Corrects the repeated refresh of the windowMadhur Garg
2019-06-20Updated usage of /sb in documentationMadhur Garg
2019-06-20Getting the line number of the message in the tab based on the searched ↵Madhur Garg
timestamp
2019-06-20Code work for /sb goto <+|-linecount>|<linenum>|<timestamp>Madhur Garg
2019-06-20Corrected code duplicationMadhur Garg
2019-06-20Corrected description of the scrollback commandMadhur Garg
2019-06-20Few imports for scrollback commandMadhur Garg
2019-06-20Initial version of scrollbackMadhur Garg
2019-05-28Also skip librsvg import on AttributeErrorEmmanuel Gil Peyrot
In the case python-gobject isn’t installed, but another package (such as libibus) provides overrides, the gi module will still get imported fine despite being empty, resulting in a traceback. To prevent this, we also catch AttributeError so that gi.require_version can fail.
2019-05-07config: ensure tabname is not a JID objectMaxime “pep” Buquet
Tabnames should be treated as opaque strings. This specific fix prevents tabname (JID) to be compared with invalid stringly-typed JIDs. JID's __eq__ method used to (after poezio/slixmpp@47968963) try and convert anything into JIDs. This has been fixed and now properly returns NotImplemented. Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-29ConversationTab: fix undefined reference, missing selfMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-28MucTab: Replace tab.name with tab.jid where appropriateMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-27Replace tab.name with tab.jidMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-27multiuserchat: type change_show methodMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-27core/commands: Use jid parameter instead of name where appropriateMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-27core/completions: Use tab.jid where appropriateMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-27CommandCore: remove None check on MucTab.jidMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-27PrivateTab: Use jid parameter instead of name where appropriateMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-27*ConversationTab: Use jid parameter instead of name where appropriateMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-27OneToOneTab: Remove default value for jid parameterMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-27ChatTab: Remove None checks on `ChatTab.jid`Maxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-27ChatTab: Change ChatTab.name meaningMaxime “pep” Buquet
`ChatTab.name` is now its own property. It only mirrors `ChatTab.jid` when it is None for compat reasons. If code tries to set `ChatTab.name` and it is a valid JID, `ChatTab.jid` is set instead for compat reasons and `ChatTab.name` stays with its previous value. To have `ChatTab.name` mirror `ChatTab.jid` again, set it to None. Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-27ChatTab: now accepts only Jids with a domainMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-24Merge remote-tracking branch 'origin/mr/29'Maxime “pep” Buquet
2019-04-21doc: Fix scroll_to_separator description.Emmanuel Gil Peyrot
2019-04-19Refresh tab when information element is added or removedMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-17save_order, save: config option is not always a stringMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-13Sort chatrooms by namePS Le Stang
2019-04-08core/commands: remove more safeJID calls; add type hintsMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-08list command: default to domain jid if no argument specifiedMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-08core/commands: remove safeJID call in list commandMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-08ChatTab: Oops. prevent recursion when using settersMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-08ChatTab: utilise self.jidMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-08ChatTab: Introduce self.jid as a JID objectMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-08Revert work on tabs module to change tab.name to JID.Maxime “pep” Buquet
This reverts commits: d693479d05f1ada999c0e29a9d9e2f021dd59e50 2d0cc092fcd154b2d14be0c5ac0ff338607824a0 89a61b84bdb29d3df8c08436c3484fddba8d2ef1 8194d9afbdec2daa1377e07ebb26bb99406473d0 e256c31875c8b67d85fe30d3e2c14c896066657a a21335ac171a827a613dcce744898e822689c9d3 c96e528a8fd1313f75cb792a8e4826fbcfde1bec 0551867bfdb8dfa7dbd5964a15a1a950510e2c71 6ab49c188a6e5bb95773165f0bdbd672b41c8c81
2019-04-08Fix tab.name not being a string by calling the right propertyMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-08PrivateInfoWin: remove safeJID callMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-08MucInfoWin: fix room name typeMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-07Remove more safeJID callsMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-07poezio/tabs: Fix jid types for base tabs contructorsMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-07poezio/text_buffer: Remove JID type for nowMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-07poezio/tabs/basetabs: remove safeJID callMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-07poezio/bookmarks: Fix type for tab nameMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-07safeJID: Remove some safeJID callsMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-07impromptu: catch invalidJID exception for room jidMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-07safeJID: Add debug logging on invalidJID exceptionMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>