cocoa: fix focus
method
Don't confuse "should the Tab key advance the focus to this window?" with "can this window have the focus?".
This commit is contained in:
parent
d0561137b5
commit
60611bc081
|
@ -814,7 +814,7 @@
|
|||
(not (send e button-down? 'left))
|
||||
(not (on-menu-click? e)))))
|
||||
|
||||
(define/override (gets-focus?)
|
||||
(define/override (can-accept-focus?)
|
||||
wants-focus?)
|
||||
(define/override (can-be-responder?)
|
||||
(and wants-focus? (is-enabled-to-root?)))
|
||||
|
|
|
@ -44,7 +44,7 @@
|
|||
(let ([on? (and on? (is-window-enabled?))])
|
||||
(tellv (get-cocoa-control) setEnabled: #:type _BOOL on?)))
|
||||
|
||||
(define/override (gets-focus?)
|
||||
(define/override (can-accept-focus?)
|
||||
(tell #:type _BOOL (get-cocoa-control) canBecomeKeyView))
|
||||
|
||||
(define/public (command e)
|
||||
|
|
|
@ -117,7 +117,7 @@
|
|||
[else
|
||||
(tellv (get-cocoa) setImage: (bitmap->image label))]))
|
||||
|
||||
(define/override (gets-focus?) #f)
|
||||
(define/override (can-accept-focus?) #f)
|
||||
|
||||
(define/public (set-preferred-size)
|
||||
(tellv (get-cocoa) sizeToFit)
|
||||
|
|
|
@ -206,7 +206,7 @@
|
|||
(when control-cocoa
|
||||
(tellv control-cocoa setEnabled: #:type _BOOL on?))))
|
||||
|
||||
(define/override (gets-focus?)
|
||||
(define/override (can-accept-focus?)
|
||||
(and (not control-cocoa)
|
||||
(tell #:type _BOOL tabv-cocoa canBecomeKeyView)))
|
||||
(define/override (get-cocoa-focus)
|
||||
|
|
|
@ -751,7 +751,7 @@
|
|||
(accept-drags-everywhere (or accept-drag? accept-parent-drag?))))
|
||||
|
||||
(define/public (set-focus)
|
||||
(when (and (gets-focus?)
|
||||
(when (and (can-accept-focus?)
|
||||
(is-enabled-to-root?))
|
||||
(let ([w (tell cocoa window)])
|
||||
(when w
|
||||
|
@ -912,7 +912,8 @@
|
|||
(tellv content addCursorRect: #:type _NSRect r cursor: cursor-handle)))))
|
||||
(define/public (get-cursor-width-delta) 0)
|
||||
|
||||
(define/public (gets-focus?) #f)
|
||||
(define/public (can-accept-focus?) #f)
|
||||
(define/public (gets-focus?) (can-accept-focus?))
|
||||
(define/public (can-be-responder?) (is-enabled-to-root?))
|
||||
|
||||
(define/public (on-color-change)
|
||||
|
|
Loading…
Reference in New Issue
Block a user