From 8c48d885ca4eb0ea29f2ebd971558e910d6337d6 Mon Sep 17 00:00:00 2001 From: Ellet Date: Sat, 30 Dec 2023 22:23:43 +0300 Subject: [PATCH 1/7] Fix two bugs in the buttons --- CHANGELOG.md | 1 + .../lib/screens/quill/my_quill_toolbar.dart | 7 ++++ .../Flutter/GeneratedPluginRegistrant.swift | 2 + example/pubspec.yaml | 1 + .../select_alignment_configurations.dart | 35 ++++++++++++++++ lib/src/widgets/quill/quill_controller.dart | 6 +-- ..._editor_state_text_input_client_mixin.dart | 40 +++++++++---------- .../alignment/select_alignment_buttons.dart | 34 +++++----------- .../toolbar/buttons/font_family_button.dart | 16 ++------ lib/src/widgets/toolbar/simple_toolbar.dart | 12 +++--- 10 files changed, 90 insertions(+), 64 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c14eef17..2d80f938 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ All notable changes to this project will be documented in this file. * Require minimum version `6.0.0` of `flutter_keyboard_visibility` to fix some build issues with Android Gradle Plugin 8.2.0 * Add on image clicked in `flutter_quill_extensions` callback * Deprecate `globalIconSize` and `globalIconButtonFactor`, use `iconSize` and `iconButtonFactor` instead +* Fix the `QuillToolbarSelectAlignmentButtons` ## 9.1.1 * Require `super_clipboard` minimum version `0.8.1` to fix some bug with Linux build failure diff --git a/example/lib/screens/quill/my_quill_toolbar.dart b/example/lib/screens/quill/my_quill_toolbar.dart index 35686478..06d30cf5 100644 --- a/example/lib/screens/quill/my_quill_toolbar.dart +++ b/example/lib/screens/quill/my_quill_toolbar.dart @@ -5,6 +5,7 @@ import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_quill/extensions.dart' show isAndroid, isIOS, isWeb; import 'package:flutter_quill/flutter_quill.dart'; import 'package:flutter_quill_extensions/flutter_quill_extensions.dart'; +import 'package:google_fonts/google_fonts.dart'; import 'package:image_cropper/image_cropper.dart'; import 'package:path/path.dart' as path; import 'package:path_provider/path_provider.dart' @@ -202,6 +203,12 @@ class MyQuillToolbar extends StatelessWidget { controller: controller, showAlignmentButtons: true, multiRowsDisplay: true, + fontFamilyValues: { + 'Amatic': GoogleFonts.amaticSc().fontFamily!, + 'Annie': GoogleFonts.annieUseYourTelescope().fontFamily!, + 'Formal': GoogleFonts.petitFormalScript().fontFamily!, + 'Roboto': GoogleFonts.roboto().fontFamily! + }, buttonOptions: QuillSimpleToolbarButtonOptions( base: QuillToolbarBaseButtonOptions( afterButtonPressed: focusNode.requestFocus, diff --git a/example/macos/Flutter/GeneratedPluginRegistrant.swift b/example/macos/Flutter/GeneratedPluginRegistrant.swift index 0f3c17dd..f0811ff6 100644 --- a/example/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/example/macos/Flutter/GeneratedPluginRegistrant.swift @@ -8,6 +8,7 @@ import Foundation import desktop_drop import device_info_plus import file_selector_macos +import flutter_inappwebview_macos import gal import irondash_engine_context import path_provider_foundation @@ -22,6 +23,7 @@ func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { DesktopDropPlugin.register(with: registry.registrar(forPlugin: "DesktopDropPlugin")) DeviceInfoPlusMacosPlugin.register(with: registry.registrar(forPlugin: "DeviceInfoPlusMacosPlugin")) FileSelectorPlugin.register(with: registry.registrar(forPlugin: "FileSelectorPlugin")) + InAppWebViewFlutterPlugin.register(with: registry.registrar(forPlugin: "InAppWebViewFlutterPlugin")) GalPlugin.register(with: registry.registrar(forPlugin: "GalPlugin")) IrondashEngineContextPlugin.register(with: registry.registrar(forPlugin: "IrondashEngineContextPlugin")) PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin")) diff --git a/example/pubspec.yaml b/example/pubspec.yaml index 301da2ac..e365e550 100644 --- a/example/pubspec.yaml +++ b/example/pubspec.yaml @@ -47,6 +47,7 @@ dependencies: # For sharing text share_plus: ^7.2.1 printing: ^5.11.1 + google_fonts: ^6.1.0 dependency_overrides: flutter_quill: diff --git a/lib/src/models/config/toolbar/buttons/select_alignment_configurations.dart b/lib/src/models/config/toolbar/buttons/select_alignment_configurations.dart index 65b33395..e5282855 100644 --- a/lib/src/models/config/toolbar/buttons/select_alignment_configurations.dart +++ b/lib/src/models/config/toolbar/buttons/select_alignment_configurations.dart @@ -1,4 +1,7 @@ +// ignore_for_file: public_member_api_docs, sort_constructors_first import 'package:flutter/widgets.dart' show IconData, immutable; + +import '../../../documents/attribute.dart'; import '../base_button_configurations.dart'; class QuillToolbarSelectAlignmentButtonExtraOptions @@ -24,6 +27,11 @@ class QuillToolbarSelectAlignmentButtonOptions /// This will called on every select alignment button super.childBuilder, super.iconTheme, + this.attributes, + this.showLeftAlignment = true, + this.showCenterAlignment = true, + this.showRightAlignment = true, + this.showJustifyAlignment = true, }); /// Default to @@ -37,6 +45,33 @@ class QuillToolbarSelectAlignmentButtonOptions /// By default will use the localized tooltips final QuillSelectAlignmentValues? tooltips; + + final List? attributes; + + final bool showLeftAlignment; + final bool showCenterAlignment; + final bool showRightAlignment; + final bool showJustifyAlignment; + + QuillToolbarSelectAlignmentButtonOptions copyWith({ + QuillSelectAlignmentValues? iconsData, + QuillSelectAlignmentValues? tooltips, + List? attributes, + bool? showLeftAlignment, + bool? showCenterAlignment, + bool? showRightAlignment, + bool? showJustifyAlignment, + }) { + return QuillToolbarSelectAlignmentButtonOptions( + iconsData: iconsData ?? this.iconsData, + tooltips: tooltips ?? this.tooltips, + attributes: attributes ?? this.attributes, + showLeftAlignment: showLeftAlignment ?? this.showLeftAlignment, + showCenterAlignment: showCenterAlignment ?? this.showCenterAlignment, + showRightAlignment: showRightAlignment ?? this.showRightAlignment, + showJustifyAlignment: showJustifyAlignment ?? this.showJustifyAlignment, + ); + } } /// A helper class which hold all the values for the alignments of the diff --git a/lib/src/widgets/quill/quill_controller.dart b/lib/src/widgets/quill/quill_controller.dart index 31908d7d..b2e076fa 100644 --- a/lib/src/widgets/quill/quill_controller.dart +++ b/lib/src/widgets/quill/quill_controller.dart @@ -71,12 +71,12 @@ class QuillController extends ChangeNotifier { // from the current line /// The current font family, null to use the default one - String? _selectedFontFamily; + MapEntry? _selectedFontFamily; /// The current font family, null to use the default one - String? get selectedFontFamily => _selectedFontFamily; + MapEntry? get selectedFontFamily => _selectedFontFamily; - void selectFontFamily(String? newFontFamily) { + void selectFontFamily(MapEntry? newFontFamily) { _selectedFontFamily = newFontFamily; } diff --git a/lib/src/widgets/raw_editor/raw_editor_state_text_input_client_mixin.dart b/lib/src/widgets/raw_editor/raw_editor_state_text_input_client_mixin.dart index cb46bab7..b6e23333 100644 --- a/lib/src/widgets/raw_editor/raw_editor_state_text_input_client_mixin.dart +++ b/lib/src/widgets/raw_editor/raw_editor_state_text_input_client_mixin.dart @@ -208,27 +208,27 @@ mixin RawEditorStateTextInputClientMixin on EditorState value.selection, ); - if (widget.configurations.controller.selectedFontFamily != null) { - widget.configurations.controller.formatSelection( - Attribute.fromKeyValue( - Attribute.font.key, - widget.configurations.controller.selectedFontFamily, - ), - ); - } + // if (widget.configurations.controller.selectedFontFamily != null) { + // widget.configurations.controller.formatSelection( + // Attribute.fromKeyValue( + // Attribute.font.key, + // widget.configurations.controller.selectedFontFamily?.value, + // ), + // ); + // } - if (widget.configurations.controller.selectedFontSize != null) { - widget.configurations.controller.formatSelection( - Attribute.fromKeyValue( - Attribute.size.key, - widget.configurations.controller.selectedFontSize == '0' - ? null - : getFontSize( - widget.configurations.controller.selectedFontSize, - ), - ), - ); - } + // if (widget.configurations.controller.selectedFontSize != null) { + // widget.configurations.controller.formatSelection( + // Attribute.fromKeyValue( + // Attribute.size.key, + // widget.configurations.controller.selectedFontSize == '0' + // ? null + // : getFontSize( + // widget.configurations.controller.selectedFontSize, + // ), + // ), + // ); + // } // if (widget.configurations.controller.keepStyleOnNewLine) { // widget.configurations.controller.selectedStyles.forEach((key, value) { // if (value ?? false) { diff --git a/lib/src/widgets/toolbar/buttons/alignment/select_alignment_buttons.dart b/lib/src/widgets/toolbar/buttons/alignment/select_alignment_buttons.dart index bab35f3e..ff7fca68 100644 --- a/lib/src/widgets/toolbar/buttons/alignment/select_alignment_buttons.dart +++ b/lib/src/widgets/toolbar/buttons/alignment/select_alignment_buttons.dart @@ -4,46 +4,34 @@ import '../../../../models/documents/attribute.dart'; import '../../../quill/quill_controller.dart'; import '../../base_toolbar.dart'; -enum _AlignmentOptions { - left(attribute: Attribute.leftAlignment), - center(attribute: Attribute.centerAlignment), - right(attribute: Attribute.rightAlignment), - justifyMinWidth(attribute: Attribute.justifyAlignment); - - const _AlignmentOptions({required this.attribute}); - - final Attribute attribute; -} - class QuillToolbarSelectAlignmentButtons extends StatelessWidget { const QuillToolbarSelectAlignmentButtons({ required this.controller, this.options = const QuillToolbarSelectAlignmentButtonOptions(), - this.showLeftAlignment, - this.showCenterAlignment, - this.showRightAlignment, - this.showJustifyAlignment, - this.padding, super.key, }); final QuillController controller; final QuillToolbarSelectAlignmentButtonOptions options; - final bool? showLeftAlignment; - final bool? showCenterAlignment; - final bool? showRightAlignment; - final bool? showJustifyAlignment; - final EdgeInsetsGeometry? padding; + List get _attrbuites { + return options.attributes ?? + [ + if (options.showLeftAlignment) Attribute.leftAlignment, + if (options.showCenterAlignment) Attribute.centerAlignment, + if (options.showRightAlignment) Attribute.rightAlignment, + if (options.showJustifyAlignment) Attribute.justifyAlignment, + ]; + } @override Widget build(BuildContext context) { return Row( mainAxisSize: MainAxisSize.min, - children: _AlignmentOptions.values + children: _attrbuites .map((e) => QuillToolbarToggleStyleButton( controller: controller, - attribute: e.attribute, + attribute: e, options: QuillToolbarToggleStyleButtonOptions( iconData: options.iconData, iconSize: options.iconSize, diff --git a/lib/src/widgets/toolbar/buttons/font_family_button.dart b/lib/src/widgets/toolbar/buttons/font_family_button.dart index 854cf7cb..01a2cb47 100644 --- a/lib/src/widgets/toolbar/buttons/font_family_button.dart +++ b/lib/src/widgets/toolbar/buttons/font_family_button.dart @@ -41,17 +41,13 @@ class QuillToolbarFontFamilyButtonState return widget.options; } - // Style get _selectionStyle => controller.getSelectionStyle(); - @override void initState() { super.initState(); _initState(); } - void _initState() { - // controller.addListener(_didChangeEditingValue); - } + void _initState() {} @override void didChangeDependencies() { @@ -59,12 +55,6 @@ class QuillToolbarFontFamilyButtonState _currentValue = _defaultDisplayText; } - // @override - // void dispose() { - // controller.removeListener(_didChangeEditingValue); - // super.dispose(); - // } - String get _defaultDisplayText { return options.initialValue ?? widget.options.defaultDisplayText ?? @@ -218,7 +208,7 @@ class QuillToolbarFontFamilyButtonState controller.selectFontFamily(null); return; } - controller.selectFontFamily(fontFamily.value); + controller.selectFontFamily(fontFamily); }, child: Text( fontFamily.key.toString(), @@ -272,7 +262,7 @@ class QuillToolbarFontFamilyButtonState enabled: hasFinalWidth, wrapper: (child) => Expanded(child: child), child: Text( - widget.controller.selectedFontFamily ?? _currentValue, + widget.controller.selectedFontFamily?.key ?? _currentValue, maxLines: 1, overflow: options.labelOverflow, style: options.style ?? diff --git a/lib/src/widgets/toolbar/simple_toolbar.dart b/lib/src/widgets/toolbar/simple_toolbar.dart index 60b72a3e..ccf0c4e4 100644 --- a/lib/src/widgets/toolbar/simple_toolbar.dart +++ b/lib/src/widgets/toolbar/simple_toolbar.dart @@ -168,11 +168,13 @@ class QuillSimpleToolbar extends StatelessWidget if (configurations.showAlignmentButtons) QuillToolbarSelectAlignmentButtons( controller: globalController, - options: toolbarConfigurations.buttonOptions.selectAlignmentButtons, - showLeftAlignment: configurations.showLeftAlignment, - showCenterAlignment: configurations.showCenterAlignment, - showRightAlignment: configurations.showRightAlignment, - showJustifyAlignment: configurations.showJustifyAlignment, + options: toolbarConfigurations.buttonOptions.selectAlignmentButtons + .copyWith( + showLeftAlignment: configurations.showLeftAlignment, + showCenterAlignment: configurations.showCenterAlignment, + showRightAlignment: configurations.showRightAlignment, + showJustifyAlignment: configurations.showJustifyAlignment, + ), ), if (configurations.showDirection) QuillToolbarToggleStyleButton( From bc10d6cf05f0a10c369657b09e0ec5a2535f678b Mon Sep 17 00:00:00 2001 From: Ellet Date: Sat, 30 Dec 2023 22:25:07 +0300 Subject: [PATCH 2/7] Prepare to release 9.2.0 --- flutter_quill_extensions/CHANGELOG.md | 6 ++++++ flutter_quill_extensions/pubspec.yaml | 2 +- flutter_quill_test/CHANGELOG.md | 6 ++++++ flutter_quill_test/pubspec.yaml | 2 +- .../raw_editor_state_text_input_client_mixin.dart | 2 -- pubspec.yaml | 2 +- quill_html_converter/CHANGELOG.md | 6 ++++++ quill_html_converter/pubspec.yaml | 2 +- quill_pdf_converter/CHANGELOG.md | 6 ++++++ quill_pdf_converter/pubspec.yaml | 2 +- version.dart | 2 +- 11 files changed, 30 insertions(+), 8 deletions(-) diff --git a/flutter_quill_extensions/CHANGELOG.md b/flutter_quill_extensions/CHANGELOG.md index 9433bb38..2d80f938 100644 --- a/flutter_quill_extensions/CHANGELOG.md +++ b/flutter_quill_extensions/CHANGELOG.md @@ -2,6 +2,12 @@ All notable changes to this project will be documented in this file. +## 9.2.0 +* Require minimum version `6.0.0` of `flutter_keyboard_visibility` to fix some build issues with Android Gradle Plugin 8.2.0 +* Add on image clicked in `flutter_quill_extensions` callback +* Deprecate `globalIconSize` and `globalIconButtonFactor`, use `iconSize` and `iconButtonFactor` instead +* Fix the `QuillToolbarSelectAlignmentButtons` + ## 9.1.1 * Require `super_clipboard` minimum version `0.8.1` to fix some bug with Linux build failure diff --git a/flutter_quill_extensions/pubspec.yaml b/flutter_quill_extensions/pubspec.yaml index 6a66979b..23e5f264 100644 --- a/flutter_quill_extensions/pubspec.yaml +++ b/flutter_quill_extensions/pubspec.yaml @@ -1,6 +1,6 @@ name: flutter_quill_extensions description: Embed extensions for flutter_quill including image, video, formula and etc. -version: 9.1.1 +version: 9.2.0 homepage: https://github.com/singerdmx/flutter-quill/tree/master/flutter_quill_extensions/ repository: https://github.com/singerdmx/flutter-quill/tree/master/flutter_quill_extensions/ issue_tracker: https://github.com/singerdmx/flutter-quill/issues/ diff --git a/flutter_quill_test/CHANGELOG.md b/flutter_quill_test/CHANGELOG.md index 9433bb38..2d80f938 100644 --- a/flutter_quill_test/CHANGELOG.md +++ b/flutter_quill_test/CHANGELOG.md @@ -2,6 +2,12 @@ All notable changes to this project will be documented in this file. +## 9.2.0 +* Require minimum version `6.0.0` of `flutter_keyboard_visibility` to fix some build issues with Android Gradle Plugin 8.2.0 +* Add on image clicked in `flutter_quill_extensions` callback +* Deprecate `globalIconSize` and `globalIconButtonFactor`, use `iconSize` and `iconButtonFactor` instead +* Fix the `QuillToolbarSelectAlignmentButtons` + ## 9.1.1 * Require `super_clipboard` minimum version `0.8.1` to fix some bug with Linux build failure diff --git a/flutter_quill_test/pubspec.yaml b/flutter_quill_test/pubspec.yaml index 81077fb2..80465542 100644 --- a/flutter_quill_test/pubspec.yaml +++ b/flutter_quill_test/pubspec.yaml @@ -1,6 +1,6 @@ name: flutter_quill_test description: Test utilities for flutter_quill which includes methods to simplify interacting with the editor in test cases. -version: 9.1.1 +version: 9.2.0 homepage: https://github.com/singerdmx/flutter-quill/tree/master/flutter_quill_test/ repository: https://github.com/singerdmx/flutter-quill/tree/master/flutter_quill_test/ issue_tracker: https://github.com/singerdmx/flutter-quill/issues/ diff --git a/lib/src/widgets/raw_editor/raw_editor_state_text_input_client_mixin.dart b/lib/src/widgets/raw_editor/raw_editor_state_text_input_client_mixin.dart index b6e23333..ceb91645 100644 --- a/lib/src/widgets/raw_editor/raw_editor_state_text_input_client_mixin.dart +++ b/lib/src/widgets/raw_editor/raw_editor_state_text_input_client_mixin.dart @@ -7,10 +7,8 @@ import 'package:flutter/material.dart' show Theme; import 'package:flutter/scheduler.dart' show SchedulerBinding; import 'package:flutter/services.dart'; -import '../../models/documents/attribute.dart'; import '../../models/documents/document.dart'; import '../../utils/delta.dart'; -import '../../utils/font.dart'; import '../editor/editor.dart'; import 'raw_editor.dart'; diff --git a/pubspec.yaml b/pubspec.yaml index 49f3e64c..f2104843 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,6 +1,6 @@ name: flutter_quill description: A rich text editor built for the modern Android, iOS, web and desktop platforms. It is the WYSIWYG editor and a Quill component for Flutter. -version: 9.1.1 +version: 9.2.0 homepage: https://1o24bbs.com/c/bulletjournal/108/ repository: https://github.com/singerdmx/flutter-quill/ issue_tracker: https://github.com/singerdmx/flutter-quill/issues/ diff --git a/quill_html_converter/CHANGELOG.md b/quill_html_converter/CHANGELOG.md index 9433bb38..2d80f938 100644 --- a/quill_html_converter/CHANGELOG.md +++ b/quill_html_converter/CHANGELOG.md @@ -2,6 +2,12 @@ All notable changes to this project will be documented in this file. +## 9.2.0 +* Require minimum version `6.0.0` of `flutter_keyboard_visibility` to fix some build issues with Android Gradle Plugin 8.2.0 +* Add on image clicked in `flutter_quill_extensions` callback +* Deprecate `globalIconSize` and `globalIconButtonFactor`, use `iconSize` and `iconButtonFactor` instead +* Fix the `QuillToolbarSelectAlignmentButtons` + ## 9.1.1 * Require `super_clipboard` minimum version `0.8.1` to fix some bug with Linux build failure diff --git a/quill_html_converter/pubspec.yaml b/quill_html_converter/pubspec.yaml index 8c89009d..22ff0b77 100644 --- a/quill_html_converter/pubspec.yaml +++ b/quill_html_converter/pubspec.yaml @@ -1,6 +1,6 @@ name: quill_html_converter description: A extension for flutter_quill package to add support for dealing with conversion to/from html -version: 9.1.1 +version: 9.2.0 homepage: https://github.com/singerdmx/flutter-quill/tree/master/quill_html_converter/ repository: https://github.com/singerdmx/flutter-quill/tree/master/quill_html_converter/ issue_tracker: https://github.com/singerdmx/flutter-quill/issues/ diff --git a/quill_pdf_converter/CHANGELOG.md b/quill_pdf_converter/CHANGELOG.md index 9433bb38..2d80f938 100644 --- a/quill_pdf_converter/CHANGELOG.md +++ b/quill_pdf_converter/CHANGELOG.md @@ -2,6 +2,12 @@ All notable changes to this project will be documented in this file. +## 9.2.0 +* Require minimum version `6.0.0` of `flutter_keyboard_visibility` to fix some build issues with Android Gradle Plugin 8.2.0 +* Add on image clicked in `flutter_quill_extensions` callback +* Deprecate `globalIconSize` and `globalIconButtonFactor`, use `iconSize` and `iconButtonFactor` instead +* Fix the `QuillToolbarSelectAlignmentButtons` + ## 9.1.1 * Require `super_clipboard` minimum version `0.8.1` to fix some bug with Linux build failure diff --git a/quill_pdf_converter/pubspec.yaml b/quill_pdf_converter/pubspec.yaml index 01dcb664..873b3753 100644 --- a/quill_pdf_converter/pubspec.yaml +++ b/quill_pdf_converter/pubspec.yaml @@ -1,6 +1,6 @@ name: quill_pdf_converter description: A extension for flutter_quill package to add support for dealing with conversion to pdf -version: 9.1.1 +version: 9.2.0 homepage: https://github.com/singerdmx/flutter-quill/tree/master/quill_pdf_converter/ repository: https://github.com/singerdmx/flutter-quill/tree/master/quill_pdf_converter/ issue_tracker: https://github.com/singerdmx/flutter-quill/issues/ diff --git a/version.dart b/version.dart index e377f145..7c5b41b2 100644 --- a/version.dart +++ b/version.dart @@ -1 +1 @@ -const version = '9.1.1'; +const version = '9.2.0'; From 98cf568df8fb1aab174cb6dad976a43e15024131 Mon Sep 17 00:00:00 2001 From: Ellet Date: Sat, 30 Dec 2023 23:11:53 +0300 Subject: [PATCH 3/7] Update example my_quill_toolbar.dart comments --- example/lib/screens/quill/my_quill_toolbar.dart | 4 ++-- example/macos/Podfile.lock | 10 ++++++++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/example/lib/screens/quill/my_quill_toolbar.dart b/example/lib/screens/quill/my_quill_toolbar.dart index 06d30cf5..ddf3e171 100644 --- a/example/lib/screens/quill/my_quill_toolbar.dart +++ b/example/lib/screens/quill/my_quill_toolbar.dart @@ -216,12 +216,12 @@ class MyQuillToolbar extends StatelessWidget { // iconTheme: QuillIconTheme( // iconButtonSelectedData: IconButtonData( // style: IconButton.styleFrom( - // foregroundColor: Colors.amberAccent, + // foregroundColor: Colors.blue, // ), // ), // iconButtonUnselectedData: IconButtonData( // style: IconButton.styleFrom( - // foregroundColor: Colors.amberAccent, + // foregroundColor: Colors.red, // ), // ), // ), diff --git a/example/macos/Podfile.lock b/example/macos/Podfile.lock index e9e77de7..33f5524f 100644 --- a/example/macos/Podfile.lock +++ b/example/macos/Podfile.lock @@ -5,6 +5,9 @@ PODS: - FlutterMacOS - file_selector_macos (0.0.1): - FlutterMacOS + - flutter_inappwebview_macos (0.0.1): + - FlutterMacOS + - OrderedSet (~> 5.0) - FlutterMacOS (1.0.0) - FMDB (2.7.5): - FMDB/standard (= 2.7.5) @@ -14,6 +17,7 @@ PODS: - FlutterMacOS - irondash_engine_context (0.0.1): - FlutterMacOS + - OrderedSet (5.0.0) - path_provider_foundation (0.0.1): - Flutter - FlutterMacOS @@ -36,6 +40,7 @@ DEPENDENCIES: - desktop_drop (from `Flutter/ephemeral/.symlinks/plugins/desktop_drop/macos`) - device_info_plus (from `Flutter/ephemeral/.symlinks/plugins/device_info_plus/macos`) - file_selector_macos (from `Flutter/ephemeral/.symlinks/plugins/file_selector_macos/macos`) + - flutter_inappwebview_macos (from `Flutter/ephemeral/.symlinks/plugins/flutter_inappwebview_macos/macos`) - FlutterMacOS (from `Flutter/ephemeral`) - gal (from `Flutter/ephemeral/.symlinks/plugins/gal/darwin`) - irondash_engine_context (from `Flutter/ephemeral/.symlinks/plugins/irondash_engine_context/macos`) @@ -50,6 +55,7 @@ DEPENDENCIES: SPEC REPOS: trunk: - FMDB + - OrderedSet EXTERNAL SOURCES: desktop_drop: @@ -58,6 +64,8 @@ EXTERNAL SOURCES: :path: Flutter/ephemeral/.symlinks/plugins/device_info_plus/macos file_selector_macos: :path: Flutter/ephemeral/.symlinks/plugins/file_selector_macos/macos + flutter_inappwebview_macos: + :path: Flutter/ephemeral/.symlinks/plugins/flutter_inappwebview_macos/macos FlutterMacOS: :path: Flutter/ephemeral gal: @@ -83,10 +91,12 @@ SPEC CHECKSUMS: desktop_drop: 69eeff437544aa619c8db7f4481b3a65f7696898 device_info_plus: 5401765fde0b8d062a2f8eb65510fb17e77cf07f file_selector_macos: 468fb6b81fac7c0e88d71317f3eec34c3b008ff9 + flutter_inappwebview_macos: 9600c9df9fdb346aaa8933812009f8d94304203d FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24 FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a gal: 61e868295d28fe67ffa297fae6dacebf56fd53e1 irondash_engine_context: da62996ee25616d2f01bbeb85dc115d813359478 + OrderedSet: aaeb196f7fef5a9edf55d89760da9176ad40b93c path_provider_foundation: 29f094ae23ebbca9d3d0cec13889cd9060c0e943 printing: 1dd6a1fce2209ec240698e2439a4adbb9b427637 share_plus: 76dd39142738f7a68dd57b05093b5e8193f220f7 From 0f6f8be0f56c6d23a7bd71e5b419506cef761e58 Mon Sep 17 00:00:00 2001 From: Ellet Date: Sun, 31 Dec 2023 07:35:03 +0300 Subject: [PATCH 4/7] Fix bug with font size button --- CHANGELOG.md | 3 +++ example/lib/screens/quill/my_quill_toolbar.dart | 13 +++++++++++++ lib/src/widgets/quill/quill_controller.dart | 6 +++--- .../widgets/toolbar/buttons/font_size_button.dart | 4 ++-- 4 files changed, 21 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2d80f938..6c7b543a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,9 @@ All notable changes to this project will be documented in this file. +## 9.2.1 +* Fix [bug](https://github.com/singerdmx/flutter-quill/issues/1119#issuecomment-1872605246) with font size button + ## 9.2.0 * Require minimum version `6.0.0` of `flutter_keyboard_visibility` to fix some build issues with Android Gradle Plugin 8.2.0 * Add on image clicked in `flutter_quill_extensions` callback diff --git a/example/lib/screens/quill/my_quill_toolbar.dart b/example/lib/screens/quill/my_quill_toolbar.dart index ddf3e171..dde676d2 100644 --- a/example/lib/screens/quill/my_quill_toolbar.dart +++ b/example/lib/screens/quill/my_quill_toolbar.dart @@ -209,6 +209,19 @@ class MyQuillToolbar extends StatelessWidget { 'Formal': GoogleFonts.petitFormalScript().fontFamily!, 'Roboto': GoogleFonts.roboto().fontFamily! }, + fontSizesValues: const { + '14': '14.0', + '16': '16.0', + '18': '18.0', + '20': '20.0', + '22': '22.0', + '24': '24.0', + '26': '26.0', + '28': '28.0', + '30': '30.0', + '35': '35.0', + '40': '40.0' + }, buttonOptions: QuillSimpleToolbarButtonOptions( base: QuillToolbarBaseButtonOptions( afterButtonPressed: focusNode.requestFocus, diff --git a/lib/src/widgets/quill/quill_controller.dart b/lib/src/widgets/quill/quill_controller.dart index b2e076fa..7ea7b9fc 100644 --- a/lib/src/widgets/quill/quill_controller.dart +++ b/lib/src/widgets/quill/quill_controller.dart @@ -81,12 +81,12 @@ class QuillController extends ChangeNotifier { } /// The current font size, null to use the default one - String? _selectedFontSize; + MapEntry? _selectedFontSize; /// The current font size, null to use the default one - String? get selectedFontSize => _selectedFontSize; + MapEntry? get selectedFontSize => _selectedFontSize; - void selectFontSize(String? newFontSize) { + void selectFontSize(MapEntry? newFontSize) { _selectedFontSize = newFontSize; } diff --git a/lib/src/widgets/toolbar/buttons/font_size_button.dart b/lib/src/widgets/toolbar/buttons/font_size_button.dart index 2ed3cb12..1323c1d2 100644 --- a/lib/src/widgets/toolbar/buttons/font_size_button.dart +++ b/lib/src/widgets/toolbar/buttons/font_size_button.dart @@ -181,7 +181,7 @@ class QuillToolbarFontSizeButtonState controller.selectFontSize(null); return; } - controller.selectFontSize(fontSize.value); + controller.selectFontSize(fontSize); }, child: Text( fontSize.key.toString(), @@ -231,7 +231,7 @@ class QuillToolbarFontSizeButtonState enabled: hasFinalWidth, wrapper: (child) => Expanded(child: child), child: Text( - getLabel(widget.controller.selectedFontSize) ?? + getLabel(widget.controller.selectedFontSize?.key) ?? getLabel(_currentValue) ?? '', overflow: options.labelOverflow, From f2194657429b7bc89c477b56aca3919b0b3a44e1 Mon Sep 17 00:00:00 2001 From: Rusu Dinu Date: Sun, 31 Dec 2023 12:07:08 +0200 Subject: [PATCH 5/7] added ro RO translations (#1658) * added ro RO translations (cherry picked from commit 913a7e8d673d64da72dbe2cbcb4a9771f7f21132) * added ro RO translations --- doc/translation.md | 6 +- .../l10n/generated/quill_localizations.dart | 14 + .../generated/quill_localizations_ro.dart | 545 ++++++++++++++++++ lib/src/l10n/quill_ro.arb | 90 +++ lib/src/l10n/quill_ro_RO.arb | 90 +++ 5 files changed, 742 insertions(+), 3 deletions(-) create mode 100644 lib/src/l10n/generated/quill_localizations_ro.dart create mode 100644 lib/src/l10n/quill_ro.arb create mode 100644 lib/src/l10n/quill_ro_RO.arb diff --git a/doc/translation.md b/doc/translation.md index 64623831..6ffbcacf 100644 --- a/doc/translation.md +++ b/doc/translation.md @@ -23,13 +23,13 @@ Expanded( ) ``` -Currently, translations are available for these 33 locales: +Currently, translations are available for these 34 locales: * `Locale('en')`, `Locale('ar')`, `Locale('bn')`, `Locale('bs')` * `Locale('cs')`, `Locale('de')`, `Locale('da')`, `Locale('fr')` * `Locale('he')`, `Locale('zh', 'CN')`, `Locale('zh', 'HK')` * `Locale('ko')`, `Locale('ku')`, `Locale('ku', 'CKB')` -* `Locale('ru')`, `Locale('es')`, `Locale('tk')`, `Locale('tr')` +* `Locale('ro', 'RO')`, `Locale('ru')`, `Locale('es')`, `Locale('tk')`, `Locale('tr')` * `Locale('uk')`, `Locale('ur')`, `Locale('pt')`, `Locale('pl')` * `Locale('vi')`, `Locale('id')`, `Locale('it')`, `Locale('ms')` * `Locale('nl')`, `Locale('no')`, `Locale('fa')`, `Locale('hi')` @@ -61,4 +61,4 @@ or: This will generate the new dart files from the arb files in order to take effect, otherwise, you won't notice a difference - Then open a pull request so everyone can benefit from your translations! +Then open a pull request so everyone can benefit from your translations! diff --git a/lib/src/l10n/generated/quill_localizations.dart b/lib/src/l10n/generated/quill_localizations.dart index b2576640..af14409a 100644 --- a/lib/src/l10n/generated/quill_localizations.dart +++ b/lib/src/l10n/generated/quill_localizations.dart @@ -27,6 +27,7 @@ import 'quill_localizations_nl.dart'; import 'quill_localizations_no.dart'; import 'quill_localizations_pl.dart'; import 'quill_localizations_pt.dart'; +import 'quill_localizations_ro.dart'; import 'quill_localizations_ru.dart'; import 'quill_localizations_sr.dart'; import 'quill_localizations_sw.dart'; @@ -147,6 +148,8 @@ abstract class FlutterQuillLocalizations { Locale('pl'), Locale('pt'), Locale('pt', 'BR'), + Locale('ro'), + Locale('ro', 'RO'), Locale('ru'), Locale('sr'), Locale('sw'), @@ -717,6 +720,7 @@ class _FlutterQuillLocalizationsDelegate 'no', 'pl', 'pt', + 'ro', 'ru', 'sr', 'sw', @@ -759,6 +763,14 @@ FlutterQuillLocalizations lookupFlutterQuillLocalizations(Locale locale) { } break; } + case 'ro': + { + switch (locale.countryCode) { + case 'RO': + return FlutterQuillLocalizationsRoRo(); + } + break; + } case 'zh': { switch (locale.countryCode) { @@ -817,6 +829,8 @@ FlutterQuillLocalizations lookupFlutterQuillLocalizations(Locale locale) { return FlutterQuillLocalizationsPl(); case 'pt': return FlutterQuillLocalizationsPt(); + case 'ro': + return FlutterQuillLocalizationsRo(); case 'ru': return FlutterQuillLocalizationsRu(); case 'sr': diff --git a/lib/src/l10n/generated/quill_localizations_ro.dart b/lib/src/l10n/generated/quill_localizations_ro.dart new file mode 100644 index 00000000..b8687a0f --- /dev/null +++ b/lib/src/l10n/generated/quill_localizations_ro.dart @@ -0,0 +1,545 @@ +import 'quill_localizations.dart'; + +/// The translations for Romanian Moldavian Moldovan (`ro`). +class FlutterQuillLocalizationsRo extends FlutterQuillLocalizations { + FlutterQuillLocalizationsRo([super.locale = 'ro']); + + @override + String get pasteLink => 'Lipește un link'; + + @override + String get ok => 'Ok'; + + @override + String get selectColor => 'Selectează culoarea'; + + @override + String get gallery => 'Galerie'; + + @override + String get link => 'Link'; + + @override + String get open => 'Deschide'; + + @override + String get copy => 'Copiază'; + + @override + String get remove => 'Elimină'; + + @override + String get save => 'Salvează'; + + @override + String get zoom => 'Zoom'; + + @override + String get saved => 'Salvat'; + + @override + String get text => 'Text'; + + @override + String get resize => 'Redimensionează'; + + @override + String get width => 'Lățime'; + + @override + String get height => 'Înălțime'; + + @override + String get size => 'Mărime'; + + @override + String get small => 'Mic'; + + @override + String get large => 'Mare'; + + @override + String get huge => 'Enorm'; + + @override + String get clear => 'Șterge'; + + @override + String get font => 'Font'; + + @override + String get search => 'Caută'; + + @override + String get camera => 'Cameră'; + + @override + String get video => 'Video'; + + @override + String get undo => 'Anulează'; + + @override + String get redo => 'Refă'; + + @override + String get fontFamily => 'Familie de fonturi'; + + @override + String get fontSize => 'Dimensiune font'; + + @override + String get bold => 'Îngroșat'; + + @override + String get subscript => 'Indice inferior'; + + @override + String get superscript => 'Indice superior'; + + @override + String get italic => 'Cursiv'; + + @override + String get underline => 'Subliniat'; + + @override + String get strikeThrough => 'Tăiat'; + + @override + String get inlineCode => 'Cod în linie'; + + @override + String get fontColor => 'Culoare font'; + + @override + String get backgroundColor => 'Culoare fundal'; + + @override + String get clearFormat => 'Șterge formatul'; + + @override + String get alignLeft => 'Aliniază la stânga'; + + @override + String get alignCenter => 'Aliniază în centru'; + + @override + String get alignRight => 'Aliniază la dreapta'; + + @override + String get justifyWinWidth => 'Justifică lățimea ferestrei'; + + @override + String get textDirection => 'Direcție text'; + + @override + String get headerStyle => 'Stil antet'; + + @override + String get normal => 'Normal'; + + @override + String get heading1 => 'Titlu 1'; + + @override + String get heading2 => 'Titlu 2'; + + @override + String get heading3 => 'Titlu 3'; + + @override + String get heading4 => 'Titlu 4'; + + @override + String get heading5 => 'Titlu 5'; + + @override + String get heading6 => 'Titlu 6'; + + @override + String get numberedList => 'Listă numerotată'; + + @override + String get bulletList => 'Listă cu buline'; + + @override + String get checkedList => 'Listă cu bifă'; + + @override + String get codeBlock => 'Bloc de cod'; + + @override + String get quote => 'Citat'; + + @override + String get increaseIndent => 'Crește indentarea'; + + @override + String get decreaseIndent => 'Scade indentarea'; + + @override + String get insertURL => 'Introdu URL-ul'; + + @override + String get visitLink => 'Vizitează link-ul'; + + @override + String get enterLink => 'Introdu link-ul'; + + @override + String get enterMedia => 'Introdu media'; + + @override + String get edit => 'Editează'; + + @override + String get apply => 'Aplică'; + + @override + String get hex => 'Hex'; + + @override + String get material => 'Material'; + + @override + String get color => 'Culoare'; + + @override + String get findText => 'Găsește text'; + + @override + String get moveToPreviousOccurrence => 'Mutați la apariția anterioară'; + + @override + String get moveToNextOccurrence => 'Mutați la apariția următoare'; + + @override + String get savedUsingTheNetwork => 'Salvat cu ajutorul rețelei'; + + @override + String get savedUsingLocalStorage => 'Salvat în stocarea locală'; + + @override + String get errorWhileSavingImage => 'Eroare la salvarea imaginii'; + + @override + String get pleaseEnterTextForYourLink => + "Vă rugăm să introduceți un text pentru link-ul dvs. (de exemplu, 'Aflați mai multe')"; + + @override + String get pleaseEnterTheLinkURL => + "Vă rugăm să introduceți URL-ul link-ului (de exemplu, 'https://example.com')"; + + @override + String get pleaseEnterAValidImageURL => + 'Vă rugăm să introduceți un URL de imagine valid'; + + @override + String get pleaseEnterAValidVideoURL => + 'Vă rugăm să introduceți un URL de video valid'; + + @override + String get photo => 'Fotografie'; + + @override + String get image => 'Imagine'; + + @override + String get caseSensitivityAndWholeWordSearch => + 'Sensibilitate la majuscule și căutare cuvânt întreg'; + + @override + String get insertImage => 'Introdu imaginea'; + + @override + String get pickAPhotoFromYourGallery => 'Alege o fotografie din galeria ta'; + + @override + String get takeAPhotoUsingYourCamera => 'Fă o fotografie folosind camera ta'; + + @override + String get pasteAPhotoUsingALink => 'Lipește o fotografie folosind un link'; + + @override + String get pickAVideoFromYourGallery => 'Alege un video din galeria ta'; + + @override + String get recordAVideoUsingYourCamera => + 'Înregistrează un video folosind camera ta'; + + @override + String get pasteAVideoUsingALink => 'Lipește un video folosind un link'; +} + +/// The translations for Romanian Moldavian Moldovan, as used in Romania (`ro_RO`). +class FlutterQuillLocalizationsRoRo extends FlutterQuillLocalizationsRo { + FlutterQuillLocalizationsRoRo() : super('ro_RO'); + + @override + String get pasteLink => 'Lipește un link'; + + @override + String get ok => 'Ok'; + + @override + String get selectColor => 'Selectează culoarea'; + + @override + String get gallery => 'Galerie'; + + @override + String get link => 'Link'; + + @override + String get open => 'Deschide'; + + @override + String get copy => 'Copiază'; + + @override + String get remove => 'Elimină'; + + @override + String get save => 'Salvează'; + + @override + String get zoom => 'Zoom'; + + @override + String get saved => 'Salvat'; + + @override + String get text => 'Text'; + + @override + String get resize => 'Redimensionează'; + + @override + String get width => 'Lățime'; + + @override + String get height => 'Înălțime'; + + @override + String get size => 'Mărime'; + + @override + String get small => 'Mic'; + + @override + String get large => 'Mare'; + + @override + String get huge => 'Enorm'; + + @override + String get clear => 'Șterge'; + + @override + String get font => 'Font'; + + @override + String get search => 'Caută'; + + @override + String get camera => 'Cameră'; + + @override + String get video => 'Video'; + + @override + String get undo => 'Anulează'; + + @override + String get redo => 'Refă'; + + @override + String get fontFamily => 'Familie de fonturi'; + + @override + String get fontSize => 'Dimensiune font'; + + @override + String get bold => 'Îngroșat'; + + @override + String get subscript => 'Indice inferior'; + + @override + String get superscript => 'Indice superior'; + + @override + String get italic => 'Cursiv'; + + @override + String get underline => 'Subliniat'; + + @override + String get strikeThrough => 'Tăiat'; + + @override + String get inlineCode => 'Cod în linie'; + + @override + String get fontColor => 'Culoare font'; + + @override + String get backgroundColor => 'Culoare fundal'; + + @override + String get clearFormat => 'Șterge formatul'; + + @override + String get alignLeft => 'Aliniază la stânga'; + + @override + String get alignCenter => 'Aliniază în centru'; + + @override + String get alignRight => 'Aliniază la dreapta'; + + @override + String get justifyWinWidth => 'Justifică lățimea ferestrei'; + + @override + String get textDirection => 'Direcție text'; + + @override + String get headerStyle => 'Stil antet'; + + @override + String get normal => 'Normal'; + + @override + String get heading1 => 'Titlu 1'; + + @override + String get heading2 => 'Titlu 2'; + + @override + String get heading3 => 'Titlu 3'; + + @override + String get heading4 => 'Titlu 4'; + + @override + String get heading5 => 'Titlu 5'; + + @override + String get heading6 => 'Titlu 6'; + + @override + String get numberedList => 'Listă numerotată'; + + @override + String get bulletList => 'Listă cu buline'; + + @override + String get checkedList => 'Listă cu bifă'; + + @override + String get codeBlock => 'Bloc de cod'; + + @override + String get quote => 'Citat'; + + @override + String get increaseIndent => 'Crește indentarea'; + + @override + String get decreaseIndent => 'Scade indentarea'; + + @override + String get insertURL => 'Introdu URL-ul'; + + @override + String get visitLink => 'Vizitează link-ul'; + + @override + String get enterLink => 'Introdu link-ul'; + + @override + String get enterMedia => 'Introdu media'; + + @override + String get edit => 'Editează'; + + @override + String get apply => 'Aplică'; + + @override + String get hex => 'Hex'; + + @override + String get material => 'Material'; + + @override + String get color => 'Culoare'; + + @override + String get findText => 'Găsește text'; + + @override + String get moveToPreviousOccurrence => 'Mutați la apariția anterioară'; + + @override + String get moveToNextOccurrence => 'Mutați la apariția următoare'; + + @override + String get savedUsingTheNetwork => 'Salvat cu ajutorul rețelei'; + + @override + String get savedUsingLocalStorage => 'Salvat în stocarea locală'; + + @override + String get errorWhileSavingImage => 'Eroare la salvarea imaginii'; + + @override + String get pleaseEnterTextForYourLink => + "Vă rugăm să introduceți un text pentru link-ul dvs. (de exemplu, 'Aflați mai multe')"; + + @override + String get pleaseEnterTheLinkURL => + "Vă rugăm să introduceți URL-ul link-ului (de exemplu, 'https://example.com')"; + + @override + String get pleaseEnterAValidImageURL => + 'Vă rugăm să introduceți un URL de imagine valid'; + + @override + String get pleaseEnterAValidVideoURL => + 'Vă rugăm să introduceți un URL de video valid'; + + @override + String get photo => 'Fotografie'; + + @override + String get image => 'Imagine'; + + @override + String get caseSensitivityAndWholeWordSearch => + 'Sensibilitate la majuscule și căutare cuvânt întreg'; + + @override + String get insertImage => 'Introdu imaginea'; + + @override + String get pickAPhotoFromYourGallery => 'Alege o fotografie din galeria ta'; + + @override + String get takeAPhotoUsingYourCamera => 'Fă o fotografie folosind camera ta'; + + @override + String get pasteAPhotoUsingALink => 'Lipește o fotografie folosind un link'; + + @override + String get pickAVideoFromYourGallery => 'Alege un video din galeria ta'; + + @override + String get recordAVideoUsingYourCamera => + 'Înregistrează un video folosind camera ta'; + + @override + String get pasteAVideoUsingALink => 'Lipește un video folosind un link'; +} diff --git a/lib/src/l10n/quill_ro.arb b/lib/src/l10n/quill_ro.arb new file mode 100644 index 00000000..2b6bc999 --- /dev/null +++ b/lib/src/l10n/quill_ro.arb @@ -0,0 +1,90 @@ +{ + "@@locale": "ro", + "pasteLink": "Lipește un link", + "ok": "Ok", + "selectColor": "Selectează culoarea", + "gallery": "Galerie", + "link": "Link", + "open": "Deschide", + "copy": "Copiază", + "remove": "Elimină", + "save": "Salvează", + "zoom": "Zoom", + "saved": "Salvat", + "text": "Text", + "resize": "Redimensionează", + "width": "Lățime", + "height": "Înălțime", + "size": "Mărime", + "small": "Mic", + "large": "Mare", + "huge": "Enorm", + "clear": "Șterge", + "font": "Font", + "search": "Caută", + "camera": "Cameră", + "video": "Video", + "undo": "Anulează", + "redo": "Refă", + "fontFamily": "Familie de fonturi", + "fontSize": "Dimensiune font", + "bold": "Îngroșat", + "subscript": "Indice inferior", + "superscript": "Indice superior", + "italic": "Cursiv", + "underline": "Subliniat", + "strikeThrough": "Tăiat", + "inlineCode": "Cod în linie", + "fontColor": "Culoare font", + "backgroundColor": "Culoare fundal", + "clearFormat": "Șterge formatul", + "alignLeft": "Aliniază la stânga", + "alignCenter": "Aliniază în centru", + "alignRight": "Aliniază la dreapta", + "justifyWinWidth": "Justifică lățimea ferestrei", + "textDirection": "Direcție text", + "headerStyle": "Stil antet", + "normal": "Normal", + "heading1": "Titlu 1", + "heading2": "Titlu 2", + "heading3": "Titlu 3", + "heading4": "Titlu 4", + "heading5": "Titlu 5", + "heading6": "Titlu 6", + "numberedList": "Listă numerotată", + "bulletList": "Listă cu buline", + "checkedList": "Listă cu bifă", + "codeBlock": "Bloc de cod", + "quote": "Citat", + "increaseIndent": "Crește indentarea", + "decreaseIndent": "Scade indentarea", + "insertURL": "Introdu URL-ul", + "visitLink": "Vizitează link-ul", + "enterLink": "Introdu link-ul", + "enterMedia": "Introdu media", + "edit": "Editează", + "apply": "Aplică", + "hex": "Hex", + "material": "Material", + "color": "Culoare", + "findText": "Găsește text", + "moveToPreviousOccurrence": "Mutați la apariția anterioară", + "moveToNextOccurrence": "Mutați la apariția următoare", + "savedUsingTheNetwork": "Salvat cu ajutorul rețelei", + "savedUsingLocalStorage": "Salvat în stocarea locală", + "errorWhileSavingImage": "Eroare la salvarea imaginii", + "pleaseEnterTextForYourLink": "Vă rugăm să introduceți un text pentru link-ul dvs. (de exemplu, 'Aflați mai multe')", + "pleaseEnterTheLinkURL": "Vă rugăm să introduceți URL-ul link-ului (de exemplu, 'https://example.com')", + "pleaseEnterAValidImageURL": "Vă rugăm să introduceți un URL de imagine valid", + "pleaseEnterAValidVideoURL": "Vă rugăm să introduceți un URL de video valid", + "photo": "Fotografie", + "image": "Imagine", + "caseSensitivityAndWholeWordSearch": "Sensibilitate la majuscule și căutare cuvânt întreg", + "insertImage": "Introdu imaginea", + "pickAPhotoFromYourGallery": "Alege o fotografie din galeria ta", + "takeAPhotoUsingYourCamera": "Fă o fotografie folosind camera ta", + "pasteAPhotoUsingALink": "Lipește o fotografie folosind un link", + "pickAVideoFromYourGallery": "Alege un video din galeria ta", + "recordAVideoUsingYourCamera": "Înregistrează un video folosind camera ta", + "pasteAVideoUsingALink": "Lipește un video folosind un link" +} diff --git a/lib/src/l10n/quill_ro_RO.arb b/lib/src/l10n/quill_ro_RO.arb new file mode 100644 index 00000000..25c487d0 --- /dev/null +++ b/lib/src/l10n/quill_ro_RO.arb @@ -0,0 +1,90 @@ +{ + "@@locale": "ro_RO", + "pasteLink": "Lipește un link", + "ok": "Ok", + "selectColor": "Selectează culoarea", + "gallery": "Galerie", + "link": "Link", + "open": "Deschide", + "copy": "Copiază", + "remove": "Elimină", + "save": "Salvează", + "zoom": "Zoom", + "saved": "Salvat", + "text": "Text", + "resize": "Redimensionează", + "width": "Lățime", + "height": "Înălțime", + "size": "Mărime", + "small": "Mic", + "large": "Mare", + "huge": "Enorm", + "clear": "Șterge", + "font": "Font", + "search": "Caută", + "camera": "Cameră", + "video": "Video", + "undo": "Anulează", + "redo": "Refă", + "fontFamily": "Familie de fonturi", + "fontSize": "Dimensiune font", + "bold": "Îngroșat", + "subscript": "Indice inferior", + "superscript": "Indice superior", + "italic": "Cursiv", + "underline": "Subliniat", + "strikeThrough": "Tăiat", + "inlineCode": "Cod în linie", + "fontColor": "Culoare font", + "backgroundColor": "Culoare fundal", + "clearFormat": "Șterge formatul", + "alignLeft": "Aliniază la stânga", + "alignCenter": "Aliniază în centru", + "alignRight": "Aliniază la dreapta", + "justifyWinWidth": "Justifică lățimea ferestrei", + "textDirection": "Direcție text", + "headerStyle": "Stil antet", + "normal": "Normal", + "heading1": "Titlu 1", + "heading2": "Titlu 2", + "heading3": "Titlu 3", + "heading4": "Titlu 4", + "heading5": "Titlu 5", + "heading6": "Titlu 6", + "numberedList": "Listă numerotată", + "bulletList": "Listă cu buline", + "checkedList": "Listă cu bifă", + "codeBlock": "Bloc de cod", + "quote": "Citat", + "increaseIndent": "Crește indentarea", + "decreaseIndent": "Scade indentarea", + "insertURL": "Introdu URL-ul", + "visitLink": "Vizitează link-ul", + "enterLink": "Introdu link-ul", + "enterMedia": "Introdu media", + "edit": "Editează", + "apply": "Aplică", + "hex": "Hex", + "material": "Material", + "color": "Culoare", + "findText": "Găsește text", + "moveToPreviousOccurrence": "Mutați la apariția anterioară", + "moveToNextOccurrence": "Mutați la apariția următoare", + "savedUsingTheNetwork": "Salvat cu ajutorul rețelei", + "savedUsingLocalStorage": "Salvat în stocarea locală", + "errorWhileSavingImage": "Eroare la salvarea imaginii", + "pleaseEnterTextForYourLink": "Vă rugăm să introduceți un text pentru link-ul dvs. (de exemplu, 'Aflați mai multe')", + "pleaseEnterTheLinkURL": "Vă rugăm să introduceți URL-ul link-ului (de exemplu, 'https://example.com')", + "pleaseEnterAValidImageURL": "Vă rugăm să introduceți un URL de imagine valid", + "pleaseEnterAValidVideoURL": "Vă rugăm să introduceți un URL de video valid", + "photo": "Fotografie", + "image": "Imagine", + "caseSensitivityAndWholeWordSearch": "Sensibilitate la majuscule și căutare cuvânt întreg", + "insertImage": "Introdu imaginea", + "pickAPhotoFromYourGallery": "Alege o fotografie din galeria ta", + "takeAPhotoUsingYourCamera": "Fă o fotografie folosind camera ta", + "pasteAPhotoUsingALink": "Lipește o fotografie folosind un link", + "pickAVideoFromYourGallery": "Alege un video din galeria ta", + "recordAVideoUsingYourCamera": "Înregistrează un video folosind camera ta", + "pasteAVideoUsingALink": "Lipește un video folosind un link" +} From 8afe147678170159aec1deae88fa8e15fe9ef7cc Mon Sep 17 00:00:00 2001 From: Cierra_Runis <2864283875@qq.com> Date: Sun, 31 Dec 2023 18:10:52 +0800 Subject: [PATCH 6/7] =?UTF-8?q?=F0=9F=93=96Update=20zh,=20zh=5FCN=20transl?= =?UTF-8?q?ations=20(#1659)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- l10n.yaml | 2 +- .../generated/quill_localizations_zh.dart | 129 ++++++++++++------ lib/src/l10n/quill_en.arb | 2 +- lib/src/l10n/quill_zh.arb | 71 ++++++---- lib/src/l10n/quill_zh_CN.arb | 34 +++-- lib/src/l10n/untranslated.json | 32 ----- pubspec.yaml | 30 ++-- 7 files changed, 166 insertions(+), 134 deletions(-) diff --git a/l10n.yaml b/l10n.yaml index 15fabf56..19167d04 100644 --- a/l10n.yaml +++ b/l10n.yaml @@ -7,4 +7,4 @@ synthetic-package: false format: true untranslated-messages-file: lib/src/l10n/untranslated.json nullable-getter: true -suppress-warnings: false \ No newline at end of file +suppress-warnings: false diff --git a/lib/src/l10n/generated/quill_localizations_zh.dart b/lib/src/l10n/generated/quill_localizations_zh.dart index 041931d6..975075c3 100644 --- a/lib/src/l10n/generated/quill_localizations_zh.dart +++ b/lib/src/l10n/generated/quill_localizations_zh.dart @@ -8,7 +8,7 @@ class FlutterQuillLocalizationsZh extends FlutterQuillLocalizations { String get pasteLink => '粘贴链接'; @override - String get ok => '确定'; + String get ok => '确认'; @override String get selectColor => '选择颜色'; @@ -38,7 +38,7 @@ class FlutterQuillLocalizationsZh extends FlutterQuillLocalizations { String get saved => '已保存'; @override - String get text => '文本'; + String get text => '文字'; @override String get resize => '调整大小'; @@ -50,16 +50,16 @@ class FlutterQuillLocalizationsZh extends FlutterQuillLocalizations { String get height => '高度'; @override - String get size => '大小'; + String get size => '文字大小'; @override - String get small => '小'; + String get small => '小字号'; @override - String get large => '大'; + String get large => '大字号'; @override - String get huge => '巨大'; + String get huge => '超大字号'; @override String get clear => '清除'; @@ -71,10 +71,10 @@ class FlutterQuillLocalizationsZh extends FlutterQuillLocalizations { String get search => '搜索'; @override - String get camera => '相机'; + String get camera => '拍照'; @override - String get video => '视频'; + String get video => '录像'; @override String get undo => '撤销'; @@ -83,13 +83,13 @@ class FlutterQuillLocalizationsZh extends FlutterQuillLocalizations { String get redo => '重做'; @override - String get fontFamily => '字体族'; + String get fontFamily => '字体'; @override String get fontSize => '字号'; @override - String get bold => '加粗'; + String get bold => '粗体'; @override String get subscript => '下标'; @@ -107,7 +107,7 @@ class FlutterQuillLocalizationsZh extends FlutterQuillLocalizations { String get strikeThrough => '删除线'; @override - String get inlineCode => '行内代码'; + String get inlineCode => '内联代码'; @override String get fontColor => '字体颜色'; @@ -122,7 +122,7 @@ class FlutterQuillLocalizationsZh extends FlutterQuillLocalizations { String get alignLeft => '左对齐'; @override - String get alignCenter => '居中'; + String get alignCenter => '居中对齐'; @override String get alignRight => '右对齐'; @@ -137,40 +137,40 @@ class FlutterQuillLocalizationsZh extends FlutterQuillLocalizations { String get headerStyle => '标题样式'; @override - String get normal => 'Normal'; + String get normal => '正文'; @override - String get heading1 => 'Heading 1'; + String get heading1 => '一级标题'; @override - String get heading2 => 'Heading 2'; + String get heading2 => '二级标题'; @override - String get heading3 => 'Heading 3'; + String get heading3 => '三级标题'; @override - String get heading4 => 'Heading 4'; + String get heading4 => '四级标题'; @override - String get heading5 => 'Heading 5'; + String get heading5 => '五级标题'; @override - String get heading6 => 'Heading 6'; + String get heading6 => '六级标题'; @override - String get numberedList => '编号列表'; + String get numberedList => '有序列表'; @override - String get bulletList => '项目符号列表'; + String get bulletList => '无序列表'; @override - String get checkedList => '选中列表'; + String get checkedList => '任务列表'; @override String get codeBlock => '代码块'; @override - String get quote => '引用'; + String get quote => '引言'; @override String get increaseIndent => '增加缩进'; @@ -179,7 +179,7 @@ class FlutterQuillLocalizationsZh extends FlutterQuillLocalizations { String get decreaseIndent => '减少缩进'; @override - String get insertURL => '插入网址'; + String get insertURL => '插入链接'; @override String get visitLink => '访问链接'; @@ -200,37 +200,37 @@ class FlutterQuillLocalizationsZh extends FlutterQuillLocalizations { String get hex => '十六进制'; @override - String get material => '素材'; + String get material => 'Material 设计'; @override String get color => '颜色'; @override - String get findText => '查找文本'; + String get findText => '搜索文本'; @override - String get moveToPreviousOccurrence => '移到前一个匹配项'; + String get moveToPreviousOccurrence => '上一个匹配项'; @override - String get moveToNextOccurrence => '移到下一个匹配项'; + String get moveToNextOccurrence => '下一个匹配项'; @override - String get savedUsingTheNetwork => '使用网络保存'; + String get savedUsingTheNetwork => '通过网络保存'; @override String get savedUsingLocalStorage => '使用本地存储保存'; @override - String get errorWhileSavingImage => '保存图像时出错'; + String get errorWhileSavingImage => '保存图像时发生错误'; @override - String get pleaseEnterTextForYourLink => "请输入链接文本(例如,'了解更多')"; + String get pleaseEnterTextForYourLink => "如'了解更多'"; @override - String get pleaseEnterTheLinkURL => "请输入链接网址(例如,'https://example.com')"; + String get pleaseEnterTheLinkURL => "如'https://example.com'"; @override - String get pleaseEnterAValidImageURL => '请输入有效的图像网址'; + String get pleaseEnterAValidImageURL => '请输入有效的图像URL'; @override String get pleaseEnterAValidVideoURL => '请输入有效的视频URL'; @@ -248,22 +248,22 @@ class FlutterQuillLocalizationsZh extends FlutterQuillLocalizations { String get insertImage => '插入图像'; @override - String get pickAPhotoFromYourGallery => 'Pick a photo from your gallery'; + String get pickAPhotoFromYourGallery => '从相册选取图片'; @override - String get takeAPhotoUsingYourCamera => 'Take a photo using your camera'; + String get takeAPhotoUsingYourCamera => '使用相机拍照'; @override - String get pasteAPhotoUsingALink => 'Paste a photo using a link'; + String get pasteAPhotoUsingALink => '从链接获取图片'; @override - String get pickAVideoFromYourGallery => 'Pick a video from your gallery'; + String get pickAVideoFromYourGallery => '从相册选取视频'; @override - String get recordAVideoUsingYourCamera => 'Record a video using your camera'; + String get recordAVideoUsingYourCamera => '使用相机录制'; @override - String get pasteAVideoUsingALink => 'Paste a video using a link'; + String get pasteAVideoUsingALink => '从链接获取视频'; } /// The translations for Chinese, as used in China (`zh_CN`). @@ -274,13 +274,13 @@ class FlutterQuillLocalizationsZhCn extends FlutterQuillLocalizationsZh { String get pasteLink => '粘贴链接'; @override - String get ok => '好'; + String get ok => '确认'; @override String get selectColor => '选择颜色'; @override - String get gallery => '相簿'; + String get gallery => '相册'; @override String get link => '链接'; @@ -298,7 +298,7 @@ class FlutterQuillLocalizationsZhCn extends FlutterQuillLocalizationsZh { String get save => '保存'; @override - String get zoom => '放大'; + String get zoom => '缩放'; @override String get saved => '已保存'; @@ -402,6 +402,27 @@ class FlutterQuillLocalizationsZhCn extends FlutterQuillLocalizationsZh { @override String get headerStyle => '标题样式'; + @override + String get normal => '正文'; + + @override + String get heading1 => '一级标题'; + + @override + String get heading2 => '二级标题'; + + @override + String get heading3 => '三级标题'; + + @override + String get heading4 => '四级标题'; + + @override + String get heading5 => '五级标题'; + + @override + String get heading6 => '六级标题'; + @override String get numberedList => '有序列表'; @@ -445,7 +466,7 @@ class FlutterQuillLocalizationsZhCn extends FlutterQuillLocalizationsZh { String get hex => '十六进制'; @override - String get material => '材料'; + String get material => 'Material 设计'; @override String get color => '颜色'; @@ -469,10 +490,10 @@ class FlutterQuillLocalizationsZhCn extends FlutterQuillLocalizationsZh { String get errorWhileSavingImage => '保存图像时发生错误'; @override - String get pleaseEnterTextForYourLink => "例如,'了解更多'"; + String get pleaseEnterTextForYourLink => "如'了解更多'"; @override - String get pleaseEnterTheLinkURL => "例如,'https://example.com'"; + String get pleaseEnterTheLinkURL => "如'https://example.com'"; @override String get pleaseEnterAValidImageURL => '请输入有效的图像URL'; @@ -491,6 +512,24 @@ class FlutterQuillLocalizationsZhCn extends FlutterQuillLocalizationsZh { @override String get insertImage => '插入图像'; + + @override + String get pickAPhotoFromYourGallery => '从相册选取图片'; + + @override + String get takeAPhotoUsingYourCamera => '使用相机拍照'; + + @override + String get pasteAPhotoUsingALink => '从链接获取图片'; + + @override + String get pickAVideoFromYourGallery => '从相册选取视频'; + + @override + String get recordAVideoUsingYourCamera => '使用相机录制'; + + @override + String get pasteAVideoUsingALink => '从链接获取视频'; } /// The translations for Chinese, as used in Hong Kong (`zh_HK`). diff --git a/lib/src/l10n/quill_en.arb b/lib/src/l10n/quill_en.arb index 986e35c5..fed4b3cf 100644 --- a/lib/src/l10n/quill_en.arb +++ b/lib/src/l10n/quill_en.arb @@ -87,4 +87,4 @@ "pickAVideoFromYourGallery": "Pick a video from your gallery", "recordAVideoUsingYourCamera": "Record a video using your camera", "pasteAVideoUsingALink": "Paste a video using a link" -} +} \ No newline at end of file diff --git a/lib/src/l10n/quill_zh.arb b/lib/src/l10n/quill_zh.arb index 5f71a6a1..aa6ad9f7 100644 --- a/lib/src/l10n/quill_zh.arb +++ b/lib/src/l10n/quill_zh.arb @@ -1,7 +1,7 @@ { "@@locale": "zh", "pasteLink": "粘贴链接", - "ok": "确定", + "ok": "确认", "selectColor": "选择颜色", "gallery": "相册", "link": "链接", @@ -11,67 +11,80 @@ "save": "保存", "zoom": "缩放", "saved": "已保存", - "text": "文本", + "text": "文字", "resize": "调整大小", "width": "宽度", "height": "高度", - "size": "大小", - "small": "小", - "large": "大", - "huge": "巨大", + "size": "文字大小", + "small": "小字号", + "large": "大字号", + "huge": "超大字号", "clear": "清除", "font": "字体", "search": "搜索", - "camera": "相机", - "video": "视频", + "camera": "拍照", + "video": "录像", "undo": "撤销", "redo": "重做", - "fontFamily": "字体族", + "fontFamily": "字体", "fontSize": "字号", - "bold": "加粗", + "bold": "粗体", "subscript": "下标", "superscript": "上标", "italic": "斜体", "underline": "下划线", "strikeThrough": "删除线", - "inlineCode": "行内代码", + "inlineCode": "内联代码", "fontColor": "字体颜色", "backgroundColor": "背景颜色", "clearFormat": "清除格式", "alignLeft": "左对齐", - "alignCenter": "居中", + "alignCenter": "居中对齐", "alignRight": "右对齐", "justifyWinWidth": "两端对齐", "textDirection": "文本方向", "headerStyle": "标题样式", - "numberedList": "编号列表", - "bulletList": "项目符号列表", - "checkedList": "选中列表", + "normal": "正文", + "heading1": "一级标题", + "heading2": "二级标题", + "heading3": "三级标题", + "heading4": "四级标题", + "heading5": "五级标题", + "heading6": "六级标题", + "numberedList": "有序列表", + "bulletList": "无序列表", + "checkedList": "任务列表", "codeBlock": "代码块", - "quote": "引用", + "quote": "引言", "increaseIndent": "增加缩进", "decreaseIndent": "减少缩进", - "insertURL": "插入网址", + "insertURL": "插入链接", "visitLink": "访问链接", "enterLink": "输入链接", "enterMedia": "输入媒体", "edit": "编辑", "apply": "应用", "hex": "十六进制", - "material": "素材", + "material": "Material 设计", "color": "颜色", - "findText": "查找文本", - "moveToPreviousOccurrence": "移到前一个匹配项", - "moveToNextOccurrence": "移到下一个匹配项", - "savedUsingTheNetwork": "使用网络保存", + "findText": "搜索文本", + "moveToPreviousOccurrence": "上一个匹配项", + "moveToNextOccurrence": "下一个匹配项", + "savedUsingTheNetwork": "通过网络保存", "savedUsingLocalStorage": "使用本地存储保存", - "errorWhileSavingImage": "保存图像时出错", - "pleaseEnterTextForYourLink": "请输入链接文本(例如,'了解更多')", - "pleaseEnterTheLinkURL": "请输入链接网址(例如,'https://example.com')", - "pleaseEnterAValidImageURL": "请输入有效的图像网址", + "errorWhileSavingImage": "保存图像时发生错误", + "pleaseEnterTextForYourLink": "如'了解更多'", + "pleaseEnterTheLinkURL": "如'https://example.com'", + "pleaseEnterAValidImageURL": "请输入有效的图像URL", + "pleaseEnterAValidVideoURL": "请输入有效的视频URL", "photo": "照片", "image": "图像", - "pleaseEnterAValidVideoURL": "请输入有效的视频URL", "caseSensitivityAndWholeWordSearch": "区分大小写和整词搜索", - "insertImage": "插入图像" -} + "insertImage": "插入图像", + "pickAPhotoFromYourGallery": "从相册选取图片", + "takeAPhotoUsingYourCamera": "使用相机拍照", + "pasteAPhotoUsingALink": "从链接获取图片", + "pickAVideoFromYourGallery": "从相册选取视频", + "recordAVideoUsingYourCamera": "使用相机录制", + "pasteAVideoUsingALink": "从链接获取视频" +} \ No newline at end of file diff --git a/lib/src/l10n/quill_zh_CN.arb b/lib/src/l10n/quill_zh_CN.arb index 51e67c40..d4486a63 100644 --- a/lib/src/l10n/quill_zh_CN.arb +++ b/lib/src/l10n/quill_zh_CN.arb @@ -1,15 +1,15 @@ { "@@locale": "zh_CN", "pasteLink": "粘贴链接", - "ok": "好", + "ok": "确认", "selectColor": "选择颜色", - "gallery": "相簿", + "gallery": "相册", "link": "链接", "open": "打开", "copy": "复制", "remove": "移除", "save": "保存", - "zoom": "放大", + "zoom": "缩放", "saved": "已保存", "text": "文字", "resize": "调整大小", @@ -44,6 +44,13 @@ "justifyWinWidth": "两端对齐", "textDirection": "文本方向", "headerStyle": "标题样式", + "normal": "正文", + "heading1": "一级标题", + "heading2": "二级标题", + "heading3": "三级标题", + "heading4": "四级标题", + "heading5": "五级标题", + "heading6": "六级标题", "numberedList": "有序列表", "bulletList": "无序列表", "checkedList": "任务列表", @@ -57,22 +64,27 @@ "enterMedia": "输入媒体", "edit": "编辑", "apply": "应用", + "hex": "十六进制", + "material": "Material 设计", + "color": "颜色", "findText": "搜索文本", "moveToPreviousOccurrence": "上一个匹配项", "moveToNextOccurrence": "下一个匹配项", "savedUsingTheNetwork": "通过网络保存", "savedUsingLocalStorage": "使用本地存储保存", "errorWhileSavingImage": "保存图像时发生错误", - "pleaseEnterTextForYourLink": "例如,'了解更多'", - "pleaseEnterTheLinkURL": "例如,'https://example.com'", + "pleaseEnterTextForYourLink": "如'了解更多'", + "pleaseEnterTheLinkURL": "如'https://example.com'", "pleaseEnterAValidImageURL": "请输入有效的图像URL", - "hex": "十六进制", - "material": "材料", - "color": "颜色", "pleaseEnterAValidVideoURL": "请输入有效的视频URL", "photo": "照片", "image": "图像", "caseSensitivityAndWholeWordSearch": "区分大小写和整词搜索", - "insertImage": "插入图像" -} - \ No newline at end of file + "insertImage": "插入图像", + "pickAPhotoFromYourGallery": "从相册选取图片", + "takeAPhotoUsingYourCamera": "使用相机拍照", + "pasteAPhotoUsingALink": "从链接获取图片", + "pickAVideoFromYourGallery": "从相册选取视频", + "recordAVideoUsingYourCamera": "使用相机录制", + "pasteAVideoUsingALink": "从链接获取视频" +} \ No newline at end of file diff --git a/lib/src/l10n/untranslated.json b/lib/src/l10n/untranslated.json index 09698365..197d74c3 100644 --- a/lib/src/l10n/untranslated.json +++ b/lib/src/l10n/untranslated.json @@ -442,38 +442,6 @@ "pasteAVideoUsingALink" ], - "zh": [ - "normal", - "heading1", - "heading2", - "heading3", - "heading4", - "heading5", - "heading6", - "pickAPhotoFromYourGallery", - "takeAPhotoUsingYourCamera", - "pasteAPhotoUsingALink", - "pickAVideoFromYourGallery", - "recordAVideoUsingYourCamera", - "pasteAVideoUsingALink" - ], - - "zh_CN": [ - "normal", - "heading1", - "heading2", - "heading3", - "heading4", - "heading5", - "heading6", - "pickAPhotoFromYourGallery", - "takeAPhotoUsingYourCamera", - "pasteAPhotoUsingALink", - "pickAVideoFromYourGallery", - "recordAVideoUsingYourCamera", - "pasteAVideoUsingALink" - ], - "zh_HK": [ "normal", "heading1", diff --git a/pubspec.yaml b/pubspec.yaml index f2104843..fabe2392 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -7,22 +7,22 @@ issue_tracker: https://github.com/singerdmx/flutter-quill/issues/ documentation: https://github.com/singerdmx/flutter-quill/ topics: - - ui - - widgets - - widget - - rich-text-editor - - quill + - ui + - widgets + - widget + - rich-text-editor + - quill screenshots: - - description: 'Screenshot 1' - path: example/assets/images/screenshot_1.png - - description: 'Screenshot 2' - path: example/assets/images/screenshot_2.png - - description: 'Screenshot 3' - path: example/assets/images/screenshot_3.png - - description: 'Screenshot 4' - path: example/assets/images/screenshot_4.png - + - description: "Screenshot 1" + path: example/assets/images/screenshot_1.png + - description: "Screenshot 2" + path: example/assets/images/screenshot_2.png + - description: "Screenshot 3" + path: example/assets/images/screenshot_3.png + - description: "Screenshot 4" + path: example/assets/images/screenshot_4.png + platforms: android: ios: @@ -32,7 +32,7 @@ platforms: windows: environment: - sdk: '>=3.1.6 <4.0.0' + sdk: ">=3.1.6 <4.0.0" flutter: ">=3.16.0" dependencies: From 7bd542beb88da5e0325e70636c2f25c5de3767ec Mon Sep 17 00:00:00 2001 From: Ellet Date: Sun, 31 Dec 2023 13:15:00 +0300 Subject: [PATCH 7/7] docs: Update CHANGELOG.md and translation.md --- CHANGELOG.md | 2 ++ doc/translation.md | 8 +++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6c7b543a..0c71ecf4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,8 @@ All notable changes to this project will be documented in this file. ## 9.2.1 * Fix [bug](https://github.com/singerdmx/flutter-quill/issues/1119#issuecomment-1872605246) with font size button +* Added ro RO translations +* 📖 Update zh, zh_CN translations ## 9.2.0 * Require minimum version `6.0.0` of `flutter_keyboard_visibility` to fix some build issues with Android Gradle Plugin 8.2.0 diff --git a/doc/translation.md b/doc/translation.md index 6ffbcacf..e67ab333 100644 --- a/doc/translation.md +++ b/doc/translation.md @@ -49,13 +49,15 @@ Also, you can take a look at the [untranslated.json](../lib/src/l10n/untranslate After you are done and want to test the changes, run the following in the root folder (preferred): ``` -flutter gen-l10n +./scripts/regenerate_translations.sh ``` -or: +or (if you can't run the script for some reasons): ``` -./scripts/regenerate_translations.sh +flutter gen-l10n +dart fix --apply ./lib/src/l10n/generated +dart format ./lib/src/l10n/generated ```