From 445e1e5f2e581e8d4ce7a5d6f90c08023f09a332 Mon Sep 17 00:00:00 2001
From: Aleksey Lim <alsroot@member.fsf.org>
Date: Thu, 3 Sep 2009 10:04:03 +0000
Subject: Do not lose focus on list view while ds requery #1260
---
src/jarabe/journal/listview.py | 14 +++++++++-----
1 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/src/jarabe/journal/listview.py b/src/jarabe/journal/listview.py
index bc4df0a..42322b7 100644
a
|
b
|
class BaseListView(gtk.Bin): |
307 | 307 | def refresh(self): |
308 | 308 | logging.debug('ListView.refresh query %r', self._query) |
309 | 309 | self._stop_progress_bar() |
310 | | self._start_progress_bar() |
311 | 310 | |
312 | 311 | if self.model is not None: |
313 | 312 | self.model.stop() |
… |
… |
class BaseListView(gtk.Bin): |
344 | 343 | return True |
345 | 344 | |
346 | 345 | def __model_progress_cb(self, tree_model): |
347 | | if time.time() - self._last_progress_bar_pulse > 0.05: |
348 | | if self._progress_bar is not None: |
349 | | self._progress_bar.pulse() |
350 | | self._last_progress_bar_pulse = time.time() |
| 346 | if time.time() - (self._last_progress_bar_pulse or 0) <= 0.05: |
| 347 | # skip small steps |
| 348 | return |
| 349 | if self._progress_bar is None: |
| 350 | self._start_progress_bar() |
| 351 | self._progress_bar.pulse() |
| 352 | self._last_progress_bar_pulse = time.time() |
351 | 353 | |
352 | 354 | def _start_progress_bar(self): |
353 | 355 | alignment = gtk.Alignment(xalign=0.5, yalign=0.5, xscale=0.5) |
… |
… |
class BaseListView(gtk.Bin): |
412 | 414 | self.emit('clear-clicked') |
413 | 415 | |
414 | 416 | def _clear_message(self): |
| 417 | if self.child == self._scrolled_window: |
| 418 | return |
415 | 419 | self.remove(self.child) |
416 | 420 | self.add(self._scrolled_window) |
417 | 421 | self._scrolled_window.show() |