From: tobiasKaminsky Date: Fri, 30 Jan 2015 16:43:17 +0000 (+0100) Subject: save X-Git-Tag: oc-android-1.7.2~1^2~23^2~43 X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/commitdiff_plain/fb095ecc714ad72b0eb464af4d92756e4b14a769?hp=--cc save --- fb095ecc714ad72b0eb464af4d92756e4b14a769 diff --git a/build.gradle b/build.gradle index 46308aca..57ec86e5 100644 --- a/build.gradle +++ b/build.gradle @@ -3,7 +3,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:0.14.0' + classpath 'com.android.tools.build:gradle:1.0.0' } } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 8d63f892..1632f091 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Wed Oct 15 10:45:44 CEST 2014 +#Fri Jan 23 17:48:07 CET 2015 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-2.1-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip diff --git a/owncloud-android-library b/owncloud-android-library index 5bd0d738..cbb1c524 160000 --- a/owncloud-android-library +++ b/owncloud-android-library @@ -1 +1 @@ -Subproject commit 5bd0d7387712ce3f53869294761ac4d8537841cd +Subproject commit cbb1c524ea989e649721ab4f8ece760701abf56b diff --git a/src/com/owncloud/android/ui/adapter/NavigationDrawerListAdapter.java b/src/com/owncloud/android/ui/adapter/NavigationDrawerListAdapter.java index 2b850332..5793454e 100644 --- a/src/com/owncloud/android/ui/adapter/NavigationDrawerListAdapter.java +++ b/src/com/owncloud/android/ui/adapter/NavigationDrawerListAdapter.java @@ -1,10 +1,13 @@ package com.owncloud.android.ui.adapter; +import java.nio.ByteBuffer; +import java.security.MessageDigest; import java.util.ArrayList; import android.accounts.Account; import android.accounts.AccountManager; import android.content.Context; +import android.graphics.Color; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -17,7 +20,9 @@ import android.widget.TextView; import com.owncloud.android.MainApp; import com.owncloud.android.R; import com.owncloud.android.authentication.AccountUtils; +import com.owncloud.android.lib.common.utils.Log_OC; import com.owncloud.android.ui.activity.FileDisplayActivity; +import com.owncloud.android.utils.BitmapUtils; public class NavigationDrawerListAdapter extends BaseAdapter { @@ -94,8 +99,29 @@ public class NavigationDrawerListAdapter extends BaseAdapter { for (Account account : mAccounts) { RadioButton rb = new RadioButton(mContext); rb.setText(account.name); - rb.setTextColor(mContext.getResources().getColor(R.color.black)); + try { + byte[] bytesOfMessage = account.name.substring(0,5).getBytes("UTF-8"); + MessageDigest md = MessageDigest.getInstance("MD5"); + byte[] digest = md.digest(bytesOfMessage); + int result = Math.abs(ByteBuffer.wrap(digest).getInt()); + + Log_OC.d(TAG, "Integer: " + result % 100000); + Log_OC.d(TAG, "length: " + digest.length); + + + Double hue = (result % 100000) / 99999.0; + + Log_OC.d(TAG, "hue: " + hue); + + int[] rgb = BitmapUtils.hslToRgb(hue, 0.9, 0.65); + rb.setTextColor(Color.rgb(rgb[0], rgb[1], rgb[2])); + Log_OC.d(TAG, "Color: " + rgb[0] + " " + rgb[1] + rgb[2]); + + } catch (Exception e){ + Log_OC.d(TAG, e.toString()); + rb.setTextColor(mContext.getResources().getColor(R.color.black)); + } RadioGroup.LayoutParams params = new RadioGroup.LayoutParams( LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT); params.weight=1.0f; diff --git a/src/com/owncloud/android/utils/BitmapUtils.java b/src/com/owncloud/android/utils/BitmapUtils.java index 70367278..87cc4889 100644 --- a/src/com/owncloud/android/utils/BitmapUtils.java +++ b/src/com/owncloud/android/utils/BitmapUtils.java @@ -169,6 +169,45 @@ public class BitmapUtils { } return resultBitmap; } + + /** + * Converts an HSL color value to RGB. Conversion formula + * adapted from http://en.wikipedia.org/wiki/HSL_color_space. + * Assumes h, s, and l are contained in the set [0, 1] and + * returns r, g, and b in the set [0, 255]. + * from: http://axonflux.com/handy-rgb-to-hsl-and-rgb-to-hsv-color-model-c + * + * @param integer h The hue + * @param Integer s The saturation + * @param Integer l The lightness + * @return Array The RGB representation + */ + public static int[] hslToRgb(Double h, Double s, Double l){ + Double r, g, b; + + if(s == 0){ + r = g = b = l; // achromatic + } else { + Double q = l < 0.5 ? l * (1 + s) : l + s - l * s; + Double p = 2 * l - q; + r = hue2rgb(p, q, h + 1/3) * 255; + g = hue2rgb(p, q, h) * 255; + b = hue2rgb(p, q, h - 1/3) * 255; + } + + + int[] array = {r.intValue(), g.intValue(), b.intValue()}; + return array; + } + + private static Double hue2rgb(Double p, Double q, Double t){ + if(t < 0) t += 1; + if(t > 1) t -= 1; + if(t < 1/6) return p + (q - p) * 6 * t; + if(t < 1/2) return q; + if(t < 2/3) return p + (q - p) * (2/3 - t) * 6; + return p; + } }