diff --git a/app/src/main/java/eu/faircode/email/ActivitySignature.java b/app/src/main/java/eu/faircode/email/ActivitySignature.java
index 2982517fae..3fbec99114 100644
--- a/app/src/main/java/eu/faircode/email/ActivitySignature.java
+++ b/app/src/main/java/eu/faircode/email/ActivitySignature.java
@@ -40,6 +40,7 @@ import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
+import android.widget.HorizontalScrollView;
import android.widget.ImageButton;
import android.widget.TextView;
@@ -63,7 +64,7 @@ public class ActivitySignature extends ActivityBase {
private TextView tvHtmlRemark;
private EditTextCompose etText;
private ImageButton ibFull;
- private BottomNavigationView style_bar;
+ private HorizontalScrollView style_bar;
private BottomNavigationView bottom_navigation;
private boolean loaded = false;
@@ -138,12 +139,7 @@ public class ActivitySignature extends ActivityBase {
}
});
- style_bar.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
- @Override
- public boolean onNavigationItemSelected(@NonNull MenuItem item) {
- return onActionStyle(item.getItemId());
- }
- });
+ StyleHelper.wire(this, view, etText);
bottom_navigation.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
@@ -152,6 +148,9 @@ public class ActivitySignature extends ActivityBase {
if (itemId == R.id.action_insert_image) {
insertImage();
return true;
+ } else if (itemId == R.id.action_insert_link) {
+ insertLink();
+ return true;
} else if (itemId == R.id.action_delete) {
delete();
return true;
@@ -385,18 +384,11 @@ public class ActivitySignature extends ActivityBase {
startActivityForResult(intent, REQUEST_IMAGE);
}
- private boolean onActionStyle(int itemId) {
- Log.i("Style action=" + itemId);
-
- if (itemId == R.id.menu_link) {
- FragmentDialogInsertLink fragment = new FragmentDialogInsertLink();
- fragment.setArguments(FragmentDialogInsertLink.getArguments(etText));
- fragment.setTargetActivity(this, REQUEST_LINK);
- fragment.show(getSupportFragmentManager(), "signature:link");
-
- return true;
- } else
- return StyleHelper.apply(-1, itemId, ActivitySignature.this, findViewById(itemId), etText);
+ private void insertLink() {
+ FragmentDialogInsertLink fragment = new FragmentDialogInsertLink();
+ fragment.setArguments(FragmentDialogInsertLink.getArguments(etText));
+ fragment.setTargetActivity(this, REQUEST_LINK);
+ fragment.show(getSupportFragmentManager(), "signature:link");
}
private void onImageSelected(Uri uri) {
diff --git a/app/src/main/java/eu/faircode/email/FragmentAnswer.java b/app/src/main/java/eu/faircode/email/FragmentAnswer.java
index 7ae7eed42a..7ed752aa37 100644
--- a/app/src/main/java/eu/faircode/email/FragmentAnswer.java
+++ b/app/src/main/java/eu/faircode/email/FragmentAnswer.java
@@ -44,6 +44,7 @@ import android.view.View;
import android.view.ViewGroup;
import android.widget.CheckBox;
import android.widget.EditText;
+import android.widget.HorizontalScrollView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
@@ -70,7 +71,7 @@ public class FragmentAnswer extends FragmentBase {
private CheckBox cbExternal;
private ViewButtonColor btnColor;
private EditTextCompose etText;
- private BottomNavigationView style_bar;
+ private HorizontalScrollView style_bar;
private BottomNavigationView bottom_navigation;
private ContentLoadingProgressBar pbWait;
private Group grpReady;
@@ -157,12 +158,7 @@ public class FragmentAnswer extends FragmentBase {
}
});
- style_bar.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
- @Override
- public boolean onNavigationItemSelected(@NonNull MenuItem item) {
- return onActionStyle(-1, item.getItemId());
- }
- });
+ StyleHelper.wire(getViewLifecycleOwner(), view, etText);
bottom_navigation.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
@@ -171,6 +167,9 @@ public class FragmentAnswer extends FragmentBase {
if (itemId == R.id.action_insert_image) {
onInsertImage();
return true;
+ } else if (itemId == R.id.action_insert_link) {
+ onInsertLink();
+ return true;
} else if (itemId == R.id.action_delete) {
onActionDelete();
return true;
@@ -373,6 +372,13 @@ public class FragmentAnswer extends FragmentBase {
startActivityForResult(intent, REQUEST_IMAGE);
}
+ private void onInsertLink() {
+ FragmentDialogInsertLink fragment = new FragmentDialogInsertLink();
+ fragment.setArguments(FragmentDialogInsertLink.getArguments(etText));
+ fragment.setTargetFragment(this, REQUEST_LINK);
+ fragment.show(getParentFragmentManager(), "answer:link");
+ }
+
private void onActionDelete() {
Bundle args = new Bundle();
args.putString("question", getString(R.string.title_ask_delete_answer));
@@ -589,18 +595,4 @@ public class FragmentAnswer extends FragmentBase {
}
}.execute(this, args, "answer:delete");
}
-
- private boolean onActionStyle(int groupId, int itemId) {
- Log.i("Style action=" + itemId);
-
- if (itemId == R.id.menu_link) {
- FragmentDialogInsertLink fragment = new FragmentDialogInsertLink();
- fragment.setArguments(FragmentDialogInsertLink.getArguments(etText));
- fragment.setTargetFragment(this, REQUEST_LINK);
- fragment.show(getParentFragmentManager(), "answer:link");
-
- return true;
- } else
- return StyleHelper.apply(groupId, itemId, getViewLifecycleOwner(), view.findViewById(itemId), etText);
- }
}
diff --git a/app/src/main/res/layout/activity_signature.xml b/app/src/main/res/layout/activity_signature.xml
index 54df6ebff8..145880bd78 100644
--- a/app/src/main/res/layout/activity_signature.xml
+++ b/app/src/main/res/layout/activity_signature.xml
@@ -53,18 +53,14 @@
app:srcCompat="@drawable/twotone_fullscreen_24"
app:tint="?attr/colorAccent" />
-
+ app:layout_constraintStart_toStartOf="parent" />
-
+ app:layout_constraintStart_toStartOf="parent" />
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ app:layout_constraintStart_toStartOf="parent" />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/menu/action_answer.xml b/app/src/main/res/menu/action_answer.xml
index 30bfc3109d..b331153269 100644
--- a/app/src/main/res/menu/action_answer.xml
+++ b/app/src/main/res/menu/action_answer.xml
@@ -5,6 +5,11 @@
android:icon="@drawable/twotone_image_24"
android:title="@string/title_edit_signature_image" />
+
+
-
-
diff --git a/app/src/main/res/menu/action_signature.xml b/app/src/main/res/menu/action_signature.xml
index 30bfc3109d..b331153269 100644
--- a/app/src/main/res/menu/action_signature.xml
+++ b/app/src/main/res/menu/action_signature.xml
@@ -5,6 +5,11 @@
android:icon="@drawable/twotone_image_24"
android:title="@string/title_edit_signature_image" />
+
+
-
-