diff --git a/admin/lib/presentation/widgets/base/customization_tab.dart b/admin/lib/presentation/widgets/base/customization_tab.dart index 63a05568..7a879150 100644 --- a/admin/lib/presentation/widgets/base/customization_tab.dart +++ b/admin/lib/presentation/widgets/base/customization_tab.dart @@ -2,9 +2,11 @@ import 'package:flutter/material.dart'; abstract class CustomizationTab extends StatelessWidget { final String title; + final bool showToolTip; const CustomizationTab({ required this.title, + this.showToolTip = false, super.key, }); } diff --git a/admin/lib/presentation/widgets/customization_panel/choice/choice_buttons_customization_tab.dart b/admin/lib/presentation/widgets/customization_panel/choice/choice_buttons_customization_tab.dart index 37d484ef..d82ffce0 100644 --- a/admin/lib/presentation/widgets/customization_panel/choice/choice_buttons_customization_tab.dart +++ b/admin/lib/presentation/widgets/customization_panel/choice/choice_buttons_customization_tab.dart @@ -15,6 +15,7 @@ class ChoiceButtonsCustomizationTab extends CustomizationTab { required this.onChange, required super.title, required this.editable, + super.showToolTip = true, super.key, }); diff --git a/admin/lib/presentation/widgets/question_settings_tab_bar.dart b/admin/lib/presentation/widgets/question_settings_tab_bar.dart index b5567363..9bd68a35 100644 --- a/admin/lib/presentation/widgets/question_settings_tab_bar.dart +++ b/admin/lib/presentation/widgets/question_settings_tab_bar.dart @@ -46,7 +46,10 @@ class _QuestionSettingsTabBarState extends State fontWeight: SurveyFonts.weightMedium, ), tabs: [ - for (final tab in widget.tabs) Tab(text: tab.title), + for (final tab in widget.tabs) + tab.showToolTip + ? Tooltip(message: tab.title, child: Tab(text: tab.title)) + : Tab(text: tab.title), ], ), Expanded( diff --git a/core/lib/src/presentation/survey/survey_controller.dart b/core/lib/src/presentation/survey/survey_controller.dart index a90899ac..9f4da100 100644 --- a/core/lib/src/presentation/survey/survey_controller.dart +++ b/core/lib/src/presentation/survey/survey_controller.dart @@ -1,4 +1,5 @@ import 'package:flutter/material.dart'; +import 'package:survey_sdk/survey_sdk.dart'; /// This controller need to navigation on survey and save answer. /// Function [onNext] navigate to next page and save answer on last page. @@ -15,7 +16,7 @@ class SurveyController { void onNext() { _pageController.nextPage( - duration: const Duration(seconds: 1), + duration: SurveyDurations.panelSwitchingDuration, curve: Curves.linear, ); } @@ -26,7 +27,7 @@ class SurveyController { if (_pageController.hasClients && _pageController.page != null) { _pageController.animateToPage( index, - duration: const Duration(milliseconds: 500), + duration: SurveyDurations.animateToSpecificPageDuration, curve: Curves.easeOutCubic, ); } @@ -36,7 +37,7 @@ class SurveyController { /// user to navigate back within the survey. void onBack() { _pageController.previousPage( - duration: const Duration(seconds: 1), + duration: SurveyDurations.panelSwitchingDuration, curve: Curves.linear, ); } diff --git a/core/lib/src/presentation/utils/survey_durations.dart b/core/lib/src/presentation/utils/survey_durations.dart index b33457ee..8a9cb335 100644 --- a/core/lib/src/presentation/utils/survey_durations.dart +++ b/core/lib/src/presentation/utils/survey_durations.dart @@ -2,6 +2,8 @@ class SurveyDurations { static const Duration questionBottomButton = Duration(milliseconds: 200); static const Duration customizationItemDuration = _iosAnimationDuration; static const Duration panelSwitchingDuration = _iosAnimationDuration; + static const Duration animateToSpecificPageDuration = + Duration(milliseconds: 500); static const Duration _iosAnimationDuration = Duration(milliseconds: 350); }