responsive_mixin_layout 1.7.0 copy "responsive_mixin_layout: ^1.7.0" to clipboard
responsive_mixin_layout: ^1.7.0 copied to clipboard

A Flutter package for creating responsive layouts across different screen sizes.

Changelog #

All notable changes to this project will be documented in this file.

1.0.0 #

  • Initial release of the package.
  • Added the ResponsiveLayout widget to create responsive layouts in Flutter.
  • Provides custom widgets for mobile devices, tablets, desktops, and TVs.
  • Allows customization of the application's appearance based on the device's screen size.

1.0.1 #

  • Changed ScreenSize class name to ScreenSizes.
  • Updated extension on context to have getters.

1.0.2 #

  • Changed ResponsiveLayoutMixin mixin name to ResponsiveMixinLayout.

1.0.3 #

  • Updated Flutter SDK.
  • Updated README.

1.1.0 #

  • Added ScreenWidth and ScreenHeight classes to record sizes and methods.

1.2.0 #

  • Added basedOnLayout bool on ResponsiveLayout to switch between getting screen size from screen size or layout box constraints.

1.3.0 #

  • Added xdesktop field into ScreenSizes.

1.4.0 #

  • Added screenWidth and screenHeight fields into BuildContext extension.

1.5.0 #

Added #

  • RenderBoxBuilder: A widget that provides access to the RenderBox of its child widget and triggers a callback.
  • BoxSizeListener: A widget that listens for size changes of its child widget and triggers a callback.
  • ScreenSizeListener: A widget that listens for screen size changes and triggers a callback.
  • TextScalerBuilder: A widget that provides a custom text scaling factor based on the screen size.
  • DoubleExtension: An extension for the double class that provides additional utility methods, including clampInverted and clampMapRanged.

Changed #

  • Improved documentation and examples in the README file.
  • Updated the ResponsiveLayout and ResponsiveMixinLayout widgets to enhance flexibility and usability.

Fixed #

  • Minor bug fixes and performance improvements.

1.6.0 #

Added #

  • New widgets RenderRandomInt, RenderRandomDouble, and RenderRandomBool to generate random values.
  • Detailed comments in English for the new widgets.
  • Usage examples in the README file.

1.6.1 #

  • Updated README.

1.6.2 #

  • Fixed [RenderRandomValue] widgets import.

1.6.3 #

  • Added [basedOnLayout] bool getter into [ResponsiveMixinLayout] and [ResponsiveMixinLayoutStateful] mixins.

  • Added [xmobile] field to use in all ResponsiveLayout methods

1.6.4 #

  • Fix scaler parameters from [TextScalerBuilder].

1.7.0 #

Changed #

  • Responsive cascade resolution: Layout builders now use a bidirectional cascade strategy. A defined breakpoint applies to all screen sizes (both smaller and larger) unless overridden by another defined breakpoint closer to the active size.
    • Cascade down (priority): First searches for the nearest defined builder at or below the active breakpoint.
    • Cascade up (fallback): If no builder is found below, searches upward for the nearest defined builder above the active breakpoint.
    • Example: defining only tablet renders tablet for all sizes. Defining tablet + desktop renders tablet for xmobile/mobile/tablet/xdesktop and desktop for desktop/tv.
  • Extracted shared _resolveCascade helper to eliminate duplicated resolution logic across ResponsiveLayout, ResponsiveMixinLayout, and ResponsiveMixinLayoutStateful.

Fixed #

  • tv breakpoint was incorrectly returning the desktop builder instead of tv.
  • xmobileLayout check was returning mobileLayout instead of xmobileLayout in mixins.
  • xdesktopLayout check was returning desktopLayout instead of xdesktopLayout in mixins.
6
likes
160
points
47
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

A Flutter package for creating responsive layouts across different screen sizes.

Repository (GitHub)
View/report issues

License

MIT (license)

Dependencies

flutter

More

Packages that depend on responsive_mixin_layout