add keybindings for the tab movement keybindings

also move test case into an existing file because the test case
is short and it saves a little bit of trouble to have one fewer file
This commit is contained in:
Robby Findler 2013-10-12 18:43:24 -05:00
parent 89db703afb
commit 4c9a99935e
3 changed files with 31 additions and 21 deletions

View File

@ -17,12 +17,15 @@ This test checks:
that it opens, that it catches a GC message, and that that it opens, that it catches a GC message, and that
it closes) it closes)
- that the reorder tabs method doesn't break
|# |#
(require "private/drracket-test-util.rkt" (require "private/drracket-test-util.rkt"
drracket/private/local-member-names drracket/private/local-member-names
racket/gui/base racket/gui/base
framework framework
rackunit
string-constants) string-constants)
(define (main) (define (main)
@ -40,6 +43,7 @@ This test checks:
#:prefs '([plt:framework-pref:drracket:online-compilation-default-on #f]) #:prefs '([plt:framework-pref:drracket:online-compilation-default-on #f])
(λ () (λ ()
(define drr (wait-for-drracket-frame)) (define drr (wait-for-drracket-frame))
(check-reorder-tabs drr)
(check-log-panel drr) (check-log-panel drr)
(check-menus drr) (check-menus drr)
@ -169,6 +173,25 @@ This test checks:
(process-container (send frame get-menu-bar)) (process-container (send frame get-menu-bar))
(check-shortcuts)) (check-shortcuts))
(define (check-reorder-tabs drr)
(test:menu-select "File" "New")
(define drr2 (wait-for-new-frame drr))
(send drr2 create-new-tab)
(send drr2 create-new-tab)
(define tabs (send drr2 get-tabs))
(send drr2 reorder-tabs (reverse (range (length tabs))))
(define new-tabs (send drr2 get-tabs))
(check-equal? new-tabs (reverse tabs))
(send drr2 reorder-tabs (reverse (range (length tabs))))
(define new-tabs2 (send drr2 get-tabs))
(check-equal? new-tabs2 tabs)
(test:menu-select "File" (if (eq? (system-type) 'unix) "Close" "Close Window"))
(wait-for-new-frame drr2))
(define (check-log-panel drr) (define (check-log-panel drr)
(define (find-log-messages-message) (define (find-log-messages-message)

View File

@ -1,21 +0,0 @@
#lang racket/base
(require "private/drracket-test-util.rkt"
racket/list
racket/class
rackunit)
(fire-up-drracket-and-run-tests
(λ ()
(define drs (wait-for-drracket-frame))
(send drs create-new-tab)
(send drs create-new-tab)
(define tabs (send drs get-tabs))
(send drs reorder-tabs (reverse (range (length tabs))))
(define new-tabs (send drs get-tabs))
(check-equal? new-tabs (reverse tabs))
(send drs reorder-tabs (reverse (range (length tabs))))
(define new-tabs2 (send drs get-tabs))
(check-equal? new-tabs2 tabs)
))

View File

@ -747,10 +747,16 @@
(when frame (when frame
(send frame next-tab))))]) (send frame next-tab))))])
(define mprefix (if (eq? (system-type) 'windows)
(list* 'alt 'shift (get-default-shortcut-prefix))
(cons 'shift (get-default-shortcut-prefix))))
(new menu-item% (new menu-item%
[parent windows-menu] [parent windows-menu]
[label (string-constant move-current-tab-right)] [label (string-constant move-current-tab-right)]
[demand-callback dc] [demand-callback dc]
[shortcut-prefix mprefix]
[shortcut #\]]
[callback (λ (item _) [callback (λ (item _)
(let ([frame (find-frame item)]) (let ([frame (find-frame item)])
(when frame (when frame
@ -760,6 +766,8 @@
[parent windows-menu] [parent windows-menu]
[label (string-constant move-current-tab-left)] [label (string-constant move-current-tab-left)]
[demand-callback dc] [demand-callback dc]
[shortcut-prefix mprefix]
[shortcut #\[]
[callback (λ (item _) [callback (λ (item _)
(let ([frame (find-frame item)]) (let ([frame (find-frame item)])
(when frame (when frame