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.