webf 0.16.0 copy "webf: ^0.16.0" to clipboard
webf: ^0.16.0 copied to clipboard

W3C standards-compliant web rendering engine based on Flutter, allowing web applications to run natively on Flutter.

0.16.0 #

This version supports Flutter 3.19.x, 3.16.x, and 3.13.x.

A version compatible with Flutter 3.10.x landed in 0.15.2. A version compatible with Flutter 3.7.x landed in 0.14.4.

Architecture Upgrade

The JavaScript Runtime has now migrated to a dedicated thread and is enabled by default in this version.

For users who want to keep the single-threading mode the same as in the previous version, use the following configuration:

WebFController(
  context,
  runningThread: FlutterUIThread(),
);

Big News

  1. Added PreRendering and Preload loading modes, which can save up to 90% of loading time. Click here for more details.

Features

  1. Support preloadedBundles in WebF. https://github.com/openwebf/webf/pull/500
  2. Add pre-rendering and persistent rendering modes. https://github.com/openwebf/webf/pull/501
  3. Optimize the evaluate times at the first time. https://github.com/openwebf/webf/pull/503
  4. Add MutationObserver API support. https://github.com/openwebf/webf/pull/508
  5. Add Dedicated Threading support. https://github.com/openwebf/webf/pull/512
  6. Optimize raster performance on Animated images. https://github.com/openwebf/webf/pull/513
  7. Turn off quickjs GC at page loading phase. https://github.com/openwebf/webf/pull/515
  8. Optimization matrix algorithm. https://github.com/openwebf/webf/pull/516
  9. Support override default contentType for WebFBundle. https://github.com/openwebf/webf/pull/534
  10. Support dns-prefetch. https://github.com/openwebf/webf/pull/535
  11. Add more SVG tags. https://github.com/openwebf/webf/pull/543
  12. Optimize MutationObserver performance. https://github.com/openwebf/webf/pull/545
  13. QuickJS add property inline cache. https://github.com/openwebf/webf/pull/546
  14. Optimize paint and add profile records. https://github.com/openwebf/webf/pull/547
  15. Pause the activity of webf when app visibility changed. https://github.com/openwebf/webf/pull/549
  16. Optimize bytecode cache load speed and fix http cache. https://github.com/openwebf/webf/pull/552
  17. Add Element.parentElement support. https://github.com/openwebf/webf/pull/555
  18. Add repaintBoundary for animated images when using css background-images https://github.com/openwebf/webf/pull/557
  19. Add support for hash router https://github.com/openwebf/webf/pull/572
  20. Add support for object event listener. https://github.com/openwebf/webf/pull/575
  21. Optimize performance for recalculate styles https://github.com/openwebf/webf/pull/579

Bug Fixed

  1. Fix class selector not match on html element. https://github.com/openwebf/webf/pull/490
  2. Fix concurrent modification during iteration. https://github.com/openwebf/webf/pull/491
  3. Fix JavaScript stack overflow error when print Proxy object. https://github.com/openwebf/webf/pull/493
  4. Fix borderXxxRadius transition. https://github.com/openwebf/webf/pull/495
  5. Avoid Hive.init cause conflicts with box paths. https://github.com/openwebf/webf/pull/504
  6. Fix assertion error when change display in input element. https://github.com/openwebf/webf/pull/505
  7. Fix lenght variable issue. https://github.com/openwebf/webf/pull/510
  8. Fix transform value not updated in percentage when box size changed. https://github.com/openwebf/webf/pull/514
  9. Fix crashed due to trigger touch events to inaccessible dom elements. https://github.com/openwebf/webf/pull/517
  10. Fix crash due to init touchEvent from JS. https://github.com/openwebf/webf/pull/518
  11. Fix event.target still can be pointed by event after finalized by JavaScript GC. https://github.com/openwebf/webf/pull/519
  12. Fix flex-grow not work. https://github.com/openwebf/webf/pull/524
  13. Fix bg_image_update not update error. https://github.com/openwebf/webf/pull/526
  14. Fix text calculate constraints error. https://github.com/openwebf/webf/pull/527
  15. Fix min precision case some error and waste cpu. https://github.com/openwebf/webf/pull/528
  16. Fix sliver layout child boundingClientRect offset error. https://github.com/openwebf/webf/pull/530
  17. Fix build on ArchLinux. https://github.com/openwebf/webf/pull/536
  18. Fix devtool select img element. https://github.com/openwebf/webf/pull/538
  19. Fix ui command exec order in dedicated thread mode. https://github.com/openwebf/webf/pull/540
  20. Fix img gif work error. https://github.com/openwebf/webf/pull/541
  21. Fix request flutter to update frame when sync commands to dart. https://github.com/openwebf/webf/pull/548
  22. Fix textarea elements in ios/android can not auto unfocus. https://github.com/openwebf/webf/pull/551
  23. Fix crash when binding object had been released by GC. https://github.com/openwebf/webf/pull/553
  24. Fix windows platform crash with 0.16.0. https://github.com/openwebf/webf/pull/558
  25. Fix page load failed when using async attributes in <script /> elements. https://github.com/openwebf/webf/pull/561
  26. Fix dart element memory leaks when js gc collected. https://github.com/openwebf/webf/pull/563
  27. Fix crash on flutter engine dispose. https://github.com/openwebf/webf/pull/566
  28. Fix background-image disappear with multiple image links. https://github.com/openwebf/webf/pull/574
  29. Fix js log does not show in terrminal and devtools. https://github.com/openwebf/webf/pull/584
  30. Fix mem leaks caused by event dispatch. https://github.com/openwebf/webf/pull/585
  31. Fix input when resume apps https://github.com/openwebf/webf/pull/589
  32. Fix memory leak caused by img element https://github.com/openwebf/webf/pull/590
  33. Fix input elements or widget elements when preload or prerendering complete. https://github.com/openwebf/webf/pull/595
  34. Fix animation time resume. https://github.com/openwebf/webf/pull/597
  35. Fix invalid xcframework for ios release. https://github.com/openwebf/webf/pull/600

