Merge remote-tracking branch 'upstream/master' into refactorNearbyClassesMVP

This commit is contained in:
neslihanturan 2019-06-13 23:09:57 +03:00
commit 22290af42f
94 changed files with 3879 additions and 2106 deletions

View file

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/thumbnail_selected"
android:state_pressed="true"/>
<item android:drawable="@drawable/thumbnail_selected"
android:state_focused="true"/>
<item android:state_selected="true" android:drawable="@drawable/thumbnail_selected"/>
<item android:drawable="@drawable/thumbnail_not_selected"/>
</selector>

View file

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="@color/white"></solid>
</shape>

View file

@ -0,0 +1,11 @@
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<stroke
android:color="@color/primaryDarkColor"
android:width="2dp"/>
<solid android:color="#F8F7F5"/>
<padding
android:bottom="2dp"
android:left="2dp"
android:right="2dp"
android:top="2dp"/>
</shape>

View file

@ -1,34 +1,79 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/upload_root_layout"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/upload_root_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.github.chrisbanes.photoview.PhotoView
android:id="@+id/backgroundImage"
android:layout_height="match_parent"
>
<fr.free.nrw.commons.contributions.UnswipableViewPager
android:id="@+id/vp_upload"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/commons_app_blue_dark"
/>
<androidx.cardview.widget.CardView
android:id="@+id/cv_container_top_card"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="8dp"
android:layout_marginEnd="8dp"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
android:layout_marginStart="8dp"
android:layout_marginTop="16dp"
android:elevation="@dimen/cardview_default_elevation"
>
<LinearLayout
android:id="@+id/ll_container_top_card"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/toolbar"
android:background="@color/commons_app_blue_dark"
app:actualImageScaleType="fitCenter" />
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="@dimen/standard_gap"
>
<ViewFlipper
android:id="@+id/view_flipper"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:clipChildren="false"
android:measureAllChildren="false">
<RelativeLayout
android:id="@+id/rl_container_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
>
<TextView
android:id="@+id/tv_top_card_title"
android:layout_width="wrap_content"
android:layout_height="24dp"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_centerVertical="true"
android:layout_marginTop="@dimen/small_gap"
android:textSize="@dimen/normal_text"
android:textStyle="bold"
tools:text="4 Uploads"
/>
<androidx.appcompat.widget.AppCompatImageButton
android:id="@+id/ib_toggle_top_card"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginBottom="@dimen/small_gap"
android:layout_marginEnd="@dimen/small_gap"
android:layout_marginStart="@dimen/small_gap"
android:clickable="false"
android:focusable="false"
app:srcCompat="@drawable/ic_expand_less_black_24dp"
style="@style/Widget.AppCompat.Button.Borderless"
/>
<include
layout="@layout/activity_upload_bottom_card"
android:visibility="visible" />
</RelativeLayout>
<include layout="@layout/activity_upload_categories" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_thumbnails"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/small_gap"
/>
<include layout="@layout/activity_upload_license" />
<include layout="@layout/activity_upload_please_wait" />
</ViewFlipper>
</LinearLayout>
</androidx.cardview.widget.CardView>
</RelativeLayout>

View file

@ -1,199 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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:layout_width="match_parent"
android:layout_height="match_parent">
<androidx.cardview.widget.CardView
android:id="@+id/top_card"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginLeft="8dp"
android:layout_marginTop="16dp"
android:layout_marginEnd="8dp"
android:layout_marginRight="8dp"
android:layout_marginBottom="8dp"
android:elevation="@dimen/cardview_default_elevation"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:ignore="UnusedAttribute"
tools:showIn="@layout/activity_upload">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/top_card_title"
android:layout_width="wrap_content"
android:layout_height="24dp"
android:layout_alignParentStart="true"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginStart="@dimen/small_gap"
android:layout_marginTop="@dimen/small_gap"
android:layout_marginEnd="@dimen/small_gap"
android:layout_marginBottom="@dimen/small_gap"
android:gravity="center_vertical"
android:textSize="@dimen/normal_text"
android:textStyle="bold"
tools:text="4 Uploads" />
<ImageButton
android:id="@+id/top_card_expand_button"
style="@style/Widget.AppCompat.Button.Borderless"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_alignParentTop="true"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_marginStart="@dimen/small_gap"
android:layout_marginTop="@dimen/small_gap"
android:layout_marginEnd="@dimen/small_gap"
android:layout_marginBottom="@dimen/small_gap"
android:padding="0dp"
app:srcCompat="@drawable/ic_expand_less_black_24dp" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/top_card_thumbnails"
android:layout_width="match_parent"
android:layout_height="90dp"
android:layout_below="@id/top_card_title"
android:layout_marginBottom="@dimen/small_gap" />
</RelativeLayout>
</androidx.cardview.widget.CardView>
<androidx.cardview.widget.CardView
android:id="@+id/bottom_card"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:elevation="@dimen/cardview_default_elevation"
android:orientation="vertical"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
tools:ignore="UnusedAttribute"
tools:showIn="@layout/activity_upload">
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/relativeLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="@dimen/small_gap">
<TextView
android:id="@+id/bottom_card_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:textSize="@dimen/normal_text"
android:textStyle="bold"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:text="Step 1 of 15" />
<TextView
android:id="@+id/bottom_card_subtitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:textSize="@dimen/subtitle_text"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/bottom_card_title"
tools:text="1st image" />
<ImageButton
android:id="@+id/right_card_map_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="8dp"
android:layout_marginEnd="16dp"
android:layout_marginRight="16dp"
android:visibility="visible"
app:layout_constraintEnd_toStartOf="@+id/bottom_card_expand_button"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:srcCompat="@drawable/ic_map_white_24dp" />
<ImageButton
android:id="@+id/bottom_card_expand_button"
style="@style/Widget.AppCompat.Button.Borderless"
android:layout_width="24dp"
android:layout_height="24dp"
android:padding="0dp"
android:rotation="180"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:srcCompat="@drawable/ic_expand_less_black_24dp" />
<fr.free.nrw.commons.widget.HeightLimitedRecyclerView
android:id="@+id/rv_descriptions"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:layout_marginBottom="20dp"
app:layout_constraintBottom_toTopOf="@+id/prev_title_desc"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/bottom_card_subtitle"
tools:visibility="gone" />
<Button
android:id="@+id/prev_title_desc"
android:layout_width="match_parent"
android:layout_height="25dp"
android:background="@color/white"
android:text="@string/previous_image_title_description"
android:textColor="@color/button_blue"
android:layout_marginBottom="15dp"
android:layout_marginEnd="3.5dp"
android:gravity="center"
style="@style/Widget.AppCompat.Button.Borderless"
app:layout_constraintBottom_toTopOf="@id/bottom_card_previous"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/rv_descriptions" />
<Button
android:id="@+id/bottom_card_next"
style="@style/Widget.AppCompat.Button.Borderless"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/next"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintRight_toRightOf="parent" />
<Button
android:id="@+id/bottom_card_previous"
style="@style/Widget.AppCompat.Button.Borderless"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap"
android:text="@string/previous"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@id/bottom_card_next"
app:layout_constraintRight_toLeftOf="@id/bottom_card_next" />
<Button
android:id="@+id/bottom_card_add_desc"
style="@style/Widget.AppCompat.Button.Borderless"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:minWidth="48dp"
android:text="+"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.cardview.widget.CardView>
</androidx.constraintlayout.widget.ConstraintLayout>

