CAKE-20 | changed dots indicator on smooth page indicator (dashboard page); deleted page_view_store

Oleksandr Sobol committed Jul 31, 2020 at 22:55 UTC 1ba86506f09014b77e4198255b2ae9522d3f9b31
6 files changed +23 -66
lib/di.dart
+1 -4
@@ -65,7 +65,6 @@ import 'package:cake_wallet/store/templates/send_template_store.dart';
65 import 'package:cake_wallet/store/templates/exchange_template_store.dart';
66 import 'package:cake_wallet/src/domain/common/template.dart';
67 import 'package:cake_wallet/src/domain/exchange/exchange_template.dart';
68 -import 'package:cake_wallet/store/dashboard/page_view_store.dart';
68
69 final getIt = GetIt.instance;
70
@@ -121,7 +120,6 @@ Future setup(
120 TradeFilterStore(wallet: getIt.get<AppStore>().wallet));
121 getIt.registerSingleton<TransactionFilterStore>(TransactionFilterStore());
122 getIt.registerSingleton<FiatConvertationStore>(FiatConvertationStore());
124 - getIt.registerSingleton<PageViewStore>(PageViewStore());
123 getIt.registerSingleton<SendTemplateStore>(
124 SendTemplateStore(templateSource: templates));
125 getIt.registerSingleton<ExchangeTemplateStore>(
@@ -169,8 +167,7 @@ Future setup(
167 appStore: getIt.get<AppStore>(),
168 tradesStore: getIt.get<TradesStore>(),
169 tradeFilterStore: getIt.get<TradeFilterStore>(),
172 - transactionFilterStore: getIt.get<TransactionFilterStore>(),
173 - pageViewStore: getIt.get<PageViewStore>()
170 + transactionFilterStore: getIt.get<TransactionFilterStore>()
171 ));
172
173 getIt.registerFactory<AuthService>(() => AuthService(
lib/src/screens/dashboard/dashboard_page.dart
+13 -27
@@ -6,15 +6,13 @@ import 'package:cake_wallet/view_model/dashboard/dashboard_view_model.dart';
6 import 'package:cake_wallet/src/screens/base_page.dart';
7 import 'package:cake_wallet/src/screens/dashboard/widgets/menu_widget.dart';
8 import 'package:cake_wallet/palette.dart';
9 -import 'package:dots_indicator/dots_indicator.dart';
9 import 'package:cake_wallet/src/screens/dashboard/widgets/action_button.dart';
10 import 'package:cake_wallet/src/screens/dashboard/widgets/balance_page.dart';
11 import 'package:cake_wallet/src/screens/dashboard/widgets/address_page.dart';
12 import 'package:cake_wallet/src/screens/dashboard/widgets/transactions_page.dart';
14 -import 'package:flutter_mobx/flutter_mobx.dart';
15 -import 'package:mobx/mobx.dart';
13 import 'package:cake_wallet/src/screens/dashboard/widgets/sync_indicator.dart';
14 import 'package:cake_wallet/view_model/wallet_address_list/wallet_address_list_view_model.dart';
15 +import 'package:smooth_page_indicator/smooth_page_indicator.dart';
16
17 class DashboardPage extends BasePage {
18 DashboardPage({
@@ -95,20 +93,18 @@ class DashboardPage extends BasePage {
93 padding: EdgeInsets.only(
94 bottom: 24
95 ),
98 - child: Observer(
99 - builder: (_) {
100 - return DotsIndicator(
101 - dotsCount: pages.length,
102 - position: walletViewModel.currentPage,
103 - decorator: DotsDecorator(
104 - color: PaletteDark.cyanBlue,
105 - activeColor: Colors.white,
106 - size: Size(6, 6),
107 - activeSize: Size(6, 6),
108 - ),
109 - );
110 - }
111 - ),
96 + child: SmoothPageIndicator(
97 + controller: controller,
98 + count: pages.length,
99 + effect: ColorTransitionEffect(
100 + spacing: 6.0,
101 + radius: 6.0,
102 + dotWidth: 6.0,
103 + dotHeight: 6.0,
104 + dotColor: PaletteDark.cyanBlue,
105 + activeDotColor: Colors.white
106 + ),
107 + )
108 ),
109 Container(
110 width: double.infinity,
@@ -159,16 +155,6 @@ class DashboardPage extends BasePage {
155 pages.add(BalancePage(dashboardViewModel: walletViewModel));
156 pages.add(TransactionsPage(dashboardViewModel: walletViewModel));
157
162 - controller.addListener(() {
163 - walletViewModel.pageViewStore.setCurrentPage(controller.page);
164 - });
165 -
166 - reaction((_) => walletViewModel.currentPage, (double currentPage) {
167 - if (controller.page != currentPage) {
168 - controller.jumpTo(currentPage);
169 - }
170 - });
171 -
158 _isEffectsInstalled = true;
159 }
160 }
lib/store/dashboard/page_view_store.dart deleted
-19
@@ -1,19 +0,0 @@
1 -import 'package:mobx/mobx.dart';
2 -
3 -part 'page_view_store.g.dart';
4 -
5 -class PageViewStore = PageViewStoreBase with _$PageViewStore;
6 -
7 -abstract class PageViewStoreBase with Store {
8 - PageViewStoreBase() {
9 - setCurrentPage(1);
10 - }
11 -
12 - @observable
13 - double currentPage;
14 -
15 - @action
16 - void setCurrentPage(double currentPage) {
17 - this.currentPage = currentPage;
18 - }
19 -}
\ No newline at end of file
lib/view_model/dashboard/dashboard_view_model.dart
+1 -8
@@ -22,7 +22,6 @@ import 'package:cake_wallet/store/dashboard/trades_store.dart';
22 import 'package:cake_wallet/store/dashboard/trade_filter_store.dart';
23 import 'package:cake_wallet/store/dashboard/transaction_filter_store.dart';
24 import 'package:cake_wallet/view_model/dashboard/formatted_item_list.dart';
25 -import 'package:cake_wallet/store/dashboard/page_view_store.dart';
25
26 part 'dashboard_view_model.g.dart';
27
@@ -34,8 +33,7 @@ abstract class DashboardViewModelBase with Store {
33 this.appStore,
34 this.tradesStore,
35 this.tradeFilterStore,
37 - this.transactionFilterStore,
38 - this.pageViewStore}) {
36 + this.transactionFilterStore}) {
37
38 name = appStore.wallet?.name;
39 wallet ??= appStore.wallet;
@@ -69,9 +67,6 @@ abstract class DashboardViewModelBase with Store {
67 @observable
68 String subname;
69
72 - @computed
73 - double get currentPage => pageViewStore.currentPage;
74 -
70 @computed
71 String get address => wallet.address;
72
@@ -130,8 +125,6 @@ abstract class DashboardViewModelBase with Store {
125
126 TransactionFilterStore transactionFilterStore;
127
133 - PageViewStore pageViewStore;
134 -
128 ReactionDisposer _reaction;
129
130 void _onWalletChange(WalletBase wallet) {
pubspec.lock
+7 -7
@@ -267,13 +267,6 @@ packages:
267 url: "https://pub.dartlang.org"
268 source: hosted
269 version: "3.0.7"
270 - dots_indicator:
271 - dependency: "direct main"
272 - description:
273 - name: dots_indicator
274 - url: "https://pub.dartlang.org"
275 - source: hosted
276 - version: "1.2.0"
270 dotted_border:
271 dependency: "direct main"
272 description:
@@ -803,6 +796,13 @@ packages:
796 description: flutter
797 source: sdk
798 version: "0.0.99"
799 + smooth_page_indicator:
800 + dependency: "direct main"
801 + description:
802 + name: smooth_page_indicator
803 + url: "https://pub.dartlang.org"
804 + source: hosted
805 + version: "0.2.0"
806 source_gen:
807 dependency: transitive
808 description:
pubspec.yaml
+1 -1
@@ -50,7 +50,7 @@ dependencies:
50 devicelocale: ^0.2.1
51 auto_size_text: ^2.1.0
52 dotted_border: ^1.0.5
53 - dots_indicator: ^1.2.0
53 + smooth_page_indicator: ^0.2.0
54
55 # The following adds the Cupertino Icons font to your application.
56 # Use with the CupertinoIcons class for iOS style icons.