popup-menu
This commit is contained in:
@@ -7,6 +7,7 @@
|
||||
"wv-input.rkt"
|
||||
"wv-settings.rkt"
|
||||
"rgba.rkt"
|
||||
"menu.rkt"
|
||||
net/url
|
||||
net/sendurl
|
||||
racket/string
|
||||
@@ -326,23 +327,23 @@
|
||||
(define/public (set-title! title)
|
||||
(webview-set-title! wv title))
|
||||
|
||||
(define/public (popup-menu menu-def x y)
|
||||
(webview-popup-menu wv menu-def x y)
|
||||
(define/public (popup-menu! menu-def x y)
|
||||
(webview-popup-menu! wv menu-def x y)
|
||||
(let* ((ids (list))
|
||||
(clear-connections (λ ()
|
||||
(for-each (λ (id)
|
||||
(send this disconnect-menu! id))
|
||||
ids))))
|
||||
(menu-for-each menu-def
|
||||
(wv-menu-for-each menu-def
|
||||
(λ (item)
|
||||
(let ((cb (ww-menu-item-callback item))
|
||||
(id (ww-menu-item-id item)))
|
||||
(let ((cb (wv-menu-item-callback item))
|
||||
(id (wv-menu-item-id item)))
|
||||
(set! ids (cons id ids))
|
||||
(send this connect-menu! id (λ ()
|
||||
(clear-connections)
|
||||
(cb))))))
|
||||
(connect-menu! (ww-menu-id menu-def) (λ () (clear-connections)))
|
||||
(set! ids (cons (ww-menu-id menu-def) ids))
|
||||
(connect-menu! (wv-menu-id menu-def) (λ () (clear-connections)))
|
||||
(set! ids (cons (wv-menu-id menu-def) ids))
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user