View file

@ -1,127 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginBottom="8dp"
android:orientation="vertical"
tools:showIn="@layout/activity_upload">
<TextView
android:id="@+id/categories_title"
android:layout_width="wrap_content"
android:layout_height="24dp"
android:layout_marginStart="@dimen/standard_gap"
android:layout_marginLeft="@dimen/standard_gap"
android:layout_marginTop="@dimen/standard_gap"
android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap"
android:layout_alignParentStart="true"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:gravity="center_vertical"
android:textSize="@dimen/normal_text"
android:textStyle="bold"
tools:text="Step 1 of 15" />
<TextView
android:id="@+id/categories_subtitle"
android:layout_width="wrap_content"
android:layout_height="24dp"
android:layout_marginStart="@dimen/standard_gap"
android:layout_marginLeft="@dimen/standard_gap"
android:layout_marginTop="@dimen/tiny_gap"
android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap"
android:layout_alignParentLeft="true"
android:gravity="center_vertical"
android:textSize="@dimen/subtitle_text"
android:text="@string/upload_flow_all_images_in_set"
android:layout_below="@+id/categories_title"
android:visibility="gone" />
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" android:id="@+id/category_search_layout"
android:layout_marginStart="@dimen/standard_gap"
android:layout_marginLeft="@dimen/standard_gap"
android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap"
android:layout_below="@id/categories_subtitle">
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/category_search_container"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/category_search"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/categories_search_text_hint"
android:imeOptions="actionSearch"
android:inputType="text"
android:maxLines="1" />
</com.google.android.material.textfield.TextInputLayout>
<ProgressBar
android:id="@+id/categoriesSearchInProgress"
style="?android:progressBarStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/tiny_gap"
android:layout_marginRight="@dimen/tiny_gap"
android:layout_gravity="center_vertical|end"
android:indeterminate="true"
android:indeterminateOnly="true"
android:visibility="gone"
tools:visibility="visible" />
</FrameLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/categories"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginStart="@dimen/standard_gap"
android:layout_marginLeft="@dimen/standard_gap"
android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap"
android:layout_above="@+id/button_divider"
android:layout_below="@id/category_search_layout" />
<View
android:id="@+id/button_divider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_above="@+id/category_next"
android:background="@color/divider_grey" />
<Button
android:id="@+id/category_next"
style="@style/Widget.AppCompat.Button.Borderless"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="24dp"
android:layout_marginRight="24dp"
android:layout_marginBottom="24dp"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_alignParentBottom="true"
android:text="@string/next" />
<Button
android:id="@+id/category_previous"
style="@style/Widget.AppCompat.Button.Borderless"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap"
android:layout_marginBottom="24dp"
android:layout_toStartOf="@id/category_next"
android:layout_toLeftOf="@id/category_next"
android:layout_alignParentBottom="true"
android:text="@string/previous" />
</RelativeLayout>

View file

@ -1,116 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:layout_marginBottom="8dp"
tools:showIn="@layout/activity_upload">
<TextView
android:id="@+id/license_title"
android:layout_width="wrap_content"
android:layout_height="24dp"
android:layout_marginStart="@dimen/standard_gap"
android:layout_marginLeft="@dimen/standard_gap"
android:layout_marginTop="@dimen/standard_gap"
android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap"
android:layout_alignParentStart="true"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:gravity="center_vertical"
android:textSize="@dimen/normal_text"
android:textStyle="bold"
tools:text="Step 1 of 15" />
<TextView
android:id="@+id/license_subtitle"
android:layout_width="wrap_content"
android:layout_height="24dp"
android:layout_marginStart="@dimen/standard_gap"
android:layout_marginLeft="@dimen/standard_gap"
android:layout_marginTop="@dimen/tiny_gap"
android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap"
android:layout_alignParentLeft="true"
android:gravity="center_vertical"
android:textSize="@dimen/subtitle_text"
android:text="@string/upload_flow_all_images_in_set"
android:layout_below="@+id/license_title"
android:visibility="gone" />
<Spinner
android:id="@+id/license_list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/standard_gap"
android:layout_marginLeft="@dimen/standard_gap"
android:layout_marginTop="@dimen/standard_gap"
android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap"
android:layout_below="@id/license_subtitle"
tools:visibility="gone"/>
<fr.free.nrw.commons.ui.widget.HtmlTextView
android:id="@+id/share_license_summary"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/standard_gap"
android:layout_marginLeft="@dimen/standard_gap"
android:layout_marginTop="@dimen/standard_gap"
android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap"
android:layout_below="@id/license_list"
android:text="@plurals/share_license_summary" />
<fr.free.nrw.commons.ui.widget.HtmlTextView
android:id="@+id/media_upload_policy"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/standard_gap"
android:layout_marginLeft="@dimen/standard_gap"
android:layout_marginTop="@dimen/standard_gap"
android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap"
android:layout_marginBottom="@dimen/standard_gap"
android:layout_above="@+id/button_divider"
android:gravity="start"
android:text="@string/media_upload_policy" />
<View
android:id="@+id/button_divider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_above="@+id/submit"
android:background="@color/divider_grey" />
<Button
android:id="@+id/submit"
style="@style/Widget.AppCompat.Button.Borderless"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="24dp"
android:layout_marginRight="24dp"
android:layout_marginBottom="24dp"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_alignParentBottom="true"
android:text="@string/submit" />
<Button
android:id="@+id/license_previous"
style="@style/Widget.AppCompat.Button.Borderless"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap"
android:layout_marginBottom="24dp"
android:layout_toStartOf="@id/submit"
android:layout_toLeftOf="@id/submit"
android:layout_alignParentBottom="true"
android:text="@string/previous" />
</RelativeLayout>

View file

@ -1,29 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="@dimen/standard_gap"
android:layout_marginBottom="8dp"
android:gravity="center"
android:orientation="vertical">
<ProgressBar
android:id="@+id/shareInProgress"
style="?android:progressBarStyleLarge"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:indeterminate="true"
android:indeterminateOnly="true" />
<TextView
android:id="@+id/please_wait_text_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/standard_gap"
android:layout_marginLeft="@dimen/standard_gap"
android:layout_marginTop="@dimen/standard_gap"
android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap"
android:gravity="center" />
</LinearLayout>

