From 1c21f6fbbfb13b32d75995c15ac7bd6cb0a3176e Mon Sep 17 00:00:00 2001 From: perol Date: Sat, 11 Jul 2020 21:52:30 +0800 Subject: [PATCH] didUpdateWidget prop --- .flutter-plugins-dependencies | 2 +- lib/component/illust_card.dart | 13 +++++++--- lib/lighting/lighting_page.dart | 12 ++++++--- lib/page/history/history_page.dart | 4 +-- lib/page/picture/illust_page.dart | 25 +++++++++++++++++++ lib/page/search/result_page.dart | 7 ++---- lib/page/search/search_page.dart | 7 +----- .../suggest/search_suggestion_page.dart | 10 +++++--- 8 files changed, 56 insertions(+), 24 deletions(-) diff --git a/.flutter-plugins-dependencies b/.flutter-plugins-dependencies index 9f3ac5444..88cba6379 100644 --- a/.flutter-plugins-dependencies +++ b/.flutter-plugins-dependencies @@ -1 +1 @@ -{"info":"This is a generated file; do not edit or check into version control.","plugins":{"ios":[{"name":"device_info","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\device_info-0.4.2+4\\\\","dependencies":[]},{"name":"flutter_inapp_purchase","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\flutter_inapp_purchase-2.2.0\\\\","dependencies":[]},{"name":"image_picker","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\image_picker-0.6.7+3\\\\","dependencies":[]},{"name":"package_info","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\package_info-0.4.1\\\\","dependencies":[]},{"name":"path_provider","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\path_provider-1.6.11\\\\","dependencies":[]},{"name":"permission_handler","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\permission_handler-5.0.1\\\\","dependencies":[]},{"name":"receive_sharing_intent","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\receive_sharing_intent-1.4.0+2\\\\","dependencies":[]},{"name":"save_in_gallery","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\save_in_gallery-0.1.3\\\\","dependencies":[]},{"name":"screen","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\screen-0.0.5\\\\","dependencies":[]},{"name":"share","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\share-0.6.4+3\\\\","dependencies":[]},{"name":"shared_preferences","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\shared_preferences-0.5.7+3\\\\","dependencies":[]},{"name":"sqflite","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\sqflite-1.3.1\\\\","dependencies":[]},{"name":"uni_links","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\uni_links-0.4.0\\\\","dependencies":[]},{"name":"url_launcher","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\url_launcher-5.4.11\\\\","dependencies":[]},{"name":"video_player","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\video_player-0.10.11+2\\\\","dependencies":[]},{"name":"wakelock","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\wakelock-0.1.4+2\\\\","dependencies":[]},{"name":"webview_flutter","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\webview_flutter-0.3.22+1\\\\","dependencies":[]}],"android":[{"name":"device_info","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\device_info-0.4.2+4\\\\","dependencies":[]},{"name":"flutter_displaymode","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\flutter_displaymode-0.1.0\\\\","dependencies":[]},{"name":"flutter_inapp_purchase","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\flutter_inapp_purchase-2.2.0\\\\","dependencies":[]},{"name":"flutter_plugin_android_lifecycle","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\flutter_plugin_android_lifecycle-1.0.8\\\\","dependencies":[]},{"name":"image_picker","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\image_picker-0.6.7+3\\\\","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"package_info","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\package_info-0.4.1\\\\","dependencies":[]},{"name":"path_provider","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\path_provider-1.6.11\\\\","dependencies":[]},{"name":"permission_handler","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\permission_handler-5.0.1\\\\","dependencies":[]},{"name":"receive_sharing_intent","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\receive_sharing_intent-1.4.0+2\\\\","dependencies":[]},{"name":"save_in_gallery","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\save_in_gallery-0.1.3\\\\","dependencies":[]},{"name":"screen","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\screen-0.0.5\\\\","dependencies":[]},{"name":"share","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\share-0.6.4+3\\\\","dependencies":[]},{"name":"shared_preferences","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\shared_preferences-0.5.7+3\\\\","dependencies":[]},{"name":"sqflite","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\sqflite-1.3.1\\\\","dependencies":[]},{"name":"uni_links","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\uni_links-0.4.0\\\\","dependencies":[]},{"name":"url_launcher","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\url_launcher-5.4.11\\\\","dependencies":[]},{"name":"video_player","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\video_player-0.10.11+2\\\\","dependencies":[]},{"name":"wakelock","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\wakelock-0.1.4+2\\\\","dependencies":[]},{"name":"webview_flutter","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\webview_flutter-0.3.22+1\\\\","dependencies":[]}],"macos":[{"name":"package_info","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\package_info-0.4.1\\\\","dependencies":[]},{"name":"path_provider_macos","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\path_provider_macos-0.0.4+3\\\\","dependencies":[]},{"name":"shared_preferences_macos","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\shared_preferences_macos-0.0.1+10\\\\","dependencies":[]},{"name":"sqflite","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\sqflite-1.3.1\\\\","dependencies":[]},{"name":"url_launcher_macos","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\url_launcher_macos-0.0.1+7\\\\","dependencies":[]}],"linux":[{"name":"path_provider_linux","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\path_provider_linux-0.0.1+2\\\\","dependencies":[]}],"windows":[],"web":[{"name":"shared_preferences_web","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\shared_preferences_web-0.1.2+7\\\\","dependencies":[]},{"name":"url_launcher_web","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\url_launcher_web-0.1.2\\\\","dependencies":[]},{"name":"video_player_web","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\video_player_web-0.1.3+2\\\\","dependencies":[]}]},"dependencyGraph":[{"name":"device_info","dependencies":[]},{"name":"flutter_displaymode","dependencies":[]},{"name":"flutter_inapp_purchase","dependencies":[]},{"name":"flutter_plugin_android_lifecycle","dependencies":[]},{"name":"image_picker","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"package_info","dependencies":[]},{"name":"path_provider","dependencies":["path_provider_macos","path_provider_linux"]},{"name":"path_provider_linux","dependencies":[]},{"name":"path_provider_macos","dependencies":[]},{"name":"permission_handler","dependencies":[]},{"name":"receive_sharing_intent","dependencies":[]},{"name":"save_in_gallery","dependencies":[]},{"name":"screen","dependencies":[]},{"name":"share","dependencies":[]},{"name":"shared_preferences","dependencies":["shared_preferences_macos","shared_preferences_web"]},{"name":"shared_preferences_macos","dependencies":[]},{"name":"shared_preferences_web","dependencies":[]},{"name":"sqflite","dependencies":[]},{"name":"uni_links","dependencies":[]},{"name":"url_launcher","dependencies":["url_launcher_web","url_launcher_macos"]},{"name":"url_launcher_macos","dependencies":[]},{"name":"url_launcher_web","dependencies":[]},{"name":"video_player","dependencies":["video_player_web"]},{"name":"video_player_web","dependencies":[]},{"name":"wakelock","dependencies":[]},{"name":"webview_flutter","dependencies":[]}],"date_created":"2020-07-11 20:42:58.476280","version":"1.17.5"} \ No newline at end of file +{"info":"This is a generated file; do not edit or check into version control.","plugins":{"ios":[{"name":"device_info","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\device_info-0.4.2+4\\\\","dependencies":[]},{"name":"flutter_inapp_purchase","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\flutter_inapp_purchase-2.2.0\\\\","dependencies":[]},{"name":"image_picker","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\image_picker-0.6.7+3\\\\","dependencies":[]},{"name":"package_info","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\package_info-0.4.1\\\\","dependencies":[]},{"name":"path_provider","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\path_provider-1.6.11\\\\","dependencies":[]},{"name":"permission_handler","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\permission_handler-5.0.1\\\\","dependencies":[]},{"name":"receive_sharing_intent","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\receive_sharing_intent-1.4.0+2\\\\","dependencies":[]},{"name":"save_in_gallery","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\save_in_gallery-0.1.3\\\\","dependencies":[]},{"name":"screen","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\screen-0.0.5\\\\","dependencies":[]},{"name":"share","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\share-0.6.4+3\\\\","dependencies":[]},{"name":"shared_preferences","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\shared_preferences-0.5.7+3\\\\","dependencies":[]},{"name":"sqflite","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\sqflite-1.3.1\\\\","dependencies":[]},{"name":"uni_links","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\uni_links-0.4.0\\\\","dependencies":[]},{"name":"url_launcher","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\url_launcher-5.4.11\\\\","dependencies":[]},{"name":"video_player","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\video_player-0.10.11+2\\\\","dependencies":[]},{"name":"wakelock","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\wakelock-0.1.4+2\\\\","dependencies":[]},{"name":"webview_flutter","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\webview_flutter-0.3.22+1\\\\","dependencies":[]}],"android":[{"name":"device_info","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\device_info-0.4.2+4\\\\","dependencies":[]},{"name":"flutter_displaymode","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\flutter_displaymode-0.1.0\\\\","dependencies":[]},{"name":"flutter_inapp_purchase","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\flutter_inapp_purchase-2.2.0\\\\","dependencies":[]},{"name":"flutter_plugin_android_lifecycle","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\flutter_plugin_android_lifecycle-1.0.8\\\\","dependencies":[]},{"name":"image_picker","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\image_picker-0.6.7+3\\\\","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"package_info","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\package_info-0.4.1\\\\","dependencies":[]},{"name":"path_provider","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\path_provider-1.6.11\\\\","dependencies":[]},{"name":"permission_handler","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\permission_handler-5.0.1\\\\","dependencies":[]},{"name":"receive_sharing_intent","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\receive_sharing_intent-1.4.0+2\\\\","dependencies":[]},{"name":"save_in_gallery","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\save_in_gallery-0.1.3\\\\","dependencies":[]},{"name":"screen","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\screen-0.0.5\\\\","dependencies":[]},{"name":"share","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\share-0.6.4+3\\\\","dependencies":[]},{"name":"shared_preferences","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\shared_preferences-0.5.7+3\\\\","dependencies":[]},{"name":"sqflite","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\sqflite-1.3.1\\\\","dependencies":[]},{"name":"uni_links","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\uni_links-0.4.0\\\\","dependencies":[]},{"name":"url_launcher","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\url_launcher-5.4.11\\\\","dependencies":[]},{"name":"video_player","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\video_player-0.10.11+2\\\\","dependencies":[]},{"name":"wakelock","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\wakelock-0.1.4+2\\\\","dependencies":[]},{"name":"webview_flutter","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\webview_flutter-0.3.22+1\\\\","dependencies":[]}],"macos":[{"name":"package_info","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\package_info-0.4.1\\\\","dependencies":[]},{"name":"path_provider_macos","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\path_provider_macos-0.0.4+3\\\\","dependencies":[]},{"name":"shared_preferences_macos","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\shared_preferences_macos-0.0.1+10\\\\","dependencies":[]},{"name":"sqflite","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\sqflite-1.3.1\\\\","dependencies":[]},{"name":"url_launcher_macos","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\url_launcher_macos-0.0.1+7\\\\","dependencies":[]}],"linux":[{"name":"path_provider_linux","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\path_provider_linux-0.0.1+2\\\\","dependencies":[]}],"windows":[],"web":[{"name":"shared_preferences_web","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\shared_preferences_web-0.1.2+7\\\\","dependencies":[]},{"name":"url_launcher_web","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\url_launcher_web-0.1.2\\\\","dependencies":[]},{"name":"video_player_web","path":"C:\\\\Users\\\\Perol\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.flutter-io.cn\\\\video_player_web-0.1.3+2\\\\","dependencies":[]}]},"dependencyGraph":[{"name":"device_info","dependencies":[]},{"name":"flutter_displaymode","dependencies":[]},{"name":"flutter_inapp_purchase","dependencies":[]},{"name":"flutter_plugin_android_lifecycle","dependencies":[]},{"name":"image_picker","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"package_info","dependencies":[]},{"name":"path_provider","dependencies":["path_provider_macos","path_provider_linux"]},{"name":"path_provider_linux","dependencies":[]},{"name":"path_provider_macos","dependencies":[]},{"name":"permission_handler","dependencies":[]},{"name":"receive_sharing_intent","dependencies":[]},{"name":"save_in_gallery","dependencies":[]},{"name":"screen","dependencies":[]},{"name":"share","dependencies":[]},{"name":"shared_preferences","dependencies":["shared_preferences_macos","shared_preferences_web"]},{"name":"shared_preferences_macos","dependencies":[]},{"name":"shared_preferences_web","dependencies":[]},{"name":"sqflite","dependencies":[]},{"name":"uni_links","dependencies":[]},{"name":"url_launcher","dependencies":["url_launcher_web","url_launcher_macos"]},{"name":"url_launcher_macos","dependencies":[]},{"name":"url_launcher_web","dependencies":[]},{"name":"video_player","dependencies":["video_player_web"]},{"name":"video_player_web","dependencies":[]},{"name":"wakelock","dependencies":[]},{"name":"webview_flutter","dependencies":[]}],"date_created":"2020-07-11 21:40:57.313171","version":"1.17.5"} \ No newline at end of file diff --git a/lib/component/illust_card.dart b/lib/component/illust_card.dart index 8490fca09..d70b9032e 100644 --- a/lib/component/illust_card.dart +++ b/lib/component/illust_card.dart @@ -61,6 +61,12 @@ class _IllustCardState extends State { super.initState(); } + @override + void didUpdateWidget(IllustCard oldWidget) { + illustStore = widget.store; + super.didUpdateWidget(oldWidget); + } + @override Widget build(BuildContext context) { return Observer(builder: (_) { @@ -123,8 +129,9 @@ class _IllustCardState extends State { }); } - String heroString = - DateTime.now().millisecondsSinceEpoch.toString(); //两个作品可能出现在相邻页,用时间保证唯一herotag + String heroString = DateTime.now() + .millisecondsSinceEpoch + .toString(); //两个作品可能出现在相邻页,用时间保证唯一herotag Widget buildInkWell(BuildContext context) { return InkWell( onTap: () => { @@ -160,7 +167,7 @@ class _IllustCardState extends State { alignment: Alignment.topCenter, child: (illustStore.illusts.height.toDouble() / illustStore.illusts.width.toDouble()) > - 2 + 3 ? Hero( tag: '${illustStore.illusts.imageUrls.medium}${heroString}', diff --git a/lib/lighting/lighting_page.dart b/lib/lighting/lighting_page.dart index d44cb416d..bdd77551f 100644 --- a/lib/lighting/lighting_page.dart +++ b/lib/lighting/lighting_page.dart @@ -181,23 +181,29 @@ class _LightingListState extends State { ? StaggeredGridView.countBuilder( padding: EdgeInsets.all(0.0), itemBuilder: (context, index) { - final data = _store.iStores[index].illusts; + // final data = _store.iStores[index].illusts; + // if (needToBan(data)) + // return Visibility( + // visible: false, + // child: Container(), + // ); return IllustCard( store: _store.iStores[index], iStores: _store.iStores, ); }, staggeredTileBuilder: (int index) { + if (needToBan(_store.iStores[index].illusts)) + return StaggeredTile.extent(1, 0.0); double screanWidth = MediaQuery.of(context).size.width; double itemWidth = (screanWidth / 2.0) - 32.0; double radio = _store.iStores[index].illusts.height.toDouble() / _store.iStores[index].illusts.width.toDouble(); double mainAxisExtent; - if (radio > 2) + if (radio > 3) mainAxisExtent = itemWidth; else mainAxisExtent = itemWidth * radio; - return StaggeredTile.extent(1, mainAxisExtent + 80.0); }, itemCount: _store.iStores.length, diff --git a/lib/page/history/history_page.dart b/lib/page/history/history_page.dart index 2d88e406e..46218fc8d 100644 --- a/lib/page/history/history_page.dart +++ b/lib/page/history/history_page.dart @@ -82,7 +82,7 @@ class HistoryPage extends StatelessWidget { child: PixivImage(reIllust[index].pictureUrl))); }); return Center( - child: CircularProgressIndicator(), + child: Container(), ); }); @@ -91,7 +91,7 @@ class HistoryPage extends StatelessWidget { _store.fetch(); return Scaffold( appBar: AppBar( - title: Text("History"), + title: Text(I18n.of(context).History), actions: [ IconButton( icon: Icon(Icons.delete), diff --git a/lib/page/picture/illust_page.dart b/lib/page/picture/illust_page.dart index 273c4a281..e678e0056 100644 --- a/lib/page/picture/illust_page.dart +++ b/lib/page/picture/illust_page.dart @@ -5,6 +5,7 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_mobx/flutter_mobx.dart'; +import 'package:pixez/component/ban_page.dart'; import 'package:pixez/component/painter_avatar.dart'; import 'package:pixez/component/pixiv_image.dart'; import 'package:pixez/component/star_icon.dart'; @@ -317,6 +318,30 @@ class _IllustPageState extends State { @override Widget build(BuildContext context) { return Observer(builder: (_) { + for (var i in muteStore.banillusts) { + if (i.illustId == widget.id.toString()) { + return BanPage( + name: I18n.of(context).Illust, + ); + } + } + if (_illustStore.illusts != null) { + for (var j in muteStore.banUserIds) { + if (j.userId == _illustStore.illusts.user.id.toString()) { + return BanPage( + name: I18n.of(context).Painter, + ); + } + } + for (var t in muteStore.banTags) { + for (var t1 in _illustStore.illusts.tags) { + if (t.name == t1.name) + return BanPage( + name: I18n.of(context).Tag, + ); + } + } + } if (_illustStore.illusts != null) { final data = _illustStore.illusts; return Scaffold( diff --git a/lib/page/search/result_page.dart b/lib/page/search/result_page.dart index e35066aea..cd535e745 100644 --- a/lib/page/search/result_page.dart +++ b/lib/page/search/result_page.dart @@ -20,7 +20,7 @@ import 'package:pixez/main.dart'; import 'package:pixez/models/tags.dart'; import 'package:pixez/page/search/result/painter/search_result_painter_page.dart'; import 'package:pixez/page/search/result_illust_list.dart'; -import 'package:pixez/page/search/search_page.dart'; +import 'package:pixez/page/search/suggest/search_suggestion_page.dart'; class ResultPage extends StatefulWidget { final String word; @@ -50,10 +50,7 @@ class _ResultPageState extends State { child: Text(widget.word), onTap: () { Navigator.of(context).push(MaterialPageRoute( - builder: (context) => Scaffold( - body: SearchPage( - preWord: widget.word, - )))); + builder: (context) => SearchSuggestionPage(preword: widget.word,))); }, ), bottom: TabBar(tabs: [ diff --git a/lib/page/search/search_page.dart b/lib/page/search/search_page.dart index 00b5b2dab..59501f108 100644 --- a/lib/page/search/search_page.dart +++ b/lib/page/search/search_page.dart @@ -25,16 +25,14 @@ import 'package:pixez/main.dart'; import 'package:pixez/models/trend_tags.dart'; import 'package:pixez/network/api_client.dart'; import 'package:pixez/page/picture/illust_page.dart'; -import 'package:pixez/page/picture/picture_page.dart'; import 'package:pixez/page/preview/preview_page.dart'; import 'package:pixez/page/search/bloc/bloc.dart'; import 'package:pixez/page/search/result_page.dart'; import 'package:pixez/page/search/suggest/search_suggestion_page.dart'; class SearchPage extends StatefulWidget { - final String preWord; - const SearchPage({Key key, this.preWord}) : super(key: key); + const SearchPage({Key key}) : super(key: key); @override _SearchPageState createState() => _SearchPageState(); @@ -46,7 +44,6 @@ class _SearchPageState extends State @override void initState() { - _filter = TextEditingController(text: widget.preWord); _tabController = TabController(length: 3, vsync: this); super.initState(); tagHistoryStore.fetch(); @@ -54,7 +51,6 @@ class _SearchPageState extends State @override void dispose() { - _filter?.dispose(); _tabController?.dispose(); super.dispose(); } @@ -116,7 +112,6 @@ class _SearchPageState extends State }); } - TextEditingController _filter; TabController _tabController; ListView _buildListView(TrendTagsState state) { diff --git a/lib/page/search/suggest/search_suggestion_page.dart b/lib/page/search/suggest/search_suggestion_page.dart index 5ef6602a3..5ecff68fa 100644 --- a/lib/page/search/suggest/search_suggestion_page.dart +++ b/lib/page/search/suggest/search_suggestion_page.dart @@ -27,6 +27,9 @@ import 'package:pixez/page/search/result_page.dart'; import 'package:pixez/page/user/users_page.dart'; class SearchSuggestionPage extends StatefulWidget { + final String preword; + + const SearchSuggestionPage({Key key, this.preword}) : super(key: key); @override _SearchSuggestionPageState createState() => _SearchSuggestionPageState(); } @@ -38,7 +41,7 @@ class _SearchSuggestionPageState extends State @override void initState() { - _filter = TextEditingController(); + _filter = TextEditingController(text: widget.preword??''); _tabController = TabController(length: 3, vsync: this); super.initState(); } @@ -96,7 +99,7 @@ class _SearchSuggestionPageState extends State Navigator.of(context, rootNavigator: true).push( MaterialPageRoute( builder: (BuildContext context) => - IllustPage(id:int.parse(segment[1])))); + IllustPage(id: int.parse(segment[1])))); _filter.clear(); } if (segment[0] == 'users') { @@ -134,8 +137,7 @@ class _SearchSuggestionPageState extends State var id = int.tryParse(word); if (id != null) { Navigator.of(context, rootNavigator: true).push( - MaterialPageRoute( - builder: (_) => IllustPage(id:id))); + MaterialPageRoute(builder: (_) => IllustPage(id: id))); } else { _filter.clear(); }