0.15.1 #

This version will support Flutter 3.10.x

Features

  1. Optimize location API for better performance results. https://github.com/openwebf/webf/pull/420
  2. Optimize the webf_bridge and quickjs binary size. https://github.com/openwebf/webf/pull/414
  3. Support CSS initial length value. https://github.com/openwebf/webf/pull/421
  4. Optimize Element.children() and Document.all() performance. https://github.com/openwebf/webf/pull/424
  5. Support element
  6. Add WebFController.onTitleChanged API. https://github.com/openwebf/webf/pull/479

Bug Fixed

  1. Fix percentage width and height not working under inline block box. https://github.com/openwebf/webf/pull/430
  2. Fix Node.insertBefore with SVGElement error. https://github.com/openwebf/webf/pull/431
  3. Fix cookie delete file error when it's not available. https://github.com/openwebf/webf/pull/429
  4. Fix use css vars with initial. https://github.com/openwebf/webf/pull/421/commits/1da2e5899c53e82a31271c26de3333168e780134 0.15.0-beta.3
  5. Fix toggle position: fixed on bodyElement with other fixed elements. https://github.com/openwebf/webf/pull/416
  6. Fix css nth-child not work. https://github.com/openwebf/webf/pull/417
  7. Fix Node.childNodes didn't update when nodes changed. https://github.com/openwebf/webf/pull/419
  8. Fix loading fonts cause assertion when remove or attach RenderObjects. https://github.com/openwebf/webf/pull/425
  9. fix crash when reload pages. https://github.com/openwebf/webf/pull/476
  10. Fix memory leaks. https://github.com/openwebf/webf/pull/487

0.15.0 #

This version will support Flutter 3.10.x

Break Changes

  1. Remove navigator.connection API. https://github.com/openwebf/webf/pull/411

Features

  1. Upgrade Flutter support to 3.10.x. https://github.com/openwebf/webf/pull/345
  2. Optimize location API for better performance results. https://github.com/openwebf/webf/pull/420
  3. Optimize the size of webf_bridge.xcframework and quickjs.xcframework. https://github.com/openwebf/webf/pull/414
  4. Support CSS initial length value. https://github.com/openwebf/webf/pull/421
  5. Optimize Element.children() and Document.all() performance. https://github.com/openwebf/webf/pull/424
  6. Support base64 format font data in @font-face src. https://github.com/openwebf/webf/pull/399
  7. Support Element.dir API. https://github.com/openwebf/webf/pull/418
  8. Add <circle /> and <ellipse> tags for SVG. https://github.com/openwebf/webf/pull/423
  9. Support share customized JS properties in event object. https://github.com/openwebf/webf/pull/427
  10. Support window.pageXOffset and window.pageYOffset API. https://github.com/openwebf/webf/pull/428/files
  11. Optimize layout/paint performance when block box size is fixed. https://github.com/openwebf/webf/pull/450
  12. Optimize performance when update Element.className. https://github.com/openwebf/webf/pull/452
  13. Support CanvasRenderingContext2D.createPattern() API. https://github.com/openwebf/webf/pull/464

Bug Fixed

  1. Fix use css vars with initial. https://github.com/openwebf/webf/pull/421
  2. Fix toggle position: fixed on bodyElement with other fixed elements. https://github.com/openwebf/webf/pull/416
  3. Fss nth-child not work. https://github.com/openwebf/webf/pull/417
  4. Fix Node.childNodes didn't update when nodes changed. https://github.com/openwebf/webf/pull/419
  5. Fix loading fonts cause assertion when remove or attach RenderObjects. https://github.com/openwebf/webf/pull/425
  6. Fix percentage width and height not working under inline block box. https://github.com/openwebf/webf/pull/430
  7. Fix Node.insertBefore with SVGElement error. https://github.com/openwebf/webf/pull/431
  8. Fix cookie delete file error when it's not available. https://github.com/openwebf/webf/pull/429
  9. Fix read ANDROID_SDK_HOME before implying to platform defaults. https://github.com/openwebf/webf/pull/422
  10. Fix cookie delete file error. https://github.com/openwebf/webf/pull/429
  11. Fix percentage width and height not working under inline block box. https://github.com/openwebf/webf/pull/430
  12. Fix Node.insertBefore with SVGElement error. https://github.com/openwebf/webf/pull/431
  13. Fix DevTool's network panel not working. https://github.com/openwebf/webf/pull/435
  14. Losen intl dependency constraint. https://github.com/openwebf/webf/pull/439
  15. Fix built-in methods in the event object cannot be overridden. https://github.com/openwebf/webf/pull/443
  16. Fix crash when touching pseduo elements. https://github.com/openwebf/webf/pull/445
  17. Fix event not responding when multiple flutter engine created. https://github.com/openwebf/webf/pull/451
  18. Fix Element.style.cssText API not works. https://github.com/openwebf/webf/pull/455
  19. Fix use-of-free crash of shared string property in event object. https://github.com/openwebf/webf/pull/458
  20. Fix dynamic build items in WidgetElement. https://github.com/openwebf/webf/pull/461
  21. Fix CSS content property have sequences of unicode chars. https://github.com/openwebf/webf/pull/463
  22. Fix crash when create unsupported svg element with style. https://github.com/openwebf/webf/pull/465