View file

@ -0,0 +1,102 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginBottom="8dp"
android:padding="@dimen/standard_gap"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@+id/ll_container_license_desc"
android:orientation="vertical">
<TextView
android:id="@+id/tv_title"
android:textStyle="bold"
android:layout_width="wrap_content"
android:layout_height="24dp"
android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap"
android:gravity="center_vertical"
android:textSize="@dimen/normal_text"
tools:text="Step 1 of 15"/>
<TextView
android:id="@+id/tv_subtitle"
android:layout_width="wrap_content"
android:layout_height="24dp"
android:layout_marginTop="@dimen/tiny_gap"
android:gravity="center_vertical"
android:text="@string/upload_flow_all_images_in_set"
android:textSize="@dimen/subtitle_text"
android:visibility="visible"
tools:visibility="visible"/>
<Spinner
android:id="@+id/spinner_license_list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/standard_gap"
android:padding="0dp"
tools:visibility="visible"/>
<TextView
android:id="@+id/tv_share_license_summary"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/standard_gap"
android:text="@plurals/share_license_summary"/>
</LinearLayout>
<LinearLayout
android:id="@+id/ll_container_license_desc"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:orientation="vertical">
<fr.free.nrw.commons.ui.widget.HtmlTextView
android:id="@+id/tv_media_upload_policy"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/standard_gap"
android:gravity="start"
android:text="@string/media_upload_policy"/>
<View
android:id="@+id/button_divider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="16dp"
android:background="@color/divider_grey"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="16dp"
android:orientation="horizontal"
>
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/btn_previous"
style="@style/Widget.AppCompat.Button.Borderless"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/previous"/>
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/btn_submit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/submit"
android:textColor="@android:color/white"/>
</LinearLayout>
</LinearLayout>
</RelativeLayout>

View file

@ -0,0 +1,161 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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:layout_width="match_parent"
android:layout_height="match_parent">
<com.github.chrisbanes.photoview.PhotoView
android:id="@+id/backgroundImage"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:actualImageScaleType="fitXY" />
<androidx.cardview.widget.CardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_margin="10dp"
android:elevation="@dimen/cardview_default_elevation">
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="10dp"
android:orientation="vertical">
<RelativeLayout
android:id="@+id/rl_container_title"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/tv_title"
android:layout_width="wrap_content"
android:layout_height="24dp"
android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap"
android:gravity="center_vertical"
android:textSize="@dimen/normal_text"
android:textStyle="bold"
tools:text="Step 1 of 15" />
<androidx.appcompat.widget.AppCompatImageButton
android:id="@+id/ib_map"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginEnd="16dp"
android:layout_marginRight="16dp"
android:layout_toLeftOf="@id/ib_expand_collapse"
android:visibility="gone"
app:srcCompat="@drawable/ic_map_white_24dp"
tools:visibility="visible" />
<androidx.appcompat.widget.AppCompatImageButton
android:id="@+id/ib_expand_collapse"
style="@style/Widget.AppCompat.Button.Borderless"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_alignParentTop="true"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_marginStart="@dimen/small_gap"
android:layout_marginEnd="@dimen/small_gap"
android:layout_marginBottom="@dimen/small_gap"
android:clickable="false"
android:focusable="false"
android:padding="12dp"
app:srcCompat="@drawable/ic_expand_less_black_24dp" />
</RelativeLayout>
<LinearLayout
android:id="@+id/ll_container_media_detail"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/standard_gap"
android:orientation="vertical">
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/til_container_title"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<androidx.appcompat.widget.AppCompatEditText
android:id="@+id/et_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/share_title_hint"
android:imeOptions="actionNext"
android:drawableEnd="@drawable/mapbox_info_icon_default"
android:inputType="text"
android:maxLines="1" />
</com.google.android.material.textfield.TextInputLayout>
<fr.free.nrw.commons.widget.HeightLimitedRecyclerView
android:id="@+id/rv_descriptions"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:layout_marginBottom="8dp"
tools:visibility="visible" />
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/btn_copy_prev_title_desc"
style="@style/Widget.AppCompat.Button.Borderless"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/previous_image_title_description"
android:padding="2dp"
android:textAlignment="textEnd"
android:textColor="@color/button_blue"
android:visibility="gone"
tools:visibility="visible" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/btn_add_description"
style="@style/Widget.AppCompat.Button.Borderless"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:minWidth="48dp"
android:text="+" />
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/btn_next"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:text="@string/next"
android:textColor="@android:color/white" />
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/btn_previous"
style="@style/Widget.AppCompat.Button.Borderless"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap"
android:layout_toLeftOf="@+id/btn_next"
android:text="@string/previous" />
</RelativeLayout>
</LinearLayout>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</androidx.cardview.widget.CardView>
</RelativeLayout>

View file

@ -1,37 +1,28 @@
<?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"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:fresco="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="90dp"
android:layout_height="90dp"
android:id="@+id/rl_container"
android:background="@drawable/thumbnail_not_selected"
android:orientation="horizontal">
<LinearLayout xmlns:fresco="http://schemas.android.com/apk/res-auto"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<com.facebook.drawee.view.SimpleDraweeView
android:id="@+id/iv_thumbnail"
android:layout_width="90dp"
android:layout_height="90dp"
fresco:actualImageScaleType="fitCenter"/>
<androidx.legacy.widget.Space
android:id="@+id/left_space"
android:layout_width="8dp"
android:layout_height="90dp" />
<com.facebook.drawee.view.SimpleDraweeView
android:id="@+id/thumbnail"
android:layout_width="90dp"
android:layout_height="90dp"
fresco:actualImageScaleType="fitCenter" />
<androidx.legacy.widget.Space
android:id="@+id/right_space"
android:layout_width="8dp"
android:layout_height="90dp" />
</LinearLayout>
<ImageView
android:id="@+id/error"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_gravity="end"
android:visibility="gone"
app:srcCompat="@drawable/ic_error_red_24dp" />
</FrameLayout>
<ImageView
android:id="@+id/iv_error"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_gravity="end"
android:visibility="gone"
app:srcCompat="@drawable/ic_error_red_24dp"
tools:visibility="visible"/>
</RelativeLayout>

View file

@ -19,7 +19,7 @@
android:layout_height="wrap_content"
android:layout_weight="8">
<EditText
<androidx.appcompat.widget.AppCompatEditText
android:id="@+id/description_item_edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"

View file

@ -7,7 +7,7 @@
android:layout_height="wrap_content"
tools:showIn="@layout/activity_upload">
<EditText
<androidx.appcompat.widget.AppCompatEditText
android:id="@+id/description_item_edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"

View file

