fix(appflowy_flutter): fix cover image overflow #1916 (#1952)

* fix(appflowy_flutter): fix cover image overflow #1916

* fix(appflowy_flutter): use OverflowBox to fix #1916

* chore: fix misspelling

* fix: prevent the image being overstretched

---------

Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
This commit is contained in:
Yijing Huang 2023-03-11 21:15:34 +08:00 committed by GitHub
parent 668e1196d1
commit 972ef2149c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -194,7 +194,7 @@ class _CoverImageState extends State<_CoverImage> {
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Stack( return Stack(
children: [ children: [
_buildCoverImage(context), _buildCoverImage(context, widget.editorState),
_buildCoverOverlayButtons(context), _buildCoverOverlayButtons(context),
], ],
); );
@ -251,7 +251,7 @@ class _CoverImageState extends State<_CoverImage> {
); );
} }
Widget _buildCoverImage(BuildContext context) { Widget _buildCoverImage(BuildContext context, EditorState editorState) {
final screenSize = MediaQuery.of(context).size; final screenSize = MediaQuery.of(context).size;
const height = 200.0; const height = 200.0;
final Widget coverImage; final Widget coverImage;
@ -281,12 +281,17 @@ class _CoverImageState extends State<_CoverImage> {
coverImage = const SizedBox(); // just an empty sizebox coverImage = const SizedBox(); // just an empty sizebox
break; break;
} }
return UnconstrainedBox( //OverflowBox needs to be wraped by a widget with constraints(or from its parent) first,otherwise it will occur an erorr
child: Container( return SizedBox(
padding: const EdgeInsets.only(bottom: 10), height: height,
height: height, child: OverflowBox(
width: screenSize.width, maxWidth: screenSize.width,
child: coverImage, child: Container(
padding: const EdgeInsets.only(bottom: 10),
height: double.infinity,
width: double.infinity,
child: coverImage,
),
), ),
); );
} }