mirror of
https://github.com/TeamNewPipe/NewPipe
synced 2024-09-28 15:08:50 +00:00
cdd5e89b86
This commit adds the ability to copy to clipboard hashtags, URLs and timestamps when long-pressing them. Some changes in our TextView class related to text setting have been required and metadata items are now using a NewPipeTextView instead of a standard TextView. Six new classes have been added: - a custom LinkMovementMethod class; - a custom ClickableSpan class, LongPressClickableSpan, in order to set a long press event; - a class to avoid code duplication in CommentTextOnTouchListener, TouchUtils; - three implementations of LongPressClickableSpan used when linkifying text: - HashtagLongPressClickableSpan for hashtags; - TimestampLongPressClickableSpan for timestamps; - UrlLongPressClickableSpan for URLs.
33 lines
1.6 KiB
XML
33 lines
1.6 KiB
XML
<?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="wrap_content"
|
|
android:paddingVertical="6dp">
|
|
|
|
<org.schabi.newpipe.views.NewPipeTextView
|
|
android:id="@+id/metadata_type_view"
|
|
android:layout_width="96dp"
|
|
android:layout_height="wrap_content"
|
|
android:gravity="center_vertical|end"
|
|
android:textAllCaps="true"
|
|
android:textColor="?android:attr/textColorPrimary"
|
|
android:textStyle="bold"
|
|
app:layout_constraintBottom_toBottomOf="parent"
|
|
app:layout_constraintStart_toStartOf="parent"
|
|
app:layout_constraintTop_toTopOf="parent"
|
|
tools:text="Licence" />
|
|
|
|
<org.schabi.newpipe.views.NewPipeTextView
|
|
android:id="@+id/metadata_content_view"
|
|
android:layout_width="0dp"
|
|
android:layout_height="wrap_content"
|
|
android:layout_marginStart="16dp"
|
|
app:layout_constraintBottom_toBottomOf="parent"
|
|
app:layout_constraintEnd_toEndOf="parent"
|
|
app:layout_constraintStart_toEndOf="@+id/metadata_type_view"
|
|
app:layout_constraintTop_toTopOf="parent"
|
|
tools:text="Description Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed a ultricies ex. Integer sit amet sodales risus. Duis non mi et urna pretium bibendum." />
|
|
|
|
</androidx.constraintlayout.widget.ConstraintLayout> |