@ -0,0 +1,114 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/rl_container_categories"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="16dp"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@+id/button_divider"
android:orientation="vertical">
<TextView
android:id="@+id/tv_title"
android:textStyle="bold"
android:layout_width="wrap_content"
android:layout_height="24dp"
android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap"
android:gravity="center_vertical"
android:textSize="@dimen/normal_text"
tools:text="Step 1 of 15"/>
<TextView
android:id="@+id/tv_subtitle"
android:layout_width="wrap_content"
android:layout_height="24dp"
android:layout_marginTop="@dimen/tiny_gap"
android:gravity="center_vertical"
android:text="@string/upload_flow_all_images_in_set"
android:textSize="@dimen/subtitle_text"
android:visibility="visible"
tools:visibility="visible"/>
<FrameLayout
android:id="@+id/category_search_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/standard_gap"
>
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/til_container_search"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/et_search"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/categories_search_text_hint"
android:imeOptions="actionSearch"
android:inputType="text"
android:maxLines="1"/>
</com.google.android.material.textfield.TextInputLayout>
<ProgressBar
android:id="@+id/pb_categories"
style="?android:progressBarStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/tiny_gap"
android:layout_marginRight="@dimen/tiny_gap"
android:layout_gravity="center_vertical|end"
android:indeterminate="true"
android:indeterminateOnly="true"
android:visibility="gone"
tools:visibility="visible"/>
</FrameLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_categories"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@+id/button_divider"
android:layout_below="@id/category_search_layout"/>
</LinearLayout>
<View
android:id="@+id/button_divider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_above="@+id/ll_container_buttons"
android:background="@color/divider_grey"/>
<LinearLayout
android:id="@+id/ll_container_buttons"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:padding="16dp"
android:orientation="horizontal"
>
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/btn_previous"
style="@style/Widget.AppCompat.Button.Borderless"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/previous"/>
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/btn_next"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/next"
android:textColor="@android:color/white"/>
</LinearLayout>
</RelativeLayout>

View file

@ -179,6 +179,7 @@
<string name="storage_permission_title">طلب إذن التخزين</string>
<string name="read_storage_permission_rationale">صلاحية مطلوبة: قراءة وحدة التخزين الخارجية، لا يمكن للتطبيق الوصول إلى معرض الصور الخاص بك بدونها.</string>
<string name="write_storage_permission_rationale">صلاحية مطلوبة: اكتب وحدة التخزين الخارجية، لا يمكن للتطبيق الوصول إلى معرض الصور/الكاميرا الخاصة بك بدونها.</string>
<string name="location_permission_title">جارٍ طلب إذن الموقع</string>
<string name="location_permission_rationale">صلاحية اختيارية: احصل على الموقع الحالي لاقتراحات التصنيفات</string>
<string name="ok">موافق</string>
<string name="title_activity_nearby">الأماكن القريبة</string>
@ -530,4 +531,5 @@
<string name="share_text">ارفع الصور لويكيميديا ​​كومنز على هاتفك قم بتنزيل تطبيق كومنز: %1$s</string>
<string name="share_via">مشاركة التطبيق عبر...</string>
<string name="image_info">معلومات الصورة</string>
<string name="dialog_box_text_nomination">لماذا يجب حذف %1$s؟</string>
</resources>

View file

@ -215,6 +215,7 @@
<string name="preference_author_name_summary">Персонализираното авторско име, което ще се използва вместо потребителското ви име при качване</string>
<string name="archived_notifications">Известия (архивирани)</string>
<string name="list_sheet">Списък</string>
<string name="submit">Изпращане</string>
<string name="desc_language_America">Америка</string>
<string name="desc_language_Europe">Европа</string>
<string name="desc_language_Africa">Африка</string>

View file

@ -15,6 +15,7 @@
<string name="preference_category_appearance">Udseende</string>
<string name="preference_category_general">Generelt</string>
<string name="preference_category_feedback">Tilbagemelding</string>
<string name="preference_category_privacy">Privatliv</string>
<string name="preference_category_location">Sted</string>
<string name="app_name">Commons</string>
<string name="bullet"></string>
@ -370,5 +371,8 @@
<string name="error_occurred_in_picking_images">Der opstod en fejl under udvælgelse af billeder</string>
<string name="please_wait">Vent venligst…</string>
<string name="skip_image">Spring over dette billede</string>
<string name="exif_tag_name_copyright">Ophavsret</string>
<string name="exif_tag_name_cameraModel">Kameramodel</string>
<string name="exif_tag_name_serialNumbers">Serienumre</string>
<string name="share_via">Del app via...</string>
</resources>

View file

@ -339,6 +339,7 @@
<string name="quiz_question_string">آیا این تصویر برای بارگذاری مناسب است؟</string>
<string name="question">پرسش</string>
<string name="result">نتیجه</string>
<string name="congratulatory_message_quiz">شما %1$s پاسخ درست دادید. آفرین!</string>
<string name="warning_for_no_answer">یکی از دو گزینه را انتخاب کنید تا به سوال پاسخ دهید</string>
<string name="user_not_logged_in">جلسه ورود به سیستم منقضی شد، لطفا دوباره وارد سیستم شوید.</string>
<string name="quiz_result_share_message">کویز خود را با دوستان خود به اشتراک بگذارید.</string>
@ -383,6 +384,11 @@
<string name="next">بعدی</string>
<string name="previous">قبلی</string>
<string name="submit">ارسال</string>
<string name="upload_title_duplicate">پرونده‌ای با نام %1$s وجود دارد. آیا اطمینان دارید که می‌خواهید ادامه دهید؟</string>
<plurals name="upload_count_title">
<item quantity="one">%1$d بارگذاری</item>
<item quantity="other">%1$d بارگذاری</item>
</plurals>
<string name="navigation_item_bookmarks">نشانک‌ها</string>
<string name="title_activity_bookmarks">نشانک‌ها</string>
<string name="title_page_bookmarks_pictures">تصویرها</string>
@ -396,6 +402,7 @@
<string name="deletion_reason_bad_for_my_privacy">فهمیدم که این برای حریم خصوصی من بد است.</string>
<string name="deletion_reason_no_longer_want_public">من تغییر عقیده دادم، نمی‌خواهم دیگر برای همه قابل‌مشاهده باشد.</string>
<string name="deletion_reason_not_interesting">با پوزش، این تصویر برای یک دانشنامه مناسب نیست</string>
<string name="uploaded_by_myself">بارگذاری‌شده توسط خودم در %1$s؛ استفاده‌شده در %2$d مقاله.</string>
<string name="no_uploads">به کامانز خوش آمدید!\n\nاولین فایلتان را با فشردن کلید اضافه بارگذاری کنید.</string>
<string name="desc_language_Worldwide">در سراسر جهان</string>
<string name="desc_language_America">آمریکا</string>
@ -423,6 +430,7 @@
<string name="nominate_for_deletion_notify_user">به کاربر در صفحه بحثش خبر بده</string>
<string name="notsure">مطمئن نیستم</string>
<string name="send_thank_success_title">ارسال تشکر: موفق</string>
<string name="send_thank_success_message">تشکر با موفقیت برای %1$s فرستاده شد</string>
<string name="send_thank_failure_message">تلاش برای فرستادن تشکر شکست خورد %1$s</string>
<string name="send_thank_failure_title">ارسال تشکر: ناموفق</string>
<string name="send_thank_send">ارسال تشکر</string>

