diff --git a/pd/src/g_all_guis.c b/pd/src/g_all_guis.c
index 7785aedd4aea2838576d614ee7b9f93e98c73e73..0d1b1ccaabfeae0c3d4c0f67265cfc1b96d0816b 100644
--- a/pd/src/g_all_guis.c
+++ b/pd/src/g_all_guis.c
@@ -658,9 +658,9 @@ void scalehandle_draw_select(t_scalehandle *h, t_glist *canvas, int px, int py)
         sys_vgui("canvas %s -width %d -height %d -bg $pd_colors(selection) -bd 0 "
             "-cursor %s\n", h->h_pathname, sx, sy, cursor);
         if (h->h_scale) {
-            sprintf(tags,"x%lx %lxSCALE iemgui", (long)x,(long)x);
+            sprintf(tags,"x%lx %lxSCALE iemgui selected", (long)x,(long)x);
         } else {
-            sprintf(tags,"x%lx %lx%s iemgui", (long)x,
+            sprintf(tags,"x%lx %lx%s iemgui selected", (long)x,
                 (long)x,pd_class((t_pd *)x)==canvas_class?"MOVE":"LABELH");
         }
         sys_vgui(".x%x.c create window %d %d -anchor nw -width %d -height %d "
diff --git a/pd/src/g_numbox.c b/pd/src/g_numbox.c
index 2de66bdcc7171d0a48e8b04401de902780290259..9d07505840694e5f440c316b9fb728c8914f3318 100644
--- a/pd/src/g_numbox.c
+++ b/pd/src/g_numbox.c
@@ -468,8 +468,8 @@ static void my_numbox_dialog(t_my_numbox *x, t_symbol *s, int argc,
     iemgui_dialog(&x->x_gui, argc, argv);
     x->x_numwidth = my_numbox_calc_fontwidth(x);
     my_numbox_check_minmax(x, min, max);
-    x->x_gui.x_draw(x, x->x_gui.x_glist, IEM_GUI_DRAW_MODE_CONFIG);
-    x->x_gui.x_draw(x, x->x_gui.x_glist, IEM_GUI_DRAW_MODE_MOVE);
+    iemgui_draw_erase(&x->x_gui, x->x_gui.x_glist);
+    iemgui_shouldvis(&x->x_gui, IEM_GUI_DRAW_MODE_NEW);
     scalehandle_draw(&x->x_gui, x->x_gui.x_glist);
     iemgui_label_draw_new(&x->x_gui, x->x_gui.x_glist);
     if (x->x_gui.x_selected)