Skip to content

Commit 0b2362f

Browse files
huycozyhuynguyennovem
authored andcommitted
feat: send text
1 parent 57b2349 commit 0b2362f

12 files changed

Lines changed: 604 additions & 654 deletions

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,3 +34,9 @@
3434
- https://github.com/huynguyennovem/netshare/issues/69: Comma key is displayed instead of dot key on iOS
3535
- https://github.com/huynguyennovem/netshare/issues/72: Can not pick media files (image, video) in client mode on iOS
3636
- https://github.com/huynguyennovem/netshare/issues/76: Crashing when hosting file on iOS
37+
38+
## 2.2.0
39+
🎊 New features
40+
- Compatible with Flutter 3.38
41+
- Migrate Android Gradle to Kotlin DSL
42+
- Send text feature

lib/config/constants.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ const mRootPath = '/';
77
const mNavigationPath = 'navigation';
88
const mClientPath = 'client';
99
const mServerPath = 'server';
10-
const mSendPath = 'send';
11-
const mChatPath = 'chat';
10+
const mSendFilesPath = 'send_files';
11+
const mSendTextPath = 'send_text';
1212
const mUploadingPath = 'uploading';
1313
const mScanningPath = 'scanning';
1414
const mManualConnectPath = 'manual_connect';

lib/main.dart

Lines changed: 37 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,26 @@
11
import 'package:flutter/material.dart';
22
import 'package:flutter/services.dart';
3-
43
import 'package:go_router/go_router.dart';
54
import 'package:netshare/ui/common_view/confirm_dialog.dart';
65
import 'package:provider/provider.dart';
7-
86
import 'package:netshare/config/styles.dart';
97
import 'package:netshare/data/preload_data.dart';
108
import 'package:netshare/di/di.dart';
9+
import 'package:netshare/entity/file_upload.dart';
1110
import 'package:netshare/plugin_management/plugins.dart';
1211
import 'package:netshare/provider/app_provider.dart';
1312
import 'package:netshare/provider/chat_provider.dart';
1413
import 'package:netshare/provider/connection_provider.dart';
1514
import 'package:netshare/provider/file_provider.dart';
16-
import 'package:netshare/ui/chat/chat_widget.dart';
15+
import 'package:netshare/ui/send/send_text_widget.dart';
1716
import 'package:netshare/ui/client/scan_qr_widget.dart';
1817
import 'package:netshare/ui/client/client_widget.dart';
19-
import 'package:netshare/ui/send/send_widget.dart';
18+
import 'package:netshare/ui/send/send_file_widget.dart';
2019
import 'package:netshare/ui/server/server_widget.dart';
2120
import 'package:netshare/util/utility_functions.dart';
2221
import 'package:netshare/config/constants.dart';
2322
import 'package:netshare/ui/send/uploading_widget.dart';
2423

25-
import 'data/preload_data.dart';
26-
2724
void main() async {
2825
WidgetsFlutterBinding.ensureInitialized();
2926
await initPlugins();
@@ -42,7 +39,6 @@ class MyApp extends StatefulWidget {
4239
}
4340

4441
class _MyAppState extends State<MyApp> {
45-
4642
final GoRouter _router = GoRouter(
4743
navigatorKey: _navigatorKey,
4844
errorBuilder: (BuildContext context, GoRouterState state) =>
@@ -67,30 +63,37 @@ class _MyAppState extends State<MyApp> {
6763
name: mClientPath,
6864
path: '/$mClientPath',
6965
builder: (context, state) => const ClientWidget(),
70-
routes: [
71-
GoRoute(
72-
name: mSendPath,
73-
path: mSendPath,
74-
builder: (BuildContext context, GoRouterState state) => const SendWidget(),
75-
routes: [
76-
GoRoute(
77-
name: mUploadingPath,
78-
path: mUploadingPath,
79-
builder: (context, state) => const UploadingWidget(),
80-
)
81-
],
82-
),
83-
GoRoute(
84-
name: mChatPath,
85-
path: mChatPath,
86-
builder: (BuildContext context, GoRouterState state) => const ChatWidget(),
87-
),
88-
GoRoute(
89-
name: mScanningPath,
90-
path: mScanningPath,
91-
builder: (BuildContext context, GoRouterState state) => const ScanQRWidget(),
92-
),
93-
],
66+
routes: [
67+
GoRoute(
68+
name: mSendFilesPath,
69+
path: mSendFilesPath,
70+
builder: (BuildContext context, GoRouterState state) {
71+
final fileUpload = state.extra as FileUpload?;
72+
return SendFilesWidget(
73+
initialFiles: fileUpload != null ? [fileUpload] : null,
74+
);
75+
},
76+
routes: [
77+
GoRoute(
78+
name: mUploadingPath,
79+
path: mUploadingPath,
80+
builder: (context, state) => const UploadingWidget(),
81+
)
82+
],
83+
),
84+
GoRoute(
85+
name: mSendTextPath,
86+
path: mSendTextPath,
87+
builder: (BuildContext context, GoRouterState state) =>
88+
const SendTextWidget(),
89+
),
90+
GoRoute(
91+
name: mScanningPath,
92+
path: mScanningPath,
93+
builder: (BuildContext context, GoRouterState state) =>
94+
const ScanQRWidget(),
95+
),
96+
],
9497
),
9598
],
9699
);
@@ -111,10 +114,11 @@ class _MyAppState extends State<MyApp> {
111114
theme: ThemeData(
112115
useMaterial3: true,
113116
appBarTheme: const AppBarTheme(color: backgroundColor),
114-
colorScheme: ColorScheme.fromSeed(seedColor: seedColor, background: backgroundColor),
117+
colorScheme: ColorScheme.fromSeed(
118+
seedColor: seedColor, background: backgroundColor),
115119
iconButtonTheme: const IconButtonThemeData(
116120
style: ButtonStyle(
117-
iconColor: MaterialStatePropertyAll<Color>(textIconButtonColor),
121+
iconColor: WidgetStatePropertyAll<Color>(textIconButtonColor),
118122
),
119123
),
120124
),

lib/ui/chat/chat_widget.dart

Lines changed: 0 additions & 204 deletions
This file was deleted.

lib/ui/chat/list_message_widget.dart

Lines changed: 0 additions & 32 deletions
This file was deleted.

0 commit comments

Comments
 (0)