From 3f356b999a3e2ab5a7084132157b68d34d025ac3 Mon Sep 17 00:00:00 2001
From: akwizgran <akwizgran@users.sourceforge.net>
Date: Wed, 10 Feb 2016 12:09:32 +0000
Subject: [PATCH] Increase contrast between identicon and background.

---
 briar-android/res/layout/author_view.xml           |  5 ++++-
 briar-android/res/layout/dropdown_author.xml       |  9 ++++++---
 briar-android/res/layout/list_item_contact.xml     |  5 ++++-
 briar-android/res/layout/list_item_msg_in.xml      |  4 +++-
 briar-android/res/values/dimens.xml                |  5 ++---
 .../android/identicons/AsymmetricIdenticon.java    |  6 ------
 .../delight/android/identicons/IdenticonBase.java  | 14 +++++++-------
 .../android/identicons/IdenticonDrawable.java      |  6 ------
 .../android/identicons/SymmetricIdenticon.java     |  6 ------
 9 files changed, 26 insertions(+), 34 deletions(-)

diff --git a/briar-android/res/layout/author_view.xml b/briar-android/res/layout/author_view.xml
index 92c863c374..13f19f53ec 100644
--- a/briar-android/res/layout/author_view.xml
+++ b/briar-android/res/layout/author_view.xml
@@ -1,6 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <RelativeLayout
 	xmlns:android="http://schemas.android.com/apk/res/android"
+	xmlns:app="http://schemas.android.com/apk/res-auto"
 	android:layout_width="match_parent"
 	android:layout_height="match_parent">
 
@@ -10,7 +11,9 @@
 		android:layout_height="@dimen/listitem_picture_size"
 		android:layout_centerVertical="true"
 		android:layout_marginLeft="@dimen/listitem_horizontal_margin"
-		android:layout_marginStart="@dimen/listitem_horizontal_margin"/>
+		android:layout_marginStart="@dimen/listitem_horizontal_margin"
+		app:civ_border_width="@dimen/avatar_border_width"
+		app:civ_border_color="@color/briar_text_primary"/>
 
 	<ImageView
 		android:id="@+id/statusView"
diff --git a/briar-android/res/layout/dropdown_author.xml b/briar-android/res/layout/dropdown_author.xml
index 01a9b3f533..ff994a18d2 100644
--- a/briar-android/res/layout/dropdown_author.xml
+++ b/briar-android/res/layout/dropdown_author.xml
@@ -2,6 +2,7 @@
 <LinearLayout
 	xmlns:android="http://schemas.android.com/apk/res/android"
 	xmlns:tools="http://schemas.android.com/tools"
+	xmlns:app="http://schemas.android.com/apk/res-auto"
 	android:layout_width="match_parent"
 	android:layout_height="match_parent"
 	android:gravity="center_vertical">
@@ -9,14 +10,16 @@
 	<de.hdodenhof.circleimageview.CircleImageView
 		android:id="@+id/avatarView"
 		android:layout_width="@dimen/dropdown_picture_size"
-		android:layout_height="@dimen/dropdown_picture_size"/>
+		android:layout_height="@dimen/dropdown_picture_size"
+		android:layout_margin="@dimen/margin_small"
+		app:civ_border_width="@dimen/avatar_border_width"
+		app:civ_border_color="@color/briar_text_primary"/>
 
 	<TextView
 		android:id="@+id/nameView"
 		android:layout_width="wrap_content"
 		android:layout_height="wrap_content"
-		android:layout_marginLeft="@dimen/margin_medium"
-		android:layout_marginStart="@dimen/margin_medium"
+		android:layout_margin="@dimen/margin_small"
 		android:ellipsize="end"
 		android:singleLine="true"
 		android:textSize="@dimen/text_size_medium"
