neo_fade_ui 0.1.1
neo_fade_ui: ^0.1.1 copied to clipboard
Neo Fade UI - A modern Flutter UI component library with glass morphism, gradient effects, and customizable themes.
0.1.1 #
Fixed #
- Text fields could not be pasted into.
NeoTextFieldUnderlinewas built on a bareEditableText, which has no selection controls — no long-press menu, so no select, copy or paste. Pasting a token on a phone was impossible. It is now aTextField, which also renders the hint natively instead of faking it behind the cursor. - Gradient borders were drawn behind the field, not on it.
GradientBorderusedCustomPaint(painter:), which paints beneath the child, so a field with its own glass fill covered its own border — leaving only the slivers the rounded corners did not reach. It now usesforegroundPainter.
Known #
The other seven text field variants (outlined, pill, minimal,
floatingLabel, leftAccent, shimmer, cornerBadges) are still built on
EditableText and have the same selection problem. Only underline is fixed
here.
0.1.0 #
Fixes found by building a full app (Moxly) on the library, each of which had forced a local reimplementation of the component.
Fixed #
- Icons rendered as empty boxes. Nine components built their icons as
const IconData(0xNNNN, fontFamily: 'MaterialIcons')using codepoints from an older MaterialIcons font —Icons.searchis0xe567, not0xe8b6— so they showed as missing glyphs on current Flutter versions. They now use theIconsconstants. AffectsNeoSearchBar,NeoAvatar,NeoChip,NeoSnackbar,NeoBottomNav,NeoBottomNavCTA,NeoBottomNavCTASimple,NeoFeatureCardIconLeftand the number selectors. NeoSearchBarignored itshintand was 20 logical pixels tall, less than a line of body text. It was built on a bareEditableText, the raw editing primitive with no decoration; it is now aTextFieldthat renders the hint and has room for its content.NeoSearchBar.onChangedfired on programmatic changes. It came from a controller listener, so assigningcontroller.textreported back as though the user had typed. It now comes from the field.- Buttons overflowed when width-constrained.
NeoButtonFilled,NeoButtonGradientBorder,NeoButtonPill,NeoButtonSoftandNeoTextButtonlaid their label out with noFlexible, so a button inside anExpandedor aSizedBoxoverflowed instead of ellipsising. Unconstrained buttons are unchanged.
Added #
NeoListTile.titleMaxLines/.subtitleMaxLines— cap the text so the row cannot grow. Required for lists with a fixeditemExtent, where a wrapping title overflows the extent. Both default to null, which is the previous wrapping behaviour.NeoFadingAppBar— a full-bleed title bar that fades into the background: transparent behind the status bar, solid behind the title, and a hard bottom edge with a gradient hairline. ComplementsNeoAppBar, which keeps its own surface.
Internal #
- The golden suite was red on main and could not run at all: the test config
resolved the SDK through a
.fvm/flutter_sdksymlink that current fvm versions no longer create. It now locates MaterialIcons from the test runner's own binary. 35 stale goldens regenerated, andtest/goldens/failures/diff artefacts removed from version control. - New non-golden tests cover the icon constants, the search bar's behaviour, and layout under constraint — the three areas that had no coverage, which is why these bugs shipped.
0.0.1 #
- Initial release
- Theme system with glass morphism, gradients, and customizable colors
- Buttons: filled, gradient border, pill, soft, CTA, icon, text, FAB
- Cards: top border, glow outline, left accent, corner splash, bottom fade, diagonal stripe, pulsing glow
- Feature cards: icon top, icon left, icon centered, icon header
- Navigation: bottom nav (dot, pill, expanding, CTA variants), floating actions
- Inputs: text fields (8 variants), checkboxes (8 variants), switches (8 variants), sliders (8 variants), number selectors (4 variants), radio, dropdown, search bar, emoji picker
- Selectors: segmented controls (sliding, pill outline, underline, icon grid, icons)
- Display: chip, badge, avatar, list tile
- Feedback: snackbar, dialog, tooltip, progress indicators
- Layout: app bar, divider
- Foundation: glass container, mesh background, inner border, gradient border