0.14.1 #

Features

  1. Add CSS @font-face support. https://github.com/openwebf/webf/pull/380
  2. Support ::before/::after selector. https://github.com/openwebf/webf/pull/332
  3. Add document.elementFromPoint API. https://github.com/openwebf/webf/pull/381
  4. Support set textContent on textArea elements. https://github.com/openwebf/webf/pull/369
  5. Support receive binary data from fetch and XMLHttpRequest. https://github.com/openwebf/webf/pull/397
  6. Add support for event capture phases. https://github.com/openwebf/webf/pull/404
  7. Support change the current animation stage for transition animations. https://github.com/openwebf/webf/pull/401
  8. Add CSSStyleDeclaration.cssText support. https://github.com/openwebf/webf/pull/410
  9. Move the webf_websocket plugin into webf. https://github.com/openwebf/webf/pull/398

Bug Fixed

  1. Fix error when setting display:none for input and textarea. https://github.com/openwebf/webf/pull/369
  2. Fix focus state didn't cleared when input unmount from the DOM Tree. https://github.com/openwebf/webf/pull/369
  3. Fix defaultStyle for textarea elements. https://github.com/openwebf/webf/pull/369
  4. Fix a crash when a JSObject was finalized after the ExecutingContext was freed. https://github.com/openwebf/webf/pull/372
  5. Fix a crash when ExecutingContext is not alive at timer callbacks. https://github.com/openwebf/webf/pull/373
  6. Fix a crashed when running in multiple flutter engine instance. https://github.com/openwebf/webf/pull/377
  7. Fix the size of the input is wrong when using a unit other than px. https://github.com/openwebf/webf/pull/378
  8. Fix crashed when shutdown the app. https://github.com/openwebf/webf/pull/383
  9. Fix Resource temporarily unavailable for Hive lock file. https://github.com/openwebf/webf/pull/387
  10. Fix a memory leaks in TouchList. https://github.com/openwebf/webf/pull/388
  11. Fix match error for animation time. https://github.com/openwebf/webf/pull/390/files
  12. Fix built-in string initialized multiples and cause leaks. https://github.com/openwebf/webf/pull/391
  13. Fix constructor property on DOM elements. https://github.com/openwebf/webf/pull/402

0.14.0 #

Big News

  1. Add Flutter 3.3/3.7 support. https://github.com/openwebf/webf/pull/246
  2. Add SVG suppport. https://github.com/openwebf/webf/pull/279
  3. Add Windows support. https://github.com/openwebf/webf/pull/162
  4. Add multiple flutter engine group support. https://github.com/openwebf/webf/pull/338

Features

  1. Support transform property for computedstyle. https://github.com/openwebf/webf/pull/245
  2. Add btoa() and atob() API support. https://github.com/openwebf/webf/pull/253
  3. Add Vue SSR support. https://github.com/openwebf/webf/pull/256
  4. Replace malloc to mimalloc. https://github.com/openwebf/webf/pull/267
  5. Add CanvasRenderingContext2D.createLinearGradients and CanvasRenderingContext2D.createRadialGradient support. https://github.com/openwebf/webf/pull/269
  6. Optimize Fetch() API performance. https://github.com/openwebf/webf/pull/287
  7. Add Blob.base64() to export base64 string from Blob directly. https://github.com/openwebf/webf/pull/278
  8. Expand quickjs default prop size and realloc capacity. https://github.com/openwebf/webf/pull/270
  9. Add context API for WidgetElement. https://github.com/openwebf/webf/pull/264
  10. Add kbc file type support for script element. https://github.com/openwebf/webf/pull/250
  11. Support react.js without any polyfill. https://github.com/openwebf/webf/pull/257
  12. Auto cache parsed bytecode for the first load. https://github.com/openwebf/webf/pull/280
  13. Invalidate cache when expect Http request errors https://github.com/openwebf/webf/pull/305
  14. Optimize dart dom and CSS selector performance. https://github.com/openwebf/webf/pull/309
  15. Support background-clip text. https://github.com/openwebf/webf/pull/318
  16. Remove ios armv7 armv7s support. https://github.com/openwebf/webf/pull/331
  17. Add DOMContentLoaded API. https://github.com/openwebf/webf/pull/330
  18. Optimize image load performance. https://github.com/openwebf/webf/pull/335
  19. Validate bytecode cache with CRC32 checksum. https://github.com/openwebf/webf/pull/336
  20. Add Element.querySelectorAll and Element.querySelector API. https://github.com/openwebf/webf/pull/342
  21. Support document.domain and document.compatMode. https://github.com/openwebf/webf/pull/343
  22. Support document.readyState. https://github.com/openwebf/webf/pull/347
  23. Add localStorage and sessionStorage support. https://github.com/openwebf/webf/pull/344
  24. Support document.visibilityState and document.hidden. https://github.com/openwebf/webf/pull/350
  25. Add document.defaultView API. https://github.com/openwebf/webf/pull/346
  26. Add support for Element.dataset API. https://github.com/openwebf/webf/pull/348
  27. Add Element.matches API. https://github.com/openwebf/webf/pull/365
  28. Add append() and prepend() support for Element, Document and DocumentElement. https://github.com/openwebf/webf/pull/361
  29. Add before() and after() support for Element and CharaterData. https://github.com/openwebf/webf/pull/361
  30. Add Element.closest API. https://github.com/openwebf/webf/pull/364
  31. Add HTMLScriptElement.readyState API. https://github.com/openwebf/webf/pull/367

