improve ui

This commit is contained in:
nyne
2024-10-27 16:39:38 +08:00
parent 910bda8cc1
commit 27d25db407
7 changed files with 58 additions and 7 deletions

View File

@@ -94,7 +94,11 @@ class FlyoutState extends State<Flyout> {
void show() {
var renderBox = context.findRenderObject() as RenderBox;
var rect = renderBox.localToGlobal(Offset.zero) & renderBox.size;
var navigator = widget.navigator ?? Navigator.of(context);
var navigator = widget.navigator ??
Navigator.of(
context,
rootNavigator: true,
);
navigator.push(PageRouteBuilder(
fullscreenDialog: true,
barrierDismissible: true,
@@ -173,9 +177,9 @@ class FlyoutContent extends StatelessWidget {
Widget build(BuildContext context) {
return IntrinsicWidth(
child: BlurEffect(
borderRadius: BorderRadius.circular(16),
borderRadius: BorderRadius.circular(8),
child: Material(
borderRadius: BorderRadius.circular(16),
borderRadius: BorderRadius.circular(8),
type: MaterialType.card,
color: context.colorScheme.surface.withOpacity(0.82),
child: Container(
@@ -190,8 +194,7 @@ class FlyoutContent extends StatelessWidget {
Text(title,
style: const TextStyle(
fontWeight: FontWeight.bold, fontSize: 16)),
if (content != null)
content!,
if (content != null) content!,
const SizedBox(
height: 12,
),

View File

@@ -29,6 +29,16 @@ class CategoriesPage extends StatelessWidget {
.where((element) => allCategories.contains(element))
.toList();
if(categories.isEmpty) {
return NetworkError(
message: "No Category Pages".tl,
retry: () {
controller.update();
},
withAppbar: false,
);
}
return Material(
child: DefaultTabController(
length: categories.length,

View File

@@ -272,7 +272,7 @@ class _CommentTileState extends State<_CommentTile> {
if (widget.comment.time != null)
Text(widget.comment.time!, style: ts.s12),
const SizedBox(height: 4),
Text(widget.comment.content),
_CommentContent(text: widget.comment.content),
buildActions(),
],
),
@@ -490,3 +490,14 @@ class _CommentTileState extends State<_CommentTile> {
);
}
}
class _CommentContent extends StatelessWidget {
const _CommentContent({required this.text});
final String text;
@override
Widget build(BuildContext context) {
return SelectableText(text);
}
}

View File

@@ -62,8 +62,22 @@ class _ExplorePageState extends State<ExplorePage>
Widget buildBody(String i) => _SingleExplorePage(i, key: Key(i));
Widget buildEmpty() {
return NetworkError(
message: "No Explore Pages".tl,
retry: () {
setState(() {});
},
withAppbar: false,
);
}
@override
Widget build(BuildContext context) {
if (pages.isEmpty) {
return buildEmpty();
}
Widget tabBar = Material(
child: FilledTabBar(
tabs: pages.map((e) => buildTab(e)).toList(),

View File

@@ -1,6 +1,7 @@
import 'dart:convert';
import 'package:flutter/material.dart';
import 'package:sliver_tools/sliver_tools.dart';
import 'package:venera/components/components.dart';
import 'package:venera/foundation/app.dart';
import 'package:venera/foundation/appdata.dart';
@@ -168,7 +169,10 @@ class _SearchPageState extends State<SearchPage> {
yield buildSuggestions(context);
} else {
yield buildSearchTarget();
yield buildSearchOptions();
yield SliverAnimatedPaintExtent(
duration: const Duration(milliseconds: 200),
child: buildSearchOptions(),
);
yield buildSearchHistory();
}
}