Skip to content

Make Linux Template simpler/Have a gobject subclass FlutterApplication #142920

@jane400

Description

@jane400

Use case

Adding desktop-specific quirks more easily in the Flutter engine.

  • the titlebar is not needed on linux mobile environments like phosh, as the window isn't draggable and always maximised (so listening to XDG_CURRENT_DESKTOP and looking at a certain GSettings schema)
  • adding a headerbar manually if we're on GNOME (to integrate better into the platform style) (currently solved by having a code path in the template that forces a headerbar on wayland and strcmp the wm_name on X11) (I would like to change that for every flutter application, that the XDG_CURRENT_DESKTOP env variable is read instead)

Proposal

The template seems like it's doing more and more stuff. I'm proposing that we create a Subclass of GtkApplication called FlApplication symmetrical to FlutterActivity on Android. This subclass should be extensible (so not final), that application developers can still override all the behavior they want. But the _client code of the template should be moved into that.

Metadata

Metadata

Assignees

Labels

P2Important issues not at the top of the work lista: desktopRunning on desktopc: new featureNothing broken; request for a new capabilityc: proposalA detailed proposal for a change to Flutterengineflutter/engine related. See also e: labels.platform-linuxBuilding on or for Linux specificallyr: fixedIssue is closed as already fixed in a newer versionteam-linuxOwned by the Linux platform teamtriaged-linuxTriaged by the Linux platform team

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions