aboutsummaryrefslogtreecommitdiff
path: root/lib/user.cpp
diff options
context:
space:
mode:
authorAlexey Andreyev <aa13q@ya.ru>2019-05-15 16:36:02 +0300
committerAlexey Andreyev <aa13q@ya.ru>2019-05-23 02:12:56 +0300
commit48ffee5fa78f44bd00d76772ad79ae4eeb6c8dc4 (patch)
tree7dd9996a3e89f36a942617a740fd33c069871e1e /lib/user.cpp
parentd6f39dcb0de69322479f287514a8c36afcb3fe7b (diff)
downloadlibquotient-48ffee5fa78f44bd00d76772ad79ae4eeb6c8dc4.tar.gz
libquotient-48ffee5fa78f44bd00d76772ad79ae4eeb6c8dc4.zip
Move out the logic of the hue calculation to utils
Diffstat (limited to 'lib/user.cpp')
-rw-r--r--lib/user.cpp20
1 files changed, 1 insertions, 19 deletions
diff --git a/lib/user.cpp b/lib/user.cpp
index 7f3f11f6..7b695618 100644
--- a/lib/user.cpp
+++ b/lib/user.cpp
@@ -33,9 +33,6 @@
#include <QtCore/QStringBuilder>
#include <QtCore/QElapsedTimer>
-#include <QtCore/QCryptographicHash>
-#include <QtCore/QtEndian>
-
#include <functional>
using namespace QMatrixClient;
@@ -50,23 +47,8 @@ class User::Private
return Avatar(move(url));
}
- qreal makeHueF()
- {
- Q_ASSERT(!userId.isEmpty());
- QByteArray hash = QCryptographicHash::hash(userId.toUtf8(),
- QCryptographicHash::Sha1);
- QDataStream dataStream(qToLittleEndian(hash).left(2));
- dataStream.setByteOrder(QDataStream::LittleEndian);
- quint16 hashValue;
- dataStream >> hashValue;
- const auto hueF =
- qreal(hashValue)/std::numeric_limits<quint16>::max();
- Q_ASSERT((0 <= hueF) && (hueF <= 1));
- return hueF;
- }
-
Private(QString userId, Connection* connection)
- : userId(move(userId)), connection(connection), hueF(makeHueF())
+ : userId(move(userId)), connection(connection), hueF(stringToHueF(this->userId))
{ }
QString userId;