diff --git a/collects/framework/private/editor.ss b/collects/framework/private/editor.ss index 83c99cd3..d25b9703 100644 --- a/collects/framework/private/editor.ss +++ b/collects/framework/private/editor.ss @@ -1,3 +1,4 @@ + (module editor mzscheme (require (lib "unitsig.ss") (lib "class.ss") @@ -223,20 +224,24 @@ (super-after-edit-sequence) (let ([queue edit-sequence-queue] [ht edit-sequence-ht] - [find-enclosing-edit - (lambda (edit) - (let ([admin (send edit get-admin)]) + [find-enclosing-editor + (lambda (editor) + (let ([admin (send editor get-admin)]) (cond [(is-a? admin editor-snip-editor-admin<%>) (send (send (send admin get-snip) get-admin) get-editor)] [else #f])))]) (set! edit-sequence-queue null) (set! edit-sequence-ht (make-hash-table)) - (let loop ([edit (find-enclosing-edit this)]) + (let loop ([editor (find-enclosing-editor this)]) (cond - [(and edit (not (send edit local-edit-sequence?))) - (loop (find-enclosing-edit edit))] - [edit (send edit extend-edit-sequence-queue queue ht)] + [(and editor + (is-a? editor basic<%>) + (not (send editor local-edit-sequence?))) + (loop (find-enclosing-editor editor))] + [(and editor + (is-a? editor basic<%>)) + (send editor extend-edit-sequence-queue queue ht)] [else (hash-table-for-each ht (lambda (k t) (t))) (for-each (lambda (t) (t)) queue)]))))] diff --git a/collects/framework/private/frame.ss b/collects/framework/private/frame.ss index 3e74d6b5..144caa64 100644 --- a/collects/framework/private/frame.ss +++ b/collects/framework/private/frame.ss @@ -116,6 +116,7 @@ get-filename)) (define basic-mixin (mixin ((class->interface frame%)) (basic<%>) + (rename [super-can-close? can-close?] [super-on-close on-close] [super-on-focus on-focus]) diff --git a/collects/framework/private/group.ss b/collects/framework/private/group.ss index 6f510d1b..3a4ec048 100644 --- a/collects/framework/private/group.ss +++ b/collects/framework/private/group.ss @@ -88,8 +88,7 @@ (get-name (frame-frame f2)))))]) (for-each (lambda (menu) - (for-each (lambda (item) (send item delete)) - (send menu get-items)) + (for-each (lambda (item) (send item delete)) (send menu get-items)) (instantiate menu:can-restore-menu-item% () (label (string-constant bring-frame-to-front...)) (parent menu) diff --git a/collects/framework/test.ss b/collects/framework/test.ss index 52927e1a..c6d82466 100644 --- a/collects/framework/test.ss +++ b/collects/framework/test.ss @@ -1,3 +1,4 @@ + (module test mzscheme (require (lib "mred.ss" "mred") (lib "class.ss")