Added option to disable style toolbar

This commit is contained in:
M66B 2019-03-26 18:26:21 +00:00
parent 30fcceda91
commit 62dee461ee
4 changed files with 34 additions and 4 deletions

View File

@ -175,6 +175,7 @@ public class FragmentCompose extends FragmentBase {
private boolean autosave = false; private boolean autosave = false;
private boolean busy = false; private boolean busy = false;
private boolean style = true;
private boolean encrypt = false; private boolean encrypt = false;
private OpenPgpServiceConnection pgpService; private OpenPgpServiceConnection pgpService;
@ -185,6 +186,9 @@ public class FragmentCompose extends FragmentBase {
public void onCreate(Bundle savedInstanceState) { public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
pro = Helper.isPro(getContext()); pro = Helper.isPro(getContext());
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext());
style = prefs.getBoolean("style_toolbar", true);
} }
@Override @Override
@ -733,9 +737,11 @@ public class FragmentCompose extends FragmentBase {
@Override @Override
public void onPrepareOptionsMenu(Menu menu) { public void onPrepareOptionsMenu(Menu menu) {
super.onPrepareOptionsMenu(menu); super.onPrepareOptionsMenu(menu);
menu.findItem(R.id.menu_addresses).setVisible(working >= 0); menu.findItem(R.id.menu_addresses).setVisible(working >= 0);
menu.findItem(R.id.menu_zoom).setVisible(state == State.LOADED); menu.findItem(R.id.menu_zoom).setVisible(state == State.LOADED);
menu.findItem(R.id.menu_clear).setVisible(state == State.LOADED); menu.findItem(R.id.menu_clear).setVisible(state == State.LOADED);
menu.findItem(R.id.menu_style_toolbar).setVisible(state == State.LOADED);
menu.findItem(R.id.menu_encrypt).setVisible(state == State.LOADED); menu.findItem(R.id.menu_encrypt).setVisible(state == State.LOADED);
menu.findItem(R.id.menu_send_after).setVisible(state == State.LOADED); menu.findItem(R.id.menu_send_after).setVisible(state == State.LOADED);
@ -744,6 +750,8 @@ public class FragmentCompose extends FragmentBase {
menu.findItem(R.id.menu_encrypt).setEnabled(!busy); menu.findItem(R.id.menu_encrypt).setEnabled(!busy);
menu.findItem(R.id.menu_send_after).setEnabled(!busy); menu.findItem(R.id.menu_send_after).setEnabled(!busy);
menu.findItem(R.id.menu_style_toolbar).setChecked(style);
menu.findItem(R.id.menu_encrypt).setChecked(encrypt); menu.findItem(R.id.menu_encrypt).setChecked(encrypt);
bottom_navigation.getMenu().findItem(R.id.action_send) bottom_navigation.getMenu().findItem(R.id.action_send)
.setTitle(encrypt ? R.string.title_encrypt : R.string.title_send); .setTitle(encrypt ? R.string.title_encrypt : R.string.title_send);
@ -765,9 +773,11 @@ public class FragmentCompose extends FragmentBase {
case R.id.menu_clear: case R.id.menu_clear:
onMenuStyle(item.getItemId()); onMenuStyle(item.getItemId());
return true; return true;
case R.id.menu_style_toolbar:
onMenuStyleToolbar();
return true;
case R.id.menu_encrypt: case R.id.menu_encrypt:
encrypt = !encrypt; onMenuEncrypt();
getActivity().invalidateOptionsMenu();
return true; return true;
case R.id.menu_send_after: case R.id.menu_send_after:
onMenuSendAfter(); onMenuSendAfter();
@ -879,6 +889,19 @@ public class FragmentCompose extends FragmentBase {
etBody.setSelection(end); etBody.setSelection(end);
} }
private void onMenuStyleToolbar() {
style = !style;
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext());
prefs.edit().putBoolean("style_toolbar", style).apply();
getActivity().invalidateOptionsMenu();
edit_bar.setVisibility(style ? View.VISIBLE : View.GONE);
}
private void onMenuEncrypt() {
encrypt = !encrypt;
getActivity().invalidateOptionsMenu();
}
private void onMenuSendAfter() { private void onMenuSendAfter() {
DialogDuration.show(getContext(), getViewLifecycleOwner(), R.string.title_send_at, DialogDuration.show(getContext(), getViewLifecycleOwner(), R.string.title_send_at,
new DialogDuration.IDialogDuration() { new DialogDuration.IDialogDuration() {
@ -2310,7 +2333,7 @@ public class FragmentCompose extends FragmentBase {
autosave = true; autosave = true;
pbWait.setVisibility(View.GONE); pbWait.setVisibility(View.GONE);
edit_bar.setVisibility(View.VISIBLE); edit_bar.setVisibility(style ? View.VISIBLE : View.GONE);
bottom_navigation.setVisibility(View.VISIBLE); bottom_navigation.setVisibility(View.VISIBLE);
Helper.setViewsEnabled(view, true); Helper.setViewsEnabled(view, true);

View File

@ -128,7 +128,7 @@ public class FragmentOptions extends FragmentBase implements SharedPreferences.O
"notify_preview", "search_local", "light", "sound", "notify_preview", "search_local", "light", "sound",
"updates", "debug", "updates", "debug",
"first", "why", "last_update_check", "app_support", "message_swipe", "message_select", "folder_actions", "folder_sync", "first", "why", "last_update_check", "app_support", "message_swipe", "message_select", "folder_actions", "folder_sync",
"edit_ref_confirmed", "show_html_confirmed", "show_images_confirmed", "print_html_confirmed", "show_organization" "edit_ref_confirmed", "show_html_confirmed", "show_images_confirmed", "print_html_confirmed", "show_organization", "style_toolbar"
}; };
@Override @Override

View File

@ -18,6 +18,12 @@
android:title="@string/title_style_clear" android:title="@string/title_style_clear"
app:showAsAction="never" /> app:showAsAction="never" />
<item
android:id="@+id/menu_style_toolbar"
android:checkable="true"
android:title="@string/title_style_toolbar"
app:showAsAction="never" />
<item <item
android:id="@+id/menu_encrypt" android:id="@+id/menu_encrypt"
android:checkable="true" android:checkable="true"

View File

@ -399,6 +399,7 @@
<string name="title_style_clear">Clear formatting</string> <string name="title_style_clear">Clear formatting</string>
<string name="title_style_link">Insert link</string> <string name="title_style_link">Insert link</string>
<string name="title_style_image">Insert image</string> <string name="title_style_image">Insert image</string>
<string name="title_style_toolbar">Style toolbar</string>
<string name="title_add_attachment">Add attachment</string> <string name="title_add_attachment">Add attachment</string>
<string name="title_show_addresses">Show CC/BCC</string> <string name="title_show_addresses">Show CC/BCC</string>