Option to always show top bar userpic
This commit is contained in:
parent
9ecb0c12a0
commit
1a462f4d26
4 changed files with 17 additions and 2 deletions
|
|
@ -323,6 +323,10 @@ bool Manager::readCustomFile() {
|
|||
cSetUserpicCornersType(v);
|
||||
}
|
||||
});
|
||||
|
||||
ReadBoolOption(settings, "always_show_top_userpic", [&](auto v) {
|
||||
cSetShowTopBarUserpic(v);
|
||||
});
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
@ -365,6 +369,7 @@ void Manager::writeDefaultFile() {
|
|||
settings.insert(qsl("no_taskbar_flash"), cNoTaskbarFlashing());
|
||||
settings.insert(qsl("recent_stickers_limit"), RecentStickersLimit());
|
||||
settings.insert(qsl("userpic_corner_type"), cUserpicCornersType());
|
||||
settings.insert(qsl("always_show_top_userpic"), cShowTopBarUserpic());
|
||||
|
||||
auto settingsScales = QJsonArray();
|
||||
settings.insert(qsl("scales"), settingsScales);
|
||||
|
|
@ -428,6 +433,7 @@ void Manager::writeCurrentSettings() {
|
|||
settings.insert(qsl("no_taskbar_flash"), cNoTaskbarFlashing());
|
||||
settings.insert(qsl("recent_stickers_limit"), RecentStickersLimit());
|
||||
settings.insert(qsl("userpic_corner_type"), cUserpicCornersType());
|
||||
settings.insert(qsl("always_show_top_userpic"), cShowTopBarUserpic());
|
||||
|
||||
auto settingsScales = QJsonArray();
|
||||
auto currentScales = cInterfaceScales();
|
||||
|
|
|
|||
|
|
@ -569,13 +569,20 @@ void TopBarWidget::updateControlsGeometry() {
|
|||
_clear->moveToRight(st::topBarActionSkip, selectedButtonsTop);
|
||||
|
||||
if (_back->isHidden()) {
|
||||
_leftTaken = st::topBarArrowPadding.right();
|
||||
if (cShowTopBarUserpic()) {
|
||||
_leftTaken = st::topBarActionSkip;
|
||||
} else {
|
||||
_leftTaken = st::topBarArrowPadding.right();
|
||||
}
|
||||
} else {
|
||||
const auto smallDialogsColumn = _activeChat.folder()
|
||||
&& (width() < _back->width() + _search->width());
|
||||
_leftTaken = smallDialogsColumn ? (width() - _back->width()) / 2 : 0;
|
||||
_back->moveToLeft(_leftTaken, otherButtonsTop);
|
||||
_leftTaken += _back->width();
|
||||
}
|
||||
|
||||
if (!_back->isHidden() || cShowTopBarUserpic()) {
|
||||
if (_info && !_info->isHidden()) {
|
||||
_info->moveToLeft(_leftTaken, otherButtonsTop);
|
||||
_leftTaken += _info->width();
|
||||
|
|
@ -630,7 +637,7 @@ void TopBarWidget::updateControlsVisibility() {
|
|||
|| _activeChat.folder();
|
||||
_back->setVisible(backVisible);
|
||||
if (_info) {
|
||||
_info->setVisible(Adaptive::OneColumn());
|
||||
_info->setVisible(cShowTopBarUserpic() || Adaptive::OneColumn());
|
||||
}
|
||||
if (_unreadBadge) {
|
||||
_unreadBadge->show();
|
||||
|
|
|
|||
|
|
@ -317,3 +317,4 @@ rpl::producer<int> RecentStickersLimitChanges() {
|
|||
}
|
||||
|
||||
int gUserpicCornersType = 3;
|
||||
bool gShowTopBarUserpic = false;
|
||||
|
|
|
|||
|
|
@ -247,3 +247,4 @@ void SetRecentStickersLimit(int limit);
|
|||
[[nodiscard]] rpl::producer<int> RecentStickersLimitChanges();
|
||||
|
||||
DeclareSetting(int, UserpicCornersType);
|
||||
DeclareSetting(bool, ShowTopBarUserpic);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue