Allow option switches to have keys in Gallery (#20740)

* Allow option switches to have keys

* Review comments
diff --git a/examples/flutter_gallery/lib/gallery/options.dart b/examples/flutter_gallery/lib/gallery/options.dart
index 640047c..9463066 100644
--- a/examples/flutter_gallery/lib/gallery/options.dart
+++ b/examples/flutter_gallery/lib/gallery/options.dart
@@ -115,11 +115,13 @@
 }
 
 class _BooleanItem extends StatelessWidget {
-  const _BooleanItem(this.title, this.value, this.onChanged);
+  const _BooleanItem(this.title, this.value, this.onChanged, { this.switchKey });
 
   final String title;
   final bool value;
   final ValueChanged<bool> onChanged;
+  // [switchKey] is used for accessing the switch from driver tests.
+  final Key switchKey;
 
   @override
   Widget build(BuildContext context) {
@@ -129,6 +131,7 @@
         children: <Widget>[
           new Expanded(child: new Text(title)),
           new Switch(
+            key: switchKey,
             value: value,
             onChanged: onChanged,
             activeColor: const Color(0xFF39CEFD),
@@ -217,6 +220,7 @@
           ),
         );
       },
+      switchKey: const Key('dark_theme'),
     );
   }
 }
@@ -285,6 +289,7 @@
           ),
         );
       },
+      switchKey: const Key('text_direction'),
     );
   }
 }
@@ -307,6 +312,7 @@
           ),
         );
       },
+      switchKey: const Key('slow_motion'),
     );
   }
 }