aboutsummaryrefslogtreecommitdiffstats
path: root/lib/page_media.dart
diff options
context:
space:
mode:
authorScott Murray <scott.murray@konsulko.com>2022-11-21 02:30:35 -0500
committerScott Murray <scott.murray@konsulko.com>2022-11-21 07:45:11 +0000
commit89a7561a10a16466b8f5b4e84c3bc94c21e6e6da (patch)
tree6f7e9d1bda9126cc0dfe6ba401b40739715867e2 /lib/page_media.dart
parent1f5b482843291c17e3cbb265f59101f8d1874182 (diff)
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 <scott.murray@konsulko.com> Change-Id: Ib486b1fd92047f6c1ff1cd9569f49e3ccaf3269d
Diffstat (limited to 'lib/page_media.dart')
-rw-r--r--lib/page_media.dart78
1 files changed, 0 insertions, 78 deletions
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,
- () {},
- ),
- ],
- )
- ],
- ),
- )));
- }
-}