Bug Fixed

  1. fix: fix pan scroll on desktop versions. https://github.com/openwebf/webf/pull/248
  2. fix: canvas should clip overflowed element. https://github.com/openwebf/webf/pull/263
  3. fix: ic should use none instead of atom flag and free it to prevent double delete. https://github.com/openwebf/webf/pull/277
  4. fix: pending promise crash for early gc and add lto to quickjs. https://github.com/openwebf/webf/pull/283
  5. fix update className property on hidden element. https://github.com/openwebf/webf/pull/255
  6. fix bytecode read should free atom to prevent leak. https://github.com/openwebf/webf/pull/285
  7. fix empty src on image. https://github.com/openwebf/webf/pull/286
  8. fix can not be GC even if it's detached or removed from the DOM tree. https://github.com/openwebf/webf/pull/291
  9. fix change size of canvas element didn't works. https://github.com/openwebf/webf/pull/276
  10. fix: ic free atom crash when ctx early free. https://github.com/openwebf/webf/pull/293
  11. fix: fix script execution order with inline script element. https://github.com/openwebf/webf/pull/273
  12. fix css function resolve base url. https://github.com/openwebf/webf/pull/282
  13. fix: rules didn't match which start with undefine at-rules. https://github.com/openwebf/webf/pull/294
  14. fix: fix child_node_list can be null. https://github.com/openwebf/webf/pull/297
  15. fix native memory leaks. https://github.com/openwebf/webf/pull/292
  16. fix renderObject memory leaks. https://github.com/openwebf/webf/pull/298
  17. fix dom content loaded event trigger condition. https://github.com/openwebf/webf/pull/274
  18. fix Element.toBlob() is not default to current pixel_ratio. https://github.com/openwebf/webf/pull/306
  19. fix scrollable size when update. https://github.com/openwebf/webf/pull/301
  20. fix layout error when using percentage value on transform. https://github.com/openwebf/webf/pull/307
  21. fix: css priority error. https://github.com/openwebf/webf/pull/310
  22. fix atob empty string cause crash. https://github.com/openwebf/webf/pull/311
  23. fix canvas element get multiple context error. https://github.com/openwebf/webf/pull/312
  24. fix http cache control parse error. https://github.com/openwebf/webf/pull/313
  25. fix image width/height attribute. https://github.com/openwebf/webf/pull/315
  26. fix crash when cancelAnimationFrame in frame callbacks. https://github.com/openwebf/webf/pull/317
  27. fix style didn't take effect and offsetLeftToScrollContainer value is calculated incorrectly. https://github.com/openwebf/webf/pull/322
  28. fix GIF images cause rendering performance overhead. https://github.com/openwebf/webf/pull/325
  29. fix: remove flushLayout when reading contentSize. https://github.com/openwebf/webf/pull/326
  30. fix setting lazy loading for an image didn't work. https://github.com/openwebf/webf/pull/328
  31. fix remounting widgetElement in the same frame to the DOM tree causes renderWidgets to be unmounted from the renderObject tree. https://github.com/openwebf/webf/pull/329
  32. fix: make sure renderObject had been layout before read view module properties. https://github.com/openwebf/webf/pull/333
  33. fix: protect DOMTimers until the ExecutingContext exits. https://github.com/openwebf/webf/pull/334
  34. fix reading target property on Touch caused crash. https://github.com/openwebf/webf/pull/340
  35. fix css vars() and calc() in some user cases. https://github.com/openwebf/webf/pull/355
  36. fix template element's content property cause mem leaks. https://github.com/openwebf/webf/pull/349

0.14.0-beta.1 #

  • Support flutter 3.3.10/3.7.3

0.13.3 #

Features

Bug Fixed

0.13.2+1 #

  • remove logs

0.13.2 #

Features

Bug Fixed

0.13.2-beta.2 #

  • Fix location.href didn't get changed when history changes.

0.13.2-beta.1 #

  • fix page reload when history.back().

0.13.1 #

Bug Fixed

  1. Fix renderBoxModel is null cause performLayout error. https://github.com/openwebf/webf/pull/187
  2. Fix position absolute cause mistake overflow. https://github.com/openwebf/webf/pull/167
  3. Fix var in keyframes not work. https://github.com/openwebf/webf/issues/147
  4. Fix var in translate not work. https://github.com/openwebf/webf/issues/154
  5. Fix unexpected token in linear-graident. https://github.com/openwebf/webf/issues/119
  6. Fix tag element selector. https://github.com/openwebf/webf/issues/169
  7. Fix var attribute dynamic modification exception. https://github.com/openwebf/webf/issues/144

Feature

  1. Add initialCookies params on WebF widget. https://github.com/openwebf/webf/pull/186

0.13.0 #

