mirror of
https://github.com/commons-app/apps-android-commons.git
synced 2025-10-28 13:23:58 +01:00
* Api call * added captions * final commit * some minor changes * sigular * test for captions * mock fetchCaptionbyFileName * corrected method name * * used ? instead of !! (unsafe call on nullable) * updated unit test for fetchCaptionByFilename()
392 lines
No EOL
19 KiB
XML
392 lines
No EOL
19 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
|
xmlns:tools="http://schemas.android.com/tools"
|
|
android:orientation="vertical"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="match_parent"
|
|
android:background="?attr/mainBackground"
|
|
>
|
|
|
|
<ImageView
|
|
android:id="@+id/mediaDetailImageFailed"
|
|
android:layout_height="wrap_content"
|
|
android:layout_width="wrap_content"
|
|
android:layout_gravity="center"
|
|
android:src="@android:drawable/ic_menu_close_clear_cancel"
|
|
android:visibility="gone"
|
|
android:contentDescription="@string/mediaimage_failed"
|
|
/>
|
|
|
|
<com.facebook.drawee.view.SimpleDraweeView
|
|
android:id="@+id/mediaDetailImage"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="match_parent"
|
|
app:actualImageScaleType="centerCrop"
|
|
/>
|
|
|
|
<ScrollView
|
|
android:id="@+id/mediaDetailScrollView"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:background="@android:color/transparent"
|
|
android:cacheColorHint="@android:color/transparent"
|
|
android:fillViewport="true">
|
|
|
|
<LinearLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="vertical">
|
|
|
|
<!-- Placeholder. Height gets set at runtime based on container size; the initial value is a hack to keep
|
|
the detail info offscreen until it's placed properly. May be a better way to do this. -->
|
|
<fr.free.nrw.commons.media.MediaDetailSpacer
|
|
android:id="@+id/mediaDetailSpacer"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="@dimen/standard_gap" />
|
|
|
|
<LinearLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:background="?attr/fragmentCategorisationBackground"
|
|
android:orientation="vertical"
|
|
android:padding="@dimen/standard_gap">
|
|
|
|
<LinearLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:background="?attr/subBackground"
|
|
android:orientation="vertical"
|
|
android:padding="@dimen/standard_gap">
|
|
|
|
<TextView
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:paddingBottom="@dimen/tiny_gap"
|
|
android:text="@string/media_detail_caption"
|
|
android:textColor="@android:color/white"
|
|
android:textSize="@dimen/normal_text"
|
|
android:textStyle="bold" />
|
|
|
|
<TextView
|
|
android:id="@+id/mediaDetailCaption"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:layout_gravity="start"
|
|
android:background="?attr/subBackground"
|
|
android:padding="@dimen/small_gap"
|
|
android:textColor="@android:color/white"
|
|
android:textSize="@dimen/description_text_size"
|
|
tools:text="Captions of the media" />
|
|
</LinearLayout>
|
|
|
|
<LinearLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:background="?attr/subBackground"
|
|
android:orientation="vertical"
|
|
android:padding="@dimen/standard_gap">
|
|
|
|
<TextView
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:paddingBottom="@dimen/tiny_gap"
|
|
android:text="@string/media_detail_title"
|
|
android:textColor="@android:color/white"
|
|
android:textSize="@dimen/normal_text"
|
|
android:textStyle="bold" />
|
|
|
|
<TextView
|
|
android:id="@+id/mediaDetailTitle"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:layout_gravity="start"
|
|
android:background="?attr/subBackground"
|
|
android:padding="@dimen/small_gap"
|
|
android:textColor="@android:color/white"
|
|
android:textSize="@dimen/description_text_size"
|
|
tools:text="Title of the media" />
|
|
</LinearLayout>
|
|
|
|
<fr.free.nrw.commons.media.MediaDetailSpacer
|
|
android:layout_width="match_parent"
|
|
android:layout_height="@dimen/small_gap" />
|
|
|
|
<LinearLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:id="@+id/authorLinearLayout"
|
|
android:background="?attr/subBackground"
|
|
android:orientation="vertical"
|
|
android:padding="@dimen/standard_gap">
|
|
|
|
<TextView
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:paddingBottom="@dimen/tiny_gap"
|
|
android:text="@string/media_detail_author"
|
|
android:textColor="@android:color/white"
|
|
android:textSize="@dimen/normal_text"
|
|
android:textStyle="bold" />
|
|
|
|
<TextView
|
|
android:id="@+id/mediaDetailAuthor"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:layout_gravity="start"
|
|
android:background="?attr/subBackground"
|
|
android:padding="@dimen/small_gap"
|
|
android:textColor="@android:color/white"
|
|
android:textSize="@dimen/description_text_size"
|
|
tools:text="Media author user name goes here." />
|
|
</LinearLayout>
|
|
|
|
<fr.free.nrw.commons.media.MediaDetailSpacer
|
|
android:layout_width="match_parent"
|
|
android:layout_height="@dimen/small_gap" />
|
|
|
|
<LinearLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:background="?attr/subBackground"
|
|
android:orientation="vertical"
|
|
android:padding="@dimen/standard_gap">
|
|
|
|
<TextView
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:paddingBottom="@dimen/tiny_gap"
|
|
android:text="@string/media_detail_description"
|
|
android:textColor="@android:color/white"
|
|
android:textSize="@dimen/normal_text"
|
|
android:textStyle="bold" />
|
|
|
|
<fr.free.nrw.commons.ui.widget.HtmlTextView
|
|
android:id="@+id/mediaDetailDesc"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:layout_gravity="start"
|
|
android:background="?attr/subBackground"
|
|
android:padding="@dimen/small_gap"
|
|
android:textColor="@android:color/white"
|
|
android:textSize="@dimen/description_text_size"
|
|
tools:text="Description of the media goes here. This can potentially be fairly long, and will need to wrap across multiple lines. We hope it looks nice though." />
|
|
</LinearLayout>
|
|
|
|
<fr.free.nrw.commons.media.MediaDetailSpacer
|
|
android:layout_width="match_parent"
|
|
android:layout_height="@dimen/small_gap" />
|
|
|
|
<LinearLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:background="?attr/subBackground"
|
|
android:orientation="vertical"
|
|
android:padding="@dimen/standard_gap">
|
|
|
|
<TextView
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:paddingBottom="@dimen/tiny_gap"
|
|
android:text="@string/media_detail_license"
|
|
android:textColor="@android:color/white"
|
|
android:textSize="@dimen/normal_text"
|
|
android:textStyle="bold" />
|
|
|
|
<fr.free.nrw.commons.ui.widget.CompatTextView
|
|
android:id="@+id/mediaDetailLicense"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:layout_gravity="start"
|
|
android:background="?attr/subBackground"
|
|
android:foreground="?attr/selectableItemBackground"
|
|
android:gravity="center_vertical"
|
|
android:padding="@dimen/small_gap"
|
|
android:textColor="@android:color/white"
|
|
android:textSize="@dimen/description_text_size"
|
|
app:drawablePadding="@dimen/tiny_gap"
|
|
app:drawableStart="@drawable/ic_info_outline_24dp"
|
|
tools:text="License link" />
|
|
</LinearLayout>
|
|
|
|
<fr.free.nrw.commons.media.MediaDetailSpacer
|
|
android:layout_width="match_parent"
|
|
android:layout_height="@dimen/small_gap" />
|
|
|
|
<LinearLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:background="?attr/subBackground"
|
|
android:orientation="vertical"
|
|
android:padding="@dimen/standard_gap">
|
|
|
|
<TextView
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:paddingBottom="@dimen/tiny_gap"
|
|
android:text="@string/media_detail_coordinates"
|
|
android:textColor="@android:color/white"
|
|
android:textSize="@dimen/normal_text"
|
|
android:textStyle="bold" />
|
|
|
|
<fr.free.nrw.commons.ui.widget.CompatTextView
|
|
android:id="@+id/mediaDetailCoordinates"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:layout_gravity="start"
|
|
android:background="?attr/subBackground"
|
|
android:foreground="?attr/selectableItemBackground"
|
|
android:gravity="center_vertical"
|
|
android:padding="@dimen/small_gap"
|
|
android:textColor="@android:color/white"
|
|
android:textSize="@dimen/description_text_size"
|
|
app:drawablePadding="@dimen/tiny_gap"
|
|
app:drawableStart="@drawable/ic_map_white_24dp"
|
|
tools:text="Coordinates link" />
|
|
</LinearLayout>
|
|
|
|
<fr.free.nrw.commons.media.MediaDetailSpacer
|
|
android:layout_width="match_parent"
|
|
android:layout_height="@dimen/small_gap" />
|
|
|
|
<LinearLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:background="?attr/subBackground"
|
|
android:orientation="vertical"
|
|
android:padding="@dimen/standard_gap"
|
|
android:textStyle="bold">
|
|
|
|
<TextView
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:layout_gravity="start"
|
|
android:paddingBottom="@dimen/tiny_gap"
|
|
android:text="@string/detail_panel_cats_label"
|
|
android:textColor="@android:color/white"
|
|
android:textSize="@dimen/normal_text"
|
|
android:textStyle="bold" />
|
|
|
|
<LinearLayout
|
|
android:id="@+id/mediaDetailCategoryContainer"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="vertical" />
|
|
</LinearLayout>
|
|
|
|
<fr.free.nrw.commons.media.MediaDetailSpacer
|
|
android:layout_width="match_parent"
|
|
android:layout_height="@dimen/small_gap" />
|
|
|
|
<LinearLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:background="?attr/subBackground"
|
|
android:orientation="vertical"
|
|
android:padding="@dimen/standard_gap">
|
|
|
|
<TextView
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:paddingBottom="@dimen/tiny_gap"
|
|
android:text="@string/media_detail_uploaded_date"
|
|
android:textColor="@android:color/white"
|
|
android:textSize="@dimen/normal_text"
|
|
android:textStyle="bold" />
|
|
|
|
<TextView
|
|
android:id="@+id/mediaDetailuploadeddate"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:layout_gravity="start"
|
|
android:background="?attr/subBackground"
|
|
android:padding="@dimen/small_gap"
|
|
android:textColor="@android:color/white"
|
|
android:textSize="@dimen/description_text_size"
|
|
tools:text="Uploaded date" />
|
|
</LinearLayout>
|
|
|
|
<fr.free.nrw.commons.media.MediaDetailSpacer
|
|
android:layout_width="match_parent"
|
|
android:layout_height="@dimen/small_gap" />
|
|
|
|
<LinearLayout
|
|
android:id="@+id/nominatedDeletionBanner"
|
|
android:background="@color/deleteRed"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="vertical"
|
|
android:padding="@dimen/standard_gap"
|
|
android:visibility="gone">
|
|
<TextView
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:gravity="center"
|
|
android:text="@string/nominated_for_deletion"
|
|
android:textColor="@color/primaryTextColor"
|
|
android:textSize="@dimen/normal_text"
|
|
android:textStyle="bold"/>
|
|
<TextView
|
|
android:id="@+id/seeMore"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:gravity="center"
|
|
android:paddingTop="@dimen/standard_gap"
|
|
android:textColor="@color/primaryTextColor"
|
|
android:textSize="@dimen/normal_text"
|
|
android:textStyle="bold"/>
|
|
</LinearLayout>
|
|
|
|
<fr.free.nrw.commons.media.MediaDetailSpacer
|
|
android:layout_width="match_parent"
|
|
android:layout_height="@dimen/small_gap" />
|
|
|
|
<LinearLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:background="?attr/subBackground"
|
|
android:orientation="vertical"
|
|
android:padding="@dimen/standard_gap">
|
|
|
|
<TextView
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:paddingBottom="@dimen/tiny_gap"
|
|
android:text="@string/media_detail_discussion"
|
|
android:textColor="@android:color/white"
|
|
android:textSize="@dimen/normal_text"
|
|
android:textStyle="bold" />
|
|
|
|
<TextView
|
|
android:id="@+id/mediaDetailDisc"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:layout_gravity="start"
|
|
android:background="?attr/subBackground"
|
|
android:padding="@dimen/small_gap"
|
|
android:textColor="@android:color/white"
|
|
android:textSize="@dimen/description_text_size" />
|
|
</LinearLayout>
|
|
|
|
<Button
|
|
android:id="@+id/copyWikicode"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:layout_margin="@dimen/standard_gap"
|
|
android:background="@color/button_blue"
|
|
android:text="@string/copy_wikicode"
|
|
android:textColor="@color/primaryTextColor" />
|
|
|
|
<Button
|
|
android:id="@+id/nominateDeletion"
|
|
android:background="@drawable/bg_delete_button"
|
|
android:textColor="@color/primaryTextColor"
|
|
android:layout_margin="@dimen/standard_gap"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:text="@string/nominate_deletion"/>
|
|
</LinearLayout>
|
|
</LinearLayout>
|
|
</ScrollView>
|
|
|
|
</FrameLayout> |