Skip to content

Commit 6424acf

Browse files
committed
Some refactoring
1 parent 033b000 commit 6424acf

23 files changed

+161
-293
lines changed
1 Byte
Binary file not shown.
17 Bytes
Binary file not shown.

.gradle/5.2.1/gc.properties

Whitespace-only changes.
17 Bytes
Binary file not shown.
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
#Tue Mar 24 10:33:40 ICT 2020
2+
gradle.version=5.2.1

.gradle/vcs-1/gc.properties

Whitespace-only changes.

lib/main.dart

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,9 @@ class _MyAppState extends State<MyApp> {
2626
Widget build(BuildContext context) {
2727
return MultiProvider(
2828
providers: [
29-
Provider<AppState>(create: (_) => _appState),
30-
Provider<MessageState>(create: (_) => _messageState),
31-
Provider<RoomState>(create: (_) => _roomState),
29+
ChangeNotifierProvider.value(value: _appState),
30+
ChangeNotifierProvider.value(value: _roomState),
31+
ChangeNotifierProvider.value(value: _messageState),
3232
],
3333
child: MaterialApp(
3434
title: 'Flutter Demo',

lib/src/page/chat_page.dart

Lines changed: 12 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
11
import 'dart:async';
22

3-
import 'package:flutter/cupertino.dart';
43
import 'package:flutter/material.dart';
5-
import 'package:flutter_mobx/flutter_mobx.dart';
4+
import 'package:flutter/widgets.dart';
65
import 'package:provider/provider.dart';
7-
import 'package:qiscus_chat_sample/src/state/message_state.dart';
8-
import 'package:qiscus_chat_sample/src/state/room_state.dart';
6+
import 'package:qiscus_chat_sample/src/state/state.dart';
97
import 'package:qiscus_chat_sample/src/widget/chat_bubble.dart';
108

119
class ChatPage extends StatefulWidget {
@@ -41,7 +39,6 @@ class _ChatState extends State<ChatPage> {
4139
}
4240

4341
Widget buildAppBar(BuildContext context) {
44-
var roomState = Provider.of<RoomState>(context);
4542
return AppBar(
4643
centerTitle: false,
4744
elevation: 0,
@@ -54,12 +51,13 @@ class _ChatState extends State<ChatPage> {
5451
Navigator.of(context).pushReplacementNamed('/login');
5552
},
5653
),
57-
title: Observer(
58-
builder: (_) {
59-
if (roomState.currentRoom == null)
54+
title: Consumer<RoomState>(
55+
builder: (_, state, __) {
56+
if (state.currentRoom == null) {
6057
return Text('Loading...');
61-
else
62-
return Text(roomState.currentRoom.name);
58+
} else {
59+
return Text(state.currentRoom.name);
60+
}
6361
},
6462
),
6563
);
@@ -113,13 +111,12 @@ class _ChatState extends State<ChatPage> {
113111
}
114112

115113
Widget _messageList(BuildContext ctx) {
116-
var messageState = Provider.of<MessageState>(ctx, listen: false);
117114
return Expanded(
118-
child: Observer(
119-
builder: (_) {
120-
var reversed = messageState.messages.reversed;
115+
child: Consumer<MessageState>(
116+
builder: (_, state, __) {
117+
var reversed = state.messages.reversed;
121118
return ListView.builder(
122-
itemCount: messageState.messages.length,
119+
itemCount: state.messages.length,
123120
itemBuilder: (ctx, id) {
124121
var message = reversed.elementAt(id);
125122
return ChatBubble(message: message);

lib/src/page/login_page.dart

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -114,10 +114,7 @@ class _LoginState extends State<LoginPage> {
114114
var target = _targetController.text;
115115

116116
await appState.setup(appId);
117-
await appState.setUser(
118-
userId: userId,
119-
userKey: userKey,
120-
);
117+
await appState.setUser(userId, userKey);
121118
var room = await roomState.getRoomWithUser(userId: target);
122119

123120
Navigator.of(context).pushReplacementNamed('/', arguments: room.id);

lib/src/page/page.dart

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
export 'chat_page.dart';
2+
export 'login_page.dart';

0 commit comments

Comments
 (0)