View file

@ -189,6 +189,7 @@
<string name="storage_permission_title">Demande d\'autorisation d\'accès au stockage</string>
<string name="read_storage_permission_rationale">Autorisation nécessaire : Lire un stockage externe. Lapplication ne peut pas accéder à votre galerie sans cela.</string>
<string name="write_storage_permission_rationale">Permission obligatoire : Écriture sur stockage externe. Lapplication ne peut pas accéder à votre appareil photo/galerie sans cela.</string>
<string name="location_permission_title">Demande d\'autorisation d\'accès au stockage</string>
<string name="location_permission_rationale">Autorisation facultative : Obtenir lemplacement actuel pour des suggestions de catégorie</string>
<string name="ok">OK</string>
<string name="title_activity_nearby">Endroits à proximité</string>
@ -502,8 +503,8 @@
<string name="review_copyright_no_button_text">Semble correct</string>
<string name="review_thanks_yes_button_text">Oui, pourquoi pas</string>
<string name="review_thanks_no_button_text">Image suivante</string>
<string name="skip_image_explanation">Cliquer sur ce bouton vous fournira une autre image récemment téléversée de Wikimédia Communs.</string>
<string name="review_image_explanation">Vous pouvez revoir les images et améliorer la qualité de Wikimédia Communs.\n Les quatre paramètres à revoir sont : \n - Cette image est-elle à propos? \n - Cette image respecte-t-elle les règles de droit dauteur? \n - Cette image est-elle bien catégorisée? \n - Si tout va bien, vous pouvez aussi remercier le contributeur.</string>
<string name="skip_image_explanation">Cliquer sur ce bouton vous fournira une autre image récemment téléversée de Wikimédia Commons.</string>
<string name="review_image_explanation">Vous pouvez revoir les images et améliorer la qualité de Wikimédia Commons.\n Les quatre paramètres à revoir sont : \n - Cette image est-elle à propos? \n - Cette image respecte-t-elle les règles de droit dauteur? \n - Cette image est-elle bien catégorisée? \n - Si tout va bien, vous pouvez aussi remercier le contributeur.</string>
<plurals name="receiving_shared_content">
<item quantity="one">Réception de contenu partagé. Le traitement de l\'image peut prendre un certain temps en fonction de la taille de l\'image et de votre matériel</item>
<item quantity="other">Réception de contenu partagé. Le traitement des images peut prendre un certain temps en fonction de la taille des images et de votre matériel</item>
@ -519,7 +520,7 @@
<string name="error_occurred_in_picking_images">Erreur lors de la sélection des images</string>
<string name="image_chooser_title">Choisir les images à téléverser</string>
<string name="please_wait">Veuillez patienter…</string>
<string name="images_featured_explanation">Les images en vedette sont des images de photographes et dillustrateurs très doués que la communauté de Wikimédia Communs a choisi comme étant de la meilleure qualité pour le site.</string>
<string name="images_featured_explanation">Les images en vedette sont des images de photographes et dillustrateurs très doués que la communauté de Wikimédia Commons a choisi comme étant de la meilleure qualité pour le site.</string>
<string name="images_via_nearby_explanation">Les images téléversées par les lieux de proximité sont les images téléversées par la découverte des lieux sur la carte.</string>
<string name="thanks_received_explanation">Cette fonctionalité permet aux contributeurs d\'envoyer une notification de remerciement aux utilisateurs qui font des modifications utiles en utilisant un petit lien de remerciement sur la page historique ou sur celle du diff.</string>
<string name="previous_image_title_description">Copier le titre et la description précédente</string>
@ -529,7 +530,7 @@
<string name="skip_image">SAUTER CETTE IMAGE</string>
<string name="download_failed_we_cannot_download_the_file_without_storage_permission">Échec du téléchargement! Nous ne pouvons pas télécharger le fichier sans droit de stockage externe.</string>
<string name="manage_exif_tags">Gérer les balises EXIF</string>
<string name="manage_exif_tags_summary">Sélectionner quelles balises EXIF à conserver dans les téléchargements</string>
<string name="manage_exif_tags_summary">Sélectionner quelles balises EXIF à conserver dans les téléversements</string>
<string name="exif_tag_name_author">Auteur</string>
<string name="exif_tag_name_copyright">Droits dauteur</string>
<string name="exif_tag_name_location">Emplacement</string>
@ -537,7 +538,8 @@
<string name="exif_tag_name_lensModel">Modèle de lentille</string>
<string name="exif_tag_name_serialNumbers">Numéros de série</string>
<string name="exif_tag_name_software">Logiciel</string>
<string name="share_text">Téléverser des photos vers Wikimédia Communs, sur votre téléphone Téléchargez lapplication Communs : %1$s</string>
<string name="share_text">Téléverser des photos vers Wikimédia Commons, sur votre téléphone Téléchargez lapplication Commons : %1$s</string>
<string name="share_via">Partager lapplication via…</string>
<string name="image_info">Informations de limage</string>
<string name="dialog_box_text_nomination">Pourquoi %1$s devrait-il être supprimé?</string>
</resources>

View file

@ -9,6 +9,7 @@
<string name="preference_category_appearance">Útlit</string>
<string name="preference_category_general">Almennt</string>
<string name="preference_category_feedback">Umsagnir</string>
<string name="preference_category_privacy">Persónuvernd</string>
<string name="preference_category_location">Staðsetning</string>
<string name="app_name">Commons</string>
<string name="bullet">• \</string>
@ -167,6 +168,7 @@
<string name="storage_permission_title">Biður um aðgang að geymslurými</string>
<string name="read_storage_permission_rationale">Nauðsynlegar heimildir: Lesa ytri gagnageymslu. Forritið fær ekki aðgang að myndasafni ekki án þessa.</string>
<string name="write_storage_permission_rationale">Nauðsynlegar heimildir: Skrifa í ytri gagnageymslu. Forritið nær ekki sambandi við myndavél/myndasafn ekki án þessa.</string>
<string name="location_permission_title">Biður um aðgang að staðsetningu</string>
<string name="location_permission_rationale">Nauðsynlegar heimildir: Lesa núverandi staðsetningu til að geta stungið upp á flokkum</string>
<string name="ok">Í lagi</string>
<string name="title_activity_nearby">Staðir í nágrenninu</string>
@ -430,6 +432,8 @@
<string name="display_campaigns_explanation">Sjá yfirstandandi herferðir</string>
<string name="nominate_for_deletion_done">Lokið</string>
<string name="notsure">Ekki viss</string>
<string name="send_thank_send">Senda þakkarboð</string>
<string name="send_thank_notification_title">Sendi þakkarboð</string>
<string name="review_category">Er þetta rétt flokkað?</string>
<string name="review_spam">Kemur þetta umfjöllunarefninu við?</string>
<string name="review_c_violation_report_question">Það brýtur á móti höfundarrétti því það er</string>
@ -451,4 +455,13 @@
<string name="image_chooser_title">Veldu myndir til að senda inn</string>
<string name="please_wait">Bíddu aðeins…</string>
<string name="skip_image">SLEPPA ÞESSARI MYND</string>
<string name="manage_exif_tags">Sýsla með EXIF-merki</string>
<string name="exif_tag_name_author">Höfundur</string>
<string name="exif_tag_name_copyright">Höfundarréttur</string>
<string name="exif_tag_name_location">Staðsetning</string>
<string name="exif_tag_name_cameraModel">Tegund myndavélar</string>
<string name="exif_tag_name_lensModel">Tegund linsu</string>
<string name="exif_tag_name_serialNumbers">Raðnúmer</string>
<string name="exif_tag_name_software">Hugbúnaður</string>
<string name="image_info">Upplýsingar í mynd</string>
</resources>

