diff --git a/app/lib/features/bangs/presentation/widgets/site_search.dart b/app/lib/features/bangs/presentation/widgets/site_search.dart index f68eeaf9..f597defc 100644 --- a/app/lib/features/bangs/presentation/widgets/site_search.dart +++ b/app/lib/features/bangs/presentation/widgets/site_search.dart @@ -59,8 +59,8 @@ class SiteSearch extends HookConsumerWidget { itemId: (bang) => bang.trigger, itemAvatar: (bang) => BangIcon(bang, iconSize: 20), itemLabel: (bang) => Text(bang.websiteName), - available: availableBangs, - selected: selectedBang, + availableItems: availableBangs, + selectedItem: selectedBang, onSelected: (bang) { ref .read( diff --git a/app/lib/features/search_browser/presentation/widgets/app_bar_title.dart b/app/lib/features/search_browser/presentation/widgets/app_bar_title.dart index ef368690..eb6c8785 100644 --- a/app/lib/features/search_browser/presentation/widgets/app_bar_title.dart +++ b/app/lib/features/search_browser/presentation/widgets/app_bar_title.dart @@ -44,7 +44,8 @@ class AppBarTitle extends HookWidget { child: Row( children: [ FaviconImage( - webPageInfo: page, + favicon: page.favicon, + url: page.url, ), const SizedBox( width: 8, diff --git a/app/lib/features/web_view/presentation/widgets/favicon.dart b/app/lib/features/web_view/presentation/widgets/favicon.dart index be3243c1..2a449dfc 100644 --- a/app/lib/features/web_view/presentation/widgets/favicon.dart +++ b/app/lib/features/web_view/presentation/widgets/favicon.dart @@ -1,16 +1,18 @@ import 'package:flutter/material.dart'; +import 'package:flutter_inappwebview/flutter_inappwebview.dart'; import 'package:flutter_material_design_icons/flutter_material_design_icons.dart'; -import 'package:lensai/domain/entities/web_page_info.dart'; import 'package:lensai/extensions/web_uri_favicon.dart'; class FaviconImage extends StatelessWidget { final double size; final Icon _iconPlaceholder; - final WebPageInfo webPageInfo; + final Favicon? favicon; + final Uri url; FaviconImage({ - required this.webPageInfo, + required this.url, + required this.favicon, this.size = 16, super.key, }) : _iconPlaceholder = Icon( @@ -20,15 +22,15 @@ class FaviconImage extends StatelessWidget { @override Widget build(BuildContext context) { - if (webPageInfo.favicon != null) { + if (favicon != null) { return FadeInImage( placeholder: NetworkImage( - webPageInfo.url.genericFavicon().toString(), + url.genericFavicon().toString(), ), - image: NetworkImage(webPageInfo.favicon!.url.toString()), + image: NetworkImage(favicon!.url.toString()), placeholderErrorBuilder: (_, __, ___) => _iconPlaceholder, imageErrorBuilder: (_, __, ___) => Image.network( - webPageInfo.url.genericFavicon().toString(), + url.genericFavicon().toString(), errorBuilder: (_, __, ___) => _iconPlaceholder, height: size, width: size, @@ -38,7 +40,7 @@ class FaviconImage extends StatelessWidget { ); } else { return Image.network( - webPageInfo.url.genericFavicon().toString(), + url.genericFavicon().toString(), errorBuilder: (_, __, ___) => _iconPlaceholder, height: size, width: size, diff --git a/app/lib/features/web_view/presentation/widgets/web_page_dialog.dart b/app/lib/features/web_view/presentation/widgets/web_page_dialog.dart index 199a2476..1d466092 100644 --- a/app/lib/features/web_view/presentation/widgets/web_page_dialog.dart +++ b/app/lib/features/web_view/presentation/widgets/web_page_dialog.dart @@ -99,7 +99,8 @@ class WebPageDialog extends HookConsumerWidget { ), title: ListTile( leading: FaviconImage( - webPageInfo: page, + favicon: page.favicon, + url: page.url, size: 24, ), contentPadding: EdgeInsets.zero, diff --git a/app/lib/presentation/widgets/website_title_tile.dart b/app/lib/presentation/widgets/website_title_tile.dart index 233422b7..c96e5eec 100644 --- a/app/lib/presentation/widgets/website_title_tile.dart +++ b/app/lib/presentation/widgets/website_title_tile.dart @@ -20,7 +20,8 @@ class WebsiteTitleTile extends HookConsumerWidget { data: (info) { return ListTile( leading: FaviconImage( - webPageInfo: info, + favicon: info.favicon, + url: info.url, size: 24, ), contentPadding: EdgeInsets.zero,