# Changelog

## 0.3.6

- Fixed adding cameras without authentication credentials.
- Username and password are explicitly optional.
- Anonymous cameras are stored using the database defaults for empty credentials.

## 0.3.5

- Deferred camera auto-start until the Qt event loop is running.
- Prevents GStreamer startup from racing Lomiri window/surface creation.
- Added window visibility, activation, exposure and application-state logging.
- Explicitly requests activation after the native window is shown.

## 0.3.4

- Added a persistent per-camera auto-start setting.
- One camera can be selected to start automatically when the app launches.
- Auto-start waits until settings, cameras and the native video surface are ready.
- Deleting the configured auto-start camera clears the setting automatically.

## 0.3.3

- Fixed camera manager text visibility in dark mode.
- Added explicit foreground colors for camera names, URLs, editor labels and help text.
- Light mode remains unchanged.

## 0.3.2

- Replaced `QQmlApplicationEngine` with `QQuickView`.
- Explicitly creates and shows the application window.
- Fixes the Lomiri startup spinner remaining visible after QML loaded.

## 0.3.1

- Fixed Qt QML registration of `VideoItem` by removing the C++ `final` qualifier.
- No playback or UI behavior changes.

## 0.3.0

- Replaced qmlglsink/GstGLVideoItem with appsink.
- Added native QQuickPaintedItem video rendering.
- Removed gstreamer1.0-qt5 build/runtime dependency.
- Kept RTSP-over-TCP H.264 pipeline.
- Added clearer startup diagnostics.

## 0.2.2

- Corrected confined Qt application data path.
