olmps / memo

Memo is an open-source, programming-oriented spaced repetition software (SRS) written in Flutter.
BSD 3-Clause "New" or "Revised" License
1.83k stars 159 forks source link

Layout break in `CollectionDetailsPage` when having executed Memos #126

Closed ggirotto closed 3 years ago

ggirotto commented 3 years ago

Steps to reproduce:

Stacktrace:

``` flutter: size: Size(324.0, 47.6) flutter: direction: vertical flutter: mainAxisAlignment: start flutter: mainAxisSize: min flutter: crossAxisAlignment: stretch flutter: verticalDirection: down flutter: ◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤ flutter: ════════════════════════════════════════════════════════════════════════════════════════════════════ flutter: ══╡ EXCEPTION CAUGHT BY RENDERING LIBRARY ╞═════════════════════════════════════════════════════════ flutter: The following assertion was thrown during layout: flutter: A RenderFlex overflowed by 29 pixels on the bottom. flutter: flutter: The relevant error-causing widget was: flutter: Column flutter: lib/…/theme/collection_card.dart:56 flutter: flutter: To inspect this widget in Flutter DevTools, visit: flutter: http://127.0.0.1:9100/#/inspector?uri=http%3A%2F%2F127.0.0.1%3A63724%2FC1EyCvuzJMk%3D%2F&inspectorRef=inspector-8 flutter: flutter: The overflowing RenderFlex has an orientation of Axis.vertical. flutter: The edge of the RenderFlex that is overflowing has been marked in the rendering with a yellow and flutter: black striped pattern. This is usually caused by the contents being too big for the RenderFlex. flutter: Consider applying a flex factor (e.g. using an Expanded widget) to force the children of the flutter: RenderFlex to fit within the available space instead of being sized to their natural size. flutter: This is considered an error condition because it indicates that there is content that cannot be flutter: seen. If the content is legitimately bigger than the available space, consider clipping it with a flutter: ClipRect widget before putting it in the flex, or using a scrollable container rather than a Flex, flutter: like a ListView. flutter: The specific RenderFlex in question is: RenderFlex#ac9d0 relayoutBoundary=up1 OVERFLOWING: flutter: creator: Column ← Flexible ← Column ← Padding ← CustomPaint ← DecoratedBox ← Container ← Listener ← flutter: _GestureSemantics ← RawGestureDetector ← GestureDetector ← CollectionCard ← ⋯ flutter: parentData: offset=Offset(0.0, 0.0); flex=1; fit=FlexFit.loose (can use size) flutter: constraints: BoxConstraints(w=335.3, 0.0<=h<=2.5) flutter: size: Size(335.3, 2.5) flutter: direction: vertical flutter: mainAxisAlignment: start flutter: mainAxisSize: min flutter: crossAxisAlignment: start flutter: textDirection: ltr flutter: verticalDirection: down flutter: ◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤ flutter: ════════════════════════════════════════════════════════════════════════════════════════════════════ ```

It doesn't show a visual inconsistency, although the layout error is thrown

matuella commented 3 years ago

This is a problem with the hero animation stretching itself vertically, probably a Flex issue.

matuella commented 3 years ago

Closed as we have removed the hero collection card animation here.