summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas <tschneider.ac@gmail.com>2023-08-16 16:03:12 +0200
committerThomas <tschneider.ac@gmail.com>2023-08-16 16:03:12 +0200
commitc63ae5df4f4e3a6966c410abd108a728c0b304a7 (patch)
tree6367cae3a5556a42799ef9e7a40ff3faaf1e8395
parent1965d196ae7ce58a1808a96f05c506b671c4d374 (diff)
Make buttons still visible when composing with media
-rw-r--r--app/src/main/java/app/fedilab/android/mastodon/ui/fragment/media/FragmentMedia.java14
-rw-r--r--app/src/main/res/layouts/mastodon/layout/activity_media_pager.xml9
-rw-r--r--app/src/main/res/layouts/mastodon/layout/fragment_slide_media.xml25
-rw-r--r--src/fdroid/fastlane/metadata/android/en/changelogs/499.txt19
4 files changed, 58 insertions, 9 deletions
diff --git a/app/src/main/java/app/fedilab/android/mastodon/ui/fragment/media/FragmentMedia.java b/app/src/main/java/app/fedilab/android/mastodon/ui/fragment/media/FragmentMedia.java
index bedc2122c..476c2644f 100644
--- a/app/src/main/java/app/fedilab/android/mastodon/ui/fragment/media/FragmentMedia.java
+++ b/app/src/main/java/app/fedilab/android/mastodon/ui/fragment/media/FragmentMedia.java
@@ -21,6 +21,7 @@ import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
+import android.os.Looper;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -246,7 +247,7 @@ public class FragmentMedia extends Fragment {
}
binding.pbarInf.setIndeterminate(false);
binding.pbarInf.setScaleY(3f);
- binding.mediaVideo.setVisibility(View.VISIBLE);
+ binding.videoViewContainer.setVisibility(View.VISIBLE);
Uri uri = Uri.parse(url);
SharedPreferences sharedpreferences = PreferenceManager.getDefaultSharedPreferences(requireActivity());
int video_cache = sharedpreferences.getInt(getString(R.string.SET_VIDEO_CACHE), Helper.DEFAULT_VIDEO_CACHE_MB);
@@ -266,7 +267,16 @@ public class FragmentMedia extends Fragment {
player.setRepeatMode(Player.REPEAT_MODE_ONE);
binding.mediaVideo.setUseController(false);
}
+ binding.mediaVideo.setOnTouchListener((view, motionEvent) -> {
+ if (binding.controls.getVisibility() != View.VISIBLE) {
+ binding.controls.setVisibility(View.VISIBLE);
+ final Handler handler = new Handler(Looper.getMainLooper());
+ handler.postDelayed(() -> binding.controls.setVisibility(View.GONE), 2000);
+ }
+ return false;
+ });
binding.mediaVideo.setPlayer(player);
+ binding.controls.setPlayer(player);
binding.loader.setVisibility(View.GONE);
binding.mediaPicture.setVisibility(View.GONE);
player.setMediaSource(videoSource);
@@ -349,7 +359,7 @@ public class FragmentMedia extends Fragment {
@Override
public void onSlideChange(float percent) {
if (percent < 0.70) {
- binding.mediaVideo.setVisibility(View.GONE);
+ binding.videoViewContainer.setVisibility(View.GONE);
binding.videoLayout.setVisibility(View.GONE);
ActivityCompat.finishAfterTransition(requireActivity());
}
diff --git a/app/src/main/res/layouts/mastodon/layout/activity_media_pager.xml b/app/src/main/res/layouts/mastodon/layout/activity_media_pager.xml
index d82c2896a..991c521e9 100644
--- a/app/src/main/res/layouts/mastodon/layout/activity_media_pager.xml
+++ b/app/src/main/res/layouts/mastodon/layout/activity_media_pager.xml
@@ -35,6 +35,7 @@
android:id="@+id/media_description"
android:layout_width="0dp"
android:layout_height="wrap_content"
+ android:layout_marginTop="100dp"
android:maxHeight="300dp"
android:scrollbars="vertical"
android:layout_gravity="center_horizontal|bottom"
@@ -44,12 +45,13 @@
android:textColor="#ffffffff"
android:textIsSelectable="true"
android:visibility="gone"
- app:layout_constraintBottom_toTopOf="@+id/original_message"
+ app:layout_constraintTop_toTopOf="parent"
app:layout_constraintEnd_toStartOf="@+id/translate"
app:layout_constraintStart_toStartOf="parent"
tools:visibility="visible" />
<TextView
+ android:layout_marginTop="100dp"
android:id="@+id/media_description_translated"
android:layout_width="0dp"
android:maxHeight="300dp"
@@ -63,12 +65,13 @@
android:textColor="#ffffffff"
android:textIsSelectable="true"
android:visibility="gone"
- app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintTop_toTopOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
tools:visibility="visible" />
<com.google.android.material.button.MaterialButton
+ android:layout_marginTop="100dp"
android:id="@+id/translate"
style="@style/Widget.Material3.Button.IconButton"
android:layout_width="wrap_content"
@@ -77,7 +80,7 @@
android:visibility="gone"
app:icon="@drawable/ic_baseline_translate_24"
app:iconPadding="0dp"
- app:layout_constraintBottom_toBottomOf="@+id/media_description"
+ app:layout_constraintTop_toTopOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/media_description"
tools:visibility="visible" />
diff --git a/app/src/main/res/layouts/mastodon/layout/fragment_slide_media.xml b/app/src/main/res/layouts/mastodon/layout/fragment_slide_media.xml
index 2137b9f39..2fc855328 100644
--- a/app/src/main/res/layouts/mastodon/layout/fragment_slide_media.xml
+++ b/app/src/main/res/layouts/mastodon/layout/fragment_slide_media.xml
@@ -59,12 +59,29 @@
</FrameLayout>
- <com.google.android.exoplayer2.ui.PlayerView
- android:id="@+id/media_video"
+ <FrameLayout xmlns:app="http://schemas.android.com/apk/res-auto"
+ android:id="@+id/video_view_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:layout_centerInParent="true"
- android:visibility="gone" />
+ android:visibility="gone">
+
+ <com.google.android.exoplayer2.ui.PlayerView
+ android:id="@+id/media_video"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center"
+ app:use_controller="false" />
+
+ <com.google.android.exoplayer2.ui.PlayerControlView
+ android:id="@+id/controls"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_gravity="bottom"
+ android:layout_marginBottom="50dp"
+ app:show_timeout="2000" />
+
+ </FrameLayout>
+
<com.google.android.material.button.MaterialButton
android:id="@+id/load_remote"
diff --git a/src/fdroid/fastlane/metadata/android/en/changelogs/499.txt b/src/fdroid/fastlane/metadata/android/en/changelogs/499.txt
new file mode 100644
index 000000000..4c91446a6
--- /dev/null
+++ b/src/fdroid/fastlane/metadata/android/en/changelogs/499.txt
@@ -0,0 +1,19 @@
+Added:
+- Markdown support (can be disabled in Settings > Timelines)
+- Hide / Show Self boosts and self replies (Long press the Home tab)
+
+Changed:
+- Full screen size when writing media descriptions.
+- Move media descriptions to the top
+
+Fixed:
+- Holes in timelines due to a cache bug
+- Spoiler issue when composing threads
+- CamelCase tags when forwarding them in replies
+- Buttons hidden by keyboard when composing
+- Overlay with menu and buttons when playing videos
+- Clicks on card do not open Mastodon posts inside the app
+- Scrollable bio when editing profiles
+- Crash when adding a user into a list
+- Longer fields when editing bio
+- Crash with Pixelfed