Hi all,
I've attached a patch for the third part of bug
http://trac.osgeo.org/qgis/ticket/3369 (which is really a separate bug
from the other two parts), hope this is the right place to do it.

As for the other parts, it works fine for me with QGIS r14982M on
Kubuntu 10.04, Qt 4.6.2.

-JD
-- 
One of the advantages of being disorderly is that one is constantly
making exciting discoveries. - AA Milne
Index: qgsmapcanvas.cpp
===================================================================
--- qgsmapcanvas.cpp    (revision 14982)
+++ qgsmapcanvas.cpp    (working copy)
@@ -579,6 +579,8 @@
 
   if ( mLastExtentIndex > 0 )
   {
+    // This code should duplicate QgsMapCanvas::setExtent(), but without
+    // modifying the view history.
     mLastExtentIndex--;
     mMapRenderer->setExtent( mLastExtent[mLastExtentIndex] );
     emit extentsChanged();
@@ -589,6 +591,8 @@
     // update controls' enabled state
     emit zoomLastStatusChanged( mLastExtentIndex > 0 );
     emit zoomNextStatusChanged( mLastExtentIndex < mLastExtent.size() - 1 );
+
+    updateCanvasItemPositions();
   }
 
 } // zoomToPreviousExtent
@@ -601,6 +605,8 @@
   }
   if ( mLastExtentIndex < mLastExtent.size() - 1 )
   {
+    // This code should duplicate QgsMapCanvas::setExtent(), but without
+    // modifying the view history.
     mLastExtentIndex++;
     mMapRenderer->setExtent( mLastExtent[mLastExtentIndex] );
     emit extentsChanged();
@@ -611,6 +617,8 @@
     // update controls' enabled state
     emit zoomLastStatusChanged( mLastExtentIndex > 0 );
     emit zoomNextStatusChanged( mLastExtentIndex < mLastExtent.size() - 1 );
+
+    updateCanvasItemPositions();
   }
 }// zoomToNextExtent
 
_______________________________________________
Qgis-developer mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/qgis-developer

Reply via email to