UI: Add ChannelTile with logos, search/filter, and design improvements
This commit is contained in:
@@ -1,11 +1,18 @@
|
||||
class StreamEntry {
|
||||
final String title;
|
||||
final String url;
|
||||
final String? logo; // optional TVG logo URL
|
||||
|
||||
StreamEntry({required this.title, required this.url});
|
||||
StreamEntry({required this.title, required this.url, this.logo});
|
||||
|
||||
StreamEntry copyWith({String? title, String? url, String? logo}) =>
|
||||
StreamEntry(
|
||||
title: title ?? this.title,
|
||||
url: url ?? this.url,
|
||||
logo: logo ?? this.logo);
|
||||
|
||||
@override
|
||||
String toString() => 'StreamEntry(title: $title, url: $url)';
|
||||
String toString() => 'StreamEntry(title: $title, url: $url, logo: $logo)';
|
||||
|
||||
@override
|
||||
bool operator ==(Object other) =>
|
||||
@@ -13,8 +20,9 @@ class StreamEntry {
|
||||
other is StreamEntry &&
|
||||
runtimeType == other.runtimeType &&
|
||||
title == other.title &&
|
||||
url == other.url;
|
||||
url == other.url &&
|
||||
logo == other.logo;
|
||||
|
||||
@override
|
||||
int get hashCode => title.hashCode ^ url.hashCode;
|
||||
int get hashCode => title.hashCode ^ url.hashCode ^ (logo?.hashCode ?? 0);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user