@@ -671,12 +671,17 @@ class _StreamContentInputState extends State<_StreamContentInput> {
671
671
}
672
672
}
673
673
674
- class _TopicInput extends StatelessWidget {
674
+ class _TopicInput extends StatefulWidget {
675
675
const _TopicInput ({required this .streamId, required this .controller});
676
676
677
677
final int streamId;
678
678
final StreamComposeBoxController controller;
679
679
680
+ @override
681
+ State <_TopicInput > createState () => _TopicInputState ();
682
+ }
683
+
684
+ class _TopicInputState extends State <_TopicInput > {
680
685
@override
681
686
Widget build (BuildContext context) {
682
687
final zulipLocalizations = ZulipLocalizations .of (context);
@@ -688,18 +693,18 @@ class _TopicInput extends StatelessWidget {
688
693
).merge (weightVariableTextStyle (context, wght: 600 ));
689
694
690
695
return TopicAutocomplete (
691
- streamId: streamId,
692
- controller: controller.topic,
693
- focusNode: controller.topicFocusNode,
694
- contentFocusNode: controller.contentFocusNode,
696
+ streamId: widget. streamId,
697
+ controller: widget. controller.topic,
698
+ focusNode: widget. controller.topicFocusNode,
699
+ contentFocusNode: widget. controller.contentFocusNode,
695
700
fieldViewBuilder: (context) => Container (
696
701
padding: const EdgeInsets .only (top: 10 , bottom: 9 ),
697
702
decoration: BoxDecoration (border: Border (bottom: BorderSide (
698
703
width: 1 ,
699
704
color: designVariables.foreground.withFadedAlpha (0.2 )))),
700
705
child: TextField (
701
- controller: controller.topic,
702
- focusNode: controller.topicFocusNode,
706
+ controller: widget. controller.topic,
707
+ focusNode: widget. controller.topicFocusNode,
703
708
textInputAction: TextInputAction .next,
704
709
style: topicTextStyle,
705
710
decoration: InputDecoration (
0 commit comments