diff --git a/briar-android/res/layout/list_item_contact.xml b/briar-android/res/layout/list_item_contact.xml
index 8259e1b3b4..b566dc1713 100644
--- a/briar-android/res/layout/list_item_contact.xml
+++ b/briar-android/res/layout/list_item_contact.xml
@@ -2,6 +2,7 @@
 <LinearLayout
 	xmlns:android="http://schemas.android.com/apk/res/android"
 	xmlns:tools="http://schemas.android.com/tools"
+	xmlns:app="http://schemas.android.com/apk/res-auto"
 	android:layout_width="match_parent"
 	android:layout_height="wrap_content"
 	android:orientation="vertical">
@@ -19,7 +20,9 @@
 			android:layout_alignParentStart="true"
 			android:layout_centerVertical="true"
 			android:layout_marginLeft="@dimen/listitem_horizontal_margin"
-			android:layout_marginStart="@dimen/listitem_horizontal_margin"/>
+			android:layout_marginStart="@dimen/listitem_horizontal_margin"
+			app:civ_border_width="@dimen/avatar_border_width"
+			app:civ_border_color="@color/briar_text_primary"/>
 
 		<LinearLayout
 			android:id="@+id/bulbHolder"
diff --git a/briar-android/res/layout/list_item_msg_in.xml b/briar-android/res/layout/list_item_msg_in.xml
index 50ccd00772..fa1f793ab7 100644
--- a/briar-android/res/layout/list_item_msg_in.xml
+++ b/briar-android/res/layout/list_item_msg_in.xml
@@ -2,6 +2,7 @@
 <LinearLayout
 	xmlns:android="http://schemas.android.com/apk/res/android"
 	xmlns:tools="http://schemas.android.com/tools"
+	xmlns:app="http://schemas.android.com/apk/res-auto"
 	android:layout_width="match_parent"
 	android:layout_height="wrap_content"
 	android:orientation="horizontal"
@@ -16,7 +17,8 @@
 		android:layout_height="@dimen/listitem_picture_size"
 		android:layout_marginLeft="@dimen/listitem_horizontal_margin"
 		android:layout_marginStart="@dimen/listitem_horizontal_margin"
-		/>
+		app:civ_border_width="@dimen/avatar_border_width"
+		app:civ_border_color="@color/briar_text_primary"/>
 
 	<RelativeLayout
 		android:id="@+id/msgLayout"
diff --git a/briar-android/res/values/dimens.xml b/briar-android/res/values/dimens.xml
index 8c11314aba..e38fa64d2f 100644
--- a/briar-android/res/values/dimens.xml
+++ b/briar-android/res/values/dimens.xml
@@ -21,11 +21,10 @@
 	<dimen name="nav_seperator_height">1dp</dimen>
 
 	<dimen name="listitem_horizontal_margin">16dp</dimen>
-	<dimen name="listitem_picture_size">40dp</dimen>
 	<dimen name="listitem_text_left_margin">72dp</dimen>
-
 	<dimen name="listitem_height_one_line_avatar">56dp</dimen>
-
+	<dimen name="listitem_picture_size">40dp</dimen>
 	<dimen name="dropdown_picture_size">32dp</dimen>
+	<dimen name="avatar_border_width">1dp</dimen>
 
 </resources>
diff --git a/briar-android/src/im/delight/android/identicons/AsymmetricIdenticon.java b/briar-android/src/im/delight/android/identicons/AsymmetricIdenticon.java
index 888b234cc1..fa5c1c35a7 100644
--- a/briar-android/src/im/delight/android/identicons/AsymmetricIdenticon.java
+++ b/briar-android/src/im/delight/android/identicons/AsymmetricIdenticon.java
@@ -17,7 +17,6 @@ package im.delight.android.identicons;
  */
 
 import android.content.Context;
-import android.graphics.Color;
 import android.util.AttributeSet;
 
 import org.briarproject.api.crypto.CryptoComponent;
