# multiple_windows

A reference application demonstrating multi-window support for Flutter using a
rich semantics windowing API.

## Running
To run the example application, you must:

1. Be on Flutter's main release channel
2. Provide the `--enable-windowing` flag to flutter
