diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/core/core.py | 3 | ||||
-rw-r--r-- | src/events.py | 2 |
2 files changed, 5 insertions, 0 deletions
diff --git a/src/core/core.py b/src/core/core.py index 19eb9b16..4ffb0213 100644 --- a/src/core/core.py +++ b/src/core/core.py @@ -1098,12 +1098,15 @@ class Core(object): Prevents the tab number from going over the total number of opened tabs, or under 0 """ + old = self._current_tab_nb if value >= len(self.tabs): self._current_tab_nb = 0 elif value < 0: self._current_tab_nb = len(self.tabs) - 1 else: self._current_tab_nb = value + if old != self._current_tab_nb: + self.events.trigger('tab_change', old, self._current_tab_nb) ### Opening actions ### diff --git a/src/events.py b/src/events.py index 71687d14..50711022 100644 --- a/src/events.py +++ b/src/events.py @@ -45,6 +45,7 @@ class EventHandler(object): 'muc_ban': [], 'send_normal_presence': [], 'ignored_private': [], + 'tab_change': [], } def add_event_handler(self, name, callback, position=0): @@ -72,6 +73,7 @@ class EventHandler(object): if callbacks is None: log.debug('%s: No such event.', name) return + log.debug('Event %s triggered, callbacks: %s', name, callbacks) for callback in callbacks: callback(*args, **kwargs) |