@@ -73,11 +72,6 @@ public class AsymmetricIdenticon extends IdenticonView {
 			protected boolean isCellVisible(int row, int column) {
 				return getByte(3 + row * getColumnCount() + column) >= 0;
 			}
-
-			@Override
-			protected int getIconColor() {
-				return Color.rgb(getByte(0) + 128, getByte(1) + 128, getByte(2) + 128);
-			}
 		};
 	}
 
diff --git a/briar-android/src/im/delight/android/identicons/IdenticonBase.java b/briar-android/src/im/delight/android/identicons/IdenticonBase.java
index 59c842c122..e50ac91a6a 100644
--- a/briar-android/src/im/delight/android/identicons/IdenticonBase.java
+++ b/briar-android/src/im/delight/android/identicons/IdenticonBase.java
@@ -93,15 +93,15 @@ public abstract class IdenticonBase {
 
 	abstract protected boolean isCellVisible(int row, int column);
 
-	abstract protected int getIconColor();
+	protected int getIconColor() {
+		int r = getByte(0) * 3 / 4 + 96;
+		int g = getByte(1) * 3 / 4 + 96;
+		int b = getByte(2) * 3 / 4 + 96;
+		return Color.rgb(r, g, b);
+	}
 
 	protected int getBackgroundColor() {
-		float[] hsv = new float[3];
-		Color.colorToHSV(getIconColor(), hsv);
-		if (hsv[2] < 0.5)
-			return Color.parseColor("#ffeeeeee"); // @color/background_material_light
-		else
-			return Color.parseColor("#ff303030"); // @color/background_material_dark
+		return Color.WHITE;
 	}
 
 	public void updateSize(int w, int h) {
diff --git a/briar-android/src/im/delight/android/identicons/IdenticonDrawable.java b/briar-android/src/im/delight/android/identicons/IdenticonDrawable.java
index 135c1029e0..8034a6a1da 100644
--- a/briar-android/src/im/delight/android/identicons/IdenticonDrawable.java
+++ b/briar-android/src/im/delight/android/identicons/IdenticonDrawable.java
@@ -1,7 +1,6 @@
 package im.delight.android.identicons;
 
 import android.graphics.Canvas;
-import android.graphics.Color;
 import android.graphics.ColorFilter;
 import android.graphics.Rect;
 import android.graphics.drawable.Drawable;
@@ -39,11 +38,6 @@ public class IdenticonDrawable extends Drawable {
 			protected boolean isCellVisible(int row, int column) {
 				return getByte(3 + row * CENTER_COLUMN_INDEX + getSymmetricColumnIndex(column)) >= 0;
 			}
-
-			@Override
-			protected int getIconColor() {
-				return Color.rgb(getByte(0) + 128, getByte(1) + 128, getByte(2) + 128);
-			}
 		};
 		mDelegate.show(toShow);
 	}
diff --git a/briar-android/src/im/delight/android/identicons/SymmetricIdenticon.java b/briar-android/src/im/delight/android/identicons/SymmetricIdenticon.java
index 875cbe9ad1..f390270815 100644
--- a/briar-android/src/im/delight/android/identicons/SymmetricIdenticon.java
+++ b/briar-android/src/im/delight/android/identicons/SymmetricIdenticon.java
@@ -17,7 +17,6 @@ package im.delight.android.identicons;
  */
 
 import android.content.Context;
-import android.graphics.Color;
 import android.util.AttributeSet;
 
 import org.briarproject.api.crypto.CryptoComponent;
@@ -70,11 +69,6 @@ public class SymmetricIdenticon extends IdenticonView {
 			protected boolean isCellVisible(int row, int column) {
 				return getByte(3 + row * CENTER_COLUMN_INDEX + getSymmetricColumnIndex(column)) >= 0;
 			}
-
-			@Override
-			protected int getIconColor() {
-				return Color.rgb(getByte(0) + 128, getByte(1) + 128, getByte(2) + 128);
-			}
 		};
 	}
 
-- 
GitLab