From 1a0dfa1d45624c85aba0fe40ca169101c1ef76b1 Mon Sep 17 00:00:00 2001 From: X Code Date: Thu, 28 Jul 2022 17:14:19 -0700 Subject: [PATCH] Add initial search button --- lib/src/widgets/toolbar.dart | 12 +++++++- lib/src/widgets/toolbar/search_button.dart | 32 ++++++++++++++++++++++ 2 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 lib/src/widgets/toolbar/search_button.dart diff --git a/lib/src/widgets/toolbar.dart b/lib/src/widgets/toolbar.dart index 715941c8..b901f74f 100644 --- a/lib/src/widgets/toolbar.dart +++ b/lib/src/widgets/toolbar.dart @@ -22,6 +22,7 @@ import 'toolbar/link_style_button.dart'; import 'toolbar/quill_font_family_button.dart'; import 'toolbar/quill_font_size_button.dart'; import 'toolbar/quill_icon_button.dart'; +import 'toolbar/search_button.dart'; import 'toolbar/select_alignment_button.dart'; import 'toolbar/select_header_style_button.dart'; import 'toolbar/toggle_check_list_button.dart'; @@ -110,6 +111,7 @@ class QuillToolbar extends StatelessWidget implements PreferredSizeWidget { bool showVideoButton = true, bool showCameraButton = true, bool showDirection = false, + bool showSearchButton = true, OnImagePickCallback? onImagePickCallback, OnVideoPickCallback? onVideoPickCallback, MediaPickSettingSelector? mediaPickSettingSelector, @@ -158,7 +160,7 @@ class QuillToolbar extends StatelessWidget implements PreferredSizeWidget { showHeaderStyle, showListNumbers || showListBullets || showListCheck || showCodeBlock, showQuote || showIndent, - showLink + showLink || showSearchButton ]; //default font size values @@ -494,6 +496,14 @@ class QuillToolbar extends StatelessWidget implements PreferredSizeWidget { iconTheme: iconTheme, dialogTheme: dialogTheme, ), + if (showSearchButton) + SearchButton( + icon: Icons.search, + iconSize: toolbarIconSize, + controller: controller, + iconTheme: iconTheme, + dialogTheme: dialogTheme, + ), if (customButtons.isNotEmpty) if (showDividers) VerticalDivider( diff --git a/lib/src/widgets/toolbar/search_button.dart b/lib/src/widgets/toolbar/search_button.dart new file mode 100644 index 00000000..a3e912c8 --- /dev/null +++ b/lib/src/widgets/toolbar/search_button.dart @@ -0,0 +1,32 @@ +import 'package:flutter/material.dart'; + +import '../../models/themes/quill_dialog_theme.dart'; +import '../../models/themes/quill_icon_theme.dart'; +import '../controller.dart'; +import '../toolbar.dart'; + +class SearchButton extends StatelessWidget { + const SearchButton({ + required this.icon, + required this.controller, + this.iconSize = kDefaultIconSize, + this.iconTheme, + this.dialogTheme, + Key? key, + }) : super(key: key); + + final IconData icon; + final double iconSize; + + final QuillController controller; + + final QuillIconTheme? iconTheme; + + final QuillDialogTheme? dialogTheme; + + @override + Widget build(BuildContext context) { + // TODO: implement floating search bar + return const SizedBox(); + } +}