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

This commit is contained in:
guozhigq
2024-03-01 00:14:42 +08:00
committed by orz12
parent 96e1a5af2c
commit 05143fc90e
2 changed files with 26 additions and 18 deletions

View File

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

View File

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