projects
/
synfig.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Use American spelling of 'initialise'.
[synfig.git]
/
synfig-studio
/
trunk
/
src
/
gtkmm
/
dock_navigator.cpp
diff --git
a/synfig-studio/trunk/src/gtkmm/dock_navigator.cpp
b/synfig-studio/trunk/src/gtkmm/dock_navigator.cpp
index
b96f0e8
..
c558960
100644
(file)
--- a/
synfig-studio/trunk/src/gtkmm/dock_navigator.cpp
+++ b/
synfig-studio/trunk/src/gtkmm/dock_navigator.cpp
@@
-167,8
+167,8
@@
void studio::Widget_NavView::on_start_render()
renderer = new AsyncRenderer(targ);
renderer->signal_success().connect(sigc::mem_fun(*this,&Widget_NavView::on_finish_render));
renderer = new AsyncRenderer(targ);
renderer->signal_success().connect(sigc::mem_fun(*this,&Widget_NavView::on_finish_render));
- renderer->start();
dirty = false;
dirty = false;
+ renderer->start();
}
}
}
}
@@
-258,6
+258,11
@@
static double zoom_to_unit(double f)
bool studio::Widget_NavView::on_expose_draw(GdkEventExpose */*exp*/)
{
bool studio::Widget_NavView::on_expose_draw(GdkEventExpose */*exp*/)
{
+ // don't redraw if the previous redraw is still running single-threaded
+ // or we end up destroying the renderer that's rendering it
+ if (App::single_threaded && renderer && renderer->updating)
+ return false;
+
//print out the zoom
//HACK kind of...
//zoom_print.set_text(strprintf("%.1f%%",100*unit_to_zoom(adj_zoom.get_value())));
//print out the zoom
//HACK kind of...
//zoom_print.set_text(strprintf("%.1f%%",100*unit_to_zoom(adj_zoom.get_value())));