Merge branch 'dev' into v2-file-server
commit
3e75ed3cc4
@ -0,0 +1,38 @@
|
|||||||
|
package org.thoughtcrime.securesms.loki.views
|
||||||
|
|
||||||
|
import android.content.Context
|
||||||
|
import android.content.Intent
|
||||||
|
import android.util.AttributeSet
|
||||||
|
import android.view.LayoutInflater
|
||||||
|
import android.widget.FrameLayout
|
||||||
|
import kotlinx.android.synthetic.main.view_open_group_guidelines.view.*
|
||||||
|
import network.loki.messenger.R
|
||||||
|
import org.thoughtcrime.securesms.conversation.ConversationActivity
|
||||||
|
import org.thoughtcrime.securesms.loki.activities.OpenGroupGuidelinesActivity
|
||||||
|
import org.thoughtcrime.securesms.loki.utilities.push
|
||||||
|
|
||||||
|
class OpenGroupGuidelinesView : FrameLayout {
|
||||||
|
|
||||||
|
constructor(context: Context) : super(context) {
|
||||||
|
setUpViewHierarchy()
|
||||||
|
}
|
||||||
|
|
||||||
|
constructor(context: Context, attrs: AttributeSet) : super(context, attrs) {
|
||||||
|
setUpViewHierarchy()
|
||||||
|
}
|
||||||
|
|
||||||
|
constructor(context: Context, attrs: AttributeSet, defStyleAttr: Int) : super(context, attrs, defStyleAttr) {
|
||||||
|
setUpViewHierarchy()
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun setUpViewHierarchy() {
|
||||||
|
val inflater = context.getSystemService(Context.LAYOUT_INFLATER_SERVICE) as LayoutInflater
|
||||||
|
val contentView = inflater.inflate(R.layout.view_open_group_guidelines, null)
|
||||||
|
addView(contentView)
|
||||||
|
readButton.setOnClickListener {
|
||||||
|
val activity = context as ConversationActivity
|
||||||
|
val intent = Intent(activity, OpenGroupGuidelinesActivity::class.java)
|
||||||
|
activity.push(intent)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,36 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<ScrollView
|
||||||
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content">
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginLeft="@dimen/large_spacing"
|
||||||
|
android:layout_marginTop="@dimen/large_spacing"
|
||||||
|
android:layout_marginRight="@dimen/large_spacing"
|
||||||
|
android:textSize="@dimen/large_font_size"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:textColor="@color/text"
|
||||||
|
android:text="Community Guidelines" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/communityGuidelinesTextView"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginLeft="@dimen/large_spacing"
|
||||||
|
android:layout_marginTop="@dimen/medium_spacing"
|
||||||
|
android:layout_marginRight="@dimen/large_spacing"
|
||||||
|
android:layout_marginBottom="@dimen/large_spacing"
|
||||||
|
android:textSize="@dimen/medium_font_size"
|
||||||
|
android:textColor="@color/text" />
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</ScrollView>
|
@ -0,0 +1,72 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<LinearLayout
|
||||||
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:background="@color/cell_background"
|
||||||
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:paddingLeft="12dp"
|
||||||
|
android:paddingTop="@dimen/small_spacing"
|
||||||
|
android:paddingBottom="@dimen/small_spacing"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
|
||||||
|
<View
|
||||||
|
android:layout_width="2dp"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:layout_marginRight="@dimen/small_spacing"
|
||||||
|
android:background="@color/accent" />
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/titleTextView"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textColor="@color/text"
|
||||||
|
android:textSize="@dimen/small_font_size"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:text="Pinned message" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:maxWidth="260dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textColor="@color/text"
|
||||||
|
android:textSize="@dimen/small_font_size"
|
||||||
|
android:maxLines="2"
|
||||||
|
android:text="Community guidelines" />
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<View
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:minWidth="@dimen/small_spacing" />
|
||||||
|
|
||||||
|
<Button
|
||||||
|
style="@style/Widget.Session.Button.Common.ProminentOutline"
|
||||||
|
android:id="@+id/readButton"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="@dimen/small_button_height"
|
||||||
|
android:layout_marginRight="12dp"
|
||||||
|
android:textSize="@dimen/small_font_size"
|
||||||
|
android:textStyle="normal"
|
||||||
|
android:text="Read" />
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<View
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="1px"
|
||||||
|
android:background="?android:dividerHorizontal" />
|
||||||
|
|
||||||
|
</LinearLayout>
|
@ -1,70 +0,0 @@
|
|||||||
package org.session.libsession.utilities.color;
|
|
||||||
|
|
||||||
import android.content.Context;
|
|
||||||
|
|
||||||
import androidx.annotation.NonNull;
|
|
||||||
import androidx.annotation.Nullable;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public class MaterialColors {
|
|
||||||
|
|
||||||
public static final MaterialColorList CONVERSATION_PALETTE = new MaterialColorList(new ArrayList<>(Arrays.asList(
|
|
||||||
MaterialColor.PLUM,
|
|
||||||
MaterialColor.CRIMSON,
|
|
||||||
MaterialColor.VERMILLION,
|
|
||||||
MaterialColor.VIOLET,
|
|
||||||
MaterialColor.BLUE,
|
|
||||||
MaterialColor.INDIGO,
|
|
||||||
MaterialColor.FOREST,
|
|
||||||
MaterialColor.WINTERGREEN,
|
|
||||||
MaterialColor.TEAL,
|
|
||||||
MaterialColor.BURLAP,
|
|
||||||
MaterialColor.TAUPE,
|
|
||||||
MaterialColor.STEEL
|
|
||||||
)));
|
|
||||||
|
|
||||||
public static class MaterialColorList {
|
|
||||||
|
|
||||||
private final List<MaterialColor> colors;
|
|
||||||
|
|
||||||
private MaterialColorList(List<MaterialColor> colors) {
|
|
||||||
this.colors = colors;
|
|
||||||
}
|
|
||||||
|
|
||||||
public MaterialColor get(int index) {
|
|
||||||
return colors.get(index);
|
|
||||||
}
|
|
||||||
|
|
||||||
public int size() {
|
|
||||||
return colors.size();
|
|
||||||
}
|
|
||||||
|
|
||||||
public @Nullable MaterialColor getByColor(Context context, int colorValue) {
|
|
||||||
for (MaterialColor color : colors) {
|
|
||||||
if (color.represents(context, colorValue)) {
|
|
||||||
return color;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int[] asConversationColorArray(@NonNull Context context) {
|
|
||||||
int[] results = new int[colors.size()];
|
|
||||||
int index = 0;
|
|
||||||
|
|
||||||
for (MaterialColor color : colors) {
|
|
||||||
results[index++] = color.toConversationColor(context);
|
|
||||||
}
|
|
||||||
|
|
||||||
return results;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
Loading…
Reference in New Issue