diff options
author | stefan-niedermann <info@niedermann.it> | 2019-02-08 01:16:19 +0300 |
---|---|---|
committer | stefan-niedermann <info@niedermann.it> | 2019-02-08 01:16:19 +0300 |
commit | 1b882b43faf118513475685643592bd3a257ff93 (patch) | |
tree | 0a6976645d04eb3f6b3d635777b64249c01efdf5 /app/src | |
parent | b9d46cf75891af8c45c03257562169c0c85f9816 (diff) |
#363 Context based formatting
- render 'bold' & 'italic' in pop-over-menu in bold & italic
Diffstat (limited to 'app/src')
-rw-r--r-- | app/src/main/java/it/niedermann/owncloud/notes/util/StyleCallback.java | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/util/StyleCallback.java b/app/src/main/java/it/niedermann/owncloud/notes/util/StyleCallback.java index 21c66644..567e21f4 100644 --- a/app/src/main/java/it/niedermann/owncloud/notes/util/StyleCallback.java +++ b/app/src/main/java/it/niedermann/owncloud/notes/util/StyleCallback.java @@ -3,6 +3,7 @@ package it.niedermann.owncloud.notes.util; import android.graphics.Typeface; import android.text.SpannableStringBuilder; import android.text.style.StyleSpan; +import android.util.SparseIntArray; import android.view.ActionMode; import android.view.Menu; import android.view.MenuInflater; @@ -24,6 +25,23 @@ public class StyleCallback implements ActionMode.Callback { MenuInflater inflater = mode.getMenuInflater(); inflater.inflate(R.menu.style, menu); menu.removeItem(android.R.id.selectAll); + + SparseIntArray styleFormatMap = new SparseIntArray(); + styleFormatMap.append(R.id.bold, Typeface.BOLD); + styleFormatMap.append(R.id.italic, Typeface.ITALIC); + + MenuItem item; + CharSequence title; + SpannableStringBuilder ssb; + + for (int i = 0; i < styleFormatMap.size(); i++) { + item = menu.findItem(styleFormatMap.keyAt(i)); + title = item.getTitle(); + ssb = new SpannableStringBuilder(title); + ssb.setSpan(new StyleSpan(styleFormatMap.valueAt(i)), 0, title.length(), 0); + item.setTitle(ssb); + } + return true; } |