Set imeOptions to actionDone and enforce singleLine for xlarge

This commit is contained in:
jagadeesh-18-bot 2025-07-06 10:57:17 +05:30
parent 7c8d22d340
commit 0186a6037b

View file

@ -1,109 +1,109 @@
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_gravity="center_vertical"> android:layout_gravity="center_vertical">
<LinearLayout <LinearLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:orientation="vertical" android:orientation="vertical"
android:layout_gravity="center_vertical"> android:layout_gravity="center_vertical">
<FrameLayout <FrameLayout
android:layout_width="@dimen/landscape_width" android:layout_width="@dimen/landscape_width"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center" android:layout_gravity="center"
android:layout_marginTop="@dimen/small_gap"> android:layout_marginTop="@dimen/small_gap">
<androidx.cardview.widget.CardView <androidx.cardview.widget.CardView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/standard_gap" android:layout_marginBottom="@dimen/standard_gap"
android:layout_marginEnd="@dimen/standard_gap" android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginLeft="@dimen/standard_gap" android:layout_marginLeft="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap" android:layout_marginRight="@dimen/standard_gap"
android:layout_marginStart="@dimen/standard_gap" android:layout_marginStart="@dimen/standard_gap"
android:layout_marginTop="@dimen/large_gap" android:layout_marginTop="@dimen/large_gap"
app:cardCornerRadius="@dimen/tiny_margin" app:cardCornerRadius="@dimen/tiny_margin"
app:cardElevation="@dimen/tiny_margin"> app:cardElevation="@dimen/tiny_margin">
<RelativeLayout <RelativeLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:gravity="center" android:gravity="center"
android:orientation="vertical"> android:orientation="vertical">
<TextView <TextView
android:id="@+id/title" android:id="@+id/title"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="@color/primaryColor" android:background="@color/primaryColor"
android:gravity="center" android:gravity="center"
android:paddingBottom="@dimen/large_gap" android:paddingBottom="@dimen/large_gap"
android:paddingTop="@dimen/large_gap" android:paddingTop="@dimen/large_gap"
android:text="@string/login_to_your_account" android:text="@string/login_to_your_account"
android:textColor="@android:color/white" android:textColor="@android:color/white"
android:textSize="@dimen/heading_text_size" /> android:textSize="@dimen/heading_text_size" />
<TextView <TextView
android:id="@+id/login_credentials" android:id="@+id/login_credentials"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@id/title" android:layout_below="@id/title"
android:layout_marginEnd="@dimen/standard_gap" android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginLeft="@dimen/standard_gap" android:layout_marginLeft="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap" android:layout_marginRight="@dimen/standard_gap"
android:layout_marginStart="@dimen/standard_gap" android:layout_marginStart="@dimen/standard_gap"
android:paddingBottom="@dimen/standard_gap" android:paddingBottom="@dimen/standard_gap"
android:paddingTop="@dimen/small_gap" android:paddingTop="@dimen/small_gap"
android:textAlignment="center" android:textAlignment="center"
android:textColor="@color/secondaryDarkColor" android:textColor="@color/secondaryDarkColor"
tools:text="@string/login_credential" /> tools:text="@string/login_credential" />
<FrameLayout <FrameLayout
android:id="@+id/error_message_container" android:id="@+id/error_message_container"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@id/login_credentials" android:layout_below="@id/login_credentials"
android:visibility="gone" android:visibility="gone"
tools:visibility="visible"> tools:visibility="visible">
<TextView <TextView
android:id="@+id/error_message" android:id="@+id/error_message"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/standard_gap" android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginLeft="@dimen/standard_gap" android:layout_marginLeft="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap" android:layout_marginRight="@dimen/standard_gap"
android:layout_marginStart="@dimen/standard_gap" android:layout_marginStart="@dimen/standard_gap"
android:gravity="center" android:gravity="center"
android:paddingBottom="@dimen/small_gap" android:paddingBottom="@dimen/small_gap"
android:paddingTop="@dimen/small_gap" android:paddingTop="@dimen/small_gap"
android:textColor="@color/secondaryDarkColor" android:textColor="@color/secondaryDarkColor"
tools:text="Check your password, something doesnt look right" /> tools:text="Check your password, something doesnt look right" />
</FrameLayout> </FrameLayout>
<com.google.android.material.textfield.TextInputLayout <com.google.android.material.textfield.TextInputLayout
android:id="@+id/username_container" android:id="@+id/username_container"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@id/error_message_container" android:layout_below="@id/error_message_container"
android:layout_marginBottom="@dimen/standard_gap" android:layout_marginBottom="@dimen/standard_gap"
android:layout_marginEnd="@dimen/standard_gap" android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginLeft="@dimen/standard_gap" android:layout_marginLeft="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap" android:layout_marginRight="@dimen/standard_gap"
android:layout_marginStart="@dimen/standard_gap" android:layout_marginStart="@dimen/standard_gap"
android:layout_marginTop="@dimen/standard_gap"> android:layout_marginTop="@dimen/standard_gap">
<com.google.android.material.textfield.TextInputEditText <com.google.android.material.textfield.TextInputEditText
android:id="@+id/login_username" android:id="@+id/login_username"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:hint="@string/username" android:hint="@string/username"
android:imeOptions="flagNoExtractUi" android:imeOptions="flagNoExtractUi"
android:inputType="textNoSuggestions"> android:inputType="textNoSuggestions">
<requestFocus /> <requestFocus />
@ -112,138 +112,140 @@
</com.google.android.material.textfield.TextInputLayout> </com.google.android.material.textfield.TextInputLayout>
<com.google.android.material.textfield.TextInputLayout <com.google.android.material.textfield.TextInputLayout
android:id="@+id/password_container" android:id="@+id/password_container"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@id/username_container" android:layout_below="@id/username_container"
android:layout_marginBottom="@dimen/standard_gap" android:layout_marginBottom="@dimen/standard_gap"
android:layout_marginEnd="@dimen/standard_gap" android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginLeft="@dimen/standard_gap" android:layout_marginLeft="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap" android:layout_marginRight="@dimen/standard_gap"
android:layout_marginStart="@dimen/standard_gap" android:layout_marginStart="@dimen/standard_gap"
app:passwordToggleEnabled="true"> app:passwordToggleEnabled="true">
<com.google.android.material.textfield.TextInputEditText <com.google.android.material.textfield.TextInputEditText
android:id="@+id/login_password" android:id="@+id/login_password"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:hint="@string/password" android:hint="@string/password"
android:imeOptions="flagNoExtractUi" android:imeOptions="flagNoExtractUi"
android:inputType="textPassword" /> android:inputType="textPassword" />
</com.google.android.material.textfield.TextInputLayout> </com.google.android.material.textfield.TextInputLayout>
<com.google.android.material.textfield.TextInputLayout <com.google.android.material.textfield.TextInputLayout
android:id="@+id/two_factor_container" android:id="@+id/two_factor_container"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@id/password_container" android:layout_below="@id/password_container"
android:layout_marginBottom="@dimen/standard_gap" android:layout_marginBottom="@dimen/standard_gap"
android:layout_marginEnd="@dimen/standard_gap" android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginLeft="@dimen/standard_gap" android:layout_marginLeft="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap" android:layout_marginRight="@dimen/standard_gap"
android:layout_marginStart="@dimen/standard_gap" android:layout_marginStart="@dimen/standard_gap"
android:visibility="gone" android:visibility="gone"
app:passwordToggleEnabled="false" app:passwordToggleEnabled="false"
tools:visibility="visible"> tools:visibility="visible">
<com.google.android.material.textfield.TextInputEditText <com.google.android.material.textfield.TextInputEditText
android:id="@+id/login_two_factor" android:id="@+id/login_two_factor"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:hint="@string/_2fa_code" android:hint="@string/_2fa_code"
android:imeOptions="flagNoExtractUi" android:imeOptions="actionGo"
android:inputType="number" android:inputType="number"
android:visibility="gone" android:singleLine="true"
tools:visibility="visible" /> android:maxLines="1"
android:visibility="gone"
tools:visibility="visible" />
</com.google.android.material.textfield.TextInputLayout> </com.google.android.material.textfield.TextInputLayout>
<LinearLayout <LinearLayout
android:id="@+id/buttonFrame" android:id="@+id/buttonFrame"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@id/two_factor_container" android:layout_below="@id/two_factor_container"
android:layout_marginBottom="@dimen/standard_gap" android:layout_marginBottom="@dimen/standard_gap"
android:layout_marginEnd="@dimen/standard_gap" android:layout_marginEnd="@dimen/standard_gap"
android:layout_marginLeft="@dimen/standard_gap" android:layout_marginLeft="@dimen/standard_gap"
android:layout_marginRight="@dimen/standard_gap" android:layout_marginRight="@dimen/standard_gap"
android:layout_marginStart="@dimen/standard_gap"> android:layout_marginStart="@dimen/standard_gap">
<Button <Button
android:id="@+id/sign_up_button" android:id="@+id/sign_up_button"
style="@style/Widget.AppCompat.Button.Borderless.Colored" style="@style/Widget.AppCompat.Button.Borderless.Colored"
android:layout_width="@dimen/dimen_0" android:layout_width="@dimen/dimen_0"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_horizontal" android:layout_gravity="center_horizontal"
android:layout_marginEnd="@dimen/small_gap" android:layout_marginEnd="@dimen/small_gap"
android:layout_marginRight="@dimen/small_gap" android:layout_marginRight="@dimen/small_gap"
android:layout_weight="1" android:layout_weight="1"
android:text="@string/signup" /> android:text="@string/signup" />
<Button <Button
android:id="@+id/login_button" android:id="@+id/login_button"
style="@style/Widget.AppCompat.Button.Colored" style="@style/Widget.AppCompat.Button.Colored"
android:layout_width="@dimen/dimen_0" android:layout_width="@dimen/dimen_0"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/small_gap" android:layout_marginLeft="@dimen/small_gap"
android:layout_marginStart="@dimen/small_gap" android:layout_marginStart="@dimen/small_gap"
android:layout_weight="1" android:layout_weight="1"
android:enabled="false" android:enabled="false"
android:text="@string/login" /> android:text="@string/login" />
</LinearLayout> </LinearLayout>
<fr.free.nrw.commons.ui.widget.HtmlTextView <fr.free.nrw.commons.ui.widget.HtmlTextView
android:visibility="visible" android:visibility="visible"
android:id="@+id/forgot_password" android:id="@+id/forgot_password"
android:layout_width="match_parent" android:layout_width="match_parent"
android:gravity="center_horizontal" android:gravity="center_horizontal"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@id/buttonFrame" android:layout_below="@id/buttonFrame"
android:layout_marginBottom="@dimen/standard_gap" android:layout_marginBottom="@dimen/standard_gap"
android:text="@string/forgot_password" android:text="@string/forgot_password"
android:textColor="@color/status_bar_blue"/> android:textColor="@color/status_bar_blue"/>
<fr.free.nrw.commons.ui.widget.HtmlTextView <fr.free.nrw.commons.ui.widget.HtmlTextView
android:id="@+id/skip_login" android:id="@+id/skip_login"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/standard_gap" android:layout_marginBottom="@dimen/standard_gap"
android:layout_below="@id/forgot_password" android:layout_below="@id/forgot_password"
android:gravity="center_horizontal" android:gravity="center_horizontal"
android:text="@string/skip_login" android:text="@string/skip_login"
android:visibility="visible"/> android:visibility="visible"/>
</RelativeLayout> </RelativeLayout>
</androidx.cardview.widget.CardView> </androidx.cardview.widget.CardView>
<androidx.appcompat.widget.AppCompatImageView <androidx.appcompat.widget.AppCompatImageView
android:layout_width="@dimen/gigantic_gap" android:layout_width="@dimen/gigantic_gap"
android:layout_height="@dimen/gigantic_gap" android:layout_height="@dimen/gigantic_gap"
android:layout_gravity="center_horizontal" android:layout_gravity="center_horizontal"
android:elevation="@dimen/activity_margin_horizontal" android:elevation="@dimen/activity_margin_horizontal"
app:srcCompat="@drawable/blue_rinse_circle" app:srcCompat="@drawable/blue_rinse_circle"
tools:ignore="UnusedAttribute" /> tools:ignore="UnusedAttribute" />
<androidx.appcompat.widget.AppCompatImageView <androidx.appcompat.widget.AppCompatImageView
android:layout_width="@dimen/dimen_42" android:layout_width="@dimen/dimen_42"
android:layout_height="@dimen/dimen_42" android:layout_height="@dimen/dimen_42"
android:layout_gravity="center_horizontal" android:layout_gravity="center_horizontal"
android:layout_marginTop="@dimen/activity_margin_horizontal" android:layout_marginTop="@dimen/activity_margin_horizontal"
android:elevation="@dimen/activity_margin_horizontal" android:elevation="@dimen/activity_margin_horizontal"
app:srcCompat="@drawable/commons_logo" app:srcCompat="@drawable/commons_logo"
tools:ignore="UnusedAttribute" /> tools:ignore="UnusedAttribute" />
</FrameLayout> </FrameLayout>
<fr.free.nrw.commons.ui.widget.HtmlTextView <fr.free.nrw.commons.ui.widget.HtmlTextView
android:id="@+id/about_privacy_policy" android:id="@+id/about_privacy_policy"
style="?android:textAppearanceSmall" style="?android:textAppearanceSmall"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/standard_gap" android:layout_marginBottom="@dimen/standard_gap"
android:layout_gravity="center_horizontal" android:layout_gravity="center_horizontal"
android:text="@string/about_privacy_policy"/> android:text="@string/about_privacy_policy"/>
</LinearLayout> </LinearLayout>
</ScrollView> </ScrollView>