From c1d98cad002e4c1a1a53788ae46b741196d9ff08 Mon Sep 17 00:00:00 2001 From: LucasGGamerM Date: Wed, 28 Dec 2022 19:49:38 -0300 Subject: [PATCH] Its now optional! --- .../android/GlobalUserPreferences.java | 3 +++ .../android/fragments/ComposeFragment.java | 22 +++++++++++++------ .../android/fragments/SettingsFragment.java | 4 ++++ ...c_fluent_arrow_autofit_down_24_regular.xml | 3 +++ .../ic_fluent_arrow_circle_up_24_regular.xml | 3 +++ .../src/main/res/layout/fragment_compose.xml | 1 + mastodon/src/main/res/values/strings_sk.xml | 1 + 7 files changed, 30 insertions(+), 7 deletions(-) create mode 100644 mastodon/src/main/res/drawable/ic_fluent_arrow_autofit_down_24_regular.xml create mode 100644 mastodon/src/main/res/drawable/ic_fluent_arrow_circle_up_24_regular.xml diff --git a/mastodon/src/main/java/org/joinmastodon/android/GlobalUserPreferences.java b/mastodon/src/main/java/org/joinmastodon/android/GlobalUserPreferences.java index 03089a593..52e6420f6 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/GlobalUserPreferences.java +++ b/mastodon/src/main/java/org/joinmastodon/android/GlobalUserPreferences.java @@ -29,6 +29,7 @@ public class GlobalUserPreferences{ public static boolean disableDividers; public static boolean voteButtonForSingleChoice; public static boolean showDifferentiatedPushNoticationIcons; + public static boolean relocatePublishButton; public static ThemePreference theme; public static ColorPreference color; @@ -59,6 +60,7 @@ public class GlobalUserPreferences{ disableMarquee=prefs.getBoolean("disableMarquee", false); disableSwipe=prefs.getBoolean("disableSwipe", false); disableDividers=prefs.getBoolean("disableDividers", true); + relocatePublishButton=prefs.getBoolean("relocatePublishButton", false); voteButtonForSingleChoice=prefs.getBoolean("voteButtonForSingleChoice", true); theme=ThemePreference.values()[prefs.getInt("theme", 0)]; recentLanguages=fromJson(prefs.getString("recentLanguages", "{}"), recentLanguagesType, new HashMap<>()); @@ -89,6 +91,7 @@ public class GlobalUserPreferences{ .putBoolean("disableMarquee", disableMarquee) .putBoolean("disableSwipe", disableSwipe) .putBoolean("disableDividers", disableDividers) + .putBoolean("relocatePublishButton", relocatePublishButton) .putBoolean("showDifferentiatedPushNoticationIcons", showDifferentiatedPushNoticationIcons) .putInt("theme", theme.ordinal()) .putString("color", color.name()) diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/ComposeFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/ComposeFragment.java index a76c048a3..915dde92b 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/ComposeFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/ComposeFragment.java @@ -299,9 +299,12 @@ public class ComposeFragment extends MastodonToolbarFragment implements OnBackPr sensitiveItem=view.findViewById(R.id.sensitive_item); replyText=view.findViewById(R.id.reply_text); - publishButton=view.findViewById(R.id.publish); - publishButton.setText(editingStatus==null || redraftStatus ? R.string.publish : R.string.save); - publishButton.setOnClickListener(this::onPublishClick); + if(GlobalUserPreferences.relocatePublishButton){ + publishButton=view.findViewById(R.id.publish); + publishButton.setText(editingStatus==null || redraftStatus ? R.string.publish : R.string.save); + publishButton.setOnClickListener(this::onPublishClick); + publishButton.setVisibility(View.VISIBLE); + } mediaBtn.setOnClickListener(v->openFilePicker()); pollBtn.setOnClickListener(v->togglePoll()); @@ -636,9 +639,11 @@ public class ComposeFragment extends MastodonToolbarFragment implements OnBackPr @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater){ -// publishButton=new Button(getActivity()); -// publishButton.setText(editingStatus==null || redraftStatus ? R.string.publish : R.string.save); -// publishButton.setOnClickListener(this::onPublishClick); + if(!GlobalUserPreferences.relocatePublishButton){ + publishButton=new Button(getActivity()); + publishButton.setText(editingStatus==null || redraftStatus ? R.string.publish : R.string.save); + publishButton.setOnClickListener(this::onPublishClick); + } LinearLayout wrap=new LinearLayout(getActivity()); wrap.setOrientation(LinearLayout.HORIZONTAL); @@ -661,7 +666,10 @@ public class ComposeFragment extends MastodonToolbarFragment implements OnBackPr langParams.setMarginEnd(V.dp(8)); wrap.addView(buildLanguageSelector(), langParams); -// wrap.addView(publishButton, new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT)); + if(!GlobalUserPreferences.relocatePublishButton){ + wrap.addView(publishButton, new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT)); + } + wrap.setPadding(V.dp(16), V.dp(4), V.dp(16), V.dp(8)); wrap.setClipToPadding(false); MenuItem item=menu.add(editingStatus==null ? R.string.publish : R.string.save); diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/SettingsFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/SettingsFragment.java index 6bb271475..ae4a988e6 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/SettingsFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/SettingsFragment.java @@ -150,6 +150,10 @@ public class SettingsFragment extends MastodonToolbarFragment{ GlobalUserPreferences.save(); needAppRestart=true; })); + items.add(new SwitchItem(R.string.sk_relocate_publish_button, R.drawable.ic_fluent_arrow_autofit_down_24_regular, GlobalUserPreferences.relocatePublishButton, i->{ + GlobalUserPreferences.relocatePublishButton=i.checked; + GlobalUserPreferences.save(); + })); items.add(new HeaderItem(R.string.home_timeline)); items.add(new SwitchItem(R.string.sk_settings_show_replies, R.drawable.ic_fluent_chat_multiple_24_regular, GlobalUserPreferences.showReplies, i->{ diff --git a/mastodon/src/main/res/drawable/ic_fluent_arrow_autofit_down_24_regular.xml b/mastodon/src/main/res/drawable/ic_fluent_arrow_autofit_down_24_regular.xml new file mode 100644 index 000000000..1d39a6993 --- /dev/null +++ b/mastodon/src/main/res/drawable/ic_fluent_arrow_autofit_down_24_regular.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/mastodon/src/main/res/drawable/ic_fluent_arrow_circle_up_24_regular.xml b/mastodon/src/main/res/drawable/ic_fluent_arrow_circle_up_24_regular.xml new file mode 100644 index 000000000..aa0de6685 --- /dev/null +++ b/mastodon/src/main/res/drawable/ic_fluent_arrow_circle_up_24_regular.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/mastodon/src/main/res/layout/fragment_compose.xml b/mastodon/src/main/res/layout/fragment_compose.xml index 69fcd2832..b7f8dba37 100644 --- a/mastodon/src/main/res/layout/fragment_compose.xml +++ b/mastodon/src/main/res/layout/fragment_compose.xml @@ -321,6 +321,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="8dp" + android:visibility="gone" /> diff --git a/mastodon/src/main/res/values/strings_sk.xml b/mastodon/src/main/res/values/strings_sk.xml index 742706bdf..a750a5ad3 100644 --- a/mastodon/src/main/res/values/strings_sk.xml +++ b/mastodon/src/main/res/values/strings_sk.xml @@ -38,6 +38,7 @@ Always reveal content warnings Disable scrolling text in title bars Disable toot dividers + Relocate publish button Contribute to Moshidon Show federated timeline Posts