mirror of
https://github.com/AppFlowy-IO/AppFlowy.git
synced 2024-08-30 18:12:39 +00:00
chore: add extension for themedata
This commit is contained in:
parent
6a853036a5
commit
8656cfeb1e
@ -0,0 +1,10 @@
|
|||||||
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
|
extension ThemeExtension on ThemeData {
|
||||||
|
T? extensionOrNull<T>() {
|
||||||
|
if (extensions.containsKey(T)) {
|
||||||
|
return extensions[T] as T;
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
@ -8,6 +8,7 @@ import 'package:appflowy_editor/src/render/style/plugin_styles.dart';
|
|||||||
import 'package:appflowy_editor/src/service/render_plugin_service.dart';
|
import 'package:appflowy_editor/src/service/render_plugin_service.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:appflowy_editor/src/extensions/text_style_extension.dart';
|
import 'package:appflowy_editor/src/extensions/text_style_extension.dart';
|
||||||
|
import 'package:appflowy_editor/src/extensions/theme_extension.dart';
|
||||||
|
|
||||||
class BulletedListTextNodeWidgetBuilder extends NodeWidgetBuilder<TextNode> {
|
class BulletedListTextNodeWidgetBuilder extends NodeWidgetBuilder<TextNode> {
|
||||||
@override
|
@override
|
||||||
@ -61,7 +62,7 @@ class _BulletedListTextNodeWidgetState extends State<BulletedListTextNodeWidget>
|
|||||||
}
|
}
|
||||||
|
|
||||||
BulletedListPluginStyle get style =>
|
BulletedListPluginStyle get style =>
|
||||||
Theme.of(context).extension<BulletedListPluginStyle>() ??
|
Theme.of(context).extensionOrNull<BulletedListPluginStyle>() ??
|
||||||
BulletedListPluginStyle.light;
|
BulletedListPluginStyle.light;
|
||||||
|
|
||||||
EdgeInsets get padding => style.padding(
|
EdgeInsets get padding => style.padding(
|
||||||
|
@ -4,6 +4,7 @@ import 'package:appflowy_editor/src/render/rich_text/built_in_text_widget.dart';
|
|||||||
|
|
||||||
import 'package:appflowy_editor/src/extensions/text_style_extension.dart';
|
import 'package:appflowy_editor/src/extensions/text_style_extension.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:appflowy_editor/src/extensions/theme_extension.dart';
|
||||||
|
|
||||||
class CheckboxNodeWidgetBuilder extends NodeWidgetBuilder<TextNode> {
|
class CheckboxNodeWidgetBuilder extends NodeWidgetBuilder<TextNode> {
|
||||||
@override
|
@override
|
||||||
@ -54,7 +55,7 @@ class _CheckboxNodeWidgetState extends State<CheckboxNodeWidget>
|
|||||||
}
|
}
|
||||||
|
|
||||||
CheckboxPluginStyle get style =>
|
CheckboxPluginStyle get style =>
|
||||||
Theme.of(context).extension<CheckboxPluginStyle>() ??
|
Theme.of(context).extensionOrNull<CheckboxPluginStyle>() ??
|
||||||
CheckboxPluginStyle.light;
|
CheckboxPluginStyle.light;
|
||||||
|
|
||||||
EdgeInsets get padding => style.padding(
|
EdgeInsets get padding => style.padding(
|
||||||
|
@ -9,6 +9,7 @@ import 'package:appflowy_editor/src/service/render_plugin_service.dart';
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:appflowy_editor/src/extensions/attributes_extension.dart';
|
import 'package:appflowy_editor/src/extensions/attributes_extension.dart';
|
||||||
import 'package:appflowy_editor/src/extensions/text_style_extension.dart';
|
import 'package:appflowy_editor/src/extensions/text_style_extension.dart';
|
||||||
|
import 'package:appflowy_editor/src/extensions/theme_extension.dart';
|
||||||
|
|
||||||
class HeadingTextNodeWidgetBuilder extends NodeWidgetBuilder<TextNode> {
|
class HeadingTextNodeWidgetBuilder extends NodeWidgetBuilder<TextNode> {
|
||||||
@override
|
@override
|
||||||
@ -60,7 +61,7 @@ class _HeadingTextNodeWidgetState extends State<HeadingTextNodeWidget>
|
|||||||
}
|
}
|
||||||
|
|
||||||
HeadingPluginStyle get style =>
|
HeadingPluginStyle get style =>
|
||||||
Theme.of(context).extension<HeadingPluginStyle>() ??
|
Theme.of(context).extensionOrNull<HeadingPluginStyle>() ??
|
||||||
HeadingPluginStyle.light;
|
HeadingPluginStyle.light;
|
||||||
|
|
||||||
EdgeInsets get padding => style.padding(
|
EdgeInsets get padding => style.padding(
|
||||||
|
@ -9,6 +9,7 @@ import 'package:appflowy_editor/src/service/render_plugin_service.dart';
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:appflowy_editor/src/extensions/attributes_extension.dart';
|
import 'package:appflowy_editor/src/extensions/attributes_extension.dart';
|
||||||
import 'package:appflowy_editor/src/extensions/text_style_extension.dart';
|
import 'package:appflowy_editor/src/extensions/text_style_extension.dart';
|
||||||
|
import 'package:appflowy_editor/src/extensions/theme_extension.dart';
|
||||||
|
|
||||||
class NumberListTextNodeWidgetBuilder extends NodeWidgetBuilder<TextNode> {
|
class NumberListTextNodeWidgetBuilder extends NodeWidgetBuilder<TextNode> {
|
||||||
@override
|
@override
|
||||||
@ -60,7 +61,7 @@ class _NumberListTextNodeWidgetState extends State<NumberListTextNodeWidget>
|
|||||||
}
|
}
|
||||||
|
|
||||||
NumberListPluginStyle get style =>
|
NumberListPluginStyle get style =>
|
||||||
Theme.of(context).extension<NumberListPluginStyle>() ??
|
Theme.of(context).extensionOrNull<NumberListPluginStyle>() ??
|
||||||
NumberListPluginStyle.light;
|
NumberListPluginStyle.light;
|
||||||
|
|
||||||
EdgeInsets get padding => style.padding(
|
EdgeInsets get padding => style.padding(
|
||||||
|
@ -8,6 +8,7 @@ import 'package:appflowy_editor/src/render/style/plugin_styles.dart';
|
|||||||
import 'package:appflowy_editor/src/service/render_plugin_service.dart';
|
import 'package:appflowy_editor/src/service/render_plugin_service.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:appflowy_editor/src/extensions/text_style_extension.dart';
|
import 'package:appflowy_editor/src/extensions/text_style_extension.dart';
|
||||||
|
import 'package:appflowy_editor/src/extensions/theme_extension.dart';
|
||||||
|
|
||||||
class QuotedTextNodeWidgetBuilder extends NodeWidgetBuilder<TextNode> {
|
class QuotedTextNodeWidgetBuilder extends NodeWidgetBuilder<TextNode> {
|
||||||
@override
|
@override
|
||||||
@ -60,7 +61,7 @@ class _QuotedTextNodeWidgetState extends State<QuotedTextNodeWidget>
|
|||||||
}
|
}
|
||||||
|
|
||||||
QuotedTextPluginStyle get style =>
|
QuotedTextPluginStyle get style =>
|
||||||
Theme.of(context).extension<QuotedTextPluginStyle>() ??
|
Theme.of(context).extensionOrNull<QuotedTextPluginStyle>() ??
|
||||||
QuotedTextPluginStyle.light;
|
QuotedTextPluginStyle.light;
|
||||||
|
|
||||||
EdgeInsets get padding => style.padding(
|
EdgeInsets get padding => style.padding(
|
||||||
|
Loading…
x
Reference in New Issue
Block a user