From d9426413ddf4dae1427af1d6fc6047b253f19121 Mon Sep 17 00:00:00 2001
From: 23rd <23rd@vivaldi.net>
Date: Sun, 2 Jun 2019 22:44:00 +0300
Subject: [PATCH] Added online badges to chats list.

---
 Telegram/Resources/colors.palette             |   2 +
 Telegram/Resources/day-blue.tdesktop-theme    | Bin 10548 -> 10657 bytes
 Telegram/Resources/night-green.tdesktop-theme | Bin 8877 -> 8905 bytes
 Telegram/Resources/night.tdesktop-theme       | Bin 8861 -> 8890 bytes
 Telegram/SourceFiles/dialogs/dialogs.style    |   4 ++
 .../dialogs/dialogs_inner_widget.cpp          |  28 ++++++++
 .../SourceFiles/dialogs/dialogs_layout.cpp    |  66 ++++++++++++++++--
 7 files changed, 94 insertions(+), 6 deletions(-)

diff --git a/Telegram/Resources/colors.palette b/Telegram/Resources/colors.palette
index d19343a1a..1467b92fe 100644
--- a/Telegram/Resources/colors.palette
+++ b/Telegram/Resources/colors.palette
@@ -194,6 +194,7 @@ dialogsUnreadBg: windowBgActive; // chat list unread badge background for not mu
 dialogsUnreadBgMuted: #bbbbbb; // chat list unread badge background for muted chat
 dialogsUnreadFg: windowFgActive; // chat list unread badge text
 dialogsArchiveFg: #525252 | dialogsNameFg; // chat list archive name text
+dialogsOnlineBadgeFg: #4dc920 | dialogsUnreadBg; // chat list online status
 
 dialogsBgOver: windowBgOver; // chat list background with mouse over
 dialogsNameFgOver: windowBoldFgOver; // chat list name text with mouse over
@@ -225,6 +226,7 @@ dialogsSentIconFgActive: dialogsTextFgActive; // chat list sent message tick / d
 dialogsUnreadBgActive: dialogsTextFgActive; // chat list unread badge background for not muted chat for current (active) chat
 dialogsUnreadBgMutedActive: dialogsDraftFgActive; // chat list unread badge background for muted chat for current (active) chat
 dialogsUnreadFgActive: dialogsBgActive; // chat list unread badge text for current (active) chat
+dialogsOnlineBadgeFgActive: #ffffff; // chat list online status for current (active) chat
 
 dialogsRippleBg: windowBgRipple; // chat list background ripple effect
 dialogsRippleBgActive: activeButtonBgRipple; // chat list background ripple effect for current (active) chat
diff --git a/Telegram/Resources/day-blue.tdesktop-theme b/Telegram/Resources/day-blue.tdesktop-theme
index 4934875a60584ab5258212748aa831c021fb64ca..d24019eb17dce90f17e6c1a38b765c94f92a6285 100644
GIT binary patch
delta 3477
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
DULwPC

delta 3367
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

diff --git a/Telegram/Resources/night-green.tdesktop-theme b/Telegram/Resources/night-green.tdesktop-theme
index 3b25f9d55eb6df084a70c66a554d4c9a7a21f62c..c7caf91ba5e328ae3d24d3caa6d8a4100d027a24 100644
GIT binary patch
delta 5091
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
F002Uc?!5p2

delta 5074
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

diff --git a/Telegram/Resources/night.tdesktop-theme b/Telegram/Resources/night.tdesktop-theme
index 87865eccfc4bcde8226ea40486b456588142f4ad..37e401c7c5ce4cd9295fcc88363e97c3086d759f 100644
GIT binary patch
delta 8117
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
PAd_n%ECwnf00000g3QP*

delta 8088
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

diff --git a/Telegram/SourceFiles/dialogs/dialogs.style b/Telegram/SourceFiles/dialogs/dialogs.style
index a8ff3550e..e679fb1aa 100644
--- a/Telegram/SourceFiles/dialogs/dialogs.style
+++ b/Telegram/SourceFiles/dialogs/dialogs.style
@@ -34,6 +34,10 @@ dialogsPhotoSize: 46px;
 dialogsPhotoPadding: 12px;
 dialogsPadding: point(10px, 8px);
 
+dialogsOnlineBadgeSizePadding: 4px;
+dialogsOnlineBadgeSize: 8px;
+dialogsOnlineBadgeRightSkip: 2px;
+
 dialogsImportantBarHeight: 37px;
 
 dialogsSkip: 8px;
diff --git a/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp b/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp
index 069820ae6..5b09aa80a 100644
--- a/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp
+++ b/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp
@@ -177,6 +177,34 @@ InnerWidget::InnerWidget(
 			UpdateRowSection::Default | UpdateRowSection::Filtered);
 	}, lifetime());
 