The biggest update since the webf/kraken release.

  1. The DOM API and C++ bindings had been redesigned and refactored. https://github.com/openwebf/webf/pull/18
    1. DOM node operations methods such as Node.appendChild and Node.insertBefore are 2x - 5x faster than 0.12.0.
    2. The new C++ bindings system can keep the bridge code safer to avoid crashes.
  2. Add CSS StyleSheets support. https://github.com/openwebf/webf/pull/11
    1. Support load CSS with <link /> element.
    2. Support load CSS with <style /> element.
  3. Flutter Widgets System had been redesigned and refactored, now all flutter widgets can be used to define your HTMLElements, including from Flutter material design, pub.dev, and yours. https://github.com/openwebf/webf/pull/58
  4. Add CSS animation support. https://github.com/openwebf/webf/pull/41
  5. Sync the latest features from quickjs offical. https://github.com/openwebf/webf/pull/165

Others:

Features #

0.13.0-beta.9 #

  • fix input border style.

0.13.0-beta.8 #

  • fix macOS arm64 build error.

0.13.0-beta.7 #

  • fix github action ndk path.

0.13.0-beta.6 #

  • downgrade android NDK version requirement to r22b.

0.13.0-beta.5 #

  • fix: request body should be UTF-8 encoded string.
  • fix: fix onLoad didn't not trigger when reload.
  • fix: fix rendering empty if window size is not ready.
  • fix: should dispose webf managed renderObject after flutter framework does.

0.13.0-beta.4 #

  • Test for new custom elements system.

0.13.0-beta.3 #

  • Fix reload crash.

0.13.0-beta.2 #

  • Test for new bridge and css selector.

0.12.0+2 #

Bug Fixed

  • Add Flutter version requirement at pubspec.yaml.

0.12.0+1 #

Bug Fixed

  • Fix Apple silicon platform build error.

0.12.0 #

Big News

  • Set flutter version requirement to v3.0.5.

Bug Fixed

Features

0.11.0 #

Breaking Changes

Bug Fixed

0.10.4 #

Features

Bug Fixed

** Others **

  • Change copyright to The Kraken authors.

0.10.3 #

Bug Fixed

0.10.2+1 #

Bug Fixed

0.10.2 #

Bug Fixed

0.10.1 #

Bug Fixed

0.10.0+5 #

Bug Fixed

0.10.0+4 #

Bug Fixed

0.10.0+3 #

Bug Fixed

0.10.0+2 #

Bug Fixed

0.10.0+1 #

Bug Fixed

0.10.0 #

Break Changes

Big News

  • Support using Flutter Widget as HTML Custom Element which can greatly extend the capability of Web, refer to this doc for detailed use.
  • Performance optimized:
    • Page load time reduced 10%.
    • Scrolling FPS incrased 40%.
  • Linux platform supported.
  • Support Flutter 2.5.3.

Features

Bug Fixed

0.9.0 #

Big News

The QuickJS engine is now landed on kraken and we decided to replace our original JavaScriptCore implementation, which can provide low latency page init time and memory usage.

Break Changes

Features

Bug Fixed

0.8.4 #

Break Changes

Features

Bug Fixed

0.8.3+3 #

Bug Fixed

0.8.3+2 #

Bug Fixed

0.8.3+1 #

0.8.3 #

Bug Fixed

Features

0.8.2+1 #

Bug Fixed

0.8.2 #

Features

Bug Fixed

0.8.1 #

Features

Bug Fixed

0.8.0+2 #

Features

0.8.0+1 #

Bug Fixed

0.8.0 #

Big News

  • Kraken v0.8.0 now support flutter 2.2.0

Features

Bug Fixed

0.7.3+2 #

Features

Bug Fixed

0.7.3+1 #

  • Fix: fix prebuilt binary.

0.7.3 #

Features

Bug Fixed

Refactor

0.7.2+4 #

feat: support mouse event https://github.com/openkraken/kraken/pull/220 fix: event bubble not works properly https://github.com/openkraken/kraken/pull/264 fix: return value of Event.stopPropagation() should be undefined https://github.com/openkraken/kraken/pull/284 fix/text node value https://github.com/openkraken/kraken/pull/279 fix: fix kraken.methodChannel.setMethodCallHandler did't get called before kraken.invokeMethod called https://github.com/openkraken/kraken/pull/289

0.7.2+3 #

feat: add willReload and didReload hooks for devTools.

0.7.2+2 #

fix: export getUIThreadId and getGlobalContextRef symbols.

0.7.2+1 #

fix: export getDartMethod() symbols.

0.7.2 #

Break Changes

fix: change default font size from 14px to 16px https://github.com/openkraken/kraken/pull/145

Bug Fixed fix: modify customevent to event https://github.com/openkraken/kraken/pull/138 fix: layout performance https://github.com/openkraken/kraken/pull/155 fix: fix elements created by new operator didn't have ownerDocument. https://github.com/openkraken/kraken/pull/178 fix: flex-basis rule https://github.com/openkraken/kraken/pull/176 fix: transform functions split error when more than one. https://github.com/openkraken/kraken/pull/196 fix: Fix the crash caused by navigation in dart https://github.com/openkraken/kraken/pull/249 fix update device_info 1.0.0 https://github.com/openkraken/kraken/pull/262

0.7.1 #

