@@ -81,7 +81,7 @@ QgsMapCanvas::QgsMapCanvas( QWidget * parent, const char *name )
81
81
: QGraphicsView( parent )
82
82
, mCanvasProperties( new CanvasProperties )
83
83
, mPainting( false )
84
- , mLastSize ( QSize() )
84
+ , mNewSize ( QSize() )
85
85
{
86
86
mScene = new QGraphicsScene ();
87
87
setScene ( mScene );
@@ -945,9 +945,6 @@ void QgsMapCanvas::paintEvent( QPaintEvent *e )
945
945
{
946
946
if ( mNewSize .isValid () )
947
947
{
948
- mLastSize = mNewSize ;
949
- mNewSize = QSize ();
950
-
951
948
if ( mPainting || mDrawing )
952
949
{
953
950
// cancel current render progress
@@ -964,16 +961,15 @@ void QgsMapCanvas::paintEvent( QPaintEvent *e )
964
961
965
962
mPainting = true ;
966
963
967
- while ( mLastSize .isValid () )
964
+ while ( mNewSize .isValid () )
968
965
{
969
- int width = mLastSize .width ();
970
- int height = mLastSize .height ();
971
- mLastSize = QSize ();
966
+ QSize lastSize = mNewSize ;
967
+ mNewSize = QSize ();
972
968
973
969
// set map size before scene size helps keep scene indexes updated properly
974
970
// this was the cause of rubberband artifacts
975
- mMap ->resize ( QSize ( width, height ) );
976
- mScene ->setSceneRect ( QRectF ( 0 , 0 , width, height ) );
971
+ mMap ->resize ( lastSize );
972
+ mScene ->setSceneRect ( QRectF ( 0 , 0 , lastSize. width (), lastSize. height () ) );
977
973
978
974
// notify canvas items of change
979
975
updateCanvasItemPositions ();
0 commit comments