Skip to content

Commit a461b1c

Browse files
Add ability to toggle keyboard controls and show theme picker
1 parent 4154911 commit a461b1c

File tree

3 files changed

+21
-0
lines changed

3 files changed

+21
-0
lines changed

src/stories/MakeCodeToolbar.tsx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,12 +104,16 @@ const MakeCodeToolbar = ({
104104
<button onClick={() => driver.current!.toggleDebugSloMo()}>
105105
Toggle debug slow mo
106106
</button>
107+
<button onClick={() => driver.current!.toggleKeyboardControls()}>
108+
Keyboard controls
109+
</button>
107110
<button onClick={() => driver.current!.toggleGreenScreen()}>
108111
Green screen
109112
</button>
110113
<button onClick={() => driver.current!.toggleHighContrast()}>
111114
Contrast
112115
</button>
116+
<button onClick={() => driver.current!.showThemePicker()}>Theme</button>
113117
<button onClick={() => driver.current!.closeFlyout()}>
114118
Close flyout
115119
</button>

src/vanilla/makecode-frame-driver.ts

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -734,6 +734,13 @@ export class MakeCodeFrameDriver {
734734
});
735735
}
736736

737+
async showThemePicker(): Promise<void> {
738+
await this.sendRequest({
739+
type: 'pxteditor',
740+
action: 'showthemepicker',
741+
});
742+
}
743+
737744
async toggleHighContrast(): Promise<void> {
738745
await this.sendRequest({
739746
type: 'pxteditor',
@@ -749,6 +756,13 @@ export class MakeCodeFrameDriver {
749756
} as EditorMessageSetHighContrastRequest);
750757
}
751758

759+
async toggleKeyboardControls(): Promise<void> {
760+
await this.sendRequest({
761+
type: 'pxteditor',
762+
action: 'togglekeyboardcontrols',
763+
});
764+
}
765+
752766
async toggleGreenScreen(): Promise<void> {
753767
await this.sendRequest({
754768
type: 'pxteditor',

src/vanilla/pxt.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -180,9 +180,11 @@ export interface EditorMessageRequest extends EditorMessage {
180180
| 'setlanguagerestriction'
181181
| 'gettoolboxcategories'
182182
| 'toggletrace' // EditorMessageToggleTraceRequest
183+
| 'showthemepicker'
183184
| 'togglehighcontrast'
184185
| 'sethighcontrast' // EditorMessageSetHighContrastRequest
185186
| 'togglegreenscreen'
187+
| 'togglekeyboardcontrols'
186188
| 'settracestate' //
187189
| 'setsimulatorfullscreen' // EditorMessageSimulatorFullScreenRequest
188190
| 'print' // print code
@@ -542,6 +544,7 @@ export interface InfoMessage {
542544
versions: TargetVersions;
543545
locale: string;
544546
availableLocales?: string[];
547+
keyboardControls: boolean;
545548
}
546549

547550
export interface PackageExtensionData {

0 commit comments

Comments
 (0)