Bug Fixed

  • fix: resize img wainting for img layouted#86
  • fix: fix: encoding snapshots filename to compact with windows. #69
  • fix: fix insertBefore crash when passing none node object. #70
  • fix: windows platform support build target to Android. #88
  • fix: element size not change when widget size change #90
  • fix: fix navigation failed of anchor element. #95
  • fix: 'kraken.methodChannel.setMethodCallHandler' override previous handler #96
  • fix: repaintBoundary convert logic #111
  • fix: element append order wrong with comment node exists #116
  • fix: fix access Node.previousSibling crashed when target node at top of childNodes. #126
  • fix: fix access Element.children crashed when contains non-element nodes in childNodes. #126
  • fix: percentage resolve fail with multiple sibling exists #144
  • fix: default unknow element display change to inline #133

Feature

  • feat: support Node.ownerDocument #107
  • feat: support vmin and vmax #109
  • feat: support css none value #129
  • feat: suport Event.initEvent() and Document.createEvent() #130
  • feat: Add block element: h1-h6 main header aside. #133
  • feat: Add inline element: small i code samp... #133

0.7.0 #

Bug Fixed

  • fix: zIndex set fail #45
  • fix: border radius percentage #50
  • fix: create text node empty string has height #52
  • fix: cached percentage image has no size #54
  • fix: fix set property to window did't refer to globalThis #60
  • fix: box-shadow #66

Feature

  • Feat: resize if viewport changed #47

0.6.6+2 #

  • 修复 plugin 模块注册失败的问题

0.6.6+1 #

  • 去除 patchKrakenPolyfill API

0.6.6 #

  • 支持插件化方案,移除多余的依赖

0.6.6-dev.6 #

  • 移除 WebSocket 依赖

0.6.6-dev.5 #

  • 移除 webview 依赖

0.6.6-dev.4 #

  • 修复 Hot Restart 之后,Event 对象销毁引发的 Crash

0.6.6-dev.3 #

  • 修复 Hot Restart 之后,patchKrakenPolyFill 执行引发的 Crash

0.6.6-dev.2 #

  • 移除 kraken_video_player
  • 移除 MQTT 模块
  • 移除 audio_player 依赖
  • 移除 geolocation 依赖

0.6.0 #

Features

  1. 重新设计并实现 Canvas
  2. Bridge 支持派发异步任务到 Flutter UI 线程
  3. 支持无限列表
  4. 优化手势

渲染能力

  1. input 支持 text-overflow: ellipsis
  2. 添加 filter 能力
  3. 支持 background-origin
  4. 支持 background-clip

其他

  1. 优化 Layout 和 Style 的计算性能
  2. 优化 Bridge 实现
  3. 兼容现有 Weex 已有的 JSC
  4. 在测试环境中,提供模拟点击的 API
  5. 优化多图场景下 Kraken 的首屏加载性能
  6. 支持使用 Chrome DevTools 的 Element 面板来进行调试
  7. scroller 实现 onscroll 事件

BugFixs

  1. 修复 overflow scroll 时内容滚动到最后时滚动失效
  2. 修复 background-attachment: local 无法生效
  3. 修复 Input 通过 value 设置属性,输入框显示的值没有更新
  4. 修复无 top 的 positioned element 的定位不对
  5. 修复 hittest报错
  6. 修复 transition 动画的启动时机问题
  7. 修复动态更新 transition 属性,无法触发对应的动画
  8. 修复align-items 与 align-self 某些组合 case 布局不正确
  9. 修复无 top, left 有 margin 的 position absolute 元素在 flex container 中定位不准确
  10. 修复设置 align-items: baseline 与 flex-wrap: wrap-reverse 时,baseline 对齐方向与 web 相反
  11. 修复 flex-wrap: wrap 且 flex-item 未设置 width 时 flex container 会根据剩余 height 给 flex-item 自动分配 width
  12. 修复 flex-item 设置 overflow: scroll 报错
  13. 修复 flex-wrap 为 wrap 时 flex-item 的宽度超出 container
  14. 修复 flex 中当 flex-item宽度总和大于 container 时,center, space-around, space-evenly 三种对齐方式 flex-item 应该整体居中展示
  15. 修复 flex-flow 与 flex-wrap 同时设置时有时会报错
  16. 修复 flex layout 下多层 div max-width 未生效
  17. 修复 FlexContainer 作为滚动容器,会导致 cross 轴的滚动区域计算错误
  18. 修复多 flex-item 设置 flex-shrink 导致 constraints 为负值出错
  19. 修复 flex-shrink 负值不应该生效
  20. 修复 flex-basis 与 width 同时存在时 flex-basis 优先级应该更高
  21. 修复 flex-basis 为负值时报错
  22. 修复多层 div 嵌套时内层 div 没有设置宽度时内部文本溢出
  23. 修复容器 line-height 设置 0px 导致 children 定位不对
  24. 修复 flex-direction column 与 flex-wrap wrap-reverse 同时存在时定位错误
  25. 修复 flex layout 中 flex-wrap: wrap-reverse 且 flex-direction: column 时无 width 的 flex-item 未分配宽度
  26. 修复 CSS url 地址不应该进行大小写转换
  27. 修复 flex-layout 中 flex-shrink 过的 flex-item 设置 text-align: center 后 children 未居中展示
  28. 修复 flex layout 中非整数的 flex-grow 未生效
  29. 修复 flex layout align-content center 与 flex-grow 同时存在时 flex-item 位置不对
  30. 修复 flex-wrap 为 wrap 的布局中 flex-item 高度不对
  31. 修复 Fixed 元素没有固定在屏幕上
  32. 修复 rax slider 动画异常
  33. 修复使用 x-if 进行单页应用切换会导致 UI 线程运行超载,造成卡顿。
  34. 修复 long-list 在两种实现的方式性能差距数倍问题
  35. 修复 Canvas 绘制的坐标没有进行相对尺寸转换
  36. 修复低版本 iOS 系统无法运行
  37. 修复行内元素插入块级元素,border的渲染不正确
  38. 修复绝对定位元素无法使用left:0, right:0, margin: auto 来实现水平居中