View file

@ -21,6 +21,7 @@
<string name="preference_category_appearance">Aspetto</string>
<string name="preference_category_general">Generale</string>
<string name="preference_category_feedback">Commenti</string>
<string name="preference_category_privacy">Privacy</string>
<string name="preference_category_location">Posizione</string>
<string name="app_name">Commons</string>
<string name="bullet"></string>
@ -470,6 +471,10 @@
<string name="previous_button_tooltip_message">Clicca per riusare il titolo e la descrizione dell\'immagine precedente e adattarli all\'immagine attuale.</string>
<string name="skip_image">SALTA QUESTA IMMAGINE</string>
<string name="exif_tag_name_author">Autore</string>
<string name="exif_tag_name_cameraModel">Modello fotocamera</string>
<string name="exif_tag_name_serialNumbers">Numeri seriali</string>
<string name="exif_tag_name_software">Software</string>
<string name="share_via">Condividi applicazione tramite...</string>
<string name="image_info">Informazioni sull\'immagine</string>
<string name="dialog_box_text_nomination">Perché %1$s dovrebbe essere cancellato?</string>
</resources>

View file

@ -176,6 +176,7 @@
<string name="storage_permission_title">기억 장치 권한 요청 중</string>
<string name="read_storage_permission_rationale">권한 필요: 외부 저장소 읽기. 이것이 없으면 앱은 갤러리에 접근할 수 없습니다.</string>
<string name="write_storage_permission_rationale" fuzzy="true">권한 필요: 외부 저장소 쓰기. 이것이 없으면 앱은 카메라에 접근할 수 없습니다.</string>
<string name="location_permission_title">위치 권한 요청 중</string>
<string name="location_permission_rationale">선택적 권한: 분류 추천을 위해 현재 위치 정보를 가져옵니다.</string>
<string name="ok">확인</string>
<string name="title_activity_nearby">근처의 장소</string>
@ -458,6 +459,7 @@
<string name="exif_tag_name_copyright">저작권</string>
<string name="exif_tag_name_location">위치</string>
<string name="exif_tag_name_cameraModel">카메라 모델</string>
<string name="exif_tag_name_lensModel">렌즈 모델</string>
<string name="exif_tag_name_serialNumbers">일련 번호</string>
<string name="exif_tag_name_software">소프트웨어</string>
<string name="share_via">앱 공유...</string>

View file

@ -338,4 +338,9 @@
<string name="image_chooser_title">Sicht Biller eraus fir eropzelueden</string>
<string name="please_wait">Waart w.e.g. ...</string>
<string name="skip_image">DËST BILD IWWERWSPRANGEN</string>
<string name="exif_tag_name_author">Auteur</string>
<string name="exif_tag_name_copyright">Copyright</string>
<string name="exif_tag_name_location">Plaz</string>
<string name="exif_tag_name_serialNumbers">Seriennummeren</string>
<string name="exif_tag_name_software">Software</string>
</resources>

View file

@ -169,6 +169,7 @@
<string name="storage_permission_title">Се бара дозвола за складирање</string>
<string name="read_storage_permission_rationale">Потребна дозвола: Треба да се прочита од надворешен склад. Прилогот без ова нема пристап до вашата галерија.</string>
<string name="write_storage_permission_rationale">Потребна дозвола: Треба да се запише на надворешен склад. Прилогот без ова нема пристап до вашата камера/галерија.</string>
<string name="location_permission_title">Се бара дозвола за утврдување на местоположбата</string>
<string name="location_permission_rationale">Дозвола по желба: Утврдување на тековната местоположба за предлагање категории</string>
<string name="ok">ОК</string>
<string name="title_activity_nearby">Околни места</string>
@ -520,4 +521,5 @@
<string name="share_text">Подигајте слики на Ризницата од телефон. Преземете го прилогот на Ризницата: %1$s</string>
<string name="share_via">Сподели преку...</string>
<string name="image_info">Инфо за сликата</string>
<string name="dialog_box_text_nomination">Зошто сметате дека %1$s треба да се избрише?</string>
</resources>

View file

