[1026] in BarnOwl Developers

home help back first fref pref prev next nref lref last post

[D-O-H] r1013 - branches/barnowl_sqlite/owl

daemon@ATHENA.MIT.EDU (nelhage@MIT.EDU)
Thu Oct 29 18:12:15 2009

Resent-From: nelhage@mit.edu
Resent-To: barnowl-dev-mtg@charon.mit.edu
X-Original-To: nelhage@nelhage.com
To: dirty-owl-hackers@mit.edu
From: nelhage@MIT.EDU
Reply-to: dirty-owl-hackers@MIT.EDU
Date: Wed,  2 Apr 2008 13:26:26 -0400 (EDT)

Author: nelhage
Date: 2008-04-02 13:26:26 -0400 (Wed, 02 Apr 2008)
New Revision: 1013

Modified:
   branches/barnowl_sqlite/owl/functions.c
Log:
Slightly hackish fix to deal with topmsg's across regenerating views


Modified: branches/barnowl_sqlite/owl/functions.c
===================================================================
--- branches/barnowl_sqlite/owl/functions.c	2008-04-02 17:26:25 UTC (rev 1012)
+++ branches/barnowl_sqlite/owl/functions.c	2008-04-02 17:26:26 UTC (rev 1013)
@@ -753,6 +753,7 @@
      (as close as possible to where we last where) */
   owl_view_iterator_init_id(it, v, lastmsgid);
   owl_global_set_curmsg(&g, it);
+  owl_global_set_topmsg(&g, it);
   owl_function_calculate_topmsg(OWL_DIRECTION_NONE);
   /* if there are no messages set the direction to down in case we
      delete everything upwards */
@@ -781,8 +782,9 @@
 
   v=owl_global_get_current_view(&g);
   owl_view_iterator_init_end(it, v);
+  owl_global_set_topmsg(&g, it);
   owl_global_set_curmsg(&g, it);
-  owl_function_calculate_topmsg(OWL_DIRECTION_DOWNWARDS);
+  owl_function_calculate_topmsg(OWL_DIRECTION_UPWARDS);
   /* owl_mainwin_redisplay(owl_global_get_mainwin(&g)); */
   owl_global_set_direction_downwards(&g);
 }
@@ -2329,7 +2331,7 @@
 {
   owl_view *v;
   owl_filter *f;
-  int curid=-1, topid;
+  int curid=-1;
   owl_view_iterator *it;
   owl_message *curm=NULL;
 
@@ -2351,8 +2353,6 @@
     return;
   }
 
-  topid = owl_message_get_id(owl_view_iterator_get_message(owl_global_get_topmsg(&g)));
-
   owl_view_new_filter(v, filtname);
 
   /* Figure out what to set the current message to.
@@ -2366,7 +2366,7 @@
   owl_view_iterator_init_id(it, v, curid);
 
   owl_global_set_curmsg(&g, it);
-  owl_view_iterator_init_id(owl_global_get_topmsg(&g), v, topid);
+  owl_global_set_topmsg(&g, it);
 
   owl_function_calculate_topmsg(OWL_DIRECTION_DOWNWARDS);
   owl_mainwin_redisplay(owl_global_get_mainwin(&g));


home help back first fref pref prev next nref lref last post