Skip to content

release: 3.1.0 - #11

Merged
CtrlAltDevelop merged 14 commits into
mainfrom
develop
Oct 6, 2026
Merged

CtrlAltDevelop merged 14 commits into
mainfrom
develop

Conversation

@CtrlAltDevelop

@CtrlAltDevelop CtrlAltDevelop commented Oct 6, 2026 •

Copy link
Copy Markdown
Owner

What this changes, and why

Release 3.1.0: sizing the panes from the host (paneHeights, volumeHeight, maximizePane, PaneSizeMode.ratios / custom), the grid options (gridColumnMode, showGridRows / showGridColumns, gridDashPattern), and automated publishing to pub.dev from a v<version> tag. The full list is under ## 3.1.0 in CHANGELOG.md.

Closes #8.

Checklist

  • flutter analyze and dart format --output=none --set-exit-if-changed . are clean
  • flutter test passes (the golden tests are only stable on macOS, which CI uses)
  • New behaviour has a test
  • Public API changes are documented, and doc/panes.md updated
  • CHANGELOG.md has an entry

With few candles in view, the grid's vertical lines only rule where a
candle crosses a time bucket, so a sparse intraday window leaves them
clustered instead of spanning the chart. ChartStyle.gridColumnMode
lets that grid fall back to dividing the chart width into gridColumns
equal bands instead, independent of candle count.
ChartStyle gains showGridRows, showGridColumns and gridDashPattern next
to gridColumnMode, so the grid's horizontal and vertical lines switch on
and off independently and can be dashed. Invalid dash patterns read as
solid. The pane borders are not part of the grid and stay.

The example app gets switches for all three, the date-axis doc covers
them, and the 3.1.0 changelog entry folds in gridColumnMode.
feat: evenly spaced grid, row/column toggles and dashed grid
KChartWidget.paneHeights and volumeHeight set the pane heights from outside,
onPaneHeightsChanged reports drags, and KChartController gains setPaneHeight,
resetPaneHeights, maximizePane, restorePanes and toggleMaximizePane. Host
heights are not held to min/max pane height but are cut back to leave the
candles a strip, and dragged heights now follow their pane through a reorder.

Closes #8
While KChartWidget.paneHeights is given the host owns the heights: a drag or
KChartController.setPaneHeight is reported through onPaneHeightsChanged and the
pane moves when the list is passed back. KChartController.maximizeVolume
stretches the volume pane the way maximizePane does an indicator pane, and the
example app gets a chip for it.
paneRatios splits the chart height between the candles, the volume pane and
each indicator pane, so [3, 1, 2] is half, a sixth and a third, and the split
holds as the chart is resized. The host owns the proportions: a drag reports the
moved list through onPaneRatiosChanged. The example app gets a switch for it.
paneSizeMode picks heights (pixels, the default), ratios (paneRatios) or custom.
In custom mode KChartController.editPanes shows a line between each two parts,
the candles and volume included, to drag between the smallest and largest height
each may take. The layout is kept as proportions and reported through
onPaneRatiosChanged. paneRatios now only applies in the ratios and custom modes.
The example app gets a sizing chooser and an Edit layout chip.
A pane or the volume pane is held at 32 px or more however small
ChartStyle.minPaneHeight is set, so the edge or line that drags it back out can
always be reached.
…panes-from-the-host-fullscreen-one-pane

feat: size indicator panes from the host, and maximize one pane
A v<version> tag starts the publish workflow, which checks the tag is on main,
matches the pubspec version and has a CHANGELOG entry before publishing through
pub.dev's automated publishing. Releasing is documented in CONTRIBUTING.md.
Bump the version, date the changelog and group it into Added and Changed, and
point the install snippet at 3.1.0.
@CtrlAltDevelop
CtrlAltDevelop merged commit b0d328d into main Oct 6, 2026
3 checks passed
@CtrlAltDevelop
CtrlAltDevelop deleted the develop branch October 6, 2026 00:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

A way to size indicator panes from the host (fullscreen one pane)

1 participant