From 686d1ebd18e84d88b02626574e24c67953a9191e Mon Sep 17 00:00:00 2001 From: Eli Barzilay Date: Wed, 22 Apr 2009 09:21:54 +0000 Subject: [PATCH] fix a subtle bug (canvas could be #f) svn: r14584 original commit: 64b59f2b288871b1482da2c7e583037cce0abc7f --- collects/framework/private/frame.ss | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/collects/framework/private/frame.ss b/collects/framework/private/frame.ss index b07f7797..e1db4bb9 100644 --- a/collects/framework/private/frame.ss +++ b/collects/framework/private/frame.ss @@ -2096,17 +2096,14 @@ (send (send find-edit get-canvas) focus)))) (define/public (unhide-search-and-toggle-focus) - (cond - [hidden? - (unhide-search #t)] - [(or (not text-to-search) - (send (send text-to-search get-canvas) has-focus?)) - (send find-edit set-position 0 (send find-edit last-position)) - (send find-canvas focus)] - [else - (let ([canvas (send text-to-search get-canvas)]) - (when canvas - (send canvas focus)))])) + (if hidden? + (unhide-search #t) + (let ([canvas (and text-to-search (send text-to-search get-canvas))]) + (cond + [(or (not text-to-search) (and canvas (send canvas has-focus?))) + (send find-edit set-position 0 (send find-edit last-position)) + (send find-canvas focus)] + [canvas (send canvas focus)])))) (define/public (search searching-direction) (unhide-search #f)