Skip to content

Commit

Permalink
Adapt all icons to Cupertino style
Browse files Browse the repository at this point in the history
  • Loading branch information
AlienKevin committed Jun 16, 2022
1 parent 10fddb6 commit fe2c223
Show file tree
Hide file tree
Showing 11 changed files with 84 additions and 23 deletions.
8 changes: 6 additions & 2 deletions lib/pages/about_page.dart
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:flutter_platform_widgets/flutter_platform_widgets.dart';

import '../utils.dart';
import '../widgets/navigation_drawer.dart';
Expand Down Expand Up @@ -57,7 +59,7 @@ class AboutPage extends StatelessWidget {
child: Icon(Icons.circle,
size: 12,
color: Theme.of(context).textTheme.bodyMedium?.color)),
const TextSpan(text: " "),
const TextSpan(text: " "),
linkedTextSpan(
text,
link,
Expand Down Expand Up @@ -142,7 +144,9 @@ class AboutPage extends StatelessWidget {
text: AppLocalizations.of(context)!
.aboutWordshkWantToHelpText),
linkedTextSpan(
icon: Icons.email_outlined,
icon: isMaterial(context)
? Icons.email_outlined
: CupertinoIcons.mail,
AppLocalizations.of(context)!.email,
"mailto:[email protected]",
),
Expand Down
3 changes: 2 additions & 1 deletion lib/pages/entry_page.dart
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import 'dart:developer';
import 'package:audio_session/audio_session.dart';
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:flutter_platform_widgets/flutter_platform_widgets.dart';
import 'package:provider/provider.dart';
import 'package:scroll_to_index/scroll_to_index.dart';
import 'package:wordshk/custom_page_route.dart';
Expand Down Expand Up @@ -70,7 +71,7 @@ class _EntryPageState extends State<EntryPage> {
"https://words.hk/zidin/v/${entryGroup[entryIndex].id}");
context.read<PlayerState>().stop();
},
icon: const Icon(Icons.edit))
icon: Icon(PlatformIcons(context).edit))
],
),
body: FutureBuilder(
Expand Down
14 changes: 11 additions & 3 deletions lib/widgets/digital_ink_view.dart
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
import 'dart:ui' as ui;

import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart' hide Ink;
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:flutter_platform_widgets/flutter_platform_widgets.dart';
import 'package:google_mlkit_digital_ink_recognition/google_mlkit_digital_ink_recognition.dart';
import 'package:provider/provider.dart';
import 'package:wordshk/constants.dart';
Expand Down Expand Up @@ -183,19 +185,25 @@ class _DigitalInkViewState extends State<DigitalInkView> {
.read<InputModeState>()
.updateInputMode(InputMode.keyboard);
},
icon: const Icon(Icons.keyboard),
icon: Icon(isMaterial(context)
? Icons.keyboard
: CupertinoIcons.keyboard),
color: Theme.of(context).colorScheme.secondary),
const Spacer(),
IconButton(
onPressed: _undoStroke,
icon: const Icon(Icons.undo),
icon: Icon(isMaterial(context)
? Icons.undo
: CupertinoIcons.arrow_uturn_left),
color: Theme.of(context).colorScheme.secondary),
IconButton(
onPressed: () {
_clearPad();
widget.backspace();
},
icon: const Icon(Icons.backspace),
icon: Icon(isMaterial(context)
? Icons.backspace
: CupertinoIcons.delete_left_fill),
color: Theme.of(context).colorScheme.secondary),
const SizedBox(width: 10),
ElevatedButton(
Expand Down
7 changes: 6 additions & 1 deletion lib/widgets/entry/entry_banner.dart
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:flutter_platform_widgets/flutter_platform_widgets.dart';
import 'package:wordshk/pages/quality_control_page.dart';

import '../../custom_page_route.dart';
Expand Down Expand Up @@ -29,7 +31,10 @@ class _EntryBannerState extends State<EntryBanner> {
child: Column(children: [
Row(children: [
const SizedBox(width: 6),
Icon(Icons.warning_amber_outlined,
Icon(
isMaterial(context)
? Icons.warning_amber_outlined
: CupertinoIcons.exclamationmark_triangle,
color: Theme.of(context).textTheme.bodySmall!.color),
const SizedBox(width: 16),
Expanded(
Expand Down
10 changes: 8 additions & 2 deletions lib/widgets/entry/entry_egs.dart
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
import 'package:expandable/expandable.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:flutter_platform_widgets/flutter_platform_widgets.dart';

import '../../bridge_generated.dart' show Script;
import '../../models/entry.dart';
Expand Down Expand Up @@ -79,7 +81,9 @@ class EntryEgs extends StatelessWidget {
Builder(builder: (context) {
return expandButton(
AppLocalizations.of(context)!.entryMoreExamples,
Icons.expand_more,
isMaterial(context)
? Icons.expand_more
: CupertinoIcons.chevron_down,
lineTextStyle.copyWith(
color: Theme.of(context).colorScheme.secondary));
})
Expand All @@ -101,7 +105,9 @@ class EntryEgs extends StatelessWidget {
Builder(builder: (context) {
return expandButton(
AppLocalizations.of(context)!.entryCollapseExamples,
Icons.expand_less,
isMaterial(context)
? Icons.expand_less
: CupertinoIcons.chevron_up,
lineTextStyle.copyWith(
color: Theme.of(context).colorScheme.secondary));
})
Expand Down
10 changes: 8 additions & 2 deletions lib/widgets/entry/entry_variants.dart
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
import 'package:expandable/expandable.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:flutter_platform_widgets/flutter_platform_widgets.dart';

import '../../bridge_generated.dart' show Script;
import '../../models/entry.dart';
Expand Down Expand Up @@ -52,7 +54,9 @@ class EntryVariants extends StatelessWidget {
Builder(builder: (context) {
return expandButton(
AppLocalizations.of(context)!.entryMoreVariants,
Icons.expand_more,
isMaterial(context)
? Icons.expand_more
: CupertinoIcons.chevron_down,
lineTextStyle.copyWith(
color:
Theme.of(context).colorScheme.secondary));
Expand All @@ -79,7 +83,9 @@ class EntryVariants extends StatelessWidget {
Builder(builder: (context) {
return expandButton(
AppLocalizations.of(context)!.entryCollapseVariants,
Icons.expand_less,
isMaterial(context)
? Icons.expand_less
: CupertinoIcons.chevron_up,
lineTextStyle.copyWith(
color: Theme.of(context).colorScheme.secondary));
})
Expand Down
30 changes: 22 additions & 8 deletions lib/widgets/navigation_drawer.dart
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:flutter_platform_widgets/flutter_platform_widgets.dart';
import 'package:wordshk/pages/preferences_page.dart';
import 'package:wordshk/pages/quality_control_page.dart';

Expand Down Expand Up @@ -74,23 +76,35 @@ class NavigationDrawer extends StatelessWidget {
]),
),
),
drawerButton(AppLocalizations.of(context)!.dictionary,
Icons.search, (_) => const HomePage(title: 'words.hk')),
drawerButton(
AppLocalizations.of(context)!.dictionary,
PlatformIcons(context).search,
(_) => const HomePage(title: 'words.hk')),
const Divider(),
drawerButton(AppLocalizations.of(context)!.aboutWordshk,
Icons.info_outline, (_) => const AboutPage()),
drawerButton(
AppLocalizations.of(context)!.aboutWordshk,
isMaterial(context)
? Icons.info_outline
: CupertinoIcons.info,
(_) => const AboutPage()),
const Divider(),
drawerButton(
AppLocalizations.of(context)!.qualityControl,
Icons.check,
PlatformIcons(context).checkMark,
(_) => const QualityControlPage(useBackNavigation: false)),
const Divider(),
drawerButton(AppLocalizations.of(context)!.preferences,
Icons.settings_outlined, (_) => const PreferencesPage()),
drawerButton(
AppLocalizations.of(context)!.preferences,
isMaterial(context)
? Icons.settings_outlined
: CupertinoIcons.settings,
(_) => const PreferencesPage()),
const Divider(),
drawerButton(
AppLocalizations.of(context)!.dictionaryLicense,
Icons.handshake_outlined,
isMaterial(context)
? Icons.article_outlined
: CupertinoIcons.doc_text,
(_) => const DictionaryLicensePage()),
],
),
Expand Down
8 changes: 6 additions & 2 deletions lib/widgets/pronunciation_button.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_platform_widgets/flutter_platform_widgets.dart';
import 'package:provider/provider.dart';

import '../states/player_state.dart';
Expand Down Expand Up @@ -26,8 +28,10 @@ class _PronunciationButtonState extends State<PronunciationButton> {
alignment: widget.alignment,
icon: Icon(playerKey != null &&
context.watch<PlayerState>().playerKey == playerKey
? Icons.stop_circle
: Icons.volume_up),
? isMaterial(context)
? Icons.stop_circle
: CupertinoIcons.stop_circle_fill
: PlatformIcons(context).volumeUp),
color: Theme.of(context).colorScheme.secondary,
padding: EdgeInsets.zero,
onPressed: () {
Expand Down
9 changes: 7 additions & 2 deletions lib/widgets/search_bar.dart
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,11 @@

import 'dart:async';

import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:flutter_keyboard_visibility/flutter_keyboard_visibility.dart';
import 'package:flutter_platform_widgets/flutter_platform_widgets.dart';
import 'package:flutter_portal/flutter_portal.dart';
import 'package:keyboard_actions/keyboard_actions.dart';
import 'package:provider/provider.dart';
Expand Down Expand Up @@ -215,7 +217,10 @@ class IsSearching extends State<SearchBar> {
padding: const EdgeInsets.only(left: 12.0),
child: button(() {
context.read<InputModeState>().updateInputMode(InputMode.ink);
}, const Icon(Icons.brush)),
},
Icon(isMaterial(context)
? Icons.brush
: CupertinoIcons.pencil_outline)),
);

Widget button(void Function() onPressed, Widget child) => Padding(
Expand Down Expand Up @@ -375,7 +380,7 @@ class IsSearching extends State<SearchBar> {
suffixIcon: // Show an icon if clear is not active, so there's no ripple on tap
showClearButton
? IconButton(
icon: const Icon(Icons.clear,
icon: Icon(PlatformIcons(context).clear,
semanticLabel: "Clear"),
color: buttonColor,
disabledColor:
Expand Down
7 changes: 7 additions & 0 deletions pubspec.lock
Original file line number Diff line number Diff line change
Expand Up @@ -209,6 +209,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "2.2.2"
flutter_platform_widgets:
dependency: "direct main"
description:
name: flutter_platform_widgets
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.0"
flutter_portal:
dependency: "direct main"
description:
Expand Down
1 change: 1 addition & 0 deletions pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ dependencies:
google_mlkit_digital_ink_recognition: ^0.4.0
settings_ui: ^2.0.2
cupertino_icons: ^1.0.5
flutter_platform_widgets: ^2.0.0
# freezed_annotation: ^1.1.0

dev_dependencies:
Expand Down

0 comments on commit fe2c223

Please sign in to comment.