Loading app/src/main/java/app/fedilab/android/client/entities/nitter/Nitter.java +10 −1 Original line number Diff line number Diff line Loading @@ -105,8 +105,8 @@ public class Nitter implements Serializable { } } Nitter nitterAccount = accounts.get(feedItem.creator); if (nitterAccount != null) { app.fedilab.android.client.entities.api.Account account = new app.fedilab.android.client.entities.api.Account(); if (nitterAccount != null) { String[] names = nitterAccount.image.title.split("/"); account.id = feedItem.guid; account.acct = names[1].replace("@", ""); Loading @@ -116,6 +116,15 @@ public class Nitter implements Serializable { account.avatar_static = nitterAccount.image.url; account.url = nitterAccount.image.link; status.account = account; } else { account.id = feedItem.guid; account.acct = feedItem.creator.replace("@", ""); account.username = feedItem.creator.replace("@", ""); account.display_name = feedItem.creator.replace("@", ""); account.avatar = ""; account.avatar_static = ""; account.url = feedItem.link; status.account = account; } if (feedItem.description != null) { Loading app/src/main/java/app/fedilab/android/ui/drawer/StatusAdapter.java +29 −0 Original line number Diff line number Diff line Loading @@ -471,6 +471,35 @@ public class StatusAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> } else { holder.binding.card.setVisibility(View.GONE); } if (!canBeFederated) { holder.binding.actionShareContainer.setVisibility(View.VISIBLE); holder.binding.actionShare.setOnClickListener(v -> { Intent sendIntent = new Intent(Intent.ACTION_SEND); sendIntent.putExtra(Intent.EXTRA_SUBJECT, context.getString(R.string.shared_via)); String url; if (statusToDeal.uri.startsWith("http")) url = status.uri; else url = status.url; String extra_text; if (share_details) { extra_text = statusToDeal.account.acct; if (extra_text.split("@").length == 1) extra_text = "@" + extra_text + "@" + BaseMainActivity.currentInstance; else extra_text = "@" + extra_text; extra_text += " \uD83D\uDD17 " + url + "\r\n-\n"; extra_text += statusToDeal.text; } else { extra_text = url; } sendIntent.putExtra(Intent.EXTRA_TEXT, extra_text); sendIntent.setType("text/plain"); context.startActivity(Intent.createChooser(sendIntent, context.getString(R.string.share_with))); }); } else { holder.binding.actionShareContainer.setVisibility(View.GONE); } if (minified || !canBeFederated) { holder.binding.actionButtons.setVisibility(View.GONE); } else { Loading app/src/main/java/app/fedilab/android/viewmodel/mastodon/TimelinesVM.java +3 −2 Original line number Diff line number Diff line Loading @@ -219,7 +219,6 @@ public class TimelinesVM extends AndroidViewModel { statusesMutableLiveData = new MutableLiveData<>(); new Thread(() -> { Call<Nitter> publicTlCall = mastodonTimelinesService.getNitter(accountsStr, max_position); Statuses statuses = new Statuses(); if (publicTlCall != null) { try { Loading @@ -234,7 +233,9 @@ public class TimelinesVM extends AndroidViewModel { } } statuses.statuses = SpannableHelper.convertNitterStatus(getApplication().getApplicationContext(), statusList); statuses.pagination = MastodonHelper.getPagination(publicTlResponse.headers()); String max_id = publicTlResponse.headers().get("min-id"); statuses.pagination = new Pagination(); statuses.pagination.max_id = max_id; } } catch (Exception e) { e.printStackTrace(); Loading app/src/main/res/layout/drawer_status.xml +21 −0 Original line number Diff line number Diff line Loading @@ -492,6 +492,27 @@ </androidx.appcompat.widget.LinearLayoutCompat> <androidx.appcompat.widget.LinearLayoutCompat android:id="@+id/action_share_container" android:layout_width="match_parent" android:layout_height="28dp" android:layout_marginStart="48dp" android:layout_marginTop="6dp" android:layout_marginEnd="6dp" android:clipChildren="false" android:clipToPadding="false" android:gravity="end" android:visibility="gone"> <androidx.appcompat.widget.AppCompatImageButton android:id="@+id/action_share" style="@style/Widget.AppCompat.Button.Borderless" android:layout_width="28dp" android:layout_height="28dp" android:adjustViewBounds="true" app:srcCompat="@drawable/ic_baseline_share_24" /> </androidx.appcompat.widget.LinearLayoutCompat> <androidx.appcompat.widget.LinearLayoutCompat android:id="@+id/action_buttons" android:layout_width="match_parent" Loading Loading
app/src/main/java/app/fedilab/android/client/entities/nitter/Nitter.java +10 −1 Original line number Diff line number Diff line Loading @@ -105,8 +105,8 @@ public class Nitter implements Serializable { } } Nitter nitterAccount = accounts.get(feedItem.creator); if (nitterAccount != null) { app.fedilab.android.client.entities.api.Account account = new app.fedilab.android.client.entities.api.Account(); if (nitterAccount != null) { String[] names = nitterAccount.image.title.split("/"); account.id = feedItem.guid; account.acct = names[1].replace("@", ""); Loading @@ -116,6 +116,15 @@ public class Nitter implements Serializable { account.avatar_static = nitterAccount.image.url; account.url = nitterAccount.image.link; status.account = account; } else { account.id = feedItem.guid; account.acct = feedItem.creator.replace("@", ""); account.username = feedItem.creator.replace("@", ""); account.display_name = feedItem.creator.replace("@", ""); account.avatar = ""; account.avatar_static = ""; account.url = feedItem.link; status.account = account; } if (feedItem.description != null) { Loading
app/src/main/java/app/fedilab/android/ui/drawer/StatusAdapter.java +29 −0 Original line number Diff line number Diff line Loading @@ -471,6 +471,35 @@ public class StatusAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> } else { holder.binding.card.setVisibility(View.GONE); } if (!canBeFederated) { holder.binding.actionShareContainer.setVisibility(View.VISIBLE); holder.binding.actionShare.setOnClickListener(v -> { Intent sendIntent = new Intent(Intent.ACTION_SEND); sendIntent.putExtra(Intent.EXTRA_SUBJECT, context.getString(R.string.shared_via)); String url; if (statusToDeal.uri.startsWith("http")) url = status.uri; else url = status.url; String extra_text; if (share_details) { extra_text = statusToDeal.account.acct; if (extra_text.split("@").length == 1) extra_text = "@" + extra_text + "@" + BaseMainActivity.currentInstance; else extra_text = "@" + extra_text; extra_text += " \uD83D\uDD17 " + url + "\r\n-\n"; extra_text += statusToDeal.text; } else { extra_text = url; } sendIntent.putExtra(Intent.EXTRA_TEXT, extra_text); sendIntent.setType("text/plain"); context.startActivity(Intent.createChooser(sendIntent, context.getString(R.string.share_with))); }); } else { holder.binding.actionShareContainer.setVisibility(View.GONE); } if (minified || !canBeFederated) { holder.binding.actionButtons.setVisibility(View.GONE); } else { Loading
app/src/main/java/app/fedilab/android/viewmodel/mastodon/TimelinesVM.java +3 −2 Original line number Diff line number Diff line Loading @@ -219,7 +219,6 @@ public class TimelinesVM extends AndroidViewModel { statusesMutableLiveData = new MutableLiveData<>(); new Thread(() -> { Call<Nitter> publicTlCall = mastodonTimelinesService.getNitter(accountsStr, max_position); Statuses statuses = new Statuses(); if (publicTlCall != null) { try { Loading @@ -234,7 +233,9 @@ public class TimelinesVM extends AndroidViewModel { } } statuses.statuses = SpannableHelper.convertNitterStatus(getApplication().getApplicationContext(), statusList); statuses.pagination = MastodonHelper.getPagination(publicTlResponse.headers()); String max_id = publicTlResponse.headers().get("min-id"); statuses.pagination = new Pagination(); statuses.pagination.max_id = max_id; } } catch (Exception e) { e.printStackTrace(); Loading
app/src/main/res/layout/drawer_status.xml +21 −0 Original line number Diff line number Diff line Loading @@ -492,6 +492,27 @@ </androidx.appcompat.widget.LinearLayoutCompat> <androidx.appcompat.widget.LinearLayoutCompat android:id="@+id/action_share_container" android:layout_width="match_parent" android:layout_height="28dp" android:layout_marginStart="48dp" android:layout_marginTop="6dp" android:layout_marginEnd="6dp" android:clipChildren="false" android:clipToPadding="false" android:gravity="end" android:visibility="gone"> <androidx.appcompat.widget.AppCompatImageButton android:id="@+id/action_share" style="@style/Widget.AppCompat.Button.Borderless" android:layout_width="28dp" android:layout_height="28dp" android:adjustViewBounds="true" app:srcCompat="@drawable/ic_baseline_share_24" /> </androidx.appcompat.widget.LinearLayoutCompat> <androidx.appcompat.widget.LinearLayoutCompat android:id="@+id/action_buttons" android:layout_width="match_parent" Loading