@@ -120,6 +120,8 @@ class GalleryDrawer extends StatelessWidget {
120
120
this .checkerboardOffscreenLayers,
121
121
this .onCheckerboardOffscreenLayersChanged,
122
122
this .onPlatformChanged,
123
+ this .overrideDirection: TextDirection .ltr,
124
+ this .onOverrideDirectionChanged,
123
125
this .onSendFeedback,
124
126
}) : assert (onThemeChanged != null ),
125
127
assert (onTimeDilationChanged != null ),
@@ -145,6 +147,9 @@ class GalleryDrawer extends StatelessWidget {
145
147
146
148
final ValueChanged <TargetPlatform > onPlatformChanged;
147
149
150
+ final TextDirection overrideDirection;
151
+ final ValueChanged <TextDirection > onOverrideDirectionChanged;
152
+
148
153
final VoidCallback onSendFeedback;
149
154
150
155
@override
@@ -220,6 +225,16 @@ class GalleryDrawer extends StatelessWidget {
220
225
selected: timeDilation != 1.0 ,
221
226
);
222
227
228
+ final Widget overrideDirectionItem = new CheckboxListTile (
229
+ title: const Text ('Force RTL' ),
230
+ value: overrideDirection == TextDirection .rtl,
231
+ onChanged: (bool value) {
232
+ onOverrideDirectionChanged (value ? TextDirection .rtl : TextDirection .ltr);
233
+ },
234
+ secondary: const Icon (Icons .format_textdirection_r_to_l),
235
+ selected: overrideDirection == TextDirection .rtl,
236
+ );
237
+
223
238
final Widget sendFeedbackItem = new ListTile (
224
239
leading: const Icon (Icons .report),
225
240
title: const Text ('Send feedback' ),
@@ -285,6 +300,7 @@ class GalleryDrawer extends StatelessWidget {
285
300
allDrawerItems.addAll (textSizeItems);
286
301
287
302
allDrawerItems..addAll (< Widget > [
303
+ overrideDirectionItem,
288
304
const Divider (),
289
305
animateSlowlyItem,
290
306
const Divider (),
0 commit comments