MCPcopy Create free account
hub / github.com/M66B/FairEmail / selectSize

Method selectSize

app/src/main/java/eu/faircode/email/StyleHelper.java:603–639  ·  view source on GitHub ↗
(LifecycleOwner owner, View anchor, EditText etBody)

Source from the content-addressed store, hash-verified

601 }
602
603 static boolean selectSize(LifecycleOwner owner, View anchor, EditText etBody) {
604 Log.breadcrumb("style", "action", "selectSize");
605
606 Context context = anchor.getContext();
607 PopupMenuLifecycle popupMenu = new PopupMenuLifecycle(context, owner, anchor);
608
609 int[] titles = new int[]{
610 R.string.title_style_size_xsmall,
611 R.string.title_style_size_small,
612 R.string.title_style_size_medium,
613 R.string.title_style_size_large,
614 R.string.title_style_size_xlarge};
615
616 float[] sizes = new float[]{
617 HtmlHelper.FONT_XSMALL,
618 HtmlHelper.FONT_SMALL,
619 1.0f,
620 HtmlHelper.FONT_LARGE,
621 HtmlHelper.FONT_XLARGE};
622
623 for (int i = 0; i < titles.length; i++) {
624 SpannableStringBuilder ssb = new SpannableStringBuilderEx(context.getString(titles[i]));
625 ssb.setSpan(new RelativeSizeSpan(sizes[i]), 0, ssb.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
626 popupMenu.getMenu().add(group_style_size, i + 1, i, ssb);
627 }
628
629 popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
630 @Override
631 public boolean onMenuItemClick(MenuItem item) {
632 return StyleHelper.apply(group_style_size, item.getItemId(), owner, anchor, etBody);
633 }
634 });
635
636 popupMenu.show();
637
638 return true;
639 }
640
641 static boolean setSize(EditText etBody, int start, int end, Float size, boolean select) {
642 Log.breadcrumb("style", "action", "size");

Callers 1

applyMethod · 0.95

Calls 7

breadcrumbMethod · 0.95
setSpanMethod · 0.95
showMethod · 0.95
getStringMethod · 0.45
lengthMethod · 0.45
addMethod · 0.45

Tested by

no test coverage detected