Skip to content

Releases: divkit/divkit

32.47.0

27 Apr 15:01

Choose a tag to compare

Android Client:

  • Added image loading errors reporting.
  • Fixed ConcurrentModificationException at ErrorCollector.notifyObservers() call.
  • Fixed an issue where div-custom binding was called on a background thread.
  • Fixed loading of animated images in .webp format by GlideDivImageLoader.

iOS Client:

  • Added RasterizeExtensionHandler to fix offscreen rendering issues in overlap containers.
  • Also reduced redundant full-card refreshes when only the pager size changes, and made automatic page changes on an infinite carousel more reliable.
  • Fixed VideoBlock preview size.
  • Fixed an issue on iOS where programmatic text updates left the caret at its previous position; the caret now moves to the end of the line.
  • Fixed infinite div-pager: after rotating the screen the carousel could freeze between pages or show the wrong page; it now stays aligned and flips correctly. The same applies to paging gallery when its size changes (e.g. rotation).
  • Supported reset of persistent variables and data in DivKitComponents.
  • When a dictionary is turned into a string in expressions (for example @{dict} or toString(dict)), string keys and values are serialized with JSON-style escaping for special characters.

Web Client:

  • Supported typed action scroll_to with destination item_id and corresponding scroll_to_item_id action url.

32.46.0

20 Apr 14:29

Choose a tag to compare

Android Client:

  • Async binding no longer triggers if the DivData hasn't changed.
  • Fixed alpha restoring at the end of fade animation in set of animations with different durations.
  • Fixed memory leak in case when Div2View is destroyed earlier than corresponding Div2Context.
  • Headers are now important for accessibility.
  • Supported custom typed actions.
  • Supported reset of persistent variables and data in DivStorage.
  • Supported typed action scroll_to with destination item_id and corresponding scroll_to_item_id action url.

iOS Client:

  • Fixed a flickering issue in overlap container during transition animations caused by offscreen rendering.
  • Fixed remote image distortion in wrap_content mode by using image size in points (scale = 1) for intrinsic layout.

Web Client:

  • Added set_cursor_position action.
  • Updated slider ticks limits logic, the maximum number of ticks is now 1000.

32.45.0

14 Apr 11:57

Choose a tag to compare

Android Client:

  • Fixed Div2View self locks at async bindng.

iOS Client:

  • Div-video preview strings (base64 image data, including data: URL form) are decoded on a background queue through the image holder pipeline instead of blocking layout on the main thread.

32.44.0

06 Apr 12:36

Choose a tag to compare

Android Client:

  • Fixed ANR at RuntimeStoreImpl initialization.

iOS Client:

  • Fix blur effect during animations.
  • Fixed visibility action resolve with collection item builder.

32.43.0

31 Mar 14:01

Choose a tag to compare

Android Client:

  • Do not interrupt visit of div hierarchy without ExpressionResolverImpl.
  • Fix ConcurrentModificationException during preload.
  • Fixed div-state state restoring on rebind after state_id_variable changes.
  • Shift debug view below status bar area.

Web Client:

  • Fixed an issue where visibility_actions were called inside a component with visibility=invisible.
  • The !: operator now has higher precedence than logical and comparison operators.

32.42.0

23 Mar 14:48

Choose a tag to compare

Android Client:

  • Fixed NoSuchElementException at Div2View.trackChildrenVisibility() call.
  • Fixed showing of non-animated images in gif-image downloaded via GlideDivImageLoader.
  • Fixed showing of preview by url in gif-image after rebind.
  • Prevent excessive lottie animations when div view is being recycled.
  • Support active_font_weight_value and inactive_font_weight_value in tab_title_style.
  • Support preloading for lottie and video.
  • Supported .svg images in PicassoDivImageLoader and GlideDivImageLoader.
  • The !: operator now has higher precedence than logical and comparison operators.
  • video_sources made optional for video.

iOS Client:

  • Support active_font_weight_value and inactive_font_weight_value in tab_title_style.
  • video_sources made optional for video.

Web Client:

  • Changed the default datetime conversion to a string according to the local time zone to better match other platforms.
  • Fixed an issue with the layout of items in the container, the total weight of which was less than 1.
  • Support active_font_weight_value and inactive_font_weight_value in tab_title_style.
  • video_sources made optional for video.

32.41.0

16 Mar 11:27

Choose a tag to compare

Android Client:

  • Added getTimestamp function.
  • Added error logging for video playing.
  • Fixed ConcurrentModificationException at PagerIndicatorConnector.attach() call.
  • Fixed an issue where non-modal tooltips intercepted the system back gesture on Android 10+.

iOS Client:

  • Added SVG support in div-image preview.
  • Added getTimestamp function.
  • Fixed z-order during transition_change animation.

Web Client:

  • Added getTimestamp function.
  • Added support for the negative letter_spacing.

32.40.0

11 Mar 15:55

Choose a tag to compare

Android Client:

  • Deprecated UriHandler interface.
  • Fix invalid timezone offsets during datetime formatting.

iOS Client:

  • Fix text gradient rendering when reusing text view with non-zero frame.

32.39.0

02 Mar 13:44

Choose a tag to compare

Android Client:

  • Fixed ConcurrentModificationException at ErrorCollector.notifyObservers() call.
  • Fixed NoSuchElementException at Div2View.discardChildrenVisibility() call.
  • Fixed incorrect transition duration inside a transition set.
  • Fixed match_parent width child size inside a wrap_content parent with min size.

iOS Client:

  • Added logging of video player fatal errors to DivKitLogger.
  • Eliminated redundant animation triggers caused by isHighlighted oscillation during touch tracking.
  • Fixed action_animation not returning to its original state, causing elements to remain visually stuck in the pressed (scaled down) state.
  • Fixed animation playback in previews.
  • Fixed the second slider thumb rendering with zero size when it first appears during an active snap animation.
  • The number of ticks on the slider is limited to 1000 elements.

32.38.0

24 Feb 11:24

Choose a tag to compare

Android Client:

  • Add variable description to VariableMutationException.
  • Removed dependencies to androidx.datastore:datastore and org.jetbrains.kotlin:kotlin-serialization.

iOS Client:

  • Fixed Lottie animation repeat_count semantics: repeat_count now means the number of additional plays (repeat_count=0 plays once, repeat_count=1 plays twice, repeat_count=-1 plays infinitely).
  • The custom action function has been implemented.

Web Client:

  • Changed lotties repeat_count logic (to better align with other platforms).