ui library

Classes

AreaPaneHeader
Create a bordered, fixed-height header area with a title and optional child on the right-hand side.
BlankHeader
A blank, drop-in replacement for AreaPaneHeader.
ButtonGroupItemData
DefaultSplitter
DevToolsButton
A button with default DevTools styling and analytics handling.
DevToolsClearableTextField
A DevTools-styled text field with a suffix action to clear the search field.
DevToolsDialog
A standardized dialog for use in DevTools.
DevToolsFilterButton
DevToolsToggleButton
DevToolsToggleButtonGroup
DevToolsTooltip
A widget that provides a tooltip with a common delay before the tooltip is shown.
DialogApplyButton
A TextButton used to close a containing dialog (APPLY).
DialogCancelButton
A TextButton used to close a containing dialog (Cancel).
DialogCloseButton
A TextButton used to close a containing dialog (Close).
DialogHelpText
DialogTextButton
DialogTitleText
A Text widget styled for dialog titles.
FlexSplitColumn
A widget that takes a list of children and lays them out in a column where each child has a flexible height.
FormattedJson
Displays a json map as selectable, formatted text.
IdeTheme
IDE-supplied theming.
ImageIconLabel
Label including an image icon and optional text.
InputDecorationSuffixButton
A DevTools-styled icon action button intended to be used as an InputDecoration.suffix widget.
A data model for a clickable link in a UI.
LinkTextSpan
A text span that will launch the provided URL from link when clicked.
MaterialIconLabel
OutlineDecoration
Wraps child in a border with default styling.
PaddedDivider
Convenience Divider with Padding that provides a good divider in forms.
RoundedButtonGroup
A group of buttons that share a common border.
RoundedCornerOptions
RoundedDropDownButton<T>
A DevTools-styled dropdown button.
RoundedOutlinedBorder
Wraps child in a rounded border with default styling.
SplitPane
A widget that takes a list of children, lays them out along axis, and allows the user to resize them.
StateUpdateDialog
A standardized dialog with help text and buttons Reset to default, APPLY and CANCEL.

Extension Types

IdeThemeQueryParams

Extensions

DevToolsSharedColorScheme on ColorScheme
ScrollControllerAutoScroll on ScrollController
An extension on ScrollController to facilitate having the scrolling widget auto scroll to the bottom on new content.
ThemeDataExtension on ThemeData
Utility extension methods to the ThemeData class.

Constants

activeSearchMatchColor → const MaterialAccentColor
borderPadding → const double
darkColorScheme → const ColorScheme
Dark theme color scheme generated from DevTools Figma file.
defaultActionsIconSizeBeforeScaling → const double
defaultCurve → const Cubic
The default curve we use for animations.
defaultDuration → const Duration
The default duration to use for animations.
defaultElevation → const double
defaultIconSizeBeforeScaling → const double
defaultRadius → const Radius
defaultScrollBarOffset → const double
defaultSearchFieldWidth → const double
defaultSpacing → const double
defaultTabBarPadding → const double
defaultTabBarViewPhysics → const NeverScrollableScrollPhysics
densePadding → const double
denseRowSpacing → const double
denseSpacing → const double
dialogDefaultContext → const String
extraLargeSpacing → const double
extraWideSearchFieldWidth → const double
hoverCardBorderSize → const double
intermediateSpacing → const double
largeSpacing → const double
lightColorScheme → const ColorScheme
Light theme color scheme generated from DevTools Figma file.
longDuration → const Duration
A long duration to use for animations.
noPadding → const double
rapidDuration → const Duration
A longer duration than shortDuration but quicker than defaultDuration.
searchMatchColor → const MaterialColor
shortDuration → const Duration
A short duration to use for animations.
tabBarSpacing → const double
unscaledDefaultFontSize → const double
unscaledLargeFontSize → const double
unscaledSmallFontSize → const double
useDarkThemeAsDefault → const bool
Whether dark theme should be used as the default theme if none has been explicitly set.
wideSearchFieldWidth → const double

Properties

actionsIconSize double
no setter
actionWidgetSize double
no setter
activeSearchMatchColorOpaque Color
final
buttonMinWidth double
no setter
debugLargeFontSize bool
Change this value to ensure your changes work well with custom font sizes.
getter/setter pair
defaultBorderRadius BorderRadius
final
defaultButtonHeight double
no setter
defaultChartHeight double
no setter
defaultDialogWidth double
no setter
defaultFontSize double
no setter
defaultHeaderHeight double
no setter
defaultIconSize double
no setter
defaultLinearProgressIndicatorHeight double
no setter
defaultLinearProgressIndicatorWidth double
no setter
defaultListItemHeight double
no setter
defaultRowHeight double
no setter
defaultTextFieldHeight double
no setter
defaultTextFieldNumberWidth double
no setter
defaultToolbarHeight double
no setter
ideTheme IdeTheme
no setter
inputDecorationElementHeight double
no setter
largeFontSize double
no setter
mediumProgressSize double
no setter
searchMatchColorOpaque Color
final
singleLineDialogTextFieldDecoration InputDecoration
final
smallFontSize double
no setter
smallProgressSize double
no setter
statusLineHeight double
no setter
tableIconSize double
no setter
tooltipIconSize double
no setter

Functions

alternatingColorForIndex(int index, ColorScheme colorScheme) Color
Gets an alternating color to use for indexed UI elements.
defaultAnimationController(TickerProvider vsync, {double? value}) AnimationController
Builds a defaultDuration animation controller.
defaultBorderSide(ThemeData theme) BorderSide
BorderSide styled with the DevTools default color palette.
defaultCurvedAnimation(AnimationController parent) CurvedAnimation
Builds a CurvedAnimation with defaultCurve.
denseAwareOutlinedButtonStyle(BuildContext context, double? minScreenWidthForTextBeforeScaling) ButtonStyle
denseAwareTextButtonStyle(BuildContext context, {double? minScreenWidthForTextBeforeScaling}) ButtonStyle
dialogSubHeader(ThemeData theme, String titleText) List<Widget>
fixBlurryText(TextStyle style) TextStyle
Returns a TextStyle with FontFeature.proportionalFigures applied to fix blurry text.
getIdeTheme() IdeTheme
Load any IDE-supplied theming.
isEmbedded() bool
Whether DevTools is in embedded mode, as determined by the ideTheme parsed from query parameters.
isScreenWiderThan(BuildContext context, double? width) bool
Measures the screen size to determine whether it is strictly larger than width, scaled to the current font factor.
isValidDarkColor(Color? color) bool
isValidLightColor(Color? color) bool
longAnimationController(TickerProvider vsync, {double? value}) AnimationController
Builds a longDuration animation controller.
maybeWrapWithTooltip({required String? tooltip, EdgeInsetsGeometry? tooltipPadding, required Widget child}) Widget
Helper that will wrap child in a DevToolsTooltip widget if tooltip is non-null.
scaleByFontFactor(double original) double
showDevToolsDialog({required BuildContext context, required String title, required Widget content, List<Widget> actions = const <Widget>[]}) → void
themeFor({required bool isDarkTheme, required IdeTheme ideTheme, required ThemeData theme}) ThemeData
Constructs the light or dark theme for the app taking into account IDE-supplied theming.