Refactor search UI

This commit is contained in:
Neeraj Gupta 2022-07-28 10:38:20 +05:30
parent 5b21bc0aa6
commit 40ed037327
No known key found for this signature in database
GPG key ID: 3C5A1684DC1729E1
4 changed files with 22 additions and 21 deletions

View file

@ -232,7 +232,7 @@ class StatusBarBrandingWidget extends StatelessWidget {
FeatureFlagService.instance.enableSearchFeature()
? SizedBox(
width: MediaQuery.of(context).size.width,
child: Align(
child: const Align(
alignment: Alignment.centerRight,
child: SearchIconWidget(),
),

View file

@ -6,9 +6,10 @@ import 'package:photos/ui/viewer/file/thumbnail_widget.dart';
import 'package:photos/ui/viewer/gallery/collection_page.dart';
import 'package:photos/utils/navigation_util.dart';
class CollectionSearchResultWidget extends StatelessWidget {
class CollectionResultWidget extends StatelessWidget {
final CollectionWithThumbnail c;
const CollectionSearchResultWidget(this.c, {Key key}) : super(key: key);
const CollectionResultWidget(this.c, {Key key}) : super(key: key);
@override
Widget build(BuildContext context) {
@ -37,7 +38,6 @@ class CollectionSearchResultWidget extends StatelessWidget {
builder: (context, snapshot) {
if (snapshot.hasData && snapshot.data > 0) {
int noOfMemories = snapshot.data;
return RichText(
text: TextSpan(
style: TextStyle(
@ -59,20 +59,16 @@ class CollectionSearchResultWidget extends StatelessWidget {
),
],
),
Row(
children: [
SizedBox(
height: 50,
width: 50,
child: ThumbnailWidget(c.thumbnail),
),
],
SizedBox(
height: 50,
width: 50,
child: ThumbnailWidget(c.thumbnail),
)
],
),
),
onTap: () {
routeToPage(context, CollectionPage(c));
routeToPage(context, CollectionPage(c), forceCustomPageRoute: true);
},
);
}

View file

@ -1,7 +1,7 @@
import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';
import 'package:photos/models/collection_items.dart';
import 'package:photos/ui/viewer/search/collection_suggestion_widget_generator.dart';
import 'package:photos/ui/viewer/search/collection_result_widget.dart';
class SearchResultsSuggestions extends StatelessWidget {
final List<CollectionWithThumbnail> collectionsWithThumbnail;
@ -12,7 +12,7 @@ class SearchResultsSuggestions extends StatelessWidget {
Widget build(BuildContext context) {
List<Widget> suggestions = [];
for (CollectionWithThumbnail c in collectionsWithThumbnail) {
suggestions.add(CollectionSuggestionWidgetGenerator(c));
suggestions.add(CollectionResultWidget(c));
}
return Container(

View file

@ -4,25 +4,30 @@ import 'package:photos/models/collection_items.dart';
import 'package:photos/services/collections_service.dart';
import 'package:photos/ui/viewer/search/search_results_suggestions.dart';
// ignore: must_be_immutable
class SearchIconWidget extends StatefulWidget {
bool openSearch;
SearchIconWidget({Key key, this.openSearch = false}) : super(key: key);
const SearchIconWidget({Key key}) : super(key: key);
@override
State<SearchIconWidget> createState() => _SearchIconWidgetState();
}
class _SearchIconWidgetState extends State<SearchIconWidget> {
bool showSearchWidget;
@override
void initState() {
super.initState();
showSearchWidget = false;
}
@override
Widget build(BuildContext context) {
return widget.openSearch
? Searchwidget(widget.openSearch)
return showSearchWidget
? Searchwidget(showSearchWidget)
: IconButton(
onPressed: () {
setState(
() {
widget.openSearch = !widget.openSearch;
showSearchWidget = !showSearchWidget;
},
);
},