Take session name from device model.
This commit is contained in:
parent
aab4dbb7cf
commit
a511681113
|
@ -46,12 +46,10 @@ Authorizations::Entry ParseEntry(const MTPDauthorization &data) {
|
||||||
return version;
|
return version;
|
||||||
}();
|
}();
|
||||||
|
|
||||||
result.name = QString("%1%2").arg(
|
result.name = qs(data.vdevice_model());
|
||||||
appName,
|
|
||||||
appVer.isEmpty() ? QString() : (' ' + appVer));
|
|
||||||
|
|
||||||
const auto country = qs(data.vcountry());
|
const auto country = qs(data.vcountry());
|
||||||
const auto platform = qs(data.vplatform());
|
//const auto platform = qs(data.vplatform());
|
||||||
//const auto &countries = countriesByISO2();
|
//const auto &countries = countriesByISO2();
|
||||||
//const auto j = countries.constFind(country);
|
//const auto j = countries.constFind(country);
|
||||||
//if (j != countries.cend()) {
|
//if (j != countries.cend()) {
|
||||||
|
@ -61,14 +59,10 @@ Authorizations::Entry ParseEntry(const MTPDauthorization &data) {
|
||||||
result.activeTime = data.vdate_active().v
|
result.activeTime = data.vdate_active().v
|
||||||
? data.vdate_active().v
|
? data.vdate_active().v
|
||||||
: data.vdate_created().v;
|
: data.vdate_created().v;
|
||||||
result.info = QString("%1, %2%3").arg(
|
result.info = QString("%1%2").arg(
|
||||||
qs(data.vdevice_model()),
|
appName,
|
||||||
platform.isEmpty() ? QString() : platform + ' ',
|
appVer.isEmpty() ? QString() : (' ' + appVer));
|
||||||
qs(data.vsystem_version()));
|
result.ip = qs(data.vip());
|
||||||
result.ip = qs(data.vip())
|
|
||||||
+ (country.isEmpty()
|
|
||||||
? QString()
|
|
||||||
: QString::fromUtf8(" \xe2\x80\x93 ") + country);
|
|
||||||
if (!result.hash) {
|
if (!result.hash) {
|
||||||
result.active = tr::lng_status_online(tr::now);
|
result.active = tr::lng_status_online(tr::now);
|
||||||
} else {
|
} else {
|
||||||
|
@ -85,6 +79,10 @@ Authorizations::Entry ParseEntry(const MTPDauthorization &data) {
|
||||||
result.active = lastDate.toString(cDateFormat());
|
result.active = lastDate.toString(cDateFormat());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
result.location = (country.isEmpty() ? result.ip : country)
|
||||||
|
+ (result.hash
|
||||||
|
? (QString::fromUtf8(" \xe2\x80\x93 ") + result.active)
|
||||||
|
: QString());
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,7 +22,7 @@ public:
|
||||||
|
|
||||||
bool incomplete = false;
|
bool incomplete = false;
|
||||||
TimeId activeTime = 0;
|
TimeId activeTime = 0;
|
||||||
QString name, active, info, ip;
|
QString name, active, info, ip, location;
|
||||||
};
|
};
|
||||||
using List = std::vector<Entry>;
|
using List = std::vector<Entry>;
|
||||||
|
|
||||||
|
|
|
@ -291,7 +291,7 @@ sessionWhenFont: msgDateFont;
|
||||||
sessionWhenFg: windowSubTextFg;
|
sessionWhenFg: windowSubTextFg;
|
||||||
sessionInfoFont: msgFont;
|
sessionInfoFont: msgFont;
|
||||||
sessionInfoFg: windowSubTextFg;
|
sessionInfoFg: windowSubTextFg;
|
||||||
sessionTerminateTop: 28px;
|
sessionTerminateTop: 9px;
|
||||||
sessionTerminateSkip: 22px;
|
sessionTerminateSkip: 22px;
|
||||||
sessionNamePadding: margins(0px, 0px, 5px, 0px);
|
sessionNamePadding: margins(0px, 0px, 5px, 0px);
|
||||||
sessionTerminate: IconButton {
|
sessionTerminate: IconButton {
|
||||||
|
|
|
@ -49,16 +49,15 @@ private:
|
||||||
, incomplete(entry.incomplete)
|
, incomplete(entry.incomplete)
|
||||||
, activeTime(entry.activeTime)
|
, activeTime(entry.activeTime)
|
||||||
, name(st::sessionNameStyle, entry.name)
|
, name(st::sessionNameStyle, entry.name)
|
||||||
, active(st::sessionWhenStyle, entry.active)
|
|
||||||
, info(st::sessionInfoStyle, entry.info)
|
, info(st::sessionInfoStyle, entry.info)
|
||||||
, ip(st::sessionInfoStyle, entry.ip) {
|
, ip(st::sessionInfoStyle, entry.location) {
|
||||||
};
|
};
|
||||||
|
|
||||||
uint64 hash = 0;
|
uint64 hash = 0;
|
||||||
|
|
||||||
bool incomplete = false;
|
bool incomplete = false;
|
||||||
TimeId activeTime = 0;
|
TimeId activeTime = 0;
|
||||||
Ui::Text::String name, active, info, ip;
|
Ui::Text::String name, info, ip;
|
||||||
};
|
};
|
||||||
struct Full {
|
struct Full {
|
||||||
Entry current;
|
Entry current;
|
||||||
|
@ -496,17 +495,11 @@ void SessionsContent::List::paintEvent(QPaintEvent *e) {
|
||||||
for (auto i = from; i != till; ++i) {
|
for (auto i = from; i != till; ++i) {
|
||||||
const auto &entry = _items[i];
|
const auto &entry = _items[i];
|
||||||
|
|
||||||
const auto activeW = entry.active.maxWidth();
|
const auto nameW = _rowWidth.info;
|
||||||
const auto nameW = available
|
|
||||||
- activeW
|
|
||||||
- st::sessionNamePadding.right();
|
|
||||||
const auto nameH = entry.name.style()->font->height;
|
const auto nameH = entry.name.style()->font->height;
|
||||||
const auto infoW = entry.hash ? _rowWidth.info : available;
|
const auto infoW = entry.hash ? _rowWidth.info : available;
|
||||||
const auto infoH = entry.info.style()->font->height;
|
const auto infoH = entry.info.style()->font->height;
|
||||||
|
|
||||||
p.setPen(entry.hash ? st::sessionWhenFg : st::contactsStatusFgOnline);
|
|
||||||
entry.active.drawRight(p, xact, y, activeW, w);
|
|
||||||
|
|
||||||
p.setPen(st::sessionNameFg);
|
p.setPen(st::sessionNameFg);
|
||||||
entry.name.drawLeftElided(p, x, y, nameW, w);
|
entry.name.drawLeftElided(p, x, y, nameW, w);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue