summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortom79 <tschneider.ac@gmail.com>2019-10-30 08:35:09 +0100
committertom79 <tschneider.ac@gmail.com>2019-10-30 08:35:09 +0100
commit3da1c3d655f31829280f0ccd0cdcd07fb5f55bb7 (patch)
treecbb07a6ed0816a00df13827c345da3050c1fe366
parenta5fcab3e2d1ef41833f6ee7a7078aaba6e9bbb62 (diff)
Update layoutsnew_layout
-rw-r--r--app/src/main/java/app/fedilab/android/activities/ShowConversationActivity.java26
-rw-r--r--app/src/main/java/app/fedilab/android/client/Entities/Status.java23
-rw-r--r--app/src/main/java/app/fedilab/android/drawers/StatusListAdapter.java25
-rw-r--r--app/src/main/res/drawable/diag_bottom.xml18
-rw-r--r--app/src/main/res/drawable/diag_top.xml18
-rw-r--r--app/src/main/res/layout/drawer_status_focused.xml1406
6 files changed, 838 insertions, 678 deletions
diff --git a/app/src/main/java/app/fedilab/android/activities/ShowConversationActivity.java b/app/src/main/java/app/fedilab/android/activities/ShowConversationActivity.java
index 07d50150e..19c276ad7 100644
--- a/app/src/main/java/app/fedilab/android/activities/ShowConversationActivity.java
+++ b/app/src/main/java/app/fedilab/android/activities/ShowConversationActivity.java
@@ -367,17 +367,19 @@ public class ShowConversationActivity extends BaseActivity implements OnRetrieve
if (apiResponse.getContext() == null || apiResponse.getContext().getAncestors() == null) {
return;
}
- if (MainActivity.social != UpdateAccountInfoAsyncTask.SOCIAL.GNU && MainActivity.social != UpdateAccountInfoAsyncTask.SOCIAL.FRIENDICA) {
+ if (BaseMainActivity.social != UpdateAccountInfoAsyncTask.SOCIAL.GNU && BaseMainActivity.social != UpdateAccountInfoAsyncTask.SOCIAL.FRIENDICA) {
statusListAdapter.setConversationPosition(apiResponse.getContext().getAncestors().size());
if (!expanded) {
if (apiResponse.getContext().getAncestors() != null && apiResponse.getContext().getAncestors().size() > 0) {
statuses.addAll(0, apiResponse.getContext().getAncestors());
statusListAdapter.notifyItemRangeInserted(0, apiResponse.getContext().getAncestors().size());
}
+ int targetedPosition = statuses.size()-1;
if (apiResponse.getContext().getDescendants() != null && apiResponse.getContext().getDescendants().size() > 0) {
statuses.addAll(apiResponse.getContext().getAncestors().size() + 1, apiResponse.getContext().getDescendants());
statusListAdapter.notifyItemRangeChanged(apiResponse.getContext().getAncestors().size() + 1, apiResponse.getContext().getDescendants().size());
}
+ decorate(targetedPosition);
} else {
List<Status> statusesTemp = apiResponse.getContext().getDescendants();
int i = 1;
@@ -391,6 +393,7 @@ public class ShowConversationActivity extends BaseActivity implements OnRetrieve
}
i++;
}
+ decorate(position);
statusListAdapter.notifyItemRangeChanged(1, apiResponse.getContext().getDescendants().size());
lv_status.scrollToPosition(position);
}
@@ -411,6 +414,7 @@ public class ShowConversationActivity extends BaseActivity implements OnRetrieve
}
statusListAdapter = new StatusListAdapter((statuses.size() - 1 - i), null, isOnWifi, statuses);
statusListAdapter.setConversationPosition((statuses.size() - 1 - i));
+ decorate(0);
final LinearLayoutManager mLayoutManager;
mLayoutManager = new LinearLayoutManager(this);
lv_status.setLayoutManager(mLayoutManager);
@@ -430,11 +434,29 @@ public class ShowConversationActivity extends BaseActivity implements OnRetrieve
setTheme(R.style.AppThemeDark_NoActionBar);
}
- lv_status.addItemDecoration(new ConversationDecoration(ShowConversationActivity.this, theme));
lv_status.setAdapter(statusListAdapter);
}
}
}
+
+ private void decorate(int targetedPosition){
+ for(int i =0 ; i < statuses.size() ; i++){
+ if (i == targetedPosition) {
+ if( targetedPosition < statuses.size()-1 )
+ statuses.get(targetedPosition).setShowBottomLine(true);
+ if( targetedPosition > 0 && statuses.get(targetedPosition).getIn_reply_to_id().compareTo(statuses.get(targetedPosition-1).getId()) == 0){
+ statuses.get(targetedPosition-1).setShowBottomLine(true);
+ statuses.get(targetedPosition).setShowTopLine(true);
+ }
+ } else if (0 < i && i <= statuses.size() - 1) {
+ if( statuses.get(i-1).getId().compareTo(statuses.get(i).getIn_reply_to_id()) == 0){
+ statuses.get(i-1).setShowBottomLine(true);
+ statuses.get(i).setShowTopLine(true);
+ }
+ }
+ }
+ statusListAdapter.notifyItemRangeChanged(0,statuses.size());
+ }
}
diff --git a/app/src/main/java/app/fedilab/android/client/Entities/Status.java b/app/src/main/java/app/fedilab/android/client/Entities/Status.java
index 85081fcac..aee41841b 100644
--- a/app/src/main/java/app/fedilab/android/client/Entities/Status.java
+++ b/app/src/main/java/app/fedilab/android/client/Entities/Status.java
@@ -149,6 +149,8 @@ public class Status implements Parcelable {
private boolean showSpoiler = false;
private String quickReplyContent;
private String quickReplyPrivacy;
+ private boolean showBottomLine = false;
+ private boolean showTopLine = false;
public Status() {
}
@@ -243,7 +245,8 @@ public class Status implements Parcelable {
dest.writeByte(this.isFocused ? (byte) 1 : (byte) 0);
dest.writeString(this.quickReplyContent);
dest.writeString(this.quickReplyPrivacy);
-
+ dest.writeByte(this.showBottomLine ? (byte) 1 : (byte) 0);
+ dest.writeByte(this.showTopLine ? (byte) 1 : (byte) 0);
}
protected Status(Parcel in) {
@@ -314,6 +317,8 @@ public class Status implements Parcelable {
this.isFocused = in.readByte() != 0;
this.quickReplyContent = in.readString();
this.quickReplyPrivacy = in.readString();
+ this.showBottomLine = in.readByte() != 0;
+ this.showTopLine = in.readByte() != 0;
}
public static final Creator<Status> CREATOR = new Creator<Status>() {
@@ -1829,4 +1834,20 @@ public class Status implements Parcelable {
public void setQuickReplyPrivacy(String quickReplyPrivacy) {
this.quickReplyPrivacy = quickReplyPrivacy;
}
+
+ public boolean isShowBottomLine() {
+ return showBottomLine;
+ }
+
+ public void setShowBottomLine(boolean showBottomLine) {
+ this.showBottomLine = showBottomLine;
+ }
+
+ public boolean isShowTopLine() {
+ return showTopLine;
+ }
+
+ public void setShowTopLine(boolean showTopLine) {
+ this.showTopLine = showTopLine;
+ }
}
diff --git a/app/src/main/java/app/fedilab/android/drawers/StatusListAdapter.java b/app/src/main/java/app/fedilab/android/drawers/StatusListAdapter.java
index 0c00bcbcb..59ffc1128 100644
--- a/app/src/main/java/app/fedilab/android/drawers/StatusListAdapter.java
+++ b/app/src/main/java/app/fedilab/android/drawers/StatusListAdapter.java
@@ -38,6 +38,7 @@ import androidx.annotation.NonNull;
import androidx.appcompat.widget.SwitchCompat;
import androidx.appcompat.widget.TooltipCompat;
import androidx.constraintlayout.widget.ConstraintLayout;
+import androidx.coordinatorlayout.widget.CoordinatorLayout;
import androidx.core.content.ContextCompat;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.widget.PopupMenu;
@@ -659,7 +660,7 @@ public class StatusListAdapter extends RecyclerView.Adapter implements OnPostAct
ImageView status_privacy;
LinearLayout status_container2;
LinearLayout status_container3;
- LinearLayout main_container;
+ ConstraintLayout main_container;
TextView yandex_translate;
ConstraintLayout status_action_container;
Button fetch_more;
@@ -886,10 +887,8 @@ public class StatusListAdapter extends RecyclerView.Adapter implements OnPostAct
context = parent.getContext();
LayoutInflater layoutInflater = LayoutInflater.from(this.context);
- if (viewType == DISPLAYED_STATUS)
+ if (viewType == DISPLAYED_STATUS || viewType == COMPACT_STATUS)
return new ViewHolder(layoutInflater.inflate(R.layout.drawer_status, parent, false));
- else if (viewType == COMPACT_STATUS)
- return new ViewHolder(layoutInflater.inflate(R.layout.drawer_status_compact, parent, false));
else if (viewType == CONSOLE_STATUS)
return new ViewHolder(layoutInflater.inflate(R.layout.drawer_status_console, parent, false));
else if (viewType == FOCUSED_STATUS)
@@ -4381,6 +4380,15 @@ public class StatusListAdapter extends RecyclerView.Adapter implements OnPostAct
if( statuses.get(i).getQuickReplyPrivacy() != null){
status.setQuickReplyPrivacy(statuses.get(i).getQuickReplyPrivacy());
}
+ if( statuses.get(i).getQuickReplyPrivacy() != null){
+ status.setQuickReplyPrivacy(statuses.get(i).getQuickReplyPrivacy());
+ }
+ if( statuses.get(i).isShowTopLine()){
+ status.setShowTopLine(true);
+ }
+ if( statuses.get(i).isShowBottomLine()){
+ status.setShowBottomLine(true);
+ }
statuses.set(i, status);
statusListAdapter.notifyItemChanged(i);
/*if( mRecyclerView != null) {
@@ -4421,6 +4429,15 @@ public class StatusListAdapter extends RecyclerView.Adapter implements OnPostAct
if( statuses.get(i).getQuickReplyPrivacy() != null){
status.setQuickReplyPrivacy(statuses.get(i).getQuickReplyPrivacy());
}
+ if( statuses.get(i).getQuickReplyPrivacy() != null){
+ status.setQuickReplyPrivacy(statuses.get(i).getQuickReplyPrivacy());
+ }
+ if( statuses.get(i).isShowTopLine()){
+ status.setShowTopLine(true);
+ }
+ if( statuses.get(i).isShowBottomLine()){
+ status.setShowBottomLine(true);
+ }
statuses.set(i, status);
statusListAdapter.notifyItemChanged(i);
/*if( mRecyclerView != null) {
diff --git a/app/src/main/res/drawable/diag_bottom.xml b/app/src/main/res/drawable/diag_bottom.xml
new file mode 100644
index 000000000..b61b9cb08
--- /dev/null
+++ b/app/src/main/res/drawable/diag_bottom.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
+ <item>
+ <rotate
+ android:fromDegrees="45"
+ android:pivotX="50%"
+ android:pivotY="50%"
+ android:toDegrees="0">
+ <shape
+ android:shape="line"
+ android:top="1dip">
+ <stroke
+ android:width="2dp"
+ android:color="?colorAccent"/>
+ </shape>
+ </rotate>
+ </item>
+</layer-list> \ No newline at end of file
diff --git a/app/src/main/res/drawable/diag_top.xml b/app/src/main/res/drawable/diag_top.xml
new file mode 100644
index 000000000..c967844ae
--- /dev/null
+++ b/app/src/main/res/drawable/diag_top.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
+ <item>
+ <rotate
+ android:fromDegrees="135"
+ android:pivotX="50%"
+ android:pivotY="50%"
+ android:toDegrees="0">
+ <shape
+ android:shape="line"
+ android:top="1dp">
+ <stroke
+ android:width="2dp"
+ android:color="?colorAccent"/>
+ </shape>
+ </rotate>
+ </item>
+</layer-list> \ No newline at end of file
diff --git a/app/src/main/res/layout/drawer_status_focused.xml b/app/src/main/res/layout/drawer_status_focused.xml
index 6f559058a..422bf5ff9 100644
--- a/app/src/main/res/layout/drawer_status_focused.xml
+++ b/app/src/main/res/layout/drawer_status_focused.xml
@@ -14,816 +14,880 @@
You should have received a copy of the GNU General Public License along with Fedilab; if not,
see <http://www.gnu.org/licenses>.
-->
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<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:id="@+id/main_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- xmlns:app="http://schemas.android.com/apk/res-auto"
- android:id="@+id/main_container"
- android:paddingTop="10dp"
- android:layout_marginStart="5dp"
- android:layout_marginEnd="5dp"
- android:layout_marginLeft="5dp"
- android:layout_marginRight="5dp"
android:divider="?android:dividerHorizontal"
- android:showDividers="end"
- android:orientation="vertical">
+ android:showDividers="end">
+
+
+
+ <View
+ android:visibility="gone"
+ android:id="@+id/status_reply_indicator_diag_top"
+ android:layout_width="20dp"
+ android:layout_height="11dp"
+ android:background="@drawable/diag_top"
+ android:layout_marginStart="10dp"
+ app:layout_constraintEnd_toEndOf="@id/reply_indicator_dot"
+ app:layout_constraintStart_toStartOf="@id/reply_indicator_dot"
+ app:layout_constraintTop_toTopOf="parent" />
+
+
+ <View
+ android:visibility="gone"
+ android:id="@+id/status_reply_indicator_top"
+ android:layout_width="2dp"
+ android:layout_height="0dp"
+ android:background="?colorAccent"
+ app:layout_constraintBottom_toBottomOf="@id/reply_indicator_dot"
+ app:layout_constraintEnd_toEndOf="@id/reply_indicator_dot"
+ app:layout_constraintStart_toStartOf="@id/reply_indicator_dot"
+ app:layout_constraintTop_toBottomOf="@id/status_reply_indicator_diag_top" />
+
+ <View
+ android:visibility="gone"
+ android:id="@+id/reply_indicator_dot"
+ android:layout_width="8dp"
+ android:layout_height="8dp"
+ android:layout_marginStart="0dp"
+ android:background="?colorAccent"
+ app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintTop_toTopOf="parent" />
+
+ <View
+ android:visibility="gone"
+ android:id="@+id/status_reply_indicator_bottom"
+ android:layout_width="2dp"
+ android:layout_height="0dp"
+ android:background="?colorAccent"
+ app:layout_constraintBottom_toTopOf="@+id/status_reply_indicator_diag_bottom"
+ app:layout_constraintEnd_toEndOf="@id/reply_indicator_dot"
+ app:layout_constraintStart_toStartOf="@id/reply_indicator_dot"
+ app:layout_constraintTop_toTopOf="@id/reply_indicator_dot" />
+
+
+ <View
+ android:visibility="gone"
+ android:id="@+id/status_reply_indicator_diag_bottom"
+ android:layout_width="20dp"
+ android:layout_height="11dp"
+ android:layout_marginStart="10dp"
+ android:background="@drawable/diag_bottom"
+ app:layout_constraintEnd_toEndOf="@id/reply_indicator_dot"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintBottom_toBottomOf="parent" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:orientation="horizontal"
- android:baselineAligned="false">
+ android:orientation="vertical"
+ android:paddingTop="10dp"
+ android:layout_marginStart="20dp"
+ android:layout_marginLeft="20dp"
+ android:layout_marginEnd="20dp"
+ android:layout_marginRight="20dp"
+ app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintTop_toTopOf="parent">
<LinearLayout
+ android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:layout_width="50dp"
- android:orientation="vertical">
+ android:baselineAligned="false"
+ android:orientation="horizontal">
- <RelativeLayout
+ <LinearLayout
+ android:layout_width="50dp"
android:layout_height="wrap_content"
- android:layout_width="match_parent">
-
- <ImageView
- android:layout_width="50dp"
- android:layout_height="50dp"
- android:layout_marginTop="5dp"
- android:layout_centerHorizontal="true"
- android:id="@+id/status_account_profile"
- android:contentDescription="@string/profile_picture" />
+ android:orientation="vertical">
- <ImageView
- android:id="@+id/status_account_bot"
- android:layout_width="20dp"
- android:layout_height="20dp"
- android:layout_alignParentStart="true"
- android:layout_alignParentLeft="true"
- android:layout_alignParentTop="true"
- android:layout_marginTop="5dp"
- android:background="@drawable/bot_background_round_corner"
- android:padding="3dp"
- android:src="@drawable/ic_bot"
- android:visibility="gone" />
+ <RelativeLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content">
- <ImageView
- android:layout_width="45dp"
- android:layout_height="45dp"
- android:layout_alignParentStart="true"
- android:layout_alignParentLeft="true"
- android:layout_centerHorizontal="true"
- android:visibility="gone"
- android:id="@+id/status_account_profile_boost"
- android:contentDescription="@string/profile_picture" />
+ <ImageView
+ android:id="@+id/status_account_profile"
+ android:layout_width="50dp"
+ android:layout_height="50dp"
+ android:layout_centerHorizontal="true"
+ android:layout_marginTop="5dp"
+ android:contentDescription="@string/profile_picture" />
- <ImageView
- android:id="@+id/status_account_profile_boost_by"
- android:layout_height="30dp"
- android:layout_width="30dp"
- android:layout_alignParentEnd="true"
- android:layout_alignParentRight="true"
- android:layout_marginTop="20dp"
- style="?attr/shapeBorder"
- android:visibility="gone"
- android:contentDescription="@string/profile_picture" />
- </RelativeLayout>
+ <ImageView
+ android:id="@+id/status_account_bot"
+ android:layout_width="20dp"
+ android:layout_height="20dp"
+ android:layout_alignParentStart="true"
+ android:layout_alignParentLeft="true"
+ android:layout_alignParentTop="true"
+ android:layout_marginTop="5dp"
+ android:background="@drawable/bot_background_round_corner"
+ android:padding="3dp"
+ android:src="@drawable/ic_bot"
+ android:visibility="gone" />
- <ImageView
- android:layout_gravity="center_horizontal"
- android:layout_marginTop="5dp"
- android:id="@+id/new_element"
- android:visibility="gone"
- android:src="@drawable/ic_fiber_new"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:contentDescription="@string/profile_picture" />
- </LinearLayout>
+ <ImageView
+ android:layout_width="45dp"
+ android:layout_height="45dp"
+ android:layout_alignParentStart="true"
+ android:layout_alignParentLeft="true"
+ android:layout_centerHorizontal="true"
+ android:contentDescription="@string/profile_picture"
+ android:visibility="gone" />
- <LinearLayout
- android:id="@+id/left_buttons"
- android:orientation="vertical"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:visibility="gone" />
+ <ImageView
+ android:id="@+id/status_account_profile_boost_by"
+ style="?attr/shapeBorder"
+ android:layout_width="30dp"
+ android:layout_height="30dp"
+ android:layout_alignParentEnd="true"
+ android:layout_alignParentRight="true"
+ android:layout_marginTop="20dp"
+ android:contentDescription="@string/profile_picture"
+ android:visibility="gone" />
+ </RelativeLayout>
- <LinearLayout
- android:layout_marginStart="10dp"
- android:layout_marginLeft="10dp"
- android:layout_width="0dp"
- android:layout_weight="1"
- android:layout_height="wrap_content"
- android:orientation="vertical">
+ <ImageView
+ android:id="@+id/new_element"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_horizontal"
+ android:layout_marginTop="5dp"
+ android:contentDescription="@string/profile_picture"
+ android:src="@drawable/ic_fiber_new"
+ android:visibility="gone" />
+ </LinearLayout>
- <TextView
- android:id="@+id/status_account_displayname"
- android:maxLines="1"
- android:textStyle="bold"
- android:drawablePadding="2dp"
+ <LinearLayout
android:layout_width="wrap_content"
- android:layout_height="wrap_content" />
+ android:layout_height="wrap_content"
+ android:orientation="vertical"
+ android:visibility="gone" />
<LinearLayout
- android:layout_width="match_parent"
+ android:layout_width="0dp"
android:layout_height="wrap_content"
- android:orientation="horizontal">
-
- <ImageView
- android:id="@+id/cached_status"
- android:visibility="gone"
- android:layout_width="20dp"
- android:layout_height="20dp"
- android:src="@drawable/ic_cached_black"
- android:contentDescription="@string/cached_status" />
+ android:layout_marginStart="10dp"
+ android:layout_marginLeft="10dp"
+ android:layout_weight="1"
+ android:orientation="vertical">
<TextView
- android:id="@+id/status_account_displayname_owner"
- android:maxLines="1"
+ android:id="@+id/status_account_displayname"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
android:drawablePadding="2dp"
- android:textStyle="bold"
- android:layout_width="match_parent"
- android:layout_height="wrap_content" />
- </LinearLayout>
-
- <TextView
- android:textSize="12sp"
- android:maxLines="1"
- android:ellipsize="end"
- android:layout_width="wrap_content"
- android:id="@+id/status_account_username"
- android:layout_height="wrap_content" />
- </LinearLayout>
- </LinearLayout>
-
- <LinearLayout
- android:id="@+id/status_spoiler_container"
- android:layout_width="match_parent"
- android:orientation="vertical"
- android:visibility="gone"
- android:layout_height="wrap_content">
-
- <app.fedilab.android.helper.CustomTextView
- android:id="@+id/status_spoiler"
- android:layout_marginBottom="10dp"
- android:textIsSelectable="true"
- android:layout_width="match_parent"
- android:layout_height="wrap_content" />
-
- <Button
- android:id="@+id/status_spoiler_button"
- android:textAllCaps="false"
- android:drawableLeft="@drawable/ic_remove_red_eye"
- android:drawableStart="@drawable/ic_remove_red_eye"
- android:gravity="center_vertical"
- android:drawablePadding="5dp"
- android:paddingTop="5dp"
- android:paddingBottom="5dp"
- android:maxLines="1"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- style="?attr/borderless"
- android:text="@string/load_attachment_spoiler" />
- </LinearLayout>
+ android:maxLines="1"
+ android:textStyle="bold" />
- <LinearLayout
- android:id="@+id/status_content_container"
- android:layout_width="match_parent"
- android:orientation="vertical"
- android:layout_height="wrap_content">
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:orientation="horizontal">
- <app.fedilab.android.helper.CustomTextView
- android:id="@+id/status_content"
- android:textIsSelectable="true"
- android:layout_width="match_parent"
- android:layout_height="wrap_content" />
+ <ImageView
+ android:id="@+id/cached_status"
+ android:layout_width="20dp"
+ android:layout_height="20dp"
+ android:contentDescription="@string/cached_status"
+ android:src="@drawable/ic_cached_black"
+ android:visibility="gone" />
+
+ <TextView
+ android:id="@+id/status_account_displayname_owner"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:drawablePadding="2dp"
+ android:maxLines="1"
+ android:textStyle="bold" />
+ </LinearLayout>
- <Button
- android:id="@+id/status_show_more_content"
- android:visibility="gone"
- android:textAllCaps="false"
- android:drawableLeft="@drawable/ic_more_toot_content"
- android:drawableStart="@drawable/ic_more_toot_content"
- android:gravity="center_vertical"
- android:drawablePadding="5dp"
- android:paddingTop="2dp"
- android:paddingBottom="2dp"
- android:maxLines="1"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- style="?attr/borderless"
- android:text="@string/display_toot_truncate" />
+ <TextView
+ android:id="@+id/status_account_username"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:ellipsize="end"
+ android:maxLines="1"
+ android:textSize="12sp" />
+ </LinearLayout>
+ </LinearLayout>
<LinearLayout
- android:id="@+id/status_content_translated_container"
- android:visibility="gone"
- android:layout_marginBottom="10dp"
+ android:id="@+id/status_spoiler_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:orientation="vertical">
+ android:orientation="vertical"
+ android:visibility="gone">
<TextView
- android:id="@+id/status_content_translated"
+ android:id="@+id/status_spoiler"
android:layout_width="match_parent"
- android:layout_height="wrap_content" />
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="10dp"
+ android:textIsSelectable="true" />
- <TextView
- android:id="@+id/yandex_translate"
+ <Button
+ android:id="@+id/status_spoiler_button"
+ style="?attr/borderless"
android:layout_width="match_parent"
- android:padding="2dp"
- android:gravity="end"
- android:text="Powered by Yandex.Translate"
android:layout_height="wrap_content"
- tools:ignore="HardcodedText" />
+ android:drawableStart="@drawable/ic_remove_red_eye"
+ android:drawableLeft="@drawable/ic_remove_red_eye"
+ android:drawablePadding="5dp"
+ android:gravity="center_vertical"
+ android:maxLines="1"
+ android:paddingTop="5dp"
+ android:paddingBottom="5dp"
+ android:text="@string/load_attachment_spoiler"
+ android:textAllCaps="false" />
</LinearLayout>
-
<LinearLayout
- android:id="@+id/status_cardview"
- android:layout_marginBottom="10dp"
- android:visibility="gone"
- android:background="@drawable/card_border_light"
+ android:id="@+id/status_content_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:padding="1dp"
- android:orientation="horizontal">
+ android:orientation="vertical">
- <ImageView
- android:layout_gravity="center"
- android:id="@+id/status_cardview_image"
- android:layout_width="80dp"
- android:gravity="center"
- android:scaleType="centerCrop"
- android:layout_height="match_parent"
- android:minHeight="80dp"
- android:contentDescription="@string/card_view_image" />
+ <TextView
+ android:id="@+id/status_content"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:textIsSelectable="true" />
+
+ <Button
+ android:id="@+id/status_show_more_content"
+ style="?attr/borderless"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:drawableStart="@drawable/ic_more_toot_content"
+ android:drawableLeft="@drawable/ic_more_toot_content"
+ android:drawablePadding="5dp"
+ android:gravity="center_vertical"
+ android:maxLines="1"
+ android:paddingTop="2dp"
+ android:paddingBottom="2dp"
+ android:text="@string/display_toot_truncate"
+ android:textAllCaps="false"
+ android:visibility="gone" />
<LinearLayout
+ android:id="@+id/status_content_translated_container"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="10dp"
android:orientation="vertical"
- android:layout_width="0dp"
- android:layout_marginLeft="10dp"
- android:layout_marginStart="10dp"
- android:layout_weight="1"
- android:layout_height="wrap_content">
-
- <TextView
- android:textSize="14sp"
- android:maxLines="1"
- android:textStyle="bold"
- android:id="@+id/status_cardview_title"
- android:layout_width="match_parent"
- android:layout_height="wrap_content" />
+ android:visibility="gone">
<TextView
- android:layout_marginTop="5dp"
- android:id="@+id/status_cardview_content"
+ android:id="@+id/status_content_translated"
android:layout_width="match_parent"
- android:textSize="12sp"
- android:maxLines="4"
android:layout_height="wrap_content" />
<TextView
- android:id="@+id/status_cardview_url"
- android:layout_marginTop="5dp"
- android:textSize="12sp"
- android:maxLines="1"
+ android:id="@+id/yandex_translate"
android:layout_width="match_parent"
- android:layout_height="wrap_content" />
+ android:layout_height="wrap_content"
+ android:gravity="end"
+ android:padding="2dp"
+ android:text="Powered by Yandex.Translate"
+ tools:ignore="HardcodedText" />
</LinearLayout>
- </LinearLayout>
- <FrameLayout
- android:visibility="gone"
- android:layout_gravity="center"
- android:id="@+id/status_cardview_video"
- android:layout_width="match_parent"
- android:layout_height="220dp"
- android:layout_marginTop="5dp"
- android:layout_marginBottom="10dp">
- <RelativeLayout
- android:id="@+id/webview_preview"
+ <LinearLayout
+ android:id="@+id/status_cardview"
android:layout_width="match_parent"
- android:layout_height="match_parent">
-
- <ImageView
- android:id="@+id/webview_preview_card"
- android:scaleType="centerCrop"
- android:layout_width="match_parent"
- android:layout_height="match_parent" />
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="10dp"
+ android:background="@drawable/card_border_light"
+ android:orientation="horizontal"
+ android:padding="1dp"
+ android:visibility="gone">
<ImageView
- android:layout_centerInParent="true"
- android:layout_width="30dp"
- android:src="@drawable/video_preview"
- android:layout_height="30dp"
- android:contentDescription="@string/play_video" />
-
- </RelativeLayout>
-
- <app.fedilab.android.webview.CustomWebview
- android:visibility="gone"
- android:id="@+id/status_cardview_webview"
- android:layout_width="match_parent"
- android:layout_height="match_parent" />
- </FrameLayout>
-
- <RelativeLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content">
-
- <RelativeLayout
- android:id="@+id/status_horizontal_document_container"
- android:visibility="gone"
-