2020-03-21 17:46:23 +01:00
|
|
|
import 'package:flutter/material.dart';
|
|
|
|
|
|
|
|
|
|
import '../backend.dart';
|
|
|
|
|
|
|
|
|
|
class SettingsScreen extends StatelessWidget {
|
|
|
|
|
@override
|
|
|
|
|
Widget build(BuildContext context) {
|
|
|
|
|
final backend = Backend.of(context);
|
|
|
|
|
|
|
|
|
|
return Scaffold(
|
|
|
|
|
appBar: AppBar(
|
|
|
|
|
title: Text('Settings'),
|
|
|
|
|
),
|
|
|
|
|
body: ListView(
|
|
|
|
|
children: <Widget>[
|
2020-03-28 10:24:32 +01:00
|
|
|
ListTile(
|
|
|
|
|
leading: Icon(Icons.library_music),
|
|
|
|
|
title: Text('Music library path'),
|
2020-04-11 21:59:23 +02:00
|
|
|
subtitle: Text(backend.musicLibraryUri),
|
|
|
|
|
onTap: () {
|
|
|
|
|
backend.chooseMusicLibraryUri();
|
2020-03-28 10:24:32 +01:00
|
|
|
},
|
|
|
|
|
),
|
2020-04-25 15:02:11 +02:00
|
|
|
StreamBuilder<String>(
|
|
|
|
|
stream: backend.musicusServerUrl,
|
|
|
|
|
builder: (context, snapshot) {
|
|
|
|
|
return ListTile(
|
|
|
|
|
leading: Icon(Icons.router),
|
|
|
|
|
title: Text('Musicus server'),
|
|
|
|
|
subtitle: Text(snapshot.data ?? 'Set server URL'),
|
|
|
|
|
onTap: () {
|
|
|
|
|
showDialog(
|
|
|
|
|
context: context,
|
|
|
|
|
builder: (context) {
|
|
|
|
|
final controller = TextEditingController();
|
|
|
|
|
|
|
|
|
|
if (snapshot.data != null) {
|
|
|
|
|
controller.text = snapshot.data;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return AlertDialog(
|
|
|
|
|
title: Text('Musicus server'),
|
|
|
|
|
content: TextField(
|
|
|
|
|
controller: controller,
|
|
|
|
|
decoration: InputDecoration(
|
|
|
|
|
labelText: 'Server URL',
|
|
|
|
|
),
|
|
|
|
|
),
|
|
|
|
|
actions: <Widget>[
|
|
|
|
|
FlatButton(
|
|
|
|
|
onPressed: () {
|
|
|
|
|
backend.setMusicusServer(controller.text);
|
|
|
|
|
Navigator.pop(context);
|
|
|
|
|
},
|
|
|
|
|
child: Text('SET'),
|
|
|
|
|
),
|
|
|
|
|
FlatButton(
|
|
|
|
|
onPressed: () {
|
|
|
|
|
Navigator.pop(context);
|
|
|
|
|
},
|
|
|
|
|
child: Text('CANCEL'),
|
|
|
|
|
),
|
|
|
|
|
],
|
|
|
|
|
);
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
),
|
2020-03-21 17:46:23 +01:00
|
|
|
],
|
|
|
|
|
),
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
}
|