Cooltey has uploaded a new change for review. (
https://gerrit.wikimedia.org/r/397923 )
Change subject: Fix alignment of the first edit pencil on articles
......................................................................
Fix alignment of the first edit pencil on articles
- Update layout, xml and code to programmtically change the parameter's rules
Bug: T160753
Change-Id: I51c3785b440fce8f336ba5b55a51569ab869638b
---
M app/src/main/java/org/wikipedia/page/leadimages/PageHeaderView.java
M app/src/main/res/layout/view_page_header.xml
M app/src/main/res/values/dimens.xml
3 files changed, 72 insertions(+), 60 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/apps/android/wikipedia
refs/changes/23/397923/1
diff --git
a/app/src/main/java/org/wikipedia/page/leadimages/PageHeaderView.java
b/app/src/main/java/org/wikipedia/page/leadimages/PageHeaderView.java
index a024c16..35f4168 100644
--- a/app/src/main/java/org/wikipedia/page/leadimages/PageHeaderView.java
+++ b/app/src/main/java/org/wikipedia/page/leadimages/PageHeaderView.java
@@ -24,9 +24,9 @@
import android.view.Gravity;
import android.view.MenuItem;
import android.view.View;
-import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.LinearLayout;
+import android.widget.RelativeLayout;
import org.wikipedia.R;
import org.wikipedia.media.AvPlayer;
@@ -164,16 +164,29 @@
public void setLocale(@NonNull String locale) {
titleText.setLocale(locale);
subtitleText.setLocale(locale);
+
LinearLayout.LayoutParams dividerParams = (LinearLayout.LayoutParams)
divider.getLayoutParams();
dividerParams.gravity = isLangRTL(locale) ? Gravity.RIGHT :
Gravity.LEFT;
divider.setLayoutParams(dividerParams);
- FrameLayout.LayoutParams pencilParams = (FrameLayout.LayoutParams)
editPencil.getLayoutParams();
- pencilParams.gravity = Gravity.BOTTOM | (isLangRTL(locale) ?
Gravity.LEFT : Gravity.RIGHT);
+
+ RelativeLayout.LayoutParams pencilParams =
(RelativeLayout.LayoutParams) editPencil.getLayoutParams();
+ pencilParams.removeRule(isLangRTL(locale) ?
RelativeLayout.ALIGN_PARENT_END : RelativeLayout.ALIGN_PARENT_START);
+ pencilParams.addRule(isLangRTL(locale) ?
RelativeLayout.ALIGN_PARENT_START : RelativeLayout.ALIGN_PARENT_END);
+ pencilParams.addRule(RelativeLayout.ALIGN_START, isLangRTL(locale) ?
R.dimen.edit_pencil_horizontal_margin :
R.dimen.edit_pencil_space_between_subtitle);
+ pencilParams.addRule(RelativeLayout.ALIGN_END, isLangRTL(locale) ?
R.dimen.edit_pencil_space_between_subtitle :
R.dimen.edit_pencil_horizontal_margin);
+ editPencil.setLayoutParams(pencilParams);
+
+ RelativeLayout.LayoutParams subtitleParams =
(RelativeLayout.LayoutParams) subtitleText.getLayoutParams();
+ subtitleParams.removeRule(isLangRTL(locale) ? RelativeLayout.START_OF
: RelativeLayout.END_OF);
+ subtitleParams.addRule(isLangRTL(locale) ? RelativeLayout.END_OF :
RelativeLayout.START_OF, editPencil.getId());
+ subtitleText.setLayoutParams(subtitleParams);
+
int subtitlePadding = editPencil.getWidth();
subtitleText.setPadding(isLangRTL(locale) ? subtitlePadding : 0,
subtitleText.getPaddingTop(),
isLangRTL(locale) ? 0 : subtitlePadding,
subtitleText.getPaddingBottom());
+
if (TextUtils.isEmpty(subtitle)) {
subtitleText.setCompoundDrawablesWithIntrinsicBounds(
isLangRTL(locale) ? 0 : R.drawable.ic_short_text,
diff --git a/app/src/main/res/layout/view_page_header.xml
b/app/src/main/res/layout/view_page_header.xml
index c712e40..c23c508 100644
--- a/app/src/main/res/layout/view_page_header.xml
+++ b/app/src/main/res/layout/view_page_header.xml
@@ -1,74 +1,72 @@
-<FrameLayout
+<LinearLayout
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="wrap_content">
+ android:layout_height="wrap_content"
+ android:orientation="vertical">
- <LinearLayout
+ <org.wikipedia.page.leadimages.PageHeaderImageView
+ android:id="@+id/view_page_header_image"
android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:orientation="vertical">
+ android:layout_height="wrap_content" />
- <org.wikipedia.page.leadimages.PageHeaderImageView
- android:id="@+id/view_page_header_image"
- android:layout_width="match_parent"
- android:layout_height="match_parent" />
+ <org.wikipedia.views.AppTextView
+ style="@style/RtlAwareTextView"
+ android:id="@+id/view_page_title_text"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:paddingTop="12dp"
+ android:layout_marginRight="@dimen/activity_horizontal_margin"
+ android:layout_marginLeft="@dimen/activity_horizontal_margin"
+ android:textSize="@dimen/titleTextSize"
+ android:lineSpacingMultiplier="@dimen/lead_title_leading_scalar"
+ android:maxLines="3"
+ android:ellipsize="end"
+ android:textColor="?attr/primary_text_color"
+ tools:text="Title" />
+
+ <RelativeLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginLeft="@dimen/activity_horizontal_margin"
+ android:layout_marginRight="@dimen/activity_horizontal_margin">
<org.wikipedia.views.AppTextView
- style="@style/RtlAwareTextView"
- android:id="@+id/view_page_title_text"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:paddingTop="12dp"
- android:layout_marginRight="@dimen/activity_horizontal_margin"
- android:layout_marginLeft="@dimen/activity_horizontal_margin"
- android:textSize="@dimen/titleTextSize"
- android:lineSpacingMultiplier="@dimen/lead_title_leading_scalar"
- android:maxLines="3"
- android:ellipsize="end"
- android:textColor="?attr/primary_text_color"
- tools:text="Title" />
-
- <org.wikipedia.views.AppTextView
- style="@style/RtlAwareTextView"
android:id="@+id/view_page_subtitle_text"
+ style="@style/RtlAwareTextView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:layout_marginRight="@dimen/activity_horizontal_margin"
- android:layout_marginLeft="@dimen/activity_horizontal_margin"
- android:paddingTop="4dp"
- android:paddingEnd="40dp"
- android:paddingRight="40dp"
- android:textSize="@dimen/descriptionTextSize"
+ android:drawablePadding="8dp"
android:lineSpacingMultiplier="@dimen/lead_subtitle_leading_scalar"
android:textColor="?attr/secondary_text_color"
android:textColorLink="?attr/secondary_text_color"
- android:drawablePadding="8dp"
+ android:textSize="@dimen/descriptionTextSize"
+ android:layout_toStartOf="@+id/view_page_header_edit_pencil"
+ android:paddingTop="4dp"
tools:text="Subtitle" />
- <View
- android:id="@+id/view_page_header_divider"
- android:layout_width="53.5dp"
- android:layout_height="1dp"
- android:layout_marginTop="20dp"
- android:layout_marginLeft="@dimen/activity_horizontal_margin"
- android:layout_marginRight="@dimen/activity_horizontal_margin"
- android:background="@color/base70"/>
- </LinearLayout>
+ <android.support.v7.widget.AppCompatImageView
+ android:id="@+id/view_page_header_edit_pencil"
+ android:layout_width="@dimen/edit_pencil_size"
+ android:layout_height="@dimen/edit_pencil_size"
+ android:contentDescription="@string/article_header_edit_hint"
+ android:scaleType="fitCenter"
+ android:layout_alignBottom="@+id/view_page_subtitle_text"
+ android:layout_alignParentEnd="true"
+
android:layout_marginStart="@dimen/edit_pencil_space_between_subtitle"
+ android:layout_marginEnd="@dimen/edit_pencil_horizontal_margin"
+ app:srcCompat="@drawable/ic_mode_edit_white_24dp"
+ app:tint="?attr/material_theme_secondary_color"
+ app:tintMode="src_in" />
+ </RelativeLayout>
- <android.support.v7.widget.AppCompatImageView
- android:id="@+id/view_page_header_edit_pencil"
- android:layout_width="@dimen/edit_pencil_size"
- android:layout_height="@dimen/edit_pencil_size"
- android:layout_marginLeft="@dimen/edit_pencil_horizontal_margin"
- android:layout_marginRight="@dimen/edit_pencil_horizontal_margin"
- android:layout_gravity="bottom|end"
- app:srcCompat="@drawable/ic_mode_edit_white_24dp"
- app:tint="?attr/material_theme_secondary_color"
- app:tintMode="src_in"
- android:scaleType="fitCenter"
- android:background="?attr/selectableItemBackgroundBorderless"
- android:contentDescription="@string/article_header_edit_hint" />
-
-</FrameLayout>
\ No newline at end of file
+ <View
+ android:id="@+id/view_page_header_divider"
+ android:layout_width="53.5dp"
+ android:layout_height="1dp"
+ android:layout_marginTop="16dp"
+ android:background="@color/base70"
+ android:layout_marginLeft="@dimen/activity_horizontal_margin"
+ android:layout_marginRight="@dimen/activity_horizontal_margin"/>
+</LinearLayout>
\ No newline at end of file
diff --git a/app/src/main/res/values/dimens.xml
b/app/src/main/res/values/dimens.xml
index e9641fb..2935093 100644
--- a/app/src/main/res/values/dimens.xml
+++ b/app/src/main/res/values/dimens.xml
@@ -5,8 +5,9 @@
<dimen name="toolbar_default_elevation">4dp</dimen>
+ <dimen name="edit_pencil_space_between_subtitle">16dp</dimen>
<dimen name="edit_pencil_size">24dp</dimen>
- <dimen name="edit_pencil_horizontal_margin">24dp</dimen>
+ <dimen name="edit_pencil_horizontal_margin">8dp</dimen>
<dimen name="popup_menu_drop_down_horizontal_offset">8dp</dimen>
<dimen name="popup_menu_drop_down_vertical_offset">-8dp</dimen>
--
To view, visit https://gerrit.wikimedia.org/r/397923
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I51c3785b440fce8f336ba5b55a51569ab869638b
Gerrit-PatchSet: 1
Gerrit-Project: apps/android/wikipedia
Gerrit-Branch: master
Gerrit-Owner: Cooltey <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits