fix: 私信页面表情面板 issues #588

This commit is contained in:
guozhigq
2024-03-01 00:14:42 +08:00
parent ce1c80fd86
commit be56fb721f
2 changed files with 37 additions and 26 deletions

View File

@ -109,6 +109,8 @@ class _VideoReplyNewDialogState extends State<VideoReplyNewDialog>
@override
void didChangeMetrics() {
super.didChangeMetrics();
final String routePath = Get.currentRoute;
if (mounted && routePath.startsWith('/video')) {
WidgetsBinding.instance.addPostFrameCallback((_) {
// 键盘高度
final viewInsets = EdgeInsets.fromViewPadding(
@ -125,17 +127,22 @@ class _VideoReplyNewDialogState extends State<VideoReplyNewDialog>
});
});
}
}
@override
void dispose() {
WidgetsBinding.instance.removeObserver(this);
_replyContentController.dispose();
replyContentFocusNode.removeListener(() {});
replyContentFocusNode.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
double keyboardHeight = EdgeInsets.fromViewPadding(
View.of(context).viewInsets, View.of(context).devicePixelRatio)
.bottom;
return Container(
clipBehavior: Clip.hardEdge,
decoration: BoxDecoration(

View File

@ -51,6 +51,8 @@ class _WhisperDetailPageState extends State<WhisperDetailPage>
@override
void didChangeMetrics() {
super.didChangeMetrics();
final String routePath = Get.currentRoute;
if (mounted && routePath.startsWith('/whisper_detail')) {
WidgetsBinding.instance.addPostFrameCallback((_) {
// 键盘高度
final viewInsets = EdgeInsets.fromViewPadding(
@ -67,11 +69,13 @@ class _WhisperDetailPageState extends State<WhisperDetailPage>
});
});
}
}
@override
void dispose() {
WidgetsBinding.instance.removeObserver(this);
replyContentFocusNode.removeListener(() {});
replyContentFocusNode.dispose();
super.dispose();
}