0.5.0 #

Features

渲染能力

  1. 新增 position sticky
  2. img 标签新增 width 和 height 属性支持
  3. img 标签新增 base64 data url
  4. Flexbox 支持 flex-wrap 属性
  5. Flexbox 支持 align-self 属性
  6. Flexbox 支持 flex, flex-flow 缩写属性
  7. Flexbox align-content 支持 stretch 属性
  8. 合并盒模型属性 padding, margin, border, background, overflow, opacity 到一个 RenderBoxModel 提升渲染性能
  9. rgb 支持 rgb(40%, 40%, 40%) 百分比写法
  10. rgb 支持 rgb(+128, 0, 0) 写法
  11. 新增 line-height 支持
  12. 新增 vertical-align 支持
  13. 新增 margin auto 支持
  14. 优化 border, background 渲染性能
  15. 支持局部内容重绘提升滚动性能
  16. 重构 transition 完整对齐 w3c 规范

API

  1. 支持 vibrate API
  2. Location API 对齐 w3c 规范
  3. 新增 window.onerror event
  4. 新增 document.all API
  5. 新增 Image API
  6. 新增 history API
  7. 新增 a 标签支持
  8. 添加跳转功能, 支持从 Kraken 内部页面跳转和从 Kraken 跳转到外部
  9. 新增 document.getElementById API
  10. 新增 document.getElementsByTagName API
  11. 支持 background 缩写属性
  12. 支持设置 scrollTop 与 scrollLeft
  13. 支持 window.scrollTo, window.scroll, window.scrollBy API
  14. asynStorage 支持 int 类型

其他

  1. 支持 rax-components 自动化测试
  2. 降级 android bridge API 到 level 16 支持 ARMV 7
  3. 支持通过 widget 接入 Flutter 应用
  4. 一个 Flutter 页面支持多页面 kraken 应用
  5. 统一定义常量节省内存占用
  6. 测试封装在 kraken widget 来跑,并行使用 2 个 widget 跑测试减少测试时间
  7. 新增同层渲染能力支持
  8. kraken widget 支持 onerror 回调
  9. kraken widget match flutter widget 生命周期

BugFixs

  1. 修复 relative 定位多帧渲染延迟
  2. 修复 relative 容器无法滚动
  3. 修复 flex item 无法通过 z-index 调整优先级
  4. 修复 position 在 static 与 non static 之间切换逻辑缺失
  5. 修复 transform 切换时动画不正确
  6. 修复 background 属性不支持带空格的 rgb 值
  7. 修复 CSSStyleDeclaration 占用内存过大
  8. 修复 img 标签不支持直接设置宽度
  9. 修复 padding, margin, border 等简写与非简写属性同时存在时未判断优先级
  10. 修复由于定时器未清理导致 reload crash
  11. 修复 input 无法正常工作
  12. 修复 line-height 未支持 vw/vh 单位
  13. 修复 border 为 0 仍然有 1px border 渲染出来
  14. 修复 font 不支持的值报错
  15. 修复 transitionStart 事件触发多次
  16. 修复 kraken 与浏览器默认字体大小不一致
  17. 修复多属性更改导致 transition 动画异常
  18. 修复 overflow 区域未包含超出范围的绝对定位元素
  19. 修复 Flex 容器嵌套时使用 padding 导致内部元素偏移不正确
  20. 修复 borderRadius 在 overflow hidden 情况下未生效
  21. 修复 padding 属性导致含有绝对定位元素的 flexbox 容器渲染异常
  22. 修复 Flex 容器中内部元素无法触发滚动
  23. 修复滚动容器内点击区域没有跟随滚动位置的问题
  24. 修复滚动容器会影响内部没有设置 top left 属性的绝对定位元素的偏移
  25. 修复flex item 无 width 时 flex item 宽度计算不正确问题
  26. 修复 max-width 在定位、flex-item、inline 不应该生效
  27. 修复滚动容器的高度计算没有按照所有内部元素的总高度来计算
  28. 修复创建页面数量 > 8 个之后 crash
  29. 修复页面销毁后内存泄漏
  30. 修复 element 嵌套的某些情况下 baseline 对齐与浏览器不一致
  31. 修复使用 transform 的动画会卡顿
  32. 修复 bundlePath 加载页面会阻塞 Flutter 切换动画的运行
  33. 修复 kraken_webview插件和webview_flutter插件注册重名的问题
  34. 修复使用 transform 位移后的元素 hitTest 失效

0.4.0 #

Features

