|
@@ -40,9 +40,11 @@ class ZefyrEditableText extends StatefulWidget {
|
40
|
40
|
this.mode = ZefyrMode.edit,
|
41
|
41
|
this.padding = const EdgeInsets.symmetric(horizontal: 16.0),
|
42
|
42
|
this.physics,
|
|
43
|
+ this.keyboardAppearance = Brightness.light,
|
43
|
44
|
}) : assert(mode != null),
|
44
|
45
|
assert(controller != null),
|
45
|
46
|
assert(focusNode != null),
|
|
47
|
+ assert(keyboardAppearance != null),
|
46
|
48
|
super(key: key);
|
47
|
49
|
|
48
|
50
|
/// Controls the document being edited.
|
|
@@ -75,6 +77,13 @@ class ZefyrEditableText extends StatefulWidget {
|
75
|
77
|
/// Padding around editable area.
|
76
|
78
|
final EdgeInsets padding;
|
77
|
79
|
|
|
80
|
+ /// The appearance of the keyboard.
|
|
81
|
+ ///
|
|
82
|
+ /// This setting is only honored on iOS devices.
|
|
83
|
+ ///
|
|
84
|
+ /// If unset, defaults to the brightness of [Brightness.light].
|
|
85
|
+ final Brightness keyboardAppearance;
|
|
86
|
+
|
78
|
87
|
@override
|
79
|
88
|
_ZefyrEditableTextState createState() => _ZefyrEditableTextState();
|
80
|
89
|
}
|
|
@@ -103,7 +112,8 @@ class _ZefyrEditableTextState extends State<ZefyrEditableText>
|
103
|
112
|
/// keyboard become visible.
|
104
|
113
|
void requestKeyboard() {
|
105
|
114
|
if (_focusNode.hasFocus) {
|
106
|
|
- _input.openConnection(widget.controller.plainTextEditingValue);
|
|
115
|
+ _input.openConnection(
|
|
116
|
+ widget.controller.plainTextEditingValue, widget.keyboardAppearance);
|
107
|
117
|
} else {
|
108
|
118
|
FocusScope.of(context).requestFocus(_focusNode);
|
109
|
119
|
}
|
|
@@ -293,8 +303,8 @@ class _ZefyrEditableTextState extends State<ZefyrEditableText>
|
293
|
303
|
}
|
294
|
304
|
|
295
|
305
|
void _handleFocusChange() {
|
296
|
|
- _input.openOrCloseConnection(
|
297
|
|
- _focusNode, widget.controller.plainTextEditingValue);
|
|
306
|
+ _input.openOrCloseConnection(_focusNode,
|
|
307
|
+ widget.controller.plainTextEditingValue, widget.keyboardAppearance);
|
298
|
308
|
_cursorTimer.startOrStop(_focusNode, selection);
|
299
|
309
|
updateKeepAlive();
|
300
|
310
|
}
|