#15 removed custom font
This commit is contained in:
parent
c34faa1568
commit
6f863c7aca
17 changed files with 46 additions and 44 deletions
|
@ -5,6 +5,9 @@ All notable changes to this project will be documented in this file.
|
||||||
### Added
|
### Added
|
||||||
- support Android KitKat, Lollipop & Marshmallow (API 19 ~ 23)
|
- support Android KitKat, Lollipop & Marshmallow (API 19 ~ 23)
|
||||||
|
|
||||||
|
### Removed
|
||||||
|
- removed custom font used in titles and info page
|
||||||
|
|
||||||
## [v1.3.4] - 2021-02-10
|
## [v1.3.4] - 2021-02-10
|
||||||
### Added
|
### Added
|
||||||
- hide album / country / tag from collection
|
- hide album / country / tag from collection
|
||||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -74,8 +74,8 @@ class _AvesAppState extends State<AvesApp> {
|
||||||
textTheme: TextTheme(
|
textTheme: TextTheme(
|
||||||
headline6: TextStyle(
|
headline6: TextStyle(
|
||||||
fontSize: 20,
|
fontSize: 20,
|
||||||
fontWeight: FontWeight.bold,
|
fontWeight: FontWeight.normal,
|
||||||
fontFamily: 'Concourse Caps',
|
fontFeatures: [FontFeature.enable('smcp')],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
import 'dart:ui';
|
||||||
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/painting.dart';
|
import 'package:flutter/painting.dart';
|
||||||
import 'package:latlong/latlong.dart';
|
import 'package:latlong/latlong.dart';
|
||||||
|
@ -8,9 +10,9 @@ class Constants {
|
||||||
static const overflowStrutStyle = StrutStyle(height: 1.3);
|
static const overflowStrutStyle = StrutStyle(height: 1.3);
|
||||||
|
|
||||||
static const titleTextStyle = TextStyle(
|
static const titleTextStyle = TextStyle(
|
||||||
color: Color(0xFFEEEEEE),
|
|
||||||
fontSize: 20,
|
fontSize: 20,
|
||||||
fontFamily: 'Concourse Caps',
|
fontWeight: FontWeight.w300,
|
||||||
|
fontFeatures: [FontFeature.enable('smcp')],
|
||||||
);
|
);
|
||||||
|
|
||||||
static const embossShadow = Shadow(
|
static const embossShadow = Shadow(
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
import 'dart:ui';
|
||||||
|
|
||||||
import 'package:aves/flutter_version.dart';
|
import 'package:aves/flutter_version.dart';
|
||||||
import 'package:aves/widgets/common/basic/link_chip.dart';
|
import 'package:aves/widgets/common/basic/link_chip.dart';
|
||||||
import 'package:aves/widgets/common/identity/aves_logo.dart';
|
import 'package:aves/widgets/common/identity/aves_logo.dart';
|
||||||
|
@ -32,8 +34,12 @@ class _AppReferenceState extends State<AppReference> {
|
||||||
}
|
}
|
||||||
|
|
||||||
Widget _buildAvesLine() {
|
Widget _buildAvesLine() {
|
||||||
final textTheme = Theme.of(context).textTheme;
|
final style = TextStyle(
|
||||||
final style = textTheme.headline6.copyWith(fontWeight: FontWeight.bold);
|
fontSize: 20,
|
||||||
|
fontWeight: FontWeight.normal,
|
||||||
|
letterSpacing: 1.0,
|
||||||
|
fontFeatures: [FontFeature.enable('smcp')],
|
||||||
|
);
|
||||||
|
|
||||||
return FutureBuilder<PackageInfo>(
|
return FutureBuilder<PackageInfo>(
|
||||||
future: _packageInfoLoader,
|
future: _packageInfoLoader,
|
||||||
|
|
|
@ -1,3 +1,6 @@
|
||||||
|
import 'dart:ui';
|
||||||
|
|
||||||
|
import 'package:aves/utils/constants.dart';
|
||||||
import 'package:aves/widgets/common/basic/link_chip.dart';
|
import 'package:aves/widgets/common/basic/link_chip.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
|
@ -13,25 +16,22 @@ class AboutCredits extends StatelessWidget {
|
||||||
constraints: BoxConstraints(minHeight: 48),
|
constraints: BoxConstraints(minHeight: 48),
|
||||||
child: Align(
|
child: Align(
|
||||||
alignment: AlignmentDirectional.centerStart,
|
alignment: AlignmentDirectional.centerStart,
|
||||||
child: Text(
|
child: Text('Credits', style: Constants.titleTextStyle),
|
||||||
'Credits',
|
|
||||||
style: Theme.of(context).textTheme.headline6.copyWith(fontFamily: 'Concourse Caps'),
|
|
||||||
),
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
Text.rich(
|
Text.rich(
|
||||||
TextSpan(
|
TextSpan(
|
||||||
children: [
|
children: [
|
||||||
TextSpan(text: 'This app uses the font '),
|
TextSpan(text: 'This app uses a TopoJSON file from'),
|
||||||
WidgetSpan(
|
WidgetSpan(
|
||||||
child: LinkChip(
|
child: LinkChip(
|
||||||
text: 'Concourse',
|
text: 'World Atlas',
|
||||||
url: 'https://mbtype.com/fonts/concourse/',
|
url: 'https://github.com/topojson/world-atlas',
|
||||||
textStyle: TextStyle(fontWeight: FontWeight.bold),
|
textStyle: TextStyle(fontWeight: FontWeight.bold),
|
||||||
),
|
),
|
||||||
alignment: PlaceholderAlignment.middle,
|
alignment: PlaceholderAlignment.middle,
|
||||||
),
|
),
|
||||||
TextSpan(text: ' for titles and the media information page.'),
|
TextSpan(text: ', under ISC License.'),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|
|
@ -94,10 +94,7 @@ class _LicensesState extends State<Licenses> {
|
||||||
child: Row(
|
child: Row(
|
||||||
children: [
|
children: [
|
||||||
Expanded(
|
Expanded(
|
||||||
child: Text(
|
child: Text('Open-Source Licenses', style: Constants.titleTextStyle),
|
||||||
'Open-Source Licenses',
|
|
||||||
style: Theme.of(context).textTheme.headline6.copyWith(fontFamily: 'Concourse Caps'),
|
|
||||||
),
|
|
||||||
),
|
),
|
||||||
PopupMenuButton<LicenseSort>(
|
PopupMenuButton<LicenseSort>(
|
||||||
itemBuilder: (context) => [
|
itemBuilder: (context) => [
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
import 'package:aves/model/availability.dart';
|
import 'package:aves/model/availability.dart';
|
||||||
|
import 'package:aves/utils/constants.dart';
|
||||||
import 'package:aves/widgets/about/news_badge.dart';
|
import 'package:aves/widgets/about/news_badge.dart';
|
||||||
import 'package:aves/widgets/common/basic/link_chip.dart';
|
import 'package:aves/widgets/common/basic/link_chip.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
@ -45,10 +46,7 @@ class _AboutNewVersionState extends State<AboutNewVersion> {
|
||||||
),
|
),
|
||||||
alignment: PlaceholderAlignment.middle,
|
alignment: PlaceholderAlignment.middle,
|
||||||
),
|
),
|
||||||
TextSpan(
|
TextSpan(text: 'New Version Available', style: Constants.titleTextStyle),
|
||||||
text: 'New Version Available',
|
|
||||||
style: Theme.of(context).textTheme.headline6.copyWith(fontFamily: 'Concourse Caps'),
|
|
||||||
),
|
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|
|
@ -32,7 +32,6 @@ class EmptyContent extends StatelessWidget {
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
color: color,
|
color: color,
|
||||||
fontSize: 22,
|
fontSize: 22,
|
||||||
fontFamily: 'Concourse',
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
import 'dart:ui';
|
||||||
|
|
||||||
import 'package:aves/utils/color_utils.dart';
|
import 'package:aves/utils/color_utils.dart';
|
||||||
import 'package:aves/widgets/common/fx/highlight_decoration.dart';
|
import 'package:aves/widgets/common/fx/highlight_decoration.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
@ -29,7 +31,8 @@ class HighlightTitle extends StatelessWidget {
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
fontSize: fontSize,
|
fontSize: fontSize,
|
||||||
fontFamily: 'Concourse Caps',
|
letterSpacing: 1.0,
|
||||||
|
fontFeatures: [FontFeature.enable('smcp')],
|
||||||
);
|
);
|
||||||
|
|
||||||
return Align(
|
return Align(
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
import 'dart:ui';
|
||||||
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/widgets.dart';
|
import 'package:flutter/widgets.dart';
|
||||||
|
|
||||||
|
@ -76,8 +78,8 @@ class DialogTitle extends StatelessWidget {
|
||||||
child: Text(
|
child: Text(
|
||||||
title,
|
title,
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontWeight: FontWeight.bold,
|
fontWeight: FontWeight.normal,
|
||||||
fontFamily: 'Concourse Caps',
|
fontFeatures: [FontFeature.enable('smcp')],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
|
@ -109,7 +109,9 @@ class _AppDrawerState extends State<AppDrawer> {
|
||||||
'Aves',
|
'Aves',
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontSize: 44,
|
fontSize: 44,
|
||||||
fontFamily: 'Concourse Caps',
|
fontWeight: FontWeight.w300,
|
||||||
|
letterSpacing: 1.0,
|
||||||
|
fontFeatures: [FontFeature.enable('smcp')],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
|
|
|
@ -44,8 +44,8 @@ class InfoRowGroup extends StatefulWidget {
|
||||||
|
|
||||||
static const keyValuePadding = 16;
|
static const keyValuePadding = 16;
|
||||||
static const linkColor = Colors.blue;
|
static const linkColor = Colors.blue;
|
||||||
static final baseStyle = TextStyle(fontFamily: 'Concourse');
|
static final baseStyle = TextStyle(fontSize: 13);
|
||||||
static final keyStyle = baseStyle.copyWith(color: Colors.white70, height: 1.7);
|
static final keyStyle = baseStyle.copyWith(color: Colors.white70, height: 2.0);
|
||||||
static final linkStyle = baseStyle.copyWith(color: linkColor, decoration: TextDecoration.underline);
|
static final linkStyle = baseStyle.copyWith(color: linkColor, decoration: TextDecoration.underline);
|
||||||
|
|
||||||
const InfoRowGroup(
|
const InfoRowGroup(
|
||||||
|
|
|
@ -119,14 +119,15 @@ class _EntryLeafletMapState extends State<EntryLeafletMap> with AutomaticKeepAli
|
||||||
}
|
}
|
||||||
|
|
||||||
Widget _buildAttributionMarkdown(String data) {
|
Widget _buildAttributionMarkdown(String data) {
|
||||||
|
final theme = Theme.of(context);
|
||||||
return Padding(
|
return Padding(
|
||||||
padding: EdgeInsets.only(top: 4),
|
padding: EdgeInsets.only(top: 4),
|
||||||
child: MarkdownBody(
|
child: MarkdownBody(
|
||||||
data: data,
|
data: data,
|
||||||
selectable: true,
|
selectable: true,
|
||||||
styleSheet: MarkdownStyleSheet(
|
styleSheet: MarkdownStyleSheet(
|
||||||
a: TextStyle(color: Theme.of(context).accentColor),
|
a: TextStyle(color: theme.accentColor),
|
||||||
p: TextStyle(color: Colors.white70, fontSize: 13, fontFamily: 'Concourse'),
|
p: TextStyle(color: Colors.white70, fontSize: theme.textTheme.caption.fontSize),
|
||||||
),
|
),
|
||||||
onTapLink: (text, href, title) async {
|
onTapLink: (text, href, title) async {
|
||||||
if (await canLaunch(href)) {
|
if (await canLaunch(href)) {
|
||||||
|
|
|
@ -68,12 +68,9 @@ class _WelcomePageState extends State<WelcomePage> {
|
||||||
}
|
}
|
||||||
|
|
||||||
List<Widget> _buildTop(BuildContext context) {
|
List<Widget> _buildTop(BuildContext context) {
|
||||||
const message = Text(
|
final message = Text(
|
||||||
'Welcome to Aves',
|
'Welcome to Aves',
|
||||||
style: TextStyle(
|
style: Theme.of(context).textTheme.headline5,
|
||||||
fontSize: 22,
|
|
||||||
fontFamily: 'Concourse',
|
|
||||||
),
|
|
||||||
);
|
);
|
||||||
return [
|
return [
|
||||||
...(MediaQuery.of(context).orientation == Orientation.portrait
|
...(MediaQuery.of(context).orientation == Orientation.portrait
|
||||||
|
|
|
@ -97,11 +97,3 @@ flutter:
|
||||||
|
|
||||||
assets:
|
assets:
|
||||||
- assets/
|
- assets/
|
||||||
|
|
||||||
fonts:
|
|
||||||
- family: Concourse
|
|
||||||
fonts:
|
|
||||||
- asset: fonts/ConcourseT3-Regular.ttf
|
|
||||||
- family: Concourse Caps
|
|
||||||
fonts:
|
|
||||||
- asset: fonts/ConcourseC3-Regular.ttf
|
|
||||||
|
|
Loading…
Reference in a new issue