Loading app/src/main/java/app/fedilab/android/mastodon/activities/BaseActivity.java +15 −0 Original line number Diff line number Diff line Loading @@ -15,7 +15,9 @@ package app.fedilab.android.mastodon.activities; * see <http://www.gnu.org/licenses>. */ import static app.fedilab.android.BaseMainActivity.currentInstance; import static app.fedilab.android.BaseMainActivity.currentNightMode; import static app.fedilab.android.BaseMainActivity.currentUserID; import android.annotation.SuppressLint; import android.content.Context; Loading @@ -24,6 +26,7 @@ import android.content.res.Configuration; import android.graphics.Color; import android.os.Build; import android.os.Bundle; import android.view.View; import android.view.Window; import android.view.WindowManager; Loading Loading @@ -72,8 +75,20 @@ public class BaseActivity extends AppCompatActivity { } String currentTheme = sharedpreferences.getString(getString(R.string.SET_THEME_BASE), getString(R.string.SET_DEFAULT_THEME)); boolean customAccentEnabled = sharedpreferences.getBoolean(getString(R.string.SET_CUSTOM_ACCENT) + currentUserID + currentInstance, false); //Default automatic switch currentNightMode = getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK; if(customAccentEnabled && currentNightMode == Configuration.UI_MODE_NIGHT_NO) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR|View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR); }else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR); } } if (currentTheme.equals(getString(R.string.SET_DEFAULT_THEME))) { switch (currentNightMode) { case Configuration.UI_MODE_NIGHT_NO -> { Loading app/src/main/java/app/fedilab/android/mastodon/activities/BaseBarActivity.java +11 −0 Original line number Diff line number Diff line Loading @@ -15,7 +15,9 @@ package app.fedilab.android.mastodon.activities; * see <http://www.gnu.org/licenses>. */ import static app.fedilab.android.BaseMainActivity.currentInstance; import static app.fedilab.android.BaseMainActivity.currentNightMode; import static app.fedilab.android.BaseMainActivity.currentUserID; import android.annotation.SuppressLint; import android.content.Context; Loading @@ -24,6 +26,7 @@ import android.content.res.Configuration; import android.graphics.Color; import android.os.Build; import android.os.Bundle; import android.view.View; import android.view.Window; import android.view.WindowManager; Loading Loading @@ -67,8 +70,16 @@ public class BaseBarActivity extends AppCompatActivity { } } String currentTheme = sharedpreferences.getString(getString(R.string.SET_THEME_BASE), getString(R.string.SET_DEFAULT_THEME)); boolean customAccentEnabled = sharedpreferences.getBoolean(getString(R.string.SET_CUSTOM_ACCENT) + currentUserID + currentInstance, false); //Default automatic switch currentNightMode = getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK; if(customAccentEnabled && currentNightMode == Configuration.UI_MODE_NIGHT_NO) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR|View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR); }else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR); } } if (currentTheme.equals(getString(R.string.SET_DEFAULT_THEME))) { switch (currentNightMode) { case Configuration.UI_MODE_NIGHT_NO -> { Loading app/src/main/java/app/fedilab/android/mastodon/activities/MediaActivity.java +2 −0 Original line number Diff line number Diff line Loading @@ -199,6 +199,7 @@ public class MediaActivity extends BaseBarActivity implements OnDownloadInterfac if (mCurrentFragment != null) { mCurrentFragment.toggleController(false); } binding.translate.setVisibility(View.GONE); } else { Toasty.error(MediaActivity.this, getString(R.string.toast_error_translate), Toast.LENGTH_LONG).show(); } Loading Loading @@ -248,6 +249,7 @@ public class MediaActivity extends BaseBarActivity implements OnDownloadInterfac if (mCurrentFragment != null) { mCurrentFragment.toggleController(true); } binding.translate.setVisibility(View.GONE); } else { Toasty.error(MediaActivity.this, getString(R.string.toast_error_translate), Toast.LENGTH_LONG).show(); } Loading app/src/main/java/app/fedilab/android/mastodon/ui/drawer/StatusAdapter.java +8 −12 Original line number Diff line number Diff line Loading @@ -631,15 +631,17 @@ public class StatusAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> holder.binding.quotedMessage.cardviewContainer.setVisibility(View.GONE); } if (Helper.getCurrentAccount(context) != null && Helper.getCurrentAccount(context).api == Account.API.PLEROMA || status.reactions != null) { if (status.pleroma != null && status.pleroma.emoji_reactions != null && status.pleroma.emoji_reactions.size() > 0) { if (extraFeatures && displayReactions) { holder.binding.statusAddCustomEmoji.setVisibility(View.VISIBLE); holder.binding.statusEmoji.setVisibility(View.VISIBLE); if (status.pleroma != null && status.pleroma.emoji_reactions != null && !status.pleroma.emoji_reactions.isEmpty()) { holder.binding.layoutReactions.getRoot().setVisibility(View.VISIBLE); ReactionAdapter reactionAdapter = new ReactionAdapter(status.id, status.pleroma.emoji_reactions, true); holder.binding.layoutReactions.reactionsView.setAdapter(reactionAdapter); LinearLayoutManager layoutManager = new LinearLayoutManager(context, LinearLayoutManager.HORIZONTAL, false); holder.binding.layoutReactions.reactionsView.setLayoutManager(layoutManager); } else if (status.reactions != null && status.reactions.size() > 0) { } else if (status.reactions != null && !status.reactions.isEmpty()) { holder.binding.layoutReactions.getRoot().setVisibility(View.VISIBLE); ReactionAdapter reactionAdapter = new ReactionAdapter(status.id, status.reactions, true, false); holder.binding.layoutReactions.reactionsView.setAdapter(reactionAdapter); Loading Loading @@ -801,6 +803,9 @@ public class StatusAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> } builder.show(); }); } else { holder.binding.statusAddCustomEmoji.setVisibility(View.GONE); holder.binding.statusEmoji.setVisibility(View.GONE); } int truncate_toots_size = sharedpreferences.getInt(context.getString(R.string.SET_TRUNCATE_TOOTS_SIZE), 0); Loading @@ -811,15 +816,6 @@ public class StatusAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> } else { holder.binding.actionButtonQuote.setVisibility(View.GONE); } if (displayReactions) { holder.binding.statusAddCustomEmoji.setVisibility(View.VISIBLE); holder.binding.statusEmoji.setVisibility(View.VISIBLE); } else { holder.binding.statusAddCustomEmoji.setVisibility(View.GONE); holder.binding.statusEmoji.setVisibility(View.GONE); } } if (status.isMaths == null) { Loading app/src/main/res/layouts/mastodon/layout/activity_media_pager.xml +13 −13 Original line number Diff line number Diff line Loading @@ -20,10 +20,10 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:animateLayoutChanges="true" android:fitsSystemWindows="true" android:background="@android:color/transparent"> <androidx.viewpager.widget.ViewPager android:id="@+id/media_viewpager" android:layout_width="match_parent" Loading @@ -45,17 +45,17 @@ android:layout_height="wrap_content"> <TextView android:id="@+id/media_description" android:fitsSystemWindows="true" android:paddingStart="10dp" android:paddingTop="10dp" android:paddingBottom="10dp" android:paddingEnd="10dp" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_width="match_parent" android:layout_height="0dp" android:maxHeight="300dp" android:scrollbars="vertical" android:layout_gravity="center_horizontal|bottom" android:layout_gravity="center_horizontal" tools:text="@tools:sample/lorem/random" android:gravity="center" android:gravity="center_horizontal" android:textColor="#ffffffff" android:textIsSelectable="true" app:layout_constraintTop_toTopOf="parent" Loading @@ -63,17 +63,16 @@ app:layout_constraintStart_toStartOf="parent" /> <TextView android:fitsSystemWindows="true" android:id="@+id/media_description_translated" android:layout_width="0dp" android:layout_width="match_parent" android:paddingStart="10dp" android:paddingTop="10dp" android:paddingBottom="10dp" android:paddingEnd="10dp" android:maxHeight="300dp" android:scrollbars="vertical" android:layout_height="wrap_content" android:layout_height="0dp" android:layout_gravity="center_horizontal|bottom" android:gravity="center" android:textColor="#ffffffff" android:textIsSelectable="true" Loading @@ -81,6 +80,7 @@ app:layout_constraintTop_toTopOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" tools:visibility="visible" /> <androidx.constraintlayout.widget.Barrier Loading @@ -90,16 +90,16 @@ app:barrierDirection="bottom" app:constraint_referenced_ids="media_description,media_description_translated" /> <com.google.android.material.button.MaterialButton android:layout_marginEnd="10dp" android:id="@+id/translate" style="@style/Widget.Material3.Button.ElevatedButton" style="@style/Widget.Material3.Button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:contentDescription="@string/translate" android:drawablePadding="5dp" android:text="@string/translate" app:icon="@drawable/ic_baseline_translate_24" app:iconPadding="0dp" app:iconPadding="5dp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toBottomOf="@+id/media_description_barrier" /> Loading Loading
app/src/main/java/app/fedilab/android/mastodon/activities/BaseActivity.java +15 −0 Original line number Diff line number Diff line Loading @@ -15,7 +15,9 @@ package app.fedilab.android.mastodon.activities; * see <http://www.gnu.org/licenses>. */ import static app.fedilab.android.BaseMainActivity.currentInstance; import static app.fedilab.android.BaseMainActivity.currentNightMode; import static app.fedilab.android.BaseMainActivity.currentUserID; import android.annotation.SuppressLint; import android.content.Context; Loading @@ -24,6 +26,7 @@ import android.content.res.Configuration; import android.graphics.Color; import android.os.Build; import android.os.Bundle; import android.view.View; import android.view.Window; import android.view.WindowManager; Loading Loading @@ -72,8 +75,20 @@ public class BaseActivity extends AppCompatActivity { } String currentTheme = sharedpreferences.getString(getString(R.string.SET_THEME_BASE), getString(R.string.SET_DEFAULT_THEME)); boolean customAccentEnabled = sharedpreferences.getBoolean(getString(R.string.SET_CUSTOM_ACCENT) + currentUserID + currentInstance, false); //Default automatic switch currentNightMode = getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK; if(customAccentEnabled && currentNightMode == Configuration.UI_MODE_NIGHT_NO) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR|View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR); }else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR); } } if (currentTheme.equals(getString(R.string.SET_DEFAULT_THEME))) { switch (currentNightMode) { case Configuration.UI_MODE_NIGHT_NO -> { Loading
app/src/main/java/app/fedilab/android/mastodon/activities/BaseBarActivity.java +11 −0 Original line number Diff line number Diff line Loading @@ -15,7 +15,9 @@ package app.fedilab.android.mastodon.activities; * see <http://www.gnu.org/licenses>. */ import static app.fedilab.android.BaseMainActivity.currentInstance; import static app.fedilab.android.BaseMainActivity.currentNightMode; import static app.fedilab.android.BaseMainActivity.currentUserID; import android.annotation.SuppressLint; import android.content.Context; Loading @@ -24,6 +26,7 @@ import android.content.res.Configuration; import android.graphics.Color; import android.os.Build; import android.os.Bundle; import android.view.View; import android.view.Window; import android.view.WindowManager; Loading Loading @@ -67,8 +70,16 @@ public class BaseBarActivity extends AppCompatActivity { } } String currentTheme = sharedpreferences.getString(getString(R.string.SET_THEME_BASE), getString(R.string.SET_DEFAULT_THEME)); boolean customAccentEnabled = sharedpreferences.getBoolean(getString(R.string.SET_CUSTOM_ACCENT) + currentUserID + currentInstance, false); //Default automatic switch currentNightMode = getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK; if(customAccentEnabled && currentNightMode == Configuration.UI_MODE_NIGHT_NO) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR|View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR); }else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR); } } if (currentTheme.equals(getString(R.string.SET_DEFAULT_THEME))) { switch (currentNightMode) { case Configuration.UI_MODE_NIGHT_NO -> { Loading
app/src/main/java/app/fedilab/android/mastodon/activities/MediaActivity.java +2 −0 Original line number Diff line number Diff line Loading @@ -199,6 +199,7 @@ public class MediaActivity extends BaseBarActivity implements OnDownloadInterfac if (mCurrentFragment != null) { mCurrentFragment.toggleController(false); } binding.translate.setVisibility(View.GONE); } else { Toasty.error(MediaActivity.this, getString(R.string.toast_error_translate), Toast.LENGTH_LONG).show(); } Loading Loading @@ -248,6 +249,7 @@ public class MediaActivity extends BaseBarActivity implements OnDownloadInterfac if (mCurrentFragment != null) { mCurrentFragment.toggleController(true); } binding.translate.setVisibility(View.GONE); } else { Toasty.error(MediaActivity.this, getString(R.string.toast_error_translate), Toast.LENGTH_LONG).show(); } Loading
app/src/main/java/app/fedilab/android/mastodon/ui/drawer/StatusAdapter.java +8 −12 Original line number Diff line number Diff line Loading @@ -631,15 +631,17 @@ public class StatusAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> holder.binding.quotedMessage.cardviewContainer.setVisibility(View.GONE); } if (Helper.getCurrentAccount(context) != null && Helper.getCurrentAccount(context).api == Account.API.PLEROMA || status.reactions != null) { if (status.pleroma != null && status.pleroma.emoji_reactions != null && status.pleroma.emoji_reactions.size() > 0) { if (extraFeatures && displayReactions) { holder.binding.statusAddCustomEmoji.setVisibility(View.VISIBLE); holder.binding.statusEmoji.setVisibility(View.VISIBLE); if (status.pleroma != null && status.pleroma.emoji_reactions != null && !status.pleroma.emoji_reactions.isEmpty()) { holder.binding.layoutReactions.getRoot().setVisibility(View.VISIBLE); ReactionAdapter reactionAdapter = new ReactionAdapter(status.id, status.pleroma.emoji_reactions, true); holder.binding.layoutReactions.reactionsView.setAdapter(reactionAdapter); LinearLayoutManager layoutManager = new LinearLayoutManager(context, LinearLayoutManager.HORIZONTAL, false); holder.binding.layoutReactions.reactionsView.setLayoutManager(layoutManager); } else if (status.reactions != null && status.reactions.size() > 0) { } else if (status.reactions != null && !status.reactions.isEmpty()) { holder.binding.layoutReactions.getRoot().setVisibility(View.VISIBLE); ReactionAdapter reactionAdapter = new ReactionAdapter(status.id, status.reactions, true, false); holder.binding.layoutReactions.reactionsView.setAdapter(reactionAdapter); Loading Loading @@ -801,6 +803,9 @@ public class StatusAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> } builder.show(); }); } else { holder.binding.statusAddCustomEmoji.setVisibility(View.GONE); holder.binding.statusEmoji.setVisibility(View.GONE); } int truncate_toots_size = sharedpreferences.getInt(context.getString(R.string.SET_TRUNCATE_TOOTS_SIZE), 0); Loading @@ -811,15 +816,6 @@ public class StatusAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> } else { holder.binding.actionButtonQuote.setVisibility(View.GONE); } if (displayReactions) { holder.binding.statusAddCustomEmoji.setVisibility(View.VISIBLE); holder.binding.statusEmoji.setVisibility(View.VISIBLE); } else { holder.binding.statusAddCustomEmoji.setVisibility(View.GONE); holder.binding.statusEmoji.setVisibility(View.GONE); } } if (status.isMaths == null) { Loading
app/src/main/res/layouts/mastodon/layout/activity_media_pager.xml +13 −13 Original line number Diff line number Diff line Loading @@ -20,10 +20,10 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:animateLayoutChanges="true" android:fitsSystemWindows="true" android:background="@android:color/transparent"> <androidx.viewpager.widget.ViewPager android:id="@+id/media_viewpager" android:layout_width="match_parent" Loading @@ -45,17 +45,17 @@ android:layout_height="wrap_content"> <TextView android:id="@+id/media_description" android:fitsSystemWindows="true" android:paddingStart="10dp" android:paddingTop="10dp" android:paddingBottom="10dp" android:paddingEnd="10dp" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_width="match_parent" android:layout_height="0dp" android:maxHeight="300dp" android:scrollbars="vertical" android:layout_gravity="center_horizontal|bottom" android:layout_gravity="center_horizontal" tools:text="@tools:sample/lorem/random" android:gravity="center" android:gravity="center_horizontal" android:textColor="#ffffffff" android:textIsSelectable="true" app:layout_constraintTop_toTopOf="parent" Loading @@ -63,17 +63,16 @@ app:layout_constraintStart_toStartOf="parent" /> <TextView android:fitsSystemWindows="true" android:id="@+id/media_description_translated" android:layout_width="0dp" android:layout_width="match_parent" android:paddingStart="10dp" android:paddingTop="10dp" android:paddingBottom="10dp" android:paddingEnd="10dp" android:maxHeight="300dp" android:scrollbars="vertical" android:layout_height="wrap_content" android:layout_height="0dp" android:layout_gravity="center_horizontal|bottom" android:gravity="center" android:textColor="#ffffffff" android:textIsSelectable="true" Loading @@ -81,6 +80,7 @@ app:layout_constraintTop_toTopOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" tools:visibility="visible" /> <androidx.constraintlayout.widget.Barrier Loading @@ -90,16 +90,16 @@ app:barrierDirection="bottom" app:constraint_referenced_ids="media_description,media_description_translated" /> <com.google.android.material.button.MaterialButton android:layout_marginEnd="10dp" android:id="@+id/translate" style="@style/Widget.Material3.Button.ElevatedButton" style="@style/Widget.Material3.Button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:contentDescription="@string/translate" android:drawablePadding="5dp" android:text="@string/translate" app:icon="@drawable/ic_baseline_translate_24" app:iconPadding="0dp" app:iconPadding="5dp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toBottomOf="@+id/media_description_barrier" /> Loading