pull/1449/head
Ahmed Hnewa 2 years ago
parent 98e4dade9f
commit 6ce1daffaa
No known key found for this signature in database
GPG Key ID: C488CC70BBCEF0D1
  1. 3
      example/ios/Runner.xcodeproj/project.pbxproj
  2. 2
      example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
  3. 6
      flutter_quill_extensions/pubspec.yaml
  4. 9
      lib/src/models/config/editor/configurations.dart
  5. 10
      lib/src/models/config/quill_configurations.dart
  6. 9
      lib/src/models/config/shared_configurations.dart
  7. 2
      lib/src/models/config/toolbar/buttons/font_family.dart
  8. 16
      lib/src/models/config/toolbar/configurations.dart
  9. 4
      lib/src/widgets/utils/provider.dart
  10. 1
      pubspec.yaml

@ -167,7 +167,7 @@
97C146E61CF9000F007C117D /* Project object */ = { 97C146E61CF9000F007C117D /* Project object */ = {
isa = PBXProject; isa = PBXProject;
attributes = { attributes = {
LastUpgradeCheck = 1300; LastUpgradeCheck = 1430;
ORGANIZATIONNAME = ""; ORGANIZATIONNAME = "";
TargetAttributes = { TargetAttributes = {
97C146ED1CF9000F007C117D = { 97C146ED1CF9000F007C117D = {
@ -215,6 +215,7 @@
files = ( files = (
); );
inputPaths = ( inputPaths = (
"${TARGET_BUILD_DIR}/${INFOPLIST_PATH}",
); );
name = "Thin Binary"; name = "Thin Binary";
outputPaths = ( outputPaths = (

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<Scheme <Scheme
LastUpgradeVersion = "1300" LastUpgradeVersion = "1430"
version = "1.3"> version = "1.3">
<BuildAction <BuildAction
parallelizeBuildables = "YES" parallelizeBuildables = "YES"

@ -19,10 +19,10 @@ dependencies:
flutter: flutter:
sdk: flutter sdk: flutter
flutter_quill: ^7.5.0 # flutter_quill: ^7.5.0
# In case you are working on changes for both libraries, # In case you are working on changes for both libraries,
# flutter_quill: flutter_quill:
# path: ~/development/playground/framework_based/flutter/flutter-quill path: /Users/ahmedhnewa/development/playground/framework_based/flutter/flutter-quill
http: ^1.1.0 http: ^1.1.0
image_picker: ">=1.0.4" image_picker: ">=1.0.4"

@ -1,8 +1,9 @@
import 'package:equatable/equatable.dart';
import 'package:flutter/foundation.dart' show immutable; import 'package:flutter/foundation.dart' show immutable;
/// The configurations for the quill editor widget of flutter quill /// The configurations for the quill editor widget of flutter quill
@immutable @immutable
class QuillEditorConfigurations { class QuillEditorConfigurations extends Equatable {
const QuillEditorConfigurations({ const QuillEditorConfigurations({
this.placeholder, this.placeholder,
this.readOnly = false, this.readOnly = false,
@ -18,4 +19,10 @@ class QuillEditorConfigurations {
/// ///
/// Defaults to `false`. Must not be `null`. /// Defaults to `false`. Must not be `null`.
final bool readOnly; final bool readOnly;
@override
List<Object?> get props => [
placeholder,
readOnly,
];
} }

@ -1,3 +1,4 @@
import 'package:equatable/equatable.dart';
import 'package:flutter/foundation.dart' show immutable; import 'package:flutter/foundation.dart' show immutable;
import '../../../flutter_quill.dart'; import '../../../flutter_quill.dart';
@ -7,7 +8,7 @@ export './shared_configurations.dart';
export './toolbar/configurations.dart'; export './toolbar/configurations.dart';
@immutable @immutable
class QuillConfigurations { class QuillConfigurations extends Equatable {
const QuillConfigurations({ const QuillConfigurations({
required this.controller, required this.controller,
this.editorConfigurations = const QuillEditorConfigurations(), this.editorConfigurations = const QuillEditorConfigurations(),
@ -32,4 +33,11 @@ class QuillConfigurations {
/// The shared configurations between [QuillEditorConfigurations] and /// The shared configurations between [QuillEditorConfigurations] and
/// [QuillToolbarConfigurations] so we don't duplicate things /// [QuillToolbarConfigurations] so we don't duplicate things
final QuillSharedConfigurations sharedConfigurations; final QuillSharedConfigurations sharedConfigurations;
@override
List<Object?> get props => [
editorConfigurations,
toolbarConfigurations,
sharedConfigurations,
];
} }

@ -1,10 +1,11 @@
import 'package:equatable/equatable.dart';
import 'package:flutter/material.dart' show Color, Colors, Locale; import 'package:flutter/material.dart' show Color, Colors, Locale;
import './editor/configurations.dart' show QuillEditorConfigurations; import './editor/configurations.dart' show QuillEditorConfigurations;
import './toolbar/configurations.dart' show QuillToolbarConfigurations; import './toolbar/configurations.dart' show QuillToolbarConfigurations;
/// The shared configurations between [QuillEditorConfigurations] and /// The shared configurations between [QuillEditorConfigurations] and
/// [QuillToolbarConfigurations] so we don't duplicate things /// [QuillToolbarConfigurations] so we don't duplicate things
class QuillSharedConfigurations { class QuillSharedConfigurations extends Equatable {
const QuillSharedConfigurations({ const QuillSharedConfigurations({
this.dialogBarrierColor = Colors.black54, this.dialogBarrierColor = Colors.black54,
this.locale, this.locale,
@ -18,4 +19,10 @@ class QuillSharedConfigurations {
/// The locale to use for the editor and toolbar, defaults to system locale /// The locale to use for the editor and toolbar, defaults to system locale
/// More https://github.com/singerdmx/flutter-quill#translation /// More https://github.com/singerdmx/flutter-quill#translation
final Locale? locale; final Locale? locale;
@override
List<Object?> get props => [
dialogBarrierColor,
locale,
];
} }

@ -25,7 +25,7 @@ class QuillToolbarFontFamilyButtonOptions extends QuillToolbarBaseButtonOptions<
QuillToolbarFontFamilyButtonOptions, QuillToolbarFontFamilyButtonOptions,
QuillToolbarFontFamilyButtonExtraOptions> { QuillToolbarFontFamilyButtonExtraOptions> {
const QuillToolbarFontFamilyButtonOptions({ const QuillToolbarFontFamilyButtonOptions({
required this.attribute, this.attribute = Attribute.bold,
this.rawItemsMap, this.rawItemsMap,
super.controller, super.controller,
super.iconData, super.iconData,

@ -1,3 +1,4 @@
import 'package:equatable/equatable.dart';
import 'package:flutter/foundation.dart' show immutable; import 'package:flutter/foundation.dart' show immutable;
import '../../documents/attribute.dart'; import '../../documents/attribute.dart';
@ -6,6 +7,7 @@ import 'buttons/font_family.dart';
import 'buttons/history.dart'; import 'buttons/history.dart';
export './buttons/base.dart'; export './buttons/base.dart';
export './buttons/font_family.dart';
export './buttons/history.dart'; export './buttons/history.dart';
export './buttons/toggle_style.dart'; export './buttons/toggle_style.dart';
@ -23,7 +25,7 @@ const double kToolbarSectionSpacing = 4;
/// The configurations for the toolbar widget of flutter quill /// The configurations for the toolbar widget of flutter quill
@immutable @immutable
class QuillToolbarConfigurations { class QuillToolbarConfigurations extends Equatable {
const QuillToolbarConfigurations({ const QuillToolbarConfigurations({
this.buttonOptions = const QuillToolbarButtonOptions(), this.buttonOptions = const QuillToolbarButtonOptions(),
this.multiRowsDisplay = true, this.multiRowsDisplay = true,
@ -67,6 +69,14 @@ class QuillToolbarConfigurations {
/// }; /// };
/// ``` /// ```
final Map<String, String>? fontFamilyValues; final Map<String, String>? fontFamilyValues;
@override
List<Object?> get props => [
buttonOptions,
multiRowsDisplay,
fontFamilyValues,
toolbarSize,
];
} }
/// The configurations for the buttons of the toolbar widget of flutter quill /// The configurations for the buttons of the toolbar widget of flutter quill
@ -80,9 +90,7 @@ class QuillToolbarButtonOptions {
this.redoHistoryButtonOptions = const QuillToolbarHistoryButtonOptions( this.redoHistoryButtonOptions = const QuillToolbarHistoryButtonOptions(
isUndo: false, isUndo: false,
), ),
this.fontFamilyButtonOptions = const QuillToolbarFontFamilyButtonOptions( this.fontFamilyButtonOptions = const QuillToolbarFontFamilyButtonOptions(),
attribute: Attribute.font,
),
}); });
/// The base configurations for all the buttons /// The base configurations for all the buttons

@ -17,8 +17,8 @@ class QuillProvider extends InheritedWidget {
final QuillConfigurations configurations; final QuillConfigurations configurations;
@override @override
bool updateShouldNotify(covariant InheritedWidget oldWidget) { bool updateShouldNotify(covariant QuillProvider oldWidget) {
throw false; throw true;
} }
static QuillProvider? of(BuildContext context) { static QuillProvider? of(BuildContext context) {

@ -30,6 +30,7 @@ dependencies:
device_info_plus: ^9.1.0 device_info_plus: ^9.1.0
platform: ^3.1.3 platform: ^3.1.3
pasteboard: ^0.2.0 pasteboard: ^0.2.0
equatable: ^2.0.5
flutter_test: flutter_test:
sdk: flutter sdk: flutter

Loading…
Cancel
Save