update dependencies
This commit is contained in:
+32
-31
@@ -938,7 +938,8 @@ class MessageInputState extends State<MessageInput> {
|
||||
super.initState();
|
||||
|
||||
if (!kIsWeb) {
|
||||
_keyboardListener = KeyboardVisibility.onChange.listen((visible) {
|
||||
_keyboardListener =
|
||||
KeyboardVisibilityController().onChange.listen((visible) {
|
||||
if (visible) {
|
||||
_onChange();
|
||||
} else {
|
||||
@@ -962,42 +963,42 @@ class MessageInputState extends State<MessageInput> {
|
||||
|
||||
Timer _debounce;
|
||||
void _onChange() {
|
||||
final s = textEditingController.text;
|
||||
StreamChannel.of(context).channel.keyStroke(
|
||||
widget.parentMessage?.id,
|
||||
);
|
||||
if (_debounce?.isActive == true) _debounce.cancel();
|
||||
_debounce = Timer(
|
||||
const Duration(milliseconds: 350),
|
||||
() {
|
||||
final s = textEditingController.text;
|
||||
StreamChannel.of(context).channel.keyStroke(
|
||||
widget.parentMessage?.id,
|
||||
);
|
||||
|
||||
setState(() {
|
||||
_messageIsPresent = s.trim().isNotEmpty;
|
||||
});
|
||||
setState(() {
|
||||
_messageIsPresent = s.trim().isNotEmpty;
|
||||
});
|
||||
|
||||
_commandsOverlay?.remove();
|
||||
_commandsOverlay = null;
|
||||
_mentionsOverlay?.remove();
|
||||
_mentionsOverlay = null;
|
||||
_commandsOverlay?.remove();
|
||||
_commandsOverlay = null;
|
||||
_mentionsOverlay?.remove();
|
||||
_mentionsOverlay = null;
|
||||
|
||||
if (s.trim().startsWith('/')) {
|
||||
_commandsOverlay = _buildCommandsOverlayEntry();
|
||||
Overlay.of(context).insert(_commandsOverlay);
|
||||
}
|
||||
if (s.trim().startsWith('/')) {
|
||||
_commandsOverlay = _buildCommandsOverlayEntry();
|
||||
Overlay.of(context).insert(_commandsOverlay);
|
||||
}
|
||||
|
||||
if (_messageIsPresent &&
|
||||
textEditingController.selection.isCollapsed &&
|
||||
textEditingController.selection.baseOffset > 0 &&
|
||||
textEditingController.text
|
||||
.substring(0, textEditingController.selection.baseOffset)
|
||||
.split(' ')
|
||||
.last
|
||||
.contains('@')) {
|
||||
if (_debounce?.isActive == true) _debounce.cancel();
|
||||
_debounce = Timer(
|
||||
const Duration(milliseconds: 500),
|
||||
() {
|
||||
if (_messageIsPresent &&
|
||||
textEditingController.selection.isCollapsed &&
|
||||
textEditingController.selection.baseOffset > 0 &&
|
||||
textEditingController.text
|
||||
.substring(0, textEditingController.selection.baseOffset)
|
||||
.split(' ')
|
||||
.last
|
||||
.contains('@')) {
|
||||
_mentionsOverlay = _buildMentionsOverlayEntry();
|
||||
Overlay.of(context).insert(_mentionsOverlay);
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
},
|
||||
);
|
||||
}
|
||||
|
||||
void _parseExistingMessage(Message message) {
|
||||
|
||||
+2
-2
@@ -19,10 +19,10 @@ dependencies:
|
||||
flutter_markdown: ^0.5.0
|
||||
url_launcher: ^5.4.11
|
||||
video_player: ^1.0.0
|
||||
chewie: ^0.10.4
|
||||
chewie: ^0.12.0
|
||||
file_picker: ^2.0.12
|
||||
image_picker: ^0.6.7+2
|
||||
flutter_keyboard_visibility: ^3.3.0
|
||||
flutter_keyboard_visibility: ^4.0.1
|
||||
stream_chat: ^0.2.13
|
||||
mime: ^0.9.6+3
|
||||
visibility_detector: ^0.1.5
|
||||
|
||||
Reference in New Issue
Block a user