渲染能力

  1. 支持 iframe 标签,并提供向内部 iframe 发送消息的API
  2. 支持 rax-slider 组件
  3. <img /> 支持本地图片缓存和 lazyload 加载方式
  4. <img /> 支持 object-fit 和 object-position 属性
  5. 完整支持 CSS transition 动画能力
  6. 支持 CSS subtreeVisibility
  7. 增加 Camera 摄像头渲染能力
  8. 支持 background 简便写法
  9. 支持 transitionend 事件
  10. 支持 white-space: normal 和 nowrap
  11. 支持 text-overflow: clip 和 ellipsis
  12. 支持直接使用 Element 元素的内置属性来设置功能
  13. video 支持使用 file:// 协议和 assets 路径
  14. background-image: liner-gradient 支持多重 stop 格式
  15. background-image: liner-gradient 支持 rgba 颜色
  16. JSContext 支持抛出没有捕获的异常事件,可使用 window.unhandledrejection 来捕获
  17. FlexItem 支持 flex-grow 和 flex-shrink 能力
  18. 支持 align-content: flex-end
  19. 添加 CSS initial 单位的支持
  20. 添加内联元素内添加块级元素的渲染警告
  21. 支持 flex 属性写法
  22. 支持 flex-direction: column-reverse

API

  1. 支持 Blob API
  2. 支持 URL 和 URlSearchParams API
  3. 提供基于 Flutter methodChannel 的 API,用于 JS 和客户端进行双向数据通信
  4. 添加 navigation.userAgent API
  5. 添加 performance API
  6. 添加 Clipboard API
  7. 将 window 设置为 JS 环境中的全局变量
  8. 支持 mtop 请求,支持调用现有基于 mtop 的API
  9. Kraken 下载 bundle 添加 query 参数支持
  10. 支持 element.remove() API
  11. 支持 CustomEvent API

其他

Kraken macOS 最小系统版本兼容到 macOS 10.12

BugFixs

  1. 修复绝对定位元素的相对偏移基准和浏览器不一致的问题
  2. 修复 border-radius 无法动态更新的问题
  3. 修复 FlexLayout 中计算 layout 横向 size 时未区分 flex-direction 导致与纵向 size 的值相同
  4. 修复 flex-grow 或者 flex-shrink 存在时 flex layout size 不正确
  5. 修复动态切换绝对定位元素的 top left 属性而导致的渲染不正确
  6. 修复 transform 默认的 origin 的位置与浏览器不一致的问题
  7. 修复 dart 类型错误而导致的 fetch 调用超时问题
  8. 修复 rax-image 设置错误的代码影响渲染的问题
  9. 修复 Flex-item 会错误撑开自身宽度,从而影响其他元素位置的问题
  10. 修复 JS Bridge 销毁时存在的内容泄漏问题
  11. 修复动态更新文本节点渲染不生效的问题
  12. 修复 transform: center top 水平居中不生效
  13. 修复 transform: scale 只设置一个只,纵轴未缩放
  14. 修复 rgba 写法,中间存在空格而导致的颜色解析失败
  15. 修复 flex-item 元素上使用 text-align:center 失效的问题
  16. 修复给空白文本节点设置 style 而导致的渲染异常
  17. 修复 location.reload() 之后,上一个页面的 JSContext 没有销毁的问题
  18. 修复 width 超出 max-width 的约束而导致的渲染异常
  19. 修复 top: 0, bottom: 0 无法撑开元素的宽度问题
  20. 修复 background 不支持线性渐变的问题
  21. 修复 background-image 不支持 url('') 的写法
  22. 修复 z-index 不支持负值的场景
  23. 修复 Element.appendChild 时,因为没有移除已经被挂载的节点从而导致死循环的问题
  24. 修复绝对定位元素的原始位置没有按照文档流的方式进行计算的问题
  25. 修复 fixed 元素没有跟随 relative 父级相对位置的问题
  26. 修复 linear-gradient 的角度计算错误问题
  27. 修复 radial-graident 区域大小计算错误问题
  28. 修复 mtop 跨域无法访问,增加简易的 document.cookie API 支持,允许设置 Origin Header
  29. 修复 flexBox 下的多个 relative children 会重叠显示
  30. 修复删除 relative element 时对应的 placeholder 未删掉导致 sibling 坐标错误
  31. 修复 transform scale 的 origin 不正确
  32. 修复有带有绝对定位的 image 图片计算后尺寸为 0
  33. 修复 Rax 无法更新文本节点的问题
  34. 修复 video 组件设置 loop 属性不生效的问题
  35. 修复 FlexItem 在不设置高度的情况下,无法被 align-items: scretch 拉伸的问题
  36. 修复 FlexItem 的高度超出外部约束的情况下,父级元素没有正确计算高度的问题
  37. 修复 如果没有设置 src 属性就无法设置宽高的问题
  38. 修复 borderWidth 设置为 0 依然显示的问题
  39. 修复 transition 存在的情况下,多个 transform 会导致动画失效的问题
  40. 修复 input 未指定 width 时,默认宽度失效的问题
  41. 修复 rgb 中的数值超出 0-255 限制而导致的渲染异常
  42. 修复 十六进制颜色数值超出 0-255 限制到导致的渲染异常
46
likes
65
pub points
81%
popularity

Publisher

verified publisheropenwebf.com

W3C standards-compliant web rendering engine based on Flutter, allowing web applications to run natively on Flutter.

Homepage

Documentation

API reference

License

Apache-2.0 (LICENSE)

Dependencies

archive, async, characters, collection, ffi, flutter, hive, intl, meta, path, quiver, shared_preferences, source_span, vector_math, web_socket_channel

More

Packages that depend on webf