// TODO: put window in user's preferred location static AutoCloseable dm_showSuggestion(S suggestion, Runnable action) { O mod = dm_current_generic(); makeFrame_post.set(vf1_frameAutoRequestFocusFalse()); ret tempDisposeWindow(disposeWindowAfter(30.0, showPackedFrameInBottomRightCorner( centerAndSouthWithMargins(jlabel(suggestion), hgridWithSpacing( jThreadedButton("OK", r { temp dm_enter(mod); disposeWindow(heldInstance(JButton)); callF(action); }), jCancelButton("No") ) )))); }