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