Closed
Description
Describe the bug:
I use Html
widget nested in IntrinsicHeight
and SingleChildScrollView
as follows:
import 'package:flutter/material.dart';
import 'package:flutter_html/flutter_html.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
home: Scaffold(
appBar: AppBar(),
body: LayoutBuilder(
builder: (context, constraints) {
return SingleChildScrollView(
child: ConstrainedBox(
constraints: BoxConstraints(
minHeight: constraints.maxHeight,
),
child: IntrinsicHeight(
child: Column(
crossAxisAlignment: CrossAxisAlignment.stretch,
children: [
Html(
data: 'Test',
),
const Spacer(),
Container(
height: 200,
color: Colors.red,
),
],
),
),
),
);
},
),
),
);
}
}
It works well with flutter_html: 3.0.0-alpha.5
but doesn't work with flutter_html: 3.0.0-alpha.6
.
Exception message is
Intrinsics are not available for PlaceholderAlignment.baseline, PlaceholderAlignment.aboveBaseline, or PlaceholderAlignment.belowBaseline.
Expected behavior:
Should render as on the screenshot from version 3.0.0-alpha.5
.
Screenshots:
3.0.0-alpha.5 | 3.0.0-alpha.6 |
---|---|
![]() |
![]() |
Device details and Flutter/Dart/flutter_html
versions:
[✓] Flutter (Channel stable, 3.3.4, on macOS 12.6 21G115 darwin-arm, locale en-PL)
• Flutter version 3.3.4 on channel stable at /Users/tomasz/development/flutter
• Upstream repository https://github.com/flutter/flutter.git
• Framework revision eb6d86ee27 (9 days ago), 2022-10-04 22:31:45 -0700
• Engine revision c08d7d5efc
• Dart version 2.18.2
• DevTools version 2.15.0
Stacktrace/Logcat
_AssertionError._doThrowNew (errors_patch.dart:51)
_AssertionError._throwNew (errors_patch.dart:40)
RenderParagraph._canComputeIntrinsics (paragraph.dart:502)
RenderParagraph._computeIntrinsicHeight (paragraph.dart:459)
RenderParagraph.computeMaxIntrinsicHeight (paragraph.dart:474)
RenderBox._computeIntrinsicDimension.<anonymous closure> (box.dart:1416)
_LinkedHashMapMixin.putIfAbsent (compact_hash.dart:527)
RenderBox._computeIntrinsicDimension (box.dart:1414)
RenderBox.getMaxIntrinsicHeight (box.dart:1781)
RenderPadding.computeMaxIntrinsicHeight (shifted_box.dart:213)
RenderBox._computeIntrinsicDimension.<anonymous closure> (box.dart:1416)
_LinkedHashMapMixin.putIfAbsent (compact_hash.dart:527)
RenderBox._computeIntrinsicDimension (box.dart:1414)
RenderBox.getMaxIntrinsicHeight (box.dart:1781)
RenderProxyBoxMixin.computeMaxIntrinsicHeight (proxy_box.dart:96)
RenderBox._computeIntrinsicDimension.<anonymous closure> (box.dart:1416)
_LinkedHashMapMixin.putIfAbsent (compact_hash.dart:527)
RenderBox._computeIntrinsicDimension (box.dart:1414)
RenderBox.getMaxIntrinsicHeight (box.dart:1781)
_RenderCSSBox.computeMaxIntrinsicHeight.<anonymous closure> (css_box_widget.dart:418)
_RenderCSSBox.getIntrinsicDimension (css_box_widget.dart:390)
_RenderCSSBox.computeMaxIntrinsicHeight (css_box_widget.dart:417)
RenderBox._computeIntrinsicDimension.<anonymous closure> (box.dart:1416)
_LinkedHashMapMixin.putIfAbsent (compact_hash.dart:527)
RenderBox._computeIntrinsicDimension (box.dart:1414)
RenderBox.getMaxIntrinsicHeight (box.dart:1781)
RenderFlex.computeMaxIntrinsicHeight.<anonymous closure> (flex.dart:636)
RenderFlex._getIntrinsicSize (flex.dart:544)
RenderFlex.computeMaxIntrinsicHeight (flex.dart:633)
RenderBox._computeIntrinsicDimension.<anonymous closure> (box.dart:1416)
_LinkedHashMapMixin.putIfAbsent (compact_hash.dart:527)
RenderBox._computeIntrinsicDimension (box.dart:1414)
RenderBox.getMaxIntrinsicHeight (box.dart:1781)
RenderIntrinsicHeight._computeSize (proxy_box.dart:833)
RenderIntrinsicHeight.performLayout (proxy_box.dart:853)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderConstrainedBox.performLayout (proxy_box.dart:292)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
_RenderSingleChildViewport.performLayout (single_child_scroll_view.dart:517)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
_RenderLayoutBuilder.performLayout (layout_builder.dart:318)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
MultiChildLayoutDelegate.layoutChild (custom_layout.dart:171)
_ScaffoldLayout.performLayout (scaffold.dart:1055)
MultiChildLayoutDelegate._callPerformLayout (custom_layout.dart:240)
RenderCustomMultiChildLayoutBox.performLayout (custom_layout.dart:410)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
_RenderCustomClip.performLayout (proxy_box.dart:1462)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
ChildLayoutHelper.layoutChild (layout_helper.dart:56)
RenderStack._computeSize (stack.dart:595)
RenderStack.performLayout (stack.dart:622)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderOffstage.performLayout (proxy_box.dart:3737)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
_RenderTheatre.performLayout (overlay.dart:804)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderCustomPaint.performLayout (custom_paint.dart:552)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderProxyBoxMixin.performLayout (proxy_box.dart:120)
RenderObject.layout (object.dart:2135)
RenderBox.layout (box.dart:2418)
RenderView.performLayout (view.dart:170)
RenderObject._layoutWithoutResize (object.dart:1973)
PipelineOwner.flushLayout (object.dart:999)
RendererBinding.drawFrame (binding.dart:513)
WidgetsBinding.drawFrame (binding.dart:884)
RendererBinding._handlePersistentFrameCallback (binding.dart:378)
SchedulerBinding._invokeFrameCallback (binding.dart:1175)
SchedulerBinding.handleDrawFrame (binding.dart:1104)
SchedulerBinding.scheduleWarmUpFrame.<anonymous closure> (binding.dart:881)
Timer._createTimer.<anonymous closure> (timer_patch.dart:18)
_Timer._runTimers (timer_impl.dart:398)
_Timer._handleMessage (timer_impl.dart:429)
_RawReceivePortImpl._handleMessage (isolate_patch.dart:192)
Metadata
Metadata
Assignees
Labels
Projects
Status
Done