X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=src%2Fdisplay%2Fsp-canvas.h;h=bc5f835f12c1757f9539031b8737d28d9ea80811;hb=a8e0310afe0d9b31d25a143238dbbc0bc4a91860;hp=34ed87ac9198722ba9fc53795e4fd253b9c7d36a;hpb=b64d0121f71311f8f4439bd85e773e8a22f12185;p=inkscape.git diff --git a/src/display/sp-canvas.h b/src/display/sp-canvas.h index 34ed87ac9..bc5f835f1 100644 --- a/src/display/sp-canvas.h +++ b/src/display/sp-canvas.h @@ -156,6 +156,13 @@ struct SPCanvas { unsigned int need_update : 1; unsigned int need_redraw : 1; unsigned int need_repick : 1; + + NRRectL redraw_aborted; + long redraw_count; + glong slowest_buffer; + + int forced_redraw_count; + int forced_redraw_limit; /* For use by internal pick_current_item() function */ unsigned int left_grabbed_item : 1; @@ -171,6 +178,8 @@ struct SPCanvas { bool gen_all_enter_events; int rendermode; + + bool is_scrolling; NR::Rect getViewbox() const; }; @@ -179,10 +188,12 @@ GtkWidget *sp_canvas_new_aa(); SPCanvasGroup *sp_canvas_root(SPCanvas *canvas); -void sp_canvas_scroll_to(SPCanvas *canvas, double cx, double cy, unsigned int clear); +void sp_canvas_scroll_to(SPCanvas *canvas, double cx, double cy, unsigned int clear, bool is_scrolling = false); void sp_canvas_update_now(SPCanvas *canvas); void sp_canvas_request_redraw(SPCanvas *canvas, int x1, int y1, int x2, int y2); +void sp_canvas_force_full_redraw_after_interruptions(SPCanvas *canvas, unsigned int count); +void sp_canvas_end_forced_full_redraws(SPCanvas *canvas); void sp_canvas_window_to_world(SPCanvas const *canvas, double winx, double winy, double *worldx, double *worldy); void sp_canvas_world_to_window(SPCanvas const *canvas, double worldx, double worldy, double *winx, double *winy);