diff --git a/pd/src/g_all_guis.c b/pd/src/g_all_guis.c index 9f30af6eb7be49171adc521e922e8a46fc49e391..66f63c856f7cb18e707de0927aa40e2a1f27f104 100644 --- a/pd/src/g_all_guis.c +++ b/pd/src/g_all_guis.c @@ -505,7 +505,8 @@ void iemgui_displace(t_gobj *z, t_glist *glist, int dx, int dy) t_iemgui *x = (t_iemgui *)z; x->x_obj.te_xpix += dx; x->x_obj.te_ypix += dy; - iemgui_shouldvis(x, IEM_GUI_DRAW_MODE_MOVE); + if (glist_isvisible(glist)) + iemgui_shouldvis(x, IEM_GUI_DRAW_MODE_MOVE); } void iemgui_displace_withtag(t_gobj *z, t_glist *glist, int dx, int dy) diff --git a/pd/src/g_editor.c b/pd/src/g_editor.c index ac0c005a6da327db511ab3f3ef0cb110a0584553..5b3e5a01c91ef22aece1f9c1d43f36a979ba049b 100644 --- a/pd/src/g_editor.c +++ b/pd/src/g_editor.c @@ -7319,7 +7319,8 @@ static void canvas_dofont(t_canvas *x, t_floatarg font, t_floatarg xresize, if (pd_class(&y->g_pd) == canvas_class && !canvas_isabstraction((t_canvas *)y)) canvas_dofont((t_canvas *)y, font, xresize, yresize); - scrollbar_update(x); + if (glist_isvisible(x)) + scrollbar_update(x); } /* canvas_menufont calls up a dialog which calls this back */ diff --git a/pd/src/g_text.c b/pd/src/g_text.c index 96e1dccefca713ba406b0160e913ec84f54d0560..854b6230572c8992971593696d72eae3bcf7f7e9 100644 --- a/pd/src/g_text.c +++ b/pd/src/g_text.c @@ -2452,7 +2452,6 @@ void glist_eraseiofor(t_glist *glist, t_object *ob, char *tag) // erase the whole gobj in the gui one go void text_erase_gobj(t_text *x, t_glist *glist, char *tag) { - if (x->te_type == T_TEXT && !glist->gl_edit) return; gui_vmess("gui_gobj_erase", "xs", glist_getcanvas(glist), tag); }