+	const auto handleUserOnline = [=](const Notify::PeerUpdate &peerUpdate) {
+		if (peerUpdate.peer->isSelf()) {
+			return;
+		}
+		const auto circleSize = st::dialogsOnlineBadgeSize
+			+ st::dialogsOnlineBadgeSizePadding;
+		const auto updateRect = QRect(
+			st::dialogsPadding.x()
+				+ st::dialogsPhotoSize
+				- st::dialogsOnlineBadgeRightSkip
+				- circleSize,
+			st::dialogsPadding.y()
+				+ st::dialogsPhotoSize
+				- circleSize,
+			circleSize,
+			circleSize);
+		updateDialogRow(
+			RowDescriptor(
+				session().data().history(peerUpdate.peer->id),
+				FullMsgId()),
+			updateRect,
+			UpdateRowSection::Default | UpdateRowSection::Filtered);
+	};
+
+	subscribe(Notify::PeerUpdated(), Notify::PeerUpdatedHandler(
+		Notify::PeerUpdate::Flag::UserOnlineChanged,
+		handleUserOnline));
+
 	session().data().chatsListChanges(
 	) | rpl::filter([=](Data::Folder *folder) {
 		return (folder == _openedFolder);
diff --git a/Telegram/SourceFiles/dialogs/dialogs_layout.cpp b/Telegram/SourceFiles/dialogs/dialogs_layout.cpp
index 910190f94..e637f8c50 100644
--- a/Telegram/SourceFiles/dialogs/dialogs_layout.cpp
+++ b/Telegram/SourceFiles/dialogs/dialogs_layout.cpp
@@ -12,6 +12,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
 #include "data/data_session.h"
 #include "dialogs/dialogs_list.h"
 #include "styles/style_dialogs.h"
+#include "styles/style_window.h"
 #include "storage/localstorage.h"
 #include "ui/empty_userpic.h"
 #include "ui/text_options.h"
@@ -23,6 +24,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
 #include "data/data_channel.h"
 #include "data/data_user.h"
 #include "data/data_folder.h"
+#include "data/data_peer_values.h"
 
 namespace Dialogs {
 namespace Layout {
@@ -202,6 +204,7 @@ enum class Flag {
 	Selected         = 0x02,
 	SearchResult     = 0x04,
 	SavedMessages    = 0x08,
+	UserOnline       = 0x10,
 	//FeedSearchResult = 0x10, // #feed
 };
 inline constexpr bool is_flag_type(Flag) { return true; }
@@ -249,12 +252,57 @@ void paintRow(
 			fullWidth,
 			st::dialogsPhotoSize);
 	} else if (from) {
-		from->paintUserpicLeft(
-			p,
-			st::dialogsPadding.x(),
-			st::dialogsPadding.y(),
-			fullWidth,
-			st::dialogsPhotoSize);
+		if (flags & Flag::UserOnline) {
+			auto frame = QImage(
+				st::dialogsPhotoSize * cRetinaFactor(),
+				st::dialogsPhotoSize * cRetinaFactor(),
+				QImage::Format_ARGB32_Premultiplied);
+			frame.setDevicePixelRatio(cRetinaFactor());
+			frame.fill(Qt::transparent);
+			{
+				const auto size = st::dialogsOnlineBadgeSize;
+				const auto paddingSize = st::dialogsOnlineBadgeSizePadding;
+				const auto circleSize = size + paddingSize;
+				const auto offset = size + paddingSize / 2;
+				const auto x = st::dialogsPadding.x() + st::dialogsPhotoSize - st::dialogsOnlineBadgeRightSkip - size;
+				const auto y = st::dialogsPadding.y() + st::dialogsPhotoSize - size;
+
+				Painter q(&frame);
+				PainterHighQualityEnabler hq(q);
+				from->paintUserpicLeft(
+						q,
+						0,
+						0,
+						fullWidth,
+						st::dialogsPhotoSize);
+				q.setPen(Qt::NoPen);
+				q.setBrush(Qt::transparent);
+				q.setCompositionMode(QPainter::CompositionMode_SourceOut);
+				q.drawEllipse(
+					x - circleSize,
+					y - circleSize,
+					circleSize,
+					circleSize);
+
+				q.setBrush(active
+					? st::dialogsOnlineBadgeFgActive
+					: st::dialogsOnlineBadgeFg);
+				q.setCompositionMode(QPainter::CompositionMode_Source);
+				q.drawEllipse(
+					x - offset,
+					y - offset,
+					size,
+					size);
+			}
+			p.drawImage(st::dialogsPadding, frame);
+		} else {
+			from->paintUserpicLeft(
+				p,
+				st::dialogsPadding.x(),
+				st::dialogsPadding.y(),
+				fullWidth,
+				st::dialogsPhotoSize);
+		}
 	} else if (hiddenSenderInfo) {
 		hiddenSenderInfo->userpic.paint(
 			p,
@@ -648,8 +696,14 @@ void RowPainter::paint(
 			? history->peer->migrateTo()
 			: history->peer.get())
 		: nullptr;
+	const auto showUserOnline = peer
+		&& peer->isUser()
+		&& Data::OnlineTextActive(peer->asUser(), unixtime())
+		&& !(fullWidth < st::columnMinimalWidthLeft
+			&& (displayUnreadCounter || displayUnreadMark));
 	const auto flags = (active ? Flag::Active : Flag(0))
 		| (selected ? Flag::Selected : Flag(0))
+		| (showUserOnline ? Flag::UserOnline : Flag(0))
 		| (peer && peer->isSelf() ? Flag::SavedMessages : Flag(0));
 	const auto paintItemCallback = [&](int nameleft, int namewidth) {
 		const auto texttop = st::dialogsPadding.y()