diff --git a/fonts/DSoci.ttf b/fonts/DSoci.ttf new file mode 100644 index 0000000..0272090 Binary files /dev/null and b/fonts/DSoci.ttf differ diff --git a/lib/controls/timeline/timeline_network_info_control.dart b/lib/controls/timeline/timeline_network_info_control.dart index d8b4dc9..a950ea6 100644 --- a/lib/controls/timeline/timeline_network_info_control.dart +++ b/lib/controls/timeline/timeline_network_info_control.dart @@ -19,8 +19,8 @@ class TimelineNetworkInfoControl extends StatelessWidget { child: Tooltip( message: networkText, child: Text( - info.forkAwesomeUnicode, - style: const TextStyle(fontFamily: 'ForkAwesome'), + info.dSocFontUnicode, + style: const TextStyle(fontFamily: 'DSoc'), ), ), ); diff --git a/lib/models/timeline_network_info.dart b/lib/models/timeline_network_info.dart index a525fcf..62378eb 100644 --- a/lib/models/timeline_network_info.dart +++ b/lib/models/timeline_network_info.dart @@ -1,6 +1,7 @@ enum KnownNetworks { activityPub, bluesky, + bookwyrm, calckey, diaspora, drupal, diff --git a/lib/serializers/mastodon/timeline_network_info_mastodon_extensions.dart b/lib/serializers/mastodon/timeline_network_info_mastodon_extensions.dart index 1ffaf45..a0f90dc 100644 --- a/lib/serializers/mastodon/timeline_network_info_mastodon_extensions.dart +++ b/lib/serializers/mastodon/timeline_network_info_mastodon_extensions.dart @@ -3,7 +3,7 @@ import '../../models/timeline_network_info.dart'; extension TimelineNetworkInfoMastodonExtensions on TimelineNetworkInfo { static TimelineNetworkInfo fromJson(Map json) { final String? applicationName = json['application']?['name']; - final String? name = json['friendica']?['network'] ?? applicationName; + final String? name = json['friendica']?['platform'] ?? applicationName; if (name == null) { return TimelineNetworkInfo.empty; } @@ -14,6 +14,7 @@ extension TimelineNetworkInfoMastodonExtensions on TimelineNetworkInfo { 'activitypub' => KnownNetworks.activityPub, 'akkoma' => KnownNetworks.pleroma, 'bluesky' => KnownNetworks.bluesky, + 'bookwyrm' => KnownNetworks.bookwyrm, 'diaspora' => KnownNetworks.diaspora, 'friendica' => KnownNetworks.friendica, 'friendika' => KnownNetworks.friendica, diff --git a/lib/utils/known_network_extensions.dart b/lib/utils/known_network_extensions.dart index 046240a..6160431 100644 --- a/lib/utils/known_network_extensions.dart +++ b/lib/utils/known_network_extensions.dart @@ -4,6 +4,7 @@ extension KnownNetworkExtensions on KnownNetworks { String get labelName => switch (this) { KnownNetworks.activityPub => 'ActivityPub', KnownNetworks.bluesky => 'Bluesky', + KnownNetworks.bookwyrm => 'BookWyrm', KnownNetworks.calckey => 'Calckey', KnownNetworks.diaspora => 'Diaspora', KnownNetworks.drupal => 'Drupal', @@ -32,6 +33,7 @@ extension KnownNetworkExtensions on KnownNetworks { String get forkAwesomeUnicode => switch (this) { KnownNetworks.activityPub => '\uf2f2', KnownNetworks.bluesky => '\uf111', + KnownNetworks.bookwyrm => '\uf02d', KnownNetworks.calckey => '\uf1ec', KnownNetworks.diaspora => '\uf2e5', KnownNetworks.drupal => '\uf1a9', @@ -56,10 +58,41 @@ extension KnownNetworkExtensions on KnownNetworks { KnownNetworks.wordpress => '\uf19a', KnownNetworks.unknown => '\uf059', }; + + String get dSocFontUnicode => switch (this) { + KnownNetworks.activityPub => '\uEA02', + KnownNetworks.bluesky => '\uEA06', + KnownNetworks.bookwyrm => '\uEA07', + KnownNetworks.calckey => '\uEA12', + KnownNetworks.diaspora => '\uEA09', + KnownNetworks.drupal => '\uEA0B', + KnownNetworks.firefish => '\uEA12', + KnownNetworks.friendica => '\uEA1A', + KnownNetworks.funkwhale => '\uEA1B', + KnownNetworks.gnu_social => '\uEA20', + KnownNetworks.hometown => '\uEA25', + KnownNetworks.hubzilla => '\uEA26', + KnownNetworks.kbin => '\uEA29', + KnownNetworks.lemmy => '\uEA2B', + KnownNetworks.mastodon => '\uEA2D', + KnownNetworks.nextcloud => '\uEA35', + KnownNetworks.peertube => '\uEA3E', + KnownNetworks.pixelfed => '\uEA40', + KnownNetworks.pleroma => '\uEA41', + KnownNetworks.plume => '\uEA42', + KnownNetworks.red => '\uEA46', + KnownNetworks.redmatrix => '\uEA46', + KnownNetworks.socialhome => '\uEA4A', + KnownNetworks.threads => '\uEA52', + KnownNetworks.wordpress => '\uEA58', + KnownNetworks.unknown => '\uEA10', + }; } extension TimelineNetworkInfoExtensions on TimelineNetworkInfo { String get labelName => network.labelName; String get forkAwesomeUnicode => network.forkAwesomeUnicode; + + String get dSocFontUnicode => network.dSocFontUnicode; } diff --git a/pubspec.yaml b/pubspec.yaml index ea02fa5..9a57157 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -80,6 +80,9 @@ flutter: - family: ForkAwesome fonts: - asset: fonts/forkawesome-webfont.ttf + - family: DSoc + fonts: + - asset: fonts/DSoci.ttf parts: uet-lms: