Skip to content

Commit

Permalink
Fixed toolbar toggle
Browse files Browse the repository at this point in the history
  • Loading branch information
deathblade666 committed Sep 2, 2024
1 parent 6a2cf8c commit d2e463b
Show file tree
Hide file tree
Showing 2 changed files with 57 additions and 6 deletions.
46 changes: 42 additions & 4 deletions lib/pages/menu.dart
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ import 'package:shared_preferences/shared_preferences.dart';
bool fullEdit = true;
bool WordCount = false;
bool syncScrolling = false;
bool enableToolBar = false;
const List<String> list = <String>['system', 'dark', 'light',];
String dropDownValue = list.first;

Expand All @@ -37,6 +38,7 @@ class Menu extends StatefulWidget {
required this.onfileName,
required this.onThemeSelected,
required this.onsyncScrollEnable,
required this.onEnableToolBar,
super.key
}
);
Expand All @@ -46,6 +48,7 @@ class Menu extends StatefulWidget {
final void Function(bool WordCount) onEnableWordCount;
void Function(String? selectedTheme) onThemeSelected;
final void Function(bool syncScrolling) onsyncScrollEnable;
final void Function(bool enableToolBar) onEnableToolBar;
TextEditingController openFile = TextEditingController();
final String inputText;
int wordCount;
Expand All @@ -66,6 +69,7 @@ class Menu extends StatefulWidget {
SharedPreferences prefs;
bool switchInputvalue = false;
bool switchSyncScroll = false;
bool enableToolBar = false;

void closeApp({bool? animated}) async {
prefs.reload();
Expand Down Expand Up @@ -140,10 +144,6 @@ class Menu extends StatefulWidget {
);
}
}




},
child: const Text("Save"),
),
Expand All @@ -167,6 +167,8 @@ class Menu extends StatefulWidget {
widget.onsyncScrollEnable,
prefs,
switchInputvalue,
enableToolBar,
widget.onEnableToolBar,
)
);
}
Expand All @@ -186,10 +188,12 @@ class optionsDialog extends StatefulWidget {
final Function onEnableWordCount;
final Function onModeToggle;
final Function onsyncScrollEnable;
final Function onEnableToolBar;
bool switchModeValue;
bool switchWCValue;
bool switchInputvalue;
bool switchSyncScroll;
bool enableToolBar;

optionsDialog(
this.switchSyncScroll,
Expand All @@ -200,6 +204,8 @@ class optionsDialog extends StatefulWidget {
this.onsyncScrollEnable,
this.prefs,
this.switchInputvalue,
this.enableToolBar,
this.onEnableToolBar,
{
required this.onThemeSelected,
super.key
Expand Down Expand Up @@ -228,6 +234,19 @@ class optionsDialogState extends State<optionsDialog> {
prefs.setBool("ViewMode", fullEdit);
}

void enableToolbar(value) {
prefs.reload();
bool? toolbar = prefs.getBool('enableToolbar');
if (toolbar == true){
enableToolBar = true;
}
if (toolbar == false) {
enableToolBar = false;
}
widget.onEnableToolBar(enableToolBar);
prefs.setBool('enableToolbar', enableToolBar);
}

void showWordCount(value) {
prefs.reload();
bool? enableCount = prefs.getBool('DisplayWordCount');
Expand Down Expand Up @@ -266,6 +285,7 @@ class optionsDialogState extends State<optionsDialog> {
bool? retainInput = prefs.getBool('RetainInputSwitch');
String? selectedTheme = prefs.getString('selectedTheme');
bool? syncScroll = prefs.getBool('RetainsyncSwitch');
bool? toolbar = prefs.getBool('enableToolbar');
setState(() {
if (viewmodeValue != null) {
widget.switchModeValue = viewmodeValue;
Expand All @@ -282,6 +302,9 @@ class optionsDialogState extends State<optionsDialog> {
if (syncScroll != null){
widget.switchSyncScroll = syncScroll;
}
if (toolbar != null) {
widget.enableToolBar = toolbar;
}
});
}

Expand Down Expand Up @@ -363,6 +386,21 @@ class optionsDialogState extends State<optionsDialog> {
},
)
),
PopupMenuItem(
child: SwitchListTile(
value: widget.enableToolBar,
title: const Text("Enable Markdown Toolbar"),
subtitle: const Text("Enables a markdown Toolbar"),
activeColor: Theme.of(context).colorScheme.primary,
onChanged: (bool value) async {
setState(() {
widget.enableToolBar = value;
prefs.setBool("enableToolbar", value);
});
enableToolbar(value);
}
)
),
PopupMenuItem(
child: SwitchListTile(
title: const Text("Synchronized Scrolling"),
Expand Down
17 changes: 15 additions & 2 deletions lib/pages/split_edit.dart
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ class editorState extends State<Editor> {
LinkedScrollControllerGroup scrollGroup = LinkedScrollControllerGroup();
ScrollController scrollRenderController = ScrollController();
ScrollController userInputController = ScrollController();
bool toolBarToggle = enableToolBar;

@override
void initState() {
Expand All @@ -43,6 +44,7 @@ class editorState extends State<Editor> {
bool? WordCount = prefs.getBool('enableCount');
String? priorInput = prefs.getString('InputText');
bool? syncScrolling = prefs.getBool('RetainsyncSwitch');
bool? enableToolBar = prefs.getBool('enableToolbar');
if (WordCount != null){
enableWordCount(WordCount);
}
Expand All @@ -56,6 +58,9 @@ class editorState extends State<Editor> {
if (syncScrolling != null){
syncScroll(syncScrolling);
}
if (enableToolBar != null) {
toggleToolBar(enableToolBar);
}
}

void syncScroll (syncScrolling){
Expand Down Expand Up @@ -123,6 +128,13 @@ class editorState extends State<Editor> {
void setTheme(selectedTheme){
widget.onThemeSelect(selectedTheme);
}

void toggleToolBar(enableToolBar){
setState(() {
toolBarToggle = enableToolBar;
});

}

@override
Widget build(BuildContext context) {
Expand All @@ -145,7 +157,7 @@ class editorState extends State<Editor> {
),
),
Visibility(
visible: true,
visible: toolBarToggle,
child: MarkdownToolbar(
useIncludedTextField: false,
controller: openFile,
Expand Down Expand Up @@ -187,7 +199,8 @@ class editorState extends State<Editor> {
onModeToggle: switchViewMode,
wordCount, onEnableWordCount: enableWordCount,
onThemeSelected: setTheme,
onsyncScrollEnable: syncScroll,),
onsyncScrollEnable: syncScroll,
onEnableToolBar: toggleToolBar,),
const Padding(padding: EdgeInsets.only(right: 15)),
],
),
Expand Down

0 comments on commit d2e463b

Please sign in to comment.