fix: use vrouter.toSegments

This commit is contained in:
Sorunome 2021-08-15 13:26:16 +02:00
commit 02e57474fe
22 changed files with 47 additions and 38 deletions

View file

@ -617,7 +617,7 @@ class ChatController extends State<Chat> {
future: room.leave,
);
if (result.error == null) {
VRouter.of(context).to('/rooms/${result.result}');
VRouter.of(context).toSegments(['rooms', result.result]);
}
}

View file

@ -60,7 +60,7 @@ class ChatListController extends State<ChatList> {
void editSpace(BuildContext context, String spaceId) async {
Scaffold.of(context).openEndDrawer();
await Matrix.of(context).client.getRoomById(spaceId).postLoad();
VRouter.of(context).to('/spaces/$spaceId');
VRouter.of(context).toSegments(['spaces', spaceId]);
}
List<Room> get spaces =>

View file

@ -32,7 +32,7 @@ class NewGroupController extends State<NewGroup> {
),
);
if (roomID.error == null) {
VRouter.of(context).to('/rooms/${roomID.result}/invite');
VRouter.of(context).toSegments(['rooms', roomID.result, 'invite']);
}
}

View file

@ -47,7 +47,7 @@ class NewPrivateChatController extends State<NewPrivateChat> {
);
if (roomID.error == null) {
VRouter.of(context).to('/rooms/${roomID.result}');
VRouter.of(context).toSegments(['rooms', roomID.result]);
}
}

View file

@ -34,7 +34,7 @@ class NewSpaceController extends State<NewSpace> {
),
);
if (roomID.error == null) {
VRouter.of(context).to('/rooms/${roomID.result}/details');
VRouter.of(context).toSegments(['rooms', roomID.result, 'details']);
}
}

View file

@ -78,7 +78,7 @@ class SearchController extends State<Search> {
),
);
if (success.error == null) {
VRouter.of(context).to('/rooms/${success.result}');
VRouter.of(context).toSegments(['rooms', success.result]);
}
}

View file

@ -88,7 +88,8 @@ class UserBottomSheetController extends State<UserBottomSheet> {
future: () => widget.user.startDirectChat(),
);
if (roomIdResult.error != null) return;
VRouter.of(widget.outerContext).to('/rooms/${roomIdResult.result}');
VRouter.of(widget.outerContext)
.toSegments(['rooms', roomIdResult.result]);
Navigator.of(context, rootNavigator: false).pop();
break;
}

View file

@ -52,11 +52,11 @@ class ChatDetailsView extends StatelessWidget {
SliverAppBar(
leading: IconButton(
icon: Icon(Icons.close_outlined),
onPressed: () => VRouter.of(context)
.path
.startsWith('/spaces/')
? VRouter.of(context).pop()
: VRouter.of(context).to('/rooms/${controller.roomId}'),
onPressed: () =>
VRouter.of(context).path.startsWith('/spaces/')
? VRouter.of(context).pop()
: VRouter.of(context)
.toSegments(['rooms', controller.roomId]),
),
elevation: Theme.of(context).appBarTheme.elevation,
expandedHeight: 300.0,
@ -264,7 +264,8 @@ class ChatDetailsView extends StatelessWidget {
.visibilityOfTheChatHistory),
subtitle: Text(
room.historyVisibility.getLocalizedString(
MatrixLocals(L10n.of(context))),
MatrixLocals(L10n.of(context))) ??
'',
),
),
),

View file

@ -23,7 +23,7 @@ class ChatEncryptionSettingsView extends StatelessWidget {
leading: IconButton(
icon: Icon(Icons.close_outlined),
onPressed: () =>
VRouter.of(context).to('/rooms/${controller.roomId}'),
VRouter.of(context).toSegments(['rooms', controller.roomId]),
),
title: Text(L10n.of(context).tapOnDeviceToVerify),
bottom: PreferredSize(

View file

@ -22,8 +22,8 @@ class ChatPermissionsSettingsView extends StatelessWidget {
? null
: IconButton(
icon: Icon(Icons.close_outlined),
onPressed: () =>
VRouter.of(context).to('/rooms/${controller.roomId}'),
onPressed: () => VRouter.of(context)
.toSegments(['rooms', controller.roomId]),
),
title: Text(L10n.of(context).editChatPermissions),
),

View file

@ -98,8 +98,8 @@ class ChatView extends StatelessWidget {
'${controller.room.getUserByMXIDSync(controller.room.directChatMatrixID).mention} ',
),
)
: () => VRouter.of(context)
.to('/rooms/${controller.room.id}/details'),
: () => VRouter.of(context).toSegments(
['rooms', controller.room.id, 'details']),
title: Text(
controller.room.getLocalizedDisplayname(
MatrixLocals(L10n.of(context))),

View file

@ -25,8 +25,8 @@ class InvitationSelectionView extends StatelessWidget {
? null
: IconButton(
icon: Icon(Icons.close_outlined),
onPressed: () =>
VRouter.of(context).to('/rooms/${controller.roomId}'),
onPressed: () => VRouter.of(context)
.toSegments(['rooms', controller.roomId]),
),
titleSpacing: 0,
title: DefaultAppBarSearchField(

View file

@ -239,7 +239,8 @@ class SearchView extends StatelessWidget {
.startDirectChat(foundProfile.userId),
);
if (roomID.error == null) {
VRouter.of(context).to('/rooms/${roomID.result}');
VRouter.of(context)
.toSegments(['rooms', roomID.result]);
}
},
leading: Avatar(

View file

@ -44,8 +44,8 @@ class MultipleEmotesSettingsView extends StatelessWidget {
return ListTile(
title: Text(packName),
onTap: () async {
VRouter.of(context)
.to('/rooms/${room.id}/details/emotes/${keys[i]}');
VRouter.of(context).toSegments(
['rooms', room.id, 'details', 'emotes', keys[i]]);
},
);
});