Flutter

⚠️ This document is intended for KDDW developers.
⚠️ The flutter port is not ready for the general public.
⚠️ The flutter port is on hold, waiting for multi-window support upstream.

Requirements

Build instructions

Adjust paths as needed.
Checkout branch main.

Preparatives:

export KDDW_SOURCE_DIR=/home/user/somewhere/kddockwidgets/
export KDDW_BINDINGS_LIB=/path/to/libkddockwidgets.so # (or dylib or dll)

Release build (Recommended):

cd $KDDW_SOURCE_DIR
cmake --preset=release-flutter
cmake --build build-release-flutter
cd examples/flutter/
flutter pub get
flutter run -d linux # adjust device as needed

# (optional) run flutter tests:
cd $KDDW_SOURCE_DIR/src/flutter/dart/ && flutter pub get && flutter test

If you want to run the C++ tests, then you need a developer build:

Developer build:

cd $KDDW_SOURCE_DIR
cmake --preset=dev-flutter
cmake --build build-dev-flutter
cd build-dev-flutter && ctest

Pending work

  • Support flutter multi-window

  • More styling

  • Figure out packaging, probably once Dart's Native Assets is released