gathered more icons

This commit is contained in:
Thibault Deckers 2020-05-11 10:53:48 +09:00
parent 667303cb96
commit 20acac10ed
15 changed files with 53 additions and 35 deletions

View file

@ -5,10 +5,10 @@ import 'package:aves/services/viewer_service.dart';
import 'package:aves/utils/android_file_utils.dart';
import 'package:aves/widgets/album/collection_page.dart';
import 'package:aves/widgets/common/data_providers/media_store_collection_provider.dart';
import 'package:aves/widgets/common/icons.dart';
import 'package:aves/widgets/fullscreen/fullscreen_page.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:outline_material_icons/outline_material_icons.dart';
import 'package:pedantic/pedantic.dart';
import 'package:permission_handler/permission_handler.dart';
import 'package:screen/screen.dart';
@ -100,7 +100,7 @@ class _HomePageState extends State<HomePage> {
return FutureBuilder(
future: _appSetup,
builder: (context, AsyncSnapshot<void> snapshot) {
if (snapshot.hasError) return const Icon(OMIcons.error);
if (snapshot.hasError) return const Icon(AIcons.error);
if (snapshot.connectionState != ConnectionState.done) return const SizedBox.shrink();
debugPrint('$runtimeType app setup future complete');
if (_sharedEntry != null) {

View file

@ -3,7 +3,6 @@ import 'package:aves/model/image_entry.dart';
import 'package:aves/model/mime_types.dart';
import 'package:aves/widgets/common/icons.dart';
import 'package:flutter/widgets.dart';
import 'package:outline_material_icons/outline_material_icons.dart';
class MimeFilter extends CollectionFilter {
static const type = 'mime';
@ -40,7 +39,7 @@ class MimeFilter extends CollectionFilter {
}
_label ??= lowMime.split('/')[1].toUpperCase();
}
_icon ??= OMIcons.code;
_icon ??= AIcons.vector;
}
@override

View file

@ -1,7 +1,7 @@
import 'package:aves/model/filters/filters.dart';
import 'package:aves/model/image_entry.dart';
import 'package:aves/widgets/common/icons.dart';
import 'package:flutter/widgets.dart';
import 'package:outline_material_icons/outline_material_icons.dart';
class QueryFilter extends CollectionFilter {
static const type = 'query';
@ -39,7 +39,7 @@ class QueryFilter extends CollectionFilter {
String get label => '${query}';
@override
Widget iconBuilder(context, size) => Icon(OMIcons.formatQuote, size: size);
Widget iconBuilder(context, size) => Icon(AIcons.text, size: size);
@override
String get typeKey => type;

View file

@ -7,12 +7,12 @@ import 'package:aves/widgets/album/filter_bar.dart';
import 'package:aves/widgets/album/search/search_delegate.dart';
import 'package:aves/widgets/common/action_delegates/selection_action_delegate.dart';
import 'package:aves/widgets/common/entry_actions.dart';
import 'package:aves/widgets/common/icons.dart';
import 'package:aves/widgets/common/menu_row.dart';
import 'package:aves/widgets/stats/stats.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:intl/intl.dart';
import 'package:outline_material_icons/outline_material_icons.dart';
import 'package:pedantic/pedantic.dart';
class CollectionAppBar extends StatefulWidget {
@ -149,7 +149,7 @@ class _CollectionAppBarState extends State<CollectionAppBar> with SingleTickerPr
return [
if (collection.isBrowsing)
IconButton(
icon: const Icon(OMIcons.search),
icon: const Icon(AIcons.search),
onPressed: _goToSearch,
),
if (collection.isSelecting)
@ -171,11 +171,11 @@ class _CollectionAppBarState extends State<CollectionAppBar> with SingleTickerPr
if (collection.isBrowsing) ...[
const PopupMenuItem(
value: CollectionAction.select,
child: MenuRow(text: 'Select', icon: OMIcons.selectAll),
child: MenuRow(text: 'Select', icon: AIcons.select),
),
const PopupMenuItem(
value: CollectionAction.stats,
child: MenuRow(text: 'Stats', icon: OMIcons.pieChart),
child: MenuRow(text: 'Stats', icon: AIcons.stats),
),
],
if (collection.isSelecting) ...[

View file

@ -18,7 +18,6 @@ import 'package:aves/widgets/common/icons.dart';
import 'package:aves/widgets/debug_page.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:outline_material_icons/outline_material_icons.dart';
import 'package:provider/provider.dart';
class CollectionDrawer extends StatefulWidget {
@ -275,7 +274,7 @@ class _CollectionDrawerState extends State<CollectionDrawer> {
top: false,
bottom: false,
child: ListTile(
leading: const Icon(OMIcons.whatshot),
leading: const Icon(AIcons.debug),
title: const Text('Debug'),
onTap: () => _goToDebug(context),
),

View file

@ -1,5 +1,5 @@
import 'package:aves/widgets/common/icons.dart';
import 'package:flutter/material.dart';
import 'package:outline_material_icons/outline_material_icons.dart';
class EmptyContent extends StatelessWidget {
final IconData icon;
@ -7,7 +7,7 @@ class EmptyContent extends StatelessWidget {
final AlignmentGeometry alignment;
const EmptyContent({
this.icon = OMIcons.photo,
this.icon = AIcons.image,
this.text = 'Nothing!',
this.alignment = const FractionalOffset(.5, .35),
});

View file

@ -1,8 +1,8 @@
import 'package:aves/model/filters/filters.dart';
import 'package:aves/utils/constants.dart';
import 'package:aves/widgets/common/aves_filter_chip.dart';
import 'package:aves/widgets/common/icons.dart';
import 'package:flutter/material.dart';
import 'package:outline_material_icons/outline_material_icons.dart';
class ExpandableFilterRow extends StatelessWidget {
final String title;
@ -37,7 +37,7 @@ class ExpandableFilterRow extends StatelessWidget {
),
const Spacer(),
IconButton(
icon: Icon(isExpanded ? OMIcons.expandLess : OMIcons.expandMore),
icon: Icon(isExpanded ? AIcons.collapse : AIcons.expand),
onPressed: () => expandedNotifier.value = isExpanded ? null : title,
),
],

View file

@ -1,6 +1,6 @@
import 'package:aves/model/filters/filters.dart';
import 'package:aves/widgets/common/icons.dart';
import 'package:flutter/material.dart';
import 'package:outline_material_icons/outline_material_icons.dart';
typedef FilterCallback = void Function(CollectionFilter filter);
@ -49,7 +49,7 @@ class _AvesFilterChipState extends State<AvesFilterChip> {
@override
Widget build(BuildContext context) {
final leading = filter.iconBuilder(context, AvesFilterChip.iconSize);
final trailing = widget.removable ? const Icon(OMIcons.clear, size: AvesFilterChip.iconSize) : null;
final trailing = widget.removable ? const Icon(AIcons.clear, size: AvesFilterChip.iconSize) : null;
final child = Row(
mainAxisSize: MainAxisSize.min,

View file

@ -1,6 +1,5 @@
import 'package:aves/widgets/common/icons.dart';
import 'package:flutter/material.dart';
import 'package:outline_material_icons/outline_material_icons.dart';
enum EntryAction { delete, edit, info, open, openMap, print, rename, rotateCCW, rotateCW, setAs, share, toggleFavourite, debug }
@ -74,9 +73,9 @@ extension ExtraEntryAction on EntryAction {
case EntryAction.delete:
return AIcons.delete;
case EntryAction.info:
return OMIcons.info;
return AIcons.info;
case EntryAction.rename:
return OMIcons.title;
return AIcons.rename;
case EntryAction.rotateCCW:
return AIcons.rotateLeft;
case EntryAction.rotateCW:
@ -92,7 +91,7 @@ extension ExtraEntryAction on EntryAction {
case EntryAction.openMap:
return null;
case EntryAction.debug:
return OMIcons.whatshot;
return AIcons.debug;
}
return null;
}

View file

@ -10,26 +10,47 @@ class AIcons {
static const IconData allMedia = OMIcons.collections;
static const IconData image = OMIcons.photo;
static const IconData video = OMIcons.movie;
static const IconData album = OMIcons.photoAlbum;
static const IconData vector = OMIcons.code;
static const IconData checked = OMIcons.done;
static const IconData date = OMIcons.calendarToday;
static const IconData disc = Icons.fiber_manual_record;
static const IconData error = OMIcons.error;
static const IconData location = OMIcons.place;
static const IconData shooting = OMIcons.camera;
static const IconData removableStorage = OMIcons.sdStorage;
static const IconData text = OMIcons.formatQuote;
static const IconData tag = OMIcons.localOffer;
// actions
static const IconData clear = OMIcons.clear;
static const IconData collapse = OMIcons.expandLess;
static const IconData debug = OMIcons.whatshot;
static const IconData delete = OMIcons.delete;
static const IconData expand = OMIcons.expandMore;
static const IconData favourite = OMIcons.favoriteBorder;
static const IconData favouriteActive = OMIcons.favorite;
static const IconData goUp = OMIcons.arrowUpward;
static const IconData info = OMIcons.info;
static const IconData openInNew = OMIcons.openInNew;
static const IconData print = OMIcons.print;
static const IconData rename = OMIcons.title;
static const IconData rotateLeft = OMIcons.rotateLeft;
static const IconData rotateRight = OMIcons.rotateRight;
static const IconData search = OMIcons.search;
static const IconData select = OMIcons.selectAll;
static const IconData share = OMIcons.share;
static const IconData stats = OMIcons.pieChart;
static const IconData zoomIn = OMIcons.add;
static const IconData zoomOut = OMIcons.remove;
// albums
static const IconData album = OMIcons.photoAlbum;
static const IconData cameraAlbum = OMIcons.photoCamera;
static const IconData downloadAlbum = Icons.file_download;
static const IconData screenshotAlbum = OMIcons.smartphone;
// thumbnail overlay
static const IconData animated = Icons.slideshow;
static const IconData play = Icons.play_circle_outline;
static const IconData selected = Icons.check_circle_outline;
@ -138,12 +159,12 @@ class IconUtils {
}) {
switch (androidFileUtils.getAlbumType(album)) {
case AlbumType.Camera:
return Icon(OMIcons.photoCamera, size: size);
return Icon(AIcons.cameraAlbum, size: size);
case AlbumType.Screenshots:
case AlbumType.ScreenRecordings:
return Icon(OMIcons.smartphone, size: size);
return Icon(AIcons.screenshotAlbum, size: size);
case AlbumType.Download:
return Icon(Icons.file_download, size: size);
return Icon(AIcons.downloadAlbum, size: size);
case AlbumType.App:
return Image(
image: AppIconImage(

View file

@ -1,5 +1,5 @@
import 'package:aves/widgets/common/icons.dart';
import 'package:flutter/material.dart';
import 'package:outline_material_icons/outline_material_icons.dart';
class MenuRow extends StatelessWidget {
final String text;
@ -20,7 +20,7 @@ class MenuRow extends StatelessWidget {
if (checked != null) ...[
Opacity(
opacity: checked ? 1 : 0,
child: const Icon(OMIcons.done),
child: const Icon(AIcons.checked),
),
const SizedBox(width: 8),
],

View file

@ -1,6 +1,7 @@
import 'package:aves/model/image_entry.dart';
import 'package:aves/utils/constants.dart';
import 'package:aves/widgets/album/empty.dart';
import 'package:aves/widgets/common/icons.dart';
import 'package:aves/widgets/common/image_providers/thumbnail_provider.dart';
import 'package:aves/widgets/common/image_providers/uri_image_provider.dart';
import 'package:aves/widgets/common/image_providers/uri_picture_provider.dart';
@ -8,7 +9,6 @@ import 'package:aves/widgets/fullscreen/video_view.dart';
import 'package:flutter/material.dart';
import 'package:flutter_ijkplayer/flutter_ijkplayer.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:outline_material_icons/outline_material_icons.dart';
import 'package:photo_view/photo_view.dart';
import 'package:tuple/tuple.dart';
@ -110,7 +110,7 @@ class ImageView extends StatelessWidget {
imageCache.statusForKey(uriImage).keepAlive ? uriImage : thumbnailProvider,
),
loadFailedChild: EmptyContent(
icon: OMIcons.errorOutline,
icon: AIcons.error,
text: 'Oops!',
alignment: Alignment.center,
),

View file

@ -3,12 +3,12 @@ import 'package:aves/model/filters/filters.dart';
import 'package:aves/model/image_entry.dart';
import 'package:aves/widgets/common/aves_filter_chip.dart';
import 'package:aves/widgets/common/data_providers/media_query_data_provider.dart';
import 'package:aves/widgets/common/icons.dart';
import 'package:aves/widgets/fullscreen/info/basic_section.dart';
import 'package:aves/widgets/fullscreen/info/location_section.dart';
import 'package:aves/widgets/fullscreen/info/metadata_section.dart';
import 'package:flutter/material.dart';
import 'package:flutter/scheduler.dart';
import 'package:outline_material_icons/outline_material_icons.dart';
import 'package:provider/provider.dart';
import 'package:tuple/tuple.dart';
@ -48,7 +48,7 @@ class InfoPageState extends State<InfoPage> {
final appBar = SliverAppBar(
leading: IconButton(
icon: const Icon(OMIcons.arrowUpward),
icon: const Icon(AIcons.goUp),
onPressed: _goToImage,
tooltip: 'Back to image',
),

View file

@ -5,10 +5,10 @@ import 'package:aves/model/image_entry.dart';
import 'package:aves/services/metadata_service.dart';
import 'package:aves/utils/color_utils.dart';
import 'package:aves/widgets/common/fx/highlight_decoration.dart';
import 'package:aves/widgets/common/icons.dart';
import 'package:aves/widgets/fullscreen/info/info_page.dart';
import 'package:expansion_tile_card/expansion_tile_card.dart';
import 'package:flutter/material.dart';
import 'package:outline_material_icons/outline_material_icons.dart';
class MetadataSectionSliver extends StatefulWidget {
final ImageEntry entry;
@ -74,7 +74,7 @@ class _MetadataSectionSliverState extends State<MetadataSectionSliver> with Auto
delegate: SliverChildBuilderDelegate(
(context, index) {
if (index == 0) {
return const SectionRow(OMIcons.info);
return const SectionRow(AIcons.info);
}
if (index < untitledDirectoryCount + 1) {
final dir = directoriesWithoutTitle[index - 1];

View file

@ -171,7 +171,7 @@ class StatsPage extends StatelessWidget {
alignment: PlaceholderAlignment.middle,
child: Padding(
padding: const EdgeInsetsDirectional.only(end: 8),
child: Icon(Icons.fiber_manual_record, color: stringToColor(kv.key)),
child: Icon(AIcons.disc, color: stringToColor(kv.key)),
),
),
TextSpan(text: '${kv.key} '),