From ffb42c913eb1c525bccea8da7ebf250e970c661a Mon Sep 17 00:00:00 2001 From: John Benediktsson Date: Sun, 11 Feb 2018 10:09:36 -0800 Subject: [PATCH] minesweeper: always relayout-1 on click/mark. This fixes the smiley uhoh to repaint immediately rather than waiting for the next timer tick. --- extra/minesweeper/minesweeper.factor | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/extra/minesweeper/minesweeper.factor b/extra/minesweeper/minesweeper.factor index 6ea30c432b..aece0341b6 100644 --- a/extra/minesweeper/minesweeper.factor +++ b/extra/minesweeper/minesweeper.factor @@ -229,7 +229,7 @@ M: grid-gadget draw-gadget* h 3 55 between? gadget pref-dim first 2/ w - abs 26 < and [ gadget [ reset-cells ] change-cells - f >>start f >>end relayout-1 + f >>start f >>end drop ] when ] [ h 58 - w [ 32 /i ] bi@ :> ( row col ) @@ -238,10 +238,9 @@ M: grid-gadget draw-gadget* cells row col click-cell-at [ gadget start>> [ now gadget start<< ] unless cells game-over? [ now gadget end<< ] when - gadget relayout-1 ] when ] unless - ] if ; + ] if gadget relayout-1 ; :: on-mark ( gadget -- ) gadget hand-rel first2 :> ( w h ) @@ -252,10 +251,9 @@ M: grid-gadget draw-gadget* cells row col mark-cell-at [ gadget start>> [ now gadget start<< ] unless cells game-over? [ now gadget end<< ] when - gadget relayout-1 ] when ] unless - ] when ; + ] when gadget relayout-1 ; : new-game ( gadget rows cols mines -- ) [ make-cells ] dip place-mines update-counts >>cells