|
@ -14,7 +14,7 @@
|
||||||
FlutterApplication and put your custom class here. -->
|
FlutterApplication and put your custom class here. -->
|
||||||
<application
|
<application
|
||||||
android:name="io.flutter.app.FlutterApplication"
|
android:name="io.flutter.app.FlutterApplication"
|
||||||
android:label="fluttering_vikunja"
|
android:label="Vikunja"
|
||||||
android:icon="@mipmap/ic_launcher">
|
android:icon="@mipmap/ic_launcher">
|
||||||
<activity
|
<activity
|
||||||
android:name=".MainActivity"
|
android:name=".MainActivity"
|
||||||
|
@ -36,4 +36,4 @@
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
</activity>
|
</activity>
|
||||||
</application>
|
</application>
|
||||||
</manifest>
|
</manifest>
|
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 3.4 KiB |
After Width: | Height: | Size: 7.3 KiB |
After Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 15 KiB |
|
@ -0,0 +1,5 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
|
<background android:drawable="@color/ic_launcher_background"/>
|
||||||
|
<foreground android:drawable="@drawable/ic_launcher_foreground"/>
|
||||||
|
</adaptive-icon>
|
Before Width: | Height: | Size: 544 B After Width: | Height: | Size: 4.3 KiB |
Before Width: | Height: | Size: 442 B After Width: | Height: | Size: 2.7 KiB |
Before Width: | Height: | Size: 721 B After Width: | Height: | Size: 5.8 KiB |
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 8.9 KiB |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 12 KiB |
|
@ -0,0 +1,4 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<resources>
|
||||||
|
<color name="ic_launcher_background">#FF455486</color>
|
||||||
|
</resources>
|
After Width: | Height: | Size: 126 KiB |
After Width: | Height: | Size: 44 KiB |
After Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 33 KiB |
|
@ -439,4 +439,4 @@
|
||||||
/* End XCConfigurationList section */
|
/* End XCConfigurationList section */
|
||||||
};
|
};
|
||||||
rootObject = 97C146E61CF9000F007C117D /* Project object */;
|
rootObject = 97C146E61CF9000F007C117D /* Project object */;
|
||||||
}
|
}
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 46 KiB |
Before Width: | Height: | Size: 564 B After Width: | Height: | Size: 622 B |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 2.0 KiB |
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 914 B |
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 2.0 KiB |
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 3.1 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 2.8 KiB |
Before Width: | Height: | Size: 2.6 KiB After Width: | Height: | Size: 4.4 KiB |
Before Width: | Height: | Size: 2.6 KiB After Width: | Height: | Size: 4.4 KiB |
Before Width: | Height: | Size: 3.7 KiB After Width: | Height: | Size: 6.8 KiB |
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 2.7 KiB |
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 5.7 KiB |
Before Width: | Height: | Size: 3.5 KiB After Width: | Height: | Size: 6.4 KiB |
|
@ -1,4 +1,5 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:fluttering_vikunja/style.dart';
|
||||||
|
|
||||||
void main() => runApp(new MyApp());
|
void main() => runApp(new MyApp());
|
||||||
|
|
||||||
|
@ -7,19 +8,9 @@ class MyApp extends StatelessWidget {
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return new MaterialApp(
|
return new MaterialApp(
|
||||||
title: 'Flutter Demo',
|
title: 'Vikunja',
|
||||||
theme: new ThemeData(
|
theme: buildVikunjaTheme(),
|
||||||
// This is the theme of your application.
|
home: new MyHomePage(title: 'Vikunja'),
|
||||||
//
|
|
||||||
// Try running your application with "flutter run". You'll see the
|
|
||||||
// application has a blue toolbar. Then, without quitting the app, try
|
|
||||||
// changing the primarySwatch below to Colors.green and then invoke
|
|
||||||
// "hot reload" (press "r" in the console where you ran "flutter run",
|
|
||||||
// or press Run > Flutter Hot Reload in IntelliJ). Notice that the
|
|
||||||
// counter didn't reset back to zero; the application is not restarted.
|
|
||||||
primarySwatch: Colors.blue,
|
|
||||||
),
|
|
||||||
home: new MyHomePage(title: 'Flutter Demo Home Page'),
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -70,10 +61,47 @@ class _MyHomePageState extends State<MyHomePage> {
|
||||||
// the App.build method, and use it to set our appbar title.
|
// the App.build method, and use it to set our appbar title.
|
||||||
title: new Text(widget.title),
|
title: new Text(widget.title),
|
||||||
),
|
),
|
||||||
|
drawer: Drawer(
|
||||||
|
child: ListView(
|
||||||
|
children: <Widget>[
|
||||||
|
new UserAccountsDrawerHeader(
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
image: new DecorationImage(
|
||||||
|
image: AssetImage('assets/graphics/background.jpg'),
|
||||||
|
repeat: ImageRepeat.repeat
|
||||||
|
),
|
||||||
|
),
|
||||||
|
accountName: new Text(
|
||||||
|
'Max Mustermann',
|
||||||
|
style: TextStyle(color: Colors.black),
|
||||||
|
),
|
||||||
|
accountEmail: new Text(
|
||||||
|
'max@try.vikunja.io',
|
||||||
|
style: TextStyle(color: Colors.black),
|
||||||
|
),
|
||||||
|
otherAccountsPictures: <Widget>[
|
||||||
|
GestureDetector(
|
||||||
|
child: Semantics(
|
||||||
|
label: 'Switch to Fritz',
|
||||||
|
child: const CircleAvatar(
|
||||||
|
|
||||||
|
)
|
||||||
|
),
|
||||||
|
)
|
||||||
|
],
|
||||||
|
),
|
||||||
|
ListTile(
|
||||||
|
title: new Text('Namespace A'),
|
||||||
|
)
|
||||||
|
],
|
||||||
|
)
|
||||||
|
),
|
||||||
body: new Center(
|
body: new Center(
|
||||||
// Center is a layout widget. It takes a single child and positions it
|
// Center is a layout widget. It takes a single child and positions it
|
||||||
// in the middle of the parent.
|
// in the middle of the parent.
|
||||||
child: new Column(
|
child: new Container(
|
||||||
|
padding: EdgeInsets.only(left: 16.0),
|
||||||
|
child: new Column(
|
||||||
// Column is also layout widget. It takes a list of children and
|
// Column is also layout widget. It takes a list of children and
|
||||||
// arranges them vertically. By default, it sizes itself to fit its
|
// arranges them vertically. By default, it sizes itself to fit its
|
||||||
// children horizontally, and tries to be as tall as its parent.
|
// children horizontally, and tries to be as tall as its parent.
|
||||||
|
@ -87,22 +115,22 @@ class _MyHomePageState extends State<MyHomePage> {
|
||||||
// center the children vertically; the main axis here is the vertical
|
// center the children vertically; the main axis here is the vertical
|
||||||
// axis because Columns are vertical (the cross axis would be
|
// axis because Columns are vertical (the cross axis would be
|
||||||
// horizontal).
|
// horizontal).
|
||||||
mainAxisAlignment: MainAxisAlignment.center,
|
mainAxisAlignment: MainAxisAlignment.start,
|
||||||
children: <Widget>[
|
children: <Widget>[
|
||||||
new Text(
|
new Container(
|
||||||
'You have pushed the button this many times:',
|
padding: EdgeInsets.only(top: 32.0),
|
||||||
|
child: new Text(
|
||||||
|
'Welcome to Vikunja',
|
||||||
|
style: Theme.of(context).textTheme.headline,
|
||||||
|
),
|
||||||
),
|
),
|
||||||
new Text(
|
new Text(
|
||||||
'$_counter',
|
'Please select a namespace by clicking the ☰ icon.',
|
||||||
style: Theme.of(context).textTheme.display1,
|
style: Theme.of(context).textTheme.subhead
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
),
|
)
|
||||||
),
|
)
|
||||||
floatingActionButton: new FloatingActionButton(
|
|
||||||
onPressed: _incrementCounter,
|
|
||||||
tooltip: 'Increment',
|
|
||||||
child: new Icon(Icons.add),
|
|
||||||
), // This trailing comma makes auto-formatting nicer for build methods.
|
), // This trailing comma makes auto-formatting nicer for build methods.
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,31 @@
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
|
const vBlue = Color(0xFF455486);
|
||||||
|
const vBlueLight = Color(0xFF7480b7);
|
||||||
|
const vBlueDark = Color(0xFF152c5a);
|
||||||
|
const vBlack = Color(0xFFFFFFFF);
|
||||||
|
|
||||||
|
ThemeData buildVikunjaTheme() {
|
||||||
|
var base = ThemeData.light();
|
||||||
|
return base.copyWith(
|
||||||
|
primaryColor: vBlue,
|
||||||
|
primaryColorLight: vBlueLight,
|
||||||
|
primaryColorDark: vBlueDark,
|
||||||
|
textTheme: base.textTheme.copyWith(
|
||||||
|
headline: base.textTheme.headline.copyWith(
|
||||||
|
fontFamily: 'Quicksand',
|
||||||
|
fontSize: 72.0,
|
||||||
|
),
|
||||||
|
subhead: base.textTheme.subhead.copyWith(
|
||||||
|
fontFamily: 'Quicksand',
|
||||||
|
fontSize: 24.0,
|
||||||
|
),
|
||||||
|
title: base.textTheme.title.copyWith(
|
||||||
|
fontFamily: 'Quicksand',
|
||||||
|
),
|
||||||
|
body1: base.textTheme.body1.copyWith(
|
||||||
|
fontFamily: 'Quicksand',
|
||||||
|
)
|
||||||
|
)
|
||||||
|
);
|
||||||
|
}
|
17
pubspec.yaml
|
@ -23,6 +23,16 @@ dependencies:
|
||||||
dev_dependencies:
|
dev_dependencies:
|
||||||
flutter_test:
|
flutter_test:
|
||||||
sdk: flutter
|
sdk: flutter
|
||||||
|
flutter_launcher_icons: "^0.6.1"
|
||||||
|
|
||||||
|
|
||||||
|
flutter_icons:
|
||||||
|
image_path: "assets/vikunja_logo.png"
|
||||||
|
image_path_ios: "assets/vikunja_ios.png"
|
||||||
|
android: true
|
||||||
|
ios: true
|
||||||
|
adaptive_icon_background: "#FF455486"
|
||||||
|
adaptive_icon_foreground: "assets/vikunja_logo_adaptive.png"
|
||||||
|
|
||||||
|
|
||||||
# For information on the generic Dart part of this file, see the
|
# For information on the generic Dart part of this file, see the
|
||||||
|
@ -66,3 +76,10 @@ flutter:
|
||||||
#
|
#
|
||||||
# For details regarding fonts from package dependencies,
|
# For details regarding fonts from package dependencies,
|
||||||
# see https://flutter.io/custom-fonts/#from-packages
|
# see https://flutter.io/custom-fonts/#from-packages
|
||||||
|
assets:
|
||||||
|
- assets/graphics/background.jpg
|
||||||
|
fonts:
|
||||||
|
- family: Quicksand
|
||||||
|
fonts:
|
||||||
|
- asset: assets/fonts/quicksand-v7-latin-regular.ttf
|
||||||
|
|
||||||
|
|