diff --git a/src/display/sp-canvas.cpp b/src/display/sp-canvas.cpp index 8bc0daaa38538f103e4e4878bd8bd192c3a63d8e..a2901741adbf465eb46f853fe71124a0c9e70a78 100644 --- a/src/display/sp-canvas.cpp +++ b/src/display/sp-canvas.cpp @@ -1020,7 +1020,6 @@ static void sp_canvas_init(SPCanvas *canvas) canvas->_inside = false; // this could be wrong on start but we update it as far we bo to the other side. canvas->_splits = 0; canvas->_forcefull = false; - canvas->_delayrendering = 0; canvas->_totalelapsed = 0; canvas->_scrooling = false; canvas->_idle_time = g_get_monotonic_time(); @@ -1175,7 +1174,6 @@ void SPCanvas::handle_get_preferred_height(GtkWidget *widget, gint *minimum_heig void SPCanvas::handle_size_allocate(GtkWidget *widget, GtkAllocation *allocation) { SPCanvas *canvas = SP_CANVAS (widget); - canvas->_delayrendering = 20; // Allocation does not depend on device scale. GtkAllocation old_allocation; gtk_widget_get_allocation(widget, &old_allocation); @@ -2085,13 +2083,6 @@ int SPCanvas::paintRectInternal(PaintRectSetup const *setup, Geom::IntRect const gint64 now = g_get_monotonic_time(); gint64 elapsed = now - setup->start_time; - // if we do canvas resize or panning we want the canvas not redraw in enought times - // to make a smooth response. - if (_delayrendering != 0) { - --_delayrendering; - return false; - } - // Allow only very fast buffers to be run together; // as soon as the total redraw time exceeds 1ms, cancel; // this returns control to the idle loop and allows Inkscape to process user input @@ -2556,12 +2547,10 @@ gint SPCanvas::idle_handler(gpointer data) static int totaloops = 1; gint64 now = 0; gint64 elapsed = 0; - if (!canvas->_delayrendering) { - now = g_get_monotonic_time(); - elapsed = now - canvas->_idle_time; - g_message("[%i] start loop %i in split %i at %f", canvas->_idle_id, totaloops, canvas->_splits, - canvas->_totalelapsed / (double)1000000 + elapsed / (double)1000000); - } + now = g_get_monotonic_time(); + elapsed = now - canvas->_idle_time; + g_message("[%i] start loop %i in split %i at %f", canvas->_idle_id, totaloops, canvas->_splits, + canvas->_totalelapsed / (double)1000000 + elapsed / (double)1000000); #endif int ret = canvas->doUpdate(); int n_rects = cairo_region_num_rectangles(canvas->_clean_region); @@ -2570,20 +2559,17 @@ gint SPCanvas::idle_handler(gpointer data) } #ifdef DEBUG_PERFORMANCE - if (ret == 0 && !canvas->_delayrendering) { - now = g_get_monotonic_time(); - elapsed = now - canvas->_idle_time; - g_message("[%i] loop ended unclean at %f", canvas->_idle_id, - canvas->_totalelapsed / (double)1000000 + elapsed / (double)1000000); - } - if (ret == 0 && !canvas->_delayrendering) { + now = g_get_monotonic_time(); + elapsed = now - canvas->_idle_time; + g_message("[%i] loop ended unclean at %f", canvas->_idle_id, + canvas->_totalelapsed / (double)1000000 + elapsed / (double)1000000); + if (ret == 0) { totaloops += 1; } if (ret) { // Reset idle id canvas->_scrooling = false; canvas->_forcefull = false; - canvas->_delayrendering = 0; now = g_get_monotonic_time(); elapsed = now - canvas->_idle_time; canvas->_totalelapsed += elapsed; @@ -2612,7 +2598,6 @@ gint SPCanvas::idle_handler(gpointer data) canvas->_idle_id = 0; canvas->_scrooling = false; canvas->_forcefull = false; - canvas->_delayrendering = 0; #endif } return !ret; diff --git a/src/display/sp-canvas.h b/src/display/sp-canvas.h index 2d64534db04c27869d17cf389ed7b84a9694b3f5..770a04765d9cf4725d955e164e9b112c69376c0b 100644 --- a/src/display/sp-canvas.h +++ b/src/display/sp-canvas.h @@ -209,7 +209,6 @@ public: int _y0; ///< World coordinate of the topmost pixels of window bool _forcefull; bool _scrooling; - int _delayrendering; int _device_scale; ///< Scale for high DPI montiors gint64 _idle_time; int _splits; diff --git a/src/ui/tools/tool-base.cpp b/src/ui/tools/tool-base.cpp index e96797386b6d1da59b281c7d7b2d116a895cc414..eb2f2119a2b345344a599e228a7e8beb609c1913 100644 --- a/src/ui/tools/tool-base.cpp +++ b/src/ui/tools/tool-base.cpp @@ -455,9 +455,6 @@ bool ToolBase::root_handler(GdkEvent* event) { break; case GDK_MOTION_NOTIFY: - if (this->space_panning) { - this->desktop->canvas->_delayrendering = 20; - } if (panning) { if (panning == 4 && !xp && !yp ) { // + mouse panning started, save location and grab canvas