Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAleksey Lim <alsroot@member.fsf.org>2009-09-06 10:30:38 (GMT)
committer Aleksey Lim <alsroot@member.fsf.org>2009-09-06 10:30:38 (GMT)
commit18b089a07f68aa669d49ebdac726e5d71ab9985c (patch)
treef3c0cdd24c7b6a1d8e62f5c427f268b14e705e89 /src
parent4951e1df71604ccf8e27fe23d22edfe98d3067cd (diff)
Journal list view: jumping back to first page when popping up a palette #1235
Diffstat (limited to 'src')
-rw-r--r--src/jarabe/journal/listview.py13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/jarabe/journal/listview.py b/src/jarabe/journal/listview.py
index 057b7c4..b3bf067 100644
--- a/src/jarabe/journal/listview.py
+++ b/src/jarabe/journal/listview.py
@@ -279,7 +279,6 @@ class BaseListView(gtk.Bin):
def refresh(self):
logging.debug('ListView.refresh query %r', self._query)
self._stop_progress_bar()
- self._start_progress_bar()
if self._model is not None:
self._model.stop()
@@ -290,12 +289,19 @@ class BaseListView(gtk.Bin):
self._model.setup()
def __model_ready_cb(self, tree_model):
+ logging.debug('ListView.__model_ready_cb')
self._stop_progress_bar()
+ scroll_position = self.tree_view.props.vadjustment.props.value
+ logging.debug('ListView.__model_ready_cb %r', scroll_position)
+
# Cannot set it up earlier because will try to access the model and it
# needs to be ready.
self.tree_view.set_model(self._model)
+ self.tree_view.props.vadjustment.props.value = scroll_position
+ self.tree_view.props.vadjustment.value_changed()
+
if len(tree_model) == 0:
if self._is_query_empty():
self._show_message(MESSAGE_EMPTY_JOURNAL)
@@ -315,6 +321,9 @@ class BaseListView(gtk.Bin):
return True
def __model_progress_cb(self, tree_model):
+ if self._progress_bar is None:
+ self._start_progress_bar()
+
if time.time() - self._last_progress_bar_pulse > 0.05:
if self._progress_bar is not None:
self._progress_bar.pulse()
@@ -383,6 +392,8 @@ class BaseListView(gtk.Bin):
self.emit('clear-clicked')
def _clear_message(self):
+ if self.child == self._scrolled_window:
+ return
self.remove(self.child)
self.add(self._scrolled_window)
self._scrolled_window.show()