flutter_html 3.0.0
flutter_html: ^3.0.0 copied to clipboard
A Flutter widget for rendering static HTML and CSS as Flutter widgets.
Change Log #
All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.
3.0.0 March 2025 #
- Graduate package to a stable release. See pre-releases prior to this version for changelog entries.
3.0.0-beta.2 May 2023 #
-
Several Breaking Changes. See the migration guide
-
FIX: Add "display: Display.block" to table (#1278). (6350f023)
-
FIX: improve API for ExtensionContext and export marker.dart (#1273). (27e33a95)
-
FIX: Cleaned up whitespace processing and added whitespace tests (#1267). (cc00406b)
-
FIX: a tag should not style as link if href is not provided (#1265). (d7247cb3)
-
FEAT: Update CssBoxWidget to handle rtl marker boxes (#1270). (d7091990)
-
FEAT: support vertical-align in inline styles (#1266). (fe896de5)
3.0.0-beta.1 May 2023 #
-
Several Breaking Changes. See the migration guide
-
FIX: Aspect ratio exception when height is 0 (#1222). (ed75f8fe)
-
FIX: Fix issue with font scaling introduced in 3.0.0-alpha.6 (#1173). (c75e0dfb)
-
FIX: Fix various issues with list rendering. (520ff3c3)
-
FIX: Apply margins to
properly. (7581ea79) -
FIX: Use enum instead of const int internally in length.dart. (9dc7f08c)
-
FIX: Change CSSBoxWidget to CssBoxWidget. (a62449a7)
-
FEAT: Upgrade list-style-type to CSS3. (deb726ae)
-
FEAT: Support mtable, mtd, mtr for draw matrix. (#1164). (e99e2cc1)
- FIX #731 Resolve newline
<br>issue - FIX Align the baseline of inline content with the baseline of its parent flow, even if it has padding or borders
- FIX Improved fontSize inheritance when cascading styles
- FIX
automargins now work for anyDisplay.BLOCKelement. - FIX
autowidth and height is now the default, rather thannull - FIX New CSSBoxWidget that handles calculations of child sizes for a more accurate HTML/CSS layout
- BREAKING New
Margin,Height, andWidthclasses that allowem,rem,px,auto, and%values to be given - FEAT Negative margins are now allowed
- FIX Updated default
pandh1-6styles to useemfor better font scaling - BREAKING Package now requires Dart sdk >= Dart 2.17
- FIX: Apply margins to
- FIX: Use enum instead of const int internally in length.dart. (9dc7f08c)
- FIX: Change CSSBoxWidget to CssBoxWidget. (a62449a7)
- FIX: fix textShadow color declaration handler. (77ffe7cb)
- FIX: ol use default style. (1c2412a2)
- FIX: Crash when a tr tag includes text node. (ba8301c9)
- FEAT: exposes fontFamilyFallback parameter. (1d65aafd)
3.0.0-alpha.6 - September 2022 #
3.0.0-alpha.5 June 9, 2022: #
- Fixed hot reloads, thanks @arjenmels
- Fixed link taps not working
- Improvements in README
3.0.0-alpha.3 April 14, 2022: #
- Fixed styling not being applied to list item markers
- [video] Fixed crash when iframe or video tags used unsupported/incorrect height or width
3.0.0-alpha.2 January 5, 2022: #
- BREAKING Full modularization using split packages; see our upgrade guide or use flutter_html_all
3.0.0-alpha.1 December 21, 2021: #
- BREAKING Reworked custom renders pending full modularation in 3.0.0
- Extended support custom render when using SelectableHtml
- Updated flutter_svg to 1.0.0
- Support flutter_webview 3.x
- Automatic disposal of video and audio controllers
- Fix block elements bottom spacing in table cells
2.2.1 December 8, 2021: #
- Allow styling on ruby tags
- Allow width/height/alignment styling on table/tr/td tags
- Prevent images causing rebuilding and leaking memory
- Fixes display of list items on iOS with font weights below 400
- Prevent crash on negative margins or paddings
2.2.0 November 29, 2021: #
- Explicitly declare multiplatform support
- Extended and fixed list-style (marker) support
- Basic support for height/width css properties
- Support changing scroll physics of SelectableText.rich
- Support text transform css property
- Bumped minimum flutter_math_fork version for Flutter 2.5 compatibility
- Fix styling of iframes
- Fix nested font tag application
- Fix whitespace rendering between list items
- Prevent crash on empty tag and tables with both colspan/rowspan
- Prevent crash on use of negative margins in css
- Ignore unsupported custom style selectors when using fromCss
- Fix SVG tag usage inside tables
- Properly fix regression in usage of line breaks
- Fix regression in usage of line breaks in body being stripped
- Update minimum versions of dependencies for Flutter 2.5 compatibility
- Extended and fixed support for css shadow
- Fix block tags with explicit whitespace from being stripped
- Allow setting selectionControls with SelectableHtml
- Fix onLinkTap not working with SelectableHtml
- Don't crash when parsing unsupported :hover
- Prevent endless loading when using animated images
- Stable release with all 2.1.1-preview.X changes
- Improves hr tag support
- Fixes a leading whitespace issue
- Fixes some crashes with CSS parsing
- SelectableHtml widget (supporting a subset of tags) which allow text selection
- Fixed shrinkWrap to actually shrink the horizontal space
- Support style tags to apply styling from inline css
- Support applying styles from Flutter themes
- Mouse hover on links when using Flutter Web
- Allow custom anchor link tap implementations
- Support additional list styling options
- Fix several minor whitespace issues in text flow
- Fixed specific colspan/rowspan usages in tables
- Fixed whitespace issues around images
- Swallow duplicate ids to prevent crashing the widget
- Fixes crashing tap detection when using both link and image taps
- Updates external dependencies
- Raised minimum Flutter version to 2.2.0
- Stable release with all 2.0.0-nullsafety.X changes
- Support basic MathML
- Support inner links
- Supply full context tree to custom render
- Include or exclude specific tags via
tagsListparameter - Fixed lists not rendering correctly
- Fixes for colspans in tables
- Fixed various exceptions when using inline styles
- Fixed text decoration not cascading between parent and child
- [BREAKING] support whitelisting tags
- See the README for details on how to migrate
blacklistedElements(deprecated) totagsList
- See the README for details on how to migrate
- Fixed
failed assertionerror when tap-scrolling on any link - Updated dependencies
- Nullsafety support
- Official Flutter Web support
- New features & fixes for lists:
- Support start attribute (e.g.
start="5";) - Support RTL direction
- Support setting padding - you can remove the starting padding if you choose
- Fixed unknown character box on iOS when font-weight is below w400
- Support start attribute (e.g.
- Upgraded link functions to provide more granular control
- Fixed errors in text-decoration parsing
- Fixed
<audio>on iOS ("_duration called on null" exception) - Updated dependencies
- New image loading API
- Image loading with request headers, from relative paths and custom loading widget
- SVG image support from network or local assets
- Support for
<details>/<summary>tags - Allow returning spans from custom tag renders
- Inline font styling
- Content-based table column sizing
- Respect iframe sandbox attribute
- Fixed text flow and styling when using tags inside
<a>links - Fixed issue where
shrinkWrapproperty would not constrain the widget to take up the space it needs- See the Notes for an example usage with
shrinkWrap
- See the Notes for an example usage with
- Fixed issue where iframes would not update when their
srcs changed in the HTML data - Updated dependencies for Flutter 1.26+
- Support irregular table sizes
- Allow for returning
nullfrom a customRender function to disable the widget - Update dependencies
- Add support for inline styles
- Update dependencies
- Fix text scaling issues
- Update dependencies
- Fixed flutter_svg: ^0.18.0
- BREAKING CHANGES (see the Migration Guide for a full overview of breaking changes.):
- The default parser has been completely rewritten and the RichText parser has been removed.
useRichTextno longer is necessary (The new parser uses RichText under the hood)customRendernow works for the default parser.
- Adds support for
<audio>,<video>,<iframe>,<svg>,<ruby>,<rt>,<rp>,<sub>, and<sup> - Adds support for over 20 CSS attributes when using the
styleparameter. - Fixes many many issues (see the list at #122)
- The following parameters of
Htmlhave been removed and should no longer be used (see the migration guide):useRichTextpaddingbackgroundColordefaultTextStylerenderNewlinescustomEdgeInsetscustomTextStyleblockSpacingcustomTextAlignlinkStyleimagePropertiesshowImages
- The default text style now matches the app's Material
TextTheme.bodyText2(Fixes #18). - Requires Flutter v1.17.0 or greater
- Fixed quite a few issues with
img - Added a fancy new
styleattribute (this should be used in place of the deprecated styling parameters). - For a list of pre-release changes, including several BREAKING CHANGES, see release notes for 1.0.0 above.
- Add support for
AssetImages using theasset:prefix (#162). - Make it so
width=100%doesn't throw error. Fixes #118. - You can now set width and/or height in
ImagePropertiesto negative to ignore thewidthand/orheightvalues from the html. Fixes #97 - The
imgaltproperty now renders correctly when the image fails to load and with the correct style. Fixes #96 - Add partial support for
subtag. - Add new option:
shrinkToFit(#148). Fixes #75. - Add support for
customTextStyleto block and specialty HTML elements. - Add
srcto theonImageTapcallback (#93) - Add
customTextAlignproperty (#112) - Use
tryParseinstead ofparsefor image width and height attributes so that%values are ignored safely. Fixes #98 - Image properties and onImageTap for the richTextParser, plus some fixes (#90)
- Hotfix 1 (June 6, 2019): Fixes #100
- BREAKING:
useRichTextnow defaults totrue - Support for
aside,bdi,big,cite,data,ins,kbd,mark,nav,noscript,q,rp,rt,ruby,s,samp,strike,template,time,tt, andvaradded toRichTextparser. - Fixes extra padding issue (#87)
- Add support for
addresstag inRichTextparser. - Added onImageError callback
- Added custom textstyle and edgeinsets callback (#72)
- Update dependency versions (#84)
- Fixes #82 and #86
- Fix whitespace issue. (#59)
- Add support for
spaninRichTextparser. (#61) - Adds
linkStyleattribute. (#70) - Adds tests for
header,hr, andi(#62) - Fixes
tableerror inRichTextparser. (#58) - Adds support for base64 encoded images
- Adds partial support for deprecated
fonttag. - Adds an alternate
RichTextparser anduseRichTextparameter. (#37) - Removes debug prints.
- Adds
typedefforonLinkTapfunction. - Adds custom tag callback
- Logging no longer shows up in production.
- Fixes issue with text nodes that contain only a space. (#24)
- Fixes typo in README.md from 0.7.0.
- Adds full support for
ulandol - Adds check for
img srcbefore trying to load it. - Adds support for
img altattribute. - Fixed minor typo
- Update README.md and example
- GitHub version 0.6.0 milestone reached
- Adds partial support for
centerand arenderNewlinesproperty on theHtmlwidget. - Adds support for
acronym, andbig. - Adds
onLinkTapcallback. - Adds support for
strike, andtt. - Adds support for
bdiandbdo - Fixed issue with table rows not lining up correctly (#4)
- Major refactor that makes entire tree a Widget and eliminates the need to distinguish between inline and block elements.
- Fixed #7, #9, #10, and #11.
- Fixed issue with images not loading when inside of
ptag (#6) - Adds support for
table,tbody,tfoot,thead,tr,td,th, andcaption - Fixed issue where
pwas not rendered with thedefaultTextStyle. -
Adds support for
abbr,address,article,aside,blockquote,br,cite,code,data,dd,del,dfn,dl,dt,figcaption,figure,footer,header,hr,img,ins,kbd,li,main,mark,nav,noscript,pre,q,rp,rt,ruby,s,samp,section,small,span,template,time, andvar -
Adds partial support for
a,ol, andul - Adds support for
img. - Fixed
bto be bold, not italic... - Adds support for
em, andstrong - Adds support for a default
TextStyle - Renamed widget from
HtmlWidgettoHtml - Adds support for
p,h1,h2,h3,h4,h5, andh6. - Adds support for
body,div,b,i, andu.