@ -9,6 +9,7 @@
<string name="preference_category_appearance">ပုံပန်းသွင်ပြင်</string>
<string name="preference_category_general">အထွေထွေ</string>
<string name="preference_category_feedback">အကြံပေးရန်</string>
<string name="preference_category_privacy">ကိုယ်ရေးမူဝါဒ</string>
<string name="preference_category_location">နေရာ</string>
<string name="app_name">ကွန်မွန်းစ်</string>
<string name="bullet"></string>
@ -129,6 +130,7 @@
<string name="detail_discussion_empty">ဆွေးနွေးချက် မရှိပါ</string>
<string name="detail_license_empty">အမည်မသိရသော လိုင်စင်</string>
<string name="menu_refresh">ပြန်လည်ဆန်းသစ်ရန်</string>
<string name="location_permission_title">တည်နေရာ ခွင့်ပြုချက် တောင်းဆိုနေသည်</string>
<string name="ok">အိုကေ</string>
<string name="title_activity_nearby">အနီးအနား နေရာများ</string>
<string name="no_nearby">အနီးအနား နေရာများ မတွေ့ပါ</string>
@ -150,7 +152,7 @@
<string name="invalid_input">မကိုက်ညီသော ထည့်သွင်းမှု</string>
<string name="maximum_limit_alert">၅၀၀ ထက်ပို၍ မပြသနိုင်ပါ</string>
<string name="enter_valid">ကိုက်ညီသောနံပါတ်တစ်ခု ရိုက်ထည့်ပါ</string>
<string name="set_limit" fuzzy="true">လတ်တလော အပ်ပလုတ်ကန့်သတ်ချက် သတ်မှတ်ရန်</string>
<string name="set_limit">လတ်တလော အပ်ပလုတ်ကန့်သတ်ချက်</string>
<string name="logout_verification">အမှန်တကယ် ထွက်သွားလိုပါသလား</string>
<string name="commons_logo">ကွန်မွန်းစ် လိုဂို</string>
<string name="commons_website">ကွန်မွန်းစ် ဝဘ်ဆိုဒ်</string>
@ -276,9 +278,24 @@
<string name="desc_language_Africa">အာဖရိက</string>
<string name="desc_language_Asia">အာရှ</string>
<string name="desc_language_Pacific">ပစိဖိတ်</string>
<string name="yes_submit">ဟုတ်ကဲ့ ထည့်သွင်းမည်</string>
<string name="no_go_back">ဟင်းအင်း၊ ပြန်သွားမည်</string>
<string name="search_this_area">ဤဧရိယာကို ရှာဖွေပါ</string>
<string name="nearby_card_permission_title">ခွင့်ပြုချက် တောင်းခံရန်</string>
<string name="never_ask_again">နောက်တခါ ထပ်မမေးပါနှင့်</string>
<string name="nominate_for_deletion_done">ပြီးပြီ</string>
<string name="notsure">မသေချာပါ</string>
<string name="send_thank_send">ကျေးဇူးတင်မှု ပို့နေသည်</string>
<string name="send_thank_notification_title">ကျေးဇူးတင်မှု ပို့နေသည်</string>
<string name="send_thank_toast">%1$ အတွက် ကျေးဇူးတင်မှု ပို့နေသည်</string>
<string name="review_thanks_no_button_text">နောက်ရုပ်ပုံ</string>
<string name="no_notification">မဖတ်ရသေးသော အသိပေးချက်များ မရှိပါ</string>
<string name="please_wait">ကျေးဇူးပြု၍ ခဏစောင့်ပါ...</string>
<string name="exif_tag_name_author">ဖန်တီးသူ</string>
<string name="exif_tag_name_copyright">မူပိုင်ခွင့်</string>
<string name="exif_tag_name_location">တည်နေရာ</string>
<string name="exif_tag_name_cameraModel">ကင်မရာ မော်ဒယ်</string>
<string name="exif_tag_name_software">ဆော့ဝဲလ်</string>
<string name="image_info">ရုပ်ပုံ အချက်အလက်</string>
<string name="dialog_box_text_nomination">%1$ ဟာ ဘာကြောင့် ဖျက်သင့်သလဲ?</string>
</resources>

View file

@ -181,6 +181,7 @@
<string name="storage_permission_title">Solicitando permissão de armazenamento</string>
<string name="read_storage_permission_rationale">Permissão necessária: leia o armazenamento externo. App não pode acessar sua galeria sem isso.</string>
<string name="write_storage_permission_rationale">Permissão necessária: escreva o armazenamento externo. App não pode acessar sua câmera/galeria sem isso.</string>
<string name="location_permission_title">Autorização para identificar localização</string>
<string name="location_permission_rationale">Permissão opcional: Obter a localização atual de sugestões de categoria</string>
<string name="ok">OK</string>
<string name="title_activity_nearby">Lugares próximos</string>
@ -532,4 +533,5 @@
<string name="share_text">Faça o carregamento de fotos para o Wikimedia Commons no seu telefone ou baixe o aplicativo Commons: %1$s</string>
<string name="share_via">Compartilhar aplicativo via...</string>
<string name="image_info">Informação da imagem</string>
<string name="dialog_box_text_nomination">Por que %1$s deve ser excluído?</string>
</resources>

View file

@ -23,6 +23,7 @@
<string name="preference_category_appearance">Aparência</string>
<string name="preference_category_general">Geral</string>
<string name="preference_category_feedback">Comentários</string>
<string name="preference_category_privacy">Privacidade</string>
<string name="preference_category_location">Localização</string>
<string name="app_name">Commons</string>
<string name="bullet"></string>
@ -181,6 +182,7 @@
<string name="storage_permission_title">A pedir permissão de armazenamento</string>
<string name="read_storage_permission_rationale">Permissão necessária: Ler a armazenagem externa. A aplicação não pode aceder à sua galeria sem isto.</string>
<string name="write_storage_permission_rationale">Permissão necessária: Escrever na armazenagem externa. A aplicação não pode aceder à sua câmara/galeria sem isto.</string>
<string name="location_permission_title">Autorização para identificar localização</string>
<string name="location_permission_rationale">Permissão opcional: Obter a localização atual para sugestões de categoria</string>
<string name="ok">OK</string>
<string name="title_activity_nearby">Locais Próximos</string>
@ -520,6 +522,15 @@
<string name="welcome_dont_upload_content_description">Exemplos de imagens que não devem ser carregadas</string>
<string name="skip_image">SALTAR ESTA IMAGEM</string>
<string name="download_failed_we_cannot_download_the_file_without_storage_permission">O descarregamento falhou! Não podemos descarregar o ficheiro sem permissão de armazenagem externa.</string>
<string name="manage_exif_tags">Gerir etiquetas EXIF</string>
<string name="manage_exif_tags_summary">Selecionar as etiquetas EXIF a manter nos carregamentos</string>
<string name="exif_tag_name_author">Autor</string>
<string name="exif_tag_name_copyright">Direitos de autor</string>
<string name="exif_tag_name_location">Localização</string>
<string name="exif_tag_name_cameraModel">Modelo da câmara</string>
<string name="exif_tag_name_lensModel">Modelo da lente</string>
<string name="exif_tag_name_serialNumbers">Números de série</string>
<string name="exif_tag_name_software">\'\'Software\'\'</string>
<string name="share_text">Carregar fotografias na wiki Wikimedia Commons, do seu telemóvel Descarregar a aplicação Commons: %1$s</string>
<string name="share_via">Partilhar aplicação por...</string>
<string name="image_info">Informação da imagem</string>

View file

@ -156,4 +156,6 @@
<string name="submit">{{Identical|Submit}}</string>
<string name="log_collection_started">\"Send log file\" is {{msg-wm|Commons-android-strings-send log file}}.</string>
<string name="nominate_for_deletion_done">{{Identical|Done}}</string>
<string name="exif_tag_name_author">{{Identical|Author}}</string>
<string name="exif_tag_name_location">{{Identical|Location}}</string>
</resources>

View file

