majro update

This commit is contained in:
Fabian Freund
2025-02-28 14:30:49 +01:00
parent a8957f6cf8
commit 3c4d479bd9
181 changed files with 7090 additions and 5299 deletions
@@ -0,0 +1,7 @@
class TurndownResults {
final String plain;
final String? markdown;
TurndownResults({required this.plain, required String markdown})
: markdown = (plain != markdown) ? markdown : null;
}
@@ -13,7 +13,7 @@ class GeckoIconService {
IconSize size = IconSize.defaultSize,
bool isPrivate = false,
bool waitOnNetworkLoad = true,
}) async {
}) {
return _api.loadIcon(
IconRequest(
url: url.toString(),
@@ -0,0 +1,25 @@
import 'package:flutter_mozilla_components/src/domain/entities/turndown_result.dart';
import 'package:flutter_mozilla_components/src/pigeons/gecko.g.dart';
final _apiInstance = GeckoTurndownApi();
class GeckoTurndownService {
Future<List<TurndownResults>> turndownHtml(List<String> htmlList) async {
final markdownResult = await _apiInstance.getMarkdown(htmlList);
final results =
markdownResult
.cast()
.map(
(result) => TurndownResults(
// ignore: avoid_dynamic_calls valid
markdown: result['fullContentMarkdown'] as String,
// ignore: avoid_dynamic_calls valid
plain: result['fullContentPlain'] as String,
),
)
.toList();
return results;
}
}
@@ -9,8 +9,8 @@ import 'package:flutter/services.dart';
import 'package:flutter_mozilla_components/src/domain/services/gecko_browser.dart';
class GeckoView extends StatefulWidget {
final FutureOr<void> Function()? preInitializationStep;
final FutureOr<void> Function()? postInitializationStep;
final Future<void> Function()? preInitializationStep;
final Future<void> Function()? postInitializationStep;
const GeckoView({
super.key,
@@ -62,7 +62,7 @@ class _GeckoViewState extends State<GeckoView> {
creationParams: {},
creationParamsCodec: const StandardMessageCodec(),
)
..addOnPlatformViewCreatedListener((value) async {
..addOnPlatformViewCreatedListener((value) {
params.onPlatformViewCreated(value);
SchedulerBinding.instance.addPostFrameCallback((_) async {
@@ -3123,6 +3123,48 @@ class GeckoPrefApi {
}
}
class GeckoTurndownApi {
/// Constructor for [GeckoTurndownApi]. The [binaryMessenger] named argument is
/// available for dependency injection. If it is left null, the default
/// BinaryMessenger will be used which routes to the host platform.
GeckoTurndownApi({BinaryMessenger? binaryMessenger, String messageChannelSuffix = ''})
: pigeonVar_binaryMessenger = binaryMessenger,
pigeonVar_messageChannelSuffix = messageChannelSuffix.isNotEmpty ? '.$messageChannelSuffix' : '';
final BinaryMessenger? pigeonVar_binaryMessenger;
static const MessageCodec<Object?> pigeonChannelCodec = _PigeonCodec();
final String pigeonVar_messageChannelSuffix;
Future<List<Object>> getMarkdown(List<String> htmlList) async {
final String pigeonVar_channelName = 'dev.flutter.pigeon.flutter_mozilla_components.GeckoTurndownApi.getMarkdown$pigeonVar_messageChannelSuffix';
final BasicMessageChannel<Object?> pigeonVar_channel = BasicMessageChannel<Object?>(
pigeonVar_channelName,
pigeonChannelCodec,
binaryMessenger: pigeonVar_binaryMessenger,
);
final Future<Object?> pigeonVar_sendFuture = pigeonVar_channel.send(<Object?>[htmlList]);
final List<Object?>? pigeonVar_replyList =
await pigeonVar_sendFuture as List<Object?>?;
if (pigeonVar_replyList == null) {
throw _createConnectionError(pigeonVar_channelName);
} else if (pigeonVar_replyList.length > 1) {
throw PlatformException(
code: pigeonVar_replyList[0]! as String,
message: pigeonVar_replyList[1] as String?,
details: pigeonVar_replyList[2],
);
} else if (pigeonVar_replyList[0] == null) {
throw PlatformException(
code: 'null-error',
message: 'Host platform returned null value for non-null return value.',
);
} else {
return (pigeonVar_replyList[0] as List<Object?>?)!.cast<Object>();
}
}
}
class GeckoContainerProxyApi {
/// Constructor for [GeckoContainerProxyApi]. The [binaryMessenger] named argument is
/// available for dependency injection. If it is left null, the default