From e21709c9601209e26d09dea0a45e37f0636bb605 Mon Sep 17 00:00:00 2001 From: Scott Murray Date: Mon, 21 Nov 2022 02:30:35 -0500 Subject: Rework for use in Flutter demo platform image Changes: - Converted to portrait orientation. - Application enumeration and launching+activation enabled via use of applaunchd gRPC API and agl-shell protocol platform channel plugin in the embedder. - Previous dashboard, hvac, media, etc. pages disabled. Some of the code has been kept for potential reuse. - Clock widget tweaked to fit in portrait mode navigation bar, and take text color argument. - Bluetooth, wifi, and phone signal icons mocked up in navigation bar. Known issues: - The bottom panel area is static at present, support for popping up a volume control slider like the Qt demo is planned as an addition. - The path to implementing connection and signal strength indications is currently a bit hazy, it is possible that flutter-dbus might be the simplest stopgap. - State management has been kept basic, as there are a couple of places where using provider or riverpod seems like perhaps an overcomplication. This will be reviewed when KUKSA.val support is integrated for the volume slider. - Some of the layout sizing is a bit ad hoc, and it is not clear if the previous layout helper class is actually worth keeping or not. This should be reviewed when time permits. Bug-AGL: SPEC-4611 Signed-off-by: Scott Murray Change-Id: Ib486b1fd92047f6c1ff1cd9569f49e3ccaf3269d --- lib/page_media.dart | 78 ----------------------------------------------------- 1 file changed, 78 deletions(-) delete mode 100644 lib/page_media.dart (limited to 'lib/page_media.dart') diff --git a/lib/page_media.dart b/lib/page_media.dart deleted file mode 100644 index 618feb3..0000000 --- a/lib/page_media.dart +++ /dev/null @@ -1,78 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_homescreen/layout_size_helper.dart'; - -class MediaPage extends StatelessWidget { - const MediaPage({Key? key}) : super(key: key); - - Widget _createMediaButton( - IconData icon, double iconSize, Null Function() onPressed) { - return Padding( - padding: EdgeInsets.all(iconSize / 8), - child: ElevatedButton( - onPressed: onPressed, - child: Icon( - icon, - color: Colors.blueGrey.shade700, - size: iconSize, - ), - style: ElevatedButton.styleFrom( - shape: CircleBorder(), - padding: EdgeInsets.all(iconSize / 8), - primary: Colors.blueGrey.shade100, - onPrimary: Colors.white, - ), - ), - ); - } - - @override - Widget build(BuildContext context) { - var sizeHelper = LayoutSizeHelper(context); - return Container( - color: Colors.deepPurple.shade50, - child: Center( - child: Container( - color: Colors.blueGrey.shade900, - constraints: BoxConstraints.expand(), - alignment: Alignment.center, - child: Stack( - alignment: Alignment.center, - children: [ - AspectRatio( - aspectRatio: 16 / 9, - child: Container( - decoration: BoxDecoration( - gradient: LinearGradient( - begin: Alignment.bottomLeft, - end: Alignment.topRight, - colors: [ - Colors.blueGrey.shade700, - Colors.blueGrey.shade400 - ])), - ), - ), - Row( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - _createMediaButton( - Icons.skip_previous, - sizeHelper.defaultIconSize, - () {}, - ), - _createMediaButton( - Icons.play_arrow, - sizeHelper.defaultIconSize, - () {}, - ), - _createMediaButton( - Icons.skip_next, - sizeHelper.defaultIconSize, - () {}, - ), - ], - ) - ], - ), - ))); - } -} -- cgit 1.2.3-korg