@ -373,7 +373,7 @@
<string name="write_storage_permission_rationale_for_image_share">Avem nevoie de permisiunea dvs. pentru a accesa spațiul de stocare extern al dispozitivului dvs. pentru a încărca imagini.</string>
<string name="nearby_notification_dismiss_message">Nu veți vedea cel mai apropiat loc care are nevoie de imagini. Cu toate acestea, puteți reactiva această notificare în Setări, dacă doriți.</string>
<string name="step_count">Pasul %1$d din %2$d</string>
<string name="image_in_set_label">Imaginea% %1$d în set</string>
<string name="image_in_set_label">Imaginea %1$d în set</string>
<string name="next">Următor</string>
<string name="previous">Precedent</string>
<string name="submit">Trimite</string>

View file

@ -187,6 +187,7 @@
<string name="storage_permission_title">Запрос разрешения по использованию внешнего носителя</string>
<string name="read_storage_permission_rationale">Требуемые разрешения: чтение с внешнего носителя. Приложение не сможет получить доступ к вашей галерее без этого разрешения.</string>
<string name="write_storage_permission_rationale">Требуемые разрешения: запись на внешнее хранилище. Приложение не сможет получить доступ к галерее/камере без этого разрешения.</string>
<string name="location_permission_title">Запрос на определение местоположения</string>
<string name="location_permission_rationale">Необязательное разрешение: получение текущего местоположения для предложения категорий</string>
<string name="ok">OK</string>
<string name="title_activity_nearby">Места поблизости</string>
@ -539,4 +540,5 @@
<string name="share_text">Чтобы загружать фото на Викисклад (Wikimedia Commons), скачайте одноимённое приложение «Викисклад» (Commons): %1$s</string>
<string name="share_via">Поделиться приложением с помощью...</string>
<string name="image_info">Информация об изображении</string>
<string name="dialog_box_text_nomination">Почему %1$s должно быть удалено?</string>
</resources>

View file

@ -174,6 +174,7 @@
<string name="storage_permission_title">Begär lagringsbehörighet</string>
<string name="read_storage_permission_rationale">Nödvändig behörighet: Läs extern lagring. Appen kan inte komma åt ditt galleri utan detta.</string>
<string name="write_storage_permission_rationale">Nödvändig behörighet: Skriv till extern lagring. Appen kan inte komma åt din kamera/galleri utan detta.</string>
<string name="location_permission_title">Begär platsbehörighet</string>
<string name="location_permission_rationale">Valfri behörighet: Hämta aktuell plats för kategoriförslag</string>
<string name="ok">OK</string>
<string name="title_activity_nearby">Platser i närheten</string>
@ -525,4 +526,5 @@
<string name="share_text">Ladda upp foton till Wikimedia Commons på din telefon Ladda ned Commons-appen: %1$s</string>
<string name="share_via">Dela appen via...</string>
<string name="image_info">Bildinfo</string>
<string name="dialog_box_text_nomination">Varför bör %1$s raderas?</string>
</resources>

View file

@ -186,6 +186,7 @@
<string name="storage_permission_title">Запит дозволу на зберігання</string>
<string name="read_storage_permission_rationale">Обов\'язковий дозвіл: читання зовнішньої пам\'яті. Без цього дозволу програма не зможе отримати доступ до вашої галереї.</string>
<string name="write_storage_permission_rationale">Обов\'язковий дозвіл: записування на зовнішнє сховище. Програма не зможе отримати доступ до камери/галереї без цього дозволу.</string>
<string name="location_permission_title">Запит на визначення місцезнаходження</string>
<string name="location_permission_rationale">Додатковий дозвіл: отримувати поточне розташування для підказок категорій</string>
<string name="ok">Гаразд</string>
<string name="title_activity_nearby">Місця поблизу</string>
@ -539,4 +540,5 @@
<string name="share_text">Вивантажуйте фото у Вікісховище зі свого телефона. Завантажте застосунок: %1$s</string>
<string name="share_via">Поділитися програмкою через…</string>
<string name="image_info">Інформація про зображення</string>
<string name="dialog_box_text_nomination">Чому %1$s має бути видалено?</string>
</resources>

View file

@ -44,7 +44,7 @@
<string name="upload_completed_notification_text">輕觸來檢視您上傳的項目</string>
<string name="upload_progress_notification_title_start">開始上傳%1$s</string>
<string name="upload_progress_notification_title_in_progress">正在上傳%1$s</string>
<string name="upload_progress_notification_title_finishing">即將完成上傳 %1$s</string>
<string name="upload_progress_notification_title_finishing">即將完成上傳%1$s</string>
<string name="upload_failed_notification_title">上傳%1$s失敗</string>
<string name="upload_failed_notification_subtitle">輕觸檢視</string>
<plurals name="uploads_pending_notification_indicator">
@ -178,6 +178,7 @@
<string name="storage_permission_title">請求存儲裝置權限</string>
<string name="read_storage_permission_rationale">必要權限:讀取外部存儲裝置。否則應用程式無法存取您的圖庫。</string>
<string name="write_storage_permission_rationale">必要權限:寫入外部存儲裝置。否則應用程式無法取用您的相機/圖庫。</string>
<string name="location_permission_title">請求位置權限</string>
<string name="location_permission_rationale">可有可無的權限:獲取目前的地理位置,以用於分類建議</string>
<string name="ok"></string>
<string name="title_activity_nearby">附近地點</string>
@ -529,4 +530,5 @@
<string name="share_text">在您的手機上更新照片到維基共享資源,下載共享資源應用程式:%1$s</string>
<string name="share_via">分享應用程式透過…</string>
<string name="image_info">圖片資訊</string>
<string name="dialog_box_text_nomination">為何應刪除%1$s</string>
</resources>

View file

@ -67,6 +67,7 @@
<color name="black">#000000</color>
<color name="swipe_red" tools:ignore="MissingDefaultResource">#FF0000</color>
<color name="color_error">#FF0000</color>
<color name="yes_button_color">#B22222</color>
<color name="no_button_color">#006400</color>
</resources>

View file

@ -409,7 +409,7 @@
<string name="next">Next</string>
<string name="previous">Previous</string>
<string name="submit">Submit</string>
<string name="upload_title_duplicate">A file with the file name %1$s exists. Are you sure you want to proceed?</string>
<string name="upload_title_duplicate" formatted="true">A file with the file name %1$s exists. Are you sure you want to proceed?</string>
<string name="map_application_missing">No compatible map application could be found on your device. Please install a map application to use this feature.</string>
<plurals name="upload_count_title">
<item quantity="one">%1$d Upload</item>
@ -554,4 +554,8 @@ Upload your first media by tapping on the add button.</string>
<string name="share_text">Upload photos to Wikimedia Commons on your phone Download the Commons app: %1$s</string>
<string name="share_via">Share app via...</string>
<string name="image_info">Image Info</string>
<string name="no_categories_found">No Categories found</string>
<string name="upload_cancelled">Cancelled Upload</string>
<string name="previous_image_title_description_not_found">There is no data for previous image\'s title or description</string>
<string name="dialog_box_text_nomination">Why should %1$s be deleted?</string>
</resources>