mirror of
https://gitlab.futo.org/videostreaming/grayjay.git
synced 2025-08-29 13:46:46 +00:00
Added Polycentric comment character limit of 5000.
This commit is contained in:
parent
b7cbeb3837
commit
5dcb535c0f
3 changed files with 52 additions and 0 deletions
|
@ -2,12 +2,16 @@ package com.futo.platformplayer.dialogs
|
||||||
|
|
||||||
import android.app.AlertDialog
|
import android.app.AlertDialog
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
|
import android.graphics.Color
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
|
import android.text.Editable
|
||||||
|
import android.text.TextWatcher
|
||||||
import android.view.LayoutInflater
|
import android.view.LayoutInflater
|
||||||
import android.view.WindowManager
|
import android.view.WindowManager
|
||||||
import android.view.inputmethod.InputMethodManager
|
import android.view.inputmethod.InputMethodManager
|
||||||
import android.widget.*
|
import android.widget.*
|
||||||
import com.futo.platformplayer.R
|
import com.futo.platformplayer.R
|
||||||
|
import com.futo.platformplayer.UIDialogs
|
||||||
import com.futo.platformplayer.api.media.PlatformID
|
import com.futo.platformplayer.api.media.PlatformID
|
||||||
import com.futo.platformplayer.api.media.models.PlatformAuthorLink
|
import com.futo.platformplayer.api.media.models.PlatformAuthorLink
|
||||||
import com.futo.platformplayer.api.media.models.comments.IPlatformComment
|
import com.futo.platformplayer.api.media.models.comments.IPlatformComment
|
||||||
|
@ -32,6 +36,8 @@ class CommentDialog(context: Context?, val contextUrl: String, val ref: Protocol
|
||||||
private lateinit var _buttonCancel: MaterialButton;
|
private lateinit var _buttonCancel: MaterialButton;
|
||||||
private lateinit var _editComment: EditText;
|
private lateinit var _editComment: EditText;
|
||||||
private lateinit var _inputMethodManager: InputMethodManager;
|
private lateinit var _inputMethodManager: InputMethodManager;
|
||||||
|
private lateinit var _textCharacterCount: TextView;
|
||||||
|
private lateinit var _textCharacterCountMax: TextView;
|
||||||
|
|
||||||
val onCommentAdded = Event1<IPlatformComment>();
|
val onCommentAdded = Event1<IPlatformComment>();
|
||||||
|
|
||||||
|
@ -42,6 +48,26 @@ class CommentDialog(context: Context?, val contextUrl: String, val ref: Protocol
|
||||||
_buttonCancel = findViewById(R.id.button_cancel);
|
_buttonCancel = findViewById(R.id.button_cancel);
|
||||||
_buttonCreate = findViewById(R.id.button_create);
|
_buttonCreate = findViewById(R.id.button_create);
|
||||||
_editComment = findViewById(R.id.edit_comment);
|
_editComment = findViewById(R.id.edit_comment);
|
||||||
|
_textCharacterCount = findViewById(R.id.character_count);
|
||||||
|
_textCharacterCountMax = findViewById(R.id.character_count_max);
|
||||||
|
|
||||||
|
_editComment.addTextChangedListener(object : TextWatcher {
|
||||||
|
override fun afterTextChanged(s: Editable?) = Unit
|
||||||
|
override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) = Unit
|
||||||
|
override fun onTextChanged(s: CharSequence?, start: Int, before: Int, count: Int) {
|
||||||
|
_textCharacterCount.text = count.toString();
|
||||||
|
|
||||||
|
if (count > MAX_COMMENT_SIZE) {
|
||||||
|
_textCharacterCount.setTextColor(Color.RED);
|
||||||
|
_textCharacterCountMax.setTextColor(Color.RED);
|
||||||
|
_buttonCreate.alpha = 0.4f;
|
||||||
|
} else {
|
||||||
|
_textCharacterCount.setTextColor(Color.WHITE);
|
||||||
|
_textCharacterCountMax.setTextColor(Color.WHITE);
|
||||||
|
_buttonCreate.alpha = 1.0f;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
_inputMethodManager = context.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager;
|
_inputMethodManager = context.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager;
|
||||||
|
|
||||||
|
@ -53,6 +79,11 @@ class CommentDialog(context: Context?, val contextUrl: String, val ref: Protocol
|
||||||
_buttonCreate.setOnClickListener {
|
_buttonCreate.setOnClickListener {
|
||||||
clearFocus();
|
clearFocus();
|
||||||
|
|
||||||
|
if (_editComment.text.count() > MAX_COMMENT_SIZE) {
|
||||||
|
UIDialogs.toast(context, "Comment should be less than 5000 characters");
|
||||||
|
return@setOnClickListener;
|
||||||
|
}
|
||||||
|
|
||||||
val comment = _editComment.text.toString();
|
val comment = _editComment.text.toString();
|
||||||
val processHandle = StatePolycentric.instance.processHandle!!
|
val processHandle = StatePolycentric.instance.processHandle!!
|
||||||
val eventPointer = processHandle.post(comment, null, ref)
|
val eventPointer = processHandle.post(comment, null, ref)
|
||||||
|
@ -100,5 +131,6 @@ class CommentDialog(context: Context?, val contextUrl: String, val ref: Protocol
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
private val TAG = "CommentDialog";
|
private val TAG = "CommentDialog";
|
||||||
|
private val MAX_COMMENT_SIZE = 5000;
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -35,6 +35,25 @@
|
||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
android:layout_marginTop="12dp">
|
android:layout_marginTop="12dp">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/character_count"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="0"
|
||||||
|
android:textSize="14dp"
|
||||||
|
android:textColor="@color/white"
|
||||||
|
android:fontFamily="@font/inter_regular"
|
||||||
|
android:layout_marginStart="24dp"/>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/character_count_max"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="/5000"
|
||||||
|
android:textSize="14dp"
|
||||||
|
android:textColor="@color/white"
|
||||||
|
android:fontFamily="@font/inter_regular" />
|
||||||
|
|
||||||
<Space
|
<Space
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
|
|
@ -62,6 +62,7 @@
|
||||||
android:isScrollContainer="false"
|
android:isScrollContainer="false"
|
||||||
android:textColor="#CCCCCC"
|
android:textColor="#CCCCCC"
|
||||||
android:textSize="13sp"
|
android:textSize="13sp"
|
||||||
|
android:maxLines="100"
|
||||||
app:layout_constraintTop_toBottomOf="@id/text_metadata"
|
app:layout_constraintTop_toBottomOf="@id/text_metadata"
|
||||||
app:layout_constraintLeft_toRightOf="@id/image_thumbnail"
|
app:layout_constraintLeft_toRightOf="@id/image_thumbnail"
|
||||||
app:layout_constraintRight_toRightOf="parent"
|
app:layout_constraintRight_toRightOf="parent"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue