tdesktop/Telegram/SourceFiles/boxes/boxes.style

525 lines
12 KiB
Plaintext
Raw Normal View History

/*
This file is part of Telegram Desktop,
the official desktop version of Telegram messaging app, see https://telegram.org
Telegram Desktop is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
It is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
In addition, as a special exception, the copyright holders give permission
to link the code of portions of this program with the OpenSSL library.
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
*/
using "basic.style";
using "ui/widgets/widgets.style";
2016-10-31 12:29:26 +00:00
using "intro/intro.style";
boxDuration: 200;
boxButtonFont: font(boxFontSize semibold);
defaultBoxButton: RoundButton {
textFg: #2f9fea;
textFgOver: #2f9fea;
secondaryTextFg: #2f9fea;
secondaryTextFgOver: #2f9fea;
textBg: boxBg;
textBgOver: lightButtonBgOver;
width: -24px;
height: 36px;
padding: margins(0px, 0px, 0px, 0px);
textTop: 8px;
font: boxButtonFont;
ripple: RippleAnimation(defaultRippleAnimation) {
color: lightButtonBgRipple;
}
}
cancelBoxButton: RoundButton(defaultBoxButton) {
textFg: #aeaeae;
}
attentionBoxButton: RoundButton(defaultBoxButton) {
textFg: attentionButtonFg;
textFgOver: attentionButtonFgOver;
textBgOver: attentionButtonBgOver;
ripple: RippleAnimation(defaultRippleAnimation) {
color: attentionButtonBgRipple;
}
}
defaultBoxCheckbox: Checkbox(defaultCheckbox) {
width: -46px;
textPosition: point(34px, 1px);
font: boxTextFont;
}
boxBlockTitleHeight: 48px;
boxBlockTitlePosition: point(18px, 14px);
boxBlockTitleFont: font(boxFontSize semibold);
boxBlockTitleAdditionalSkip: 6px;
boxBlockTitleAdditionalFont: normalFont;
boxBlockTitleShadow: icon {{ "box_title_shadow", windowShadowFg }};
boxBlockTitleClose: IconButton(defaultIconButton) {
width: boxBlockTitleHeight;
height: boxBlockTitleHeight;
icon: boxBlockTitleCloseIcon;
iconOver: boxBlockTitleCloseIconOver;
rippleAreaPosition: point(4px, 4px);
rippleAreaSize: 40px;
ripple: RippleAnimation(defaultRippleAnimation) {
color: windowBgOver;
}
2016-10-31 12:29:26 +00:00
}
boxLinkButton: LinkButton {
color: #0080c0;
overColor: #0080c0;
downColor: #0073ad;
font: boxTextFont;
overFont: font(boxFontSize underline);
}
boxOptionListPadding: margins(2px, 20px, 2px, 2px);
boxOptionInputSkip: 6px;
boxVerticalMargin: 10px;
boxWidth: 320px;
boxWideWidth: 364px;
boxPadding: margins(26px, 30px, 34px, 8px);
boxMaxListHeight: 600px;
boxLittleSkip: 10px;
boxMediumSkip: 20px;
boxTitleFont: font(boxFontSize bold);
boxTitlePosition: point(26px, 28px);
boxTitleHeight: 54px;
boxButtonPadding: margins(12px, 16px, 22px, 16px);
boxLabel: FlatLabel(defaultFlatLabel) {
font: font(boxFontSize);
align: align(topleft);
}
boxScroll: defaultSolidScroll;
boxScrollSkip: 6px;
boxScrollShadowBg: #00000012;
boxShadow: icon {{ "box_shadow", windowShadowFg }};
boxShadowShift: 2px;
countryRowHeight: 36px;
countryRowNameFont: semiboldFont;
countryRowNameFg: boxTextFg;
countryRowPadding: margins(22px, 9px, 8px, 0px);
countryRowCodeFont: font(fsize);
countryRowBg: windowBg;
countryRowBgOver: windowBgOver;
countryRowCodeFg: windowSubTextFg;
countryRowCodeFgOver: windowSubTextFgOver;
countriesSkip: 12px;
countriesScroll: FlatScroll(boxScroll) {
deltat: 9px;
deltab: 3px;
}
boxTextStyle: TextStyle(defaultTextStyle) {
lineHeight: 22px;
}
boxPhotoTitleFont: font(16px semibold);
boxPhotoTitlePosition: point(28px, 26px);
boxPhotoPadding: margins(28px, 28px, 28px, 0px);
boxPhotoCompressedSkip: 20px;
boxPhotoCaptionSkip: 8px;
boxPhotoTextFg: #808080;
cropPointSize: 10px;
cropSkip: 13px;
cropMinSize: 20px;
confirmInviteTitle: FlatLabel(defaultFlatLabel) {
font: font(16px semibold);
align: align(center);
width: 320px;
maxHeight: 24px;
textFg: #333333;
}
confirmInviteStatus: FlatLabel(defaultFlatLabel) {
font: font(boxFontSize);
align: align(center);
width: 320px;
maxHeight: 20px;
textFg: windowSubTextFg;
}
confirmInviteTitleTop: 106px;
confirmInvitePhotoSize: 76px;
confirmInvitePhotoTop: 20px;
confirmInviteStatusTop: 136px;
confirmInviteUserHeight: 80px;
confirmInviteUserPhotoSize: 56px;
confirmInviteUserPhotoTop: 166px;
confirmInviteUserName: FlatLabel(defaultFlatLabel) {
font: normalFont;
align: align(center);
width: 66px;
maxHeight: 20px;
}
confirmInviteUserNameTop: 227px;
confirmPhoneAboutLabel: FlatLabel(defaultFlatLabel) {
width: 282px;
}
confirmPhoneCodeField: InputField(defaultInputField) {
}
revokePublicLinkStatusStyle: TextStyle(defaultTextStyle) {
linkFg: contactsStatusFgOnline;
linkFgDown: contactsStatusFgOnline;
linkFlagsOver: font(fsize);
}
aboutRevokePublicLabel: FlatLabel(defaultFlatLabel) {
font: normalFont;
align: align(topleft);
width: 320px;
textFg: windowFg;
}
contactUserIcon: icon {{ "add_contact_user", #999999 }};
contactPhoneIcon: icon {{ "add_contact_phone", #999999 }};
contactIconTop: 28px;
contactsAddIconAbove: icon {{ "contacts_add", activeButtonFg, point(18px, 18px) }};
contactsAdd: TwoIconButton {
width: 52px;
height: 52px;
iconBelow: contactsAddIconBelow;
iconBelowOver: contactsAddIconBelowOver;
iconAbove: contactsAddIconAbove;
iconAboveOver: contactsAddIconAbove;
rippleAreaPosition: point(5px, 5px);
rippleAreaSize: 42px;
ripple: RippleAnimation(defaultRippleAnimation) {
color: activeButtonBgRipple;
}
}
contactsAddPosition: point(14px, 8px);
contactPadding: margins(49px, 2px, 0px, 6px);
contactSkip: 6px;
contactPhoneSkip: 30px;
contactsPhotoSize: 42px;
contactsPadding: margins(16px, 7px, 16px, 7px);
contactsNameTop: 2px;
contactsNameFont: semiboldFont;
contactsStatusTop: 23px;
contactsStatusFont: font(fsize);
contactsCheckPosition: point(8px, 16px);
2016-12-02 19:16:35 +00:00
contactsAllAdminsTop: 15px;
contactsAboutBg: windowBgOver;
contactsAboutFg: windowSubTextFgOver;
contactsAboutShadow: #0000001F;
2016-12-02 19:16:35 +00:00
contactsAboutTop: 60px;
contactsAboutBottom: 19px;
contactsScroll: FlatScroll(boxScroll) {
deltab: 0px;
}
contactsMultiSelect: MultiSelect {
2016-10-31 12:29:26 +00:00
bg: boxSearchBg;
2016-10-21 12:28:26 +00:00
padding: margins(8px, 8px, 8px, 8px);
maxHeight: 104px;
scroll: FlatScroll(defaultSolidScroll) {
2016-10-21 12:28:26 +00:00
deltat: 3px;
deltab: 3px;
round: 1px;
width: 8px;
deltax: 3px;
hiding: 1000;
}
item: MultiSelectItem {
padding: margins(6px, 7px, 12px, 0px);
maxWidth: 128px;
height: 32px;
font: normalFont;
textBg: contactsBgOver;
textFg: windowFg;
2016-10-31 12:29:26 +00:00
textActiveBg: activeButtonBg;
textActiveFg: activeButtonFg;
deleteFg: activeButtonFg;
2016-11-21 17:46:29 +00:00
deleteCross: CrossAnimation {
size: 32px;
skip: 10px;
stroke: 2px;
minScale: 0.3;
}
2016-10-21 12:28:26 +00:00
duration: 150;
minScale: 0.3;
}
itemSkip: 8px;
field: InputField(defaultInputField) {
textBg: transparent;
textMargins: margins(2px, 7px, 2px, 0px);
placeholderFg: #999999;
placeholderFgActive: #aaaaaa;
placeholderFgError: #aaaaaa;
placeholderMargins: margins(2px, 0px, 2px, 0px);
placeholderScale: 0.;
placeholderFont: normalFont;
border: 0px;
borderActive: 0px;
borderError: 0px;
heightMin: 32px;
font: normalFont;
}
fieldMinWidth: 42px;
fieldIcon: boxFieldSearchIcon;
2016-10-21 12:28:26 +00:00
fieldIconSkip: 36px;
2016-11-21 17:46:29 +00:00
fieldCancel: CrossButton {
width: boxBlockTitleHeight;
height: boxBlockTitleHeight;
cross: CrossAnimation {
size: 40px;
skip: 14px;
stroke: 2px;
minScale: 0.3;
}
crossFg: boxBlockTitleCloseFg;
crossFgOver: boxBlockTitleCloseFgOver;
crossPosition: point(4px, 4px);
duration: 150;
ripple: RippleAnimation(defaultRippleAnimation) {
color: windowBgOver;
}
}
fieldCancelSkip: 40px;
}
contactsPhotoCheckbox: RoundImageCheckbox {
imageRadius: 21px;
imageSmallRadius: 18px;
selectWidth: 2px;
selectFg: windowBgActive;
selectDuration: 150;
check: RoundCheckbox(defaultRoundCheckbox) {
size: 20px;
sizeSmall: 0.3;
check: icon {{ "default_checkbox_check", windowFgActive, point(3px, 6px) }};
}
}
contactsPhotoDisabledCheckFg: #bbbbbb;
contactsNameCheckedFg: #2b88b8;
contactsRipple: defaultRippleAnimation;
localStorageBoxSkip: 10px;
shareRowsTop: 12px;
shareRowHeight: 108px;
sharePhotoTop: 6px;
sharePhotoCheckbox: RoundImageCheckbox(contactsPhotoCheckbox) {
imageRadius: 28px;
imageSmallRadius: 24px;
}
shareNameFont: font(11px);
shareNameFg: windowFg;
shareNameActiveFg: windowActiveTextFg;
shareNameTop: 6px;
shareColumnSkip: 6px;
shareActivateDuration: 150;
shareScrollDuration: 300;
notificationsBoxHeight: 450px;
notificationsBoxMonitorTop: 63px;
2016-10-31 12:29:26 +00:00
notificationsBoxMonitor: icon {{ "monitor", notificationsBoxMonitorFg }};
notificationsBoxScreenTop: 10px;
notificationsBoxScreenSize: size(280px, 160px);
notificationsBoxScreenBg: #6389a8;
notificationsBoxCountLabelTop: 80px;
notificationsBoxCountTop: 30px;
notificationsSampleSkip: 5px;
notificationsSampleTopSkip: 5px;
notificationsSampleBottomSkip: 5px;
notificationsSampleMargin: 2px;
notificationSampleOpacity: 0.5;
notificationSampleSize: size(64px, 16px);
2016-10-27 14:10:28 +00:00
2016-10-31 12:29:26 +00:00
membersAboutLimitPadding: margins(0px, 12px, 0px, 12px);
sessionsScroll: boxScroll;
sessionsHeight: 440px;
sessionHeight: 70px;
sessionCurrentPadding: margins(0px, 7px, 0px, 4px);
sessionCurrentHeight: 118px;
sessionPadding: margins(21px, 10px, 21px, 0px);
sessionNameFont: msgNameFont;
2016-10-31 12:29:26 +00:00
sessionNameFg: boxTextFg;
sessionWhenFont: msgDateFont;
sessionWhenFg: #aaaaaa;
sessionInfoFont: msgFont;
2016-10-31 12:29:26 +00:00
sessionInfoFg: #888888;
sessionTerminateTop: 28px;
sessionTerminateSkip: 22px;
sessionTerminate: IconButton {
width: 20px;
height: 20px;
icon: simpleCloseIcon;
iconOver: simpleCloseIconOver;
iconPosition: point(5px, 5px);
rippleAreaPosition: point(0px, 0px);
rippleAreaSize: 20px;
ripple: RippleAnimation(defaultRippleAnimation) {
color: windowBgOver;
}
}
sessionTerminateAllButton: LinkButton(boxLinkButton) {
color: #d15948;
overColor: #d15948;
downColor: #db6352;
}
2016-10-31 12:29:26 +00:00
passcodeHeaderFont: font(19px);
passcodeHeaderHeight: 80px;
passcodeInput: InputField(introPhone) {
textMargins: margins(1px, 27px, 1px, 6px);
}
passcodeSubmit: RoundButton(introNextButton) {
2016-10-31 12:29:26 +00:00
width: 225px;
}
passcodeSubmitSkip: 40px;
passcodePadding: margins(0px, 6px, 0px, 13px);
passcodeTextLine: 28px;
passcodeSkip: 21px;
2016-10-31 12:29:26 +00:00
newGroupAboutFg: #808080;
newGroupPadding: margins(4px, 6px, 4px, 3px);
newGroupSkip: 27px;
2016-10-31 12:29:26 +00:00
newGroupInfoPadding: margins(0px, -4px, 0px, 1px);
newGroupLinkPadding: margins(4px, 27px, 4px, 21px);
2016-10-31 12:29:26 +00:00
newGroupLinkTop: 3px;
newGroupLinkFont: font(16px);
newGroupPhotoSize: 76px;
newGroupPhotoIcon: icon {{ "new_chat_photo", #ffffff }};
newGroupPhotoIconPosition: point(23px, 25px);
newGroupPhotoDuration: 150;
newGroupNamePosition: point(27px, 5px);
newGroupDescriptionPadding: margins(0px, 13px, 0px, 4px);
newGroupDescription: InputField(defaultInputField) {
textMargins: margins(1px, 26px, 1px, 4px);
heightMax: 135px;
}
2016-10-31 12:29:26 +00:00
setupChannelLink: InputField(defaultInputField) {
textMargins: margins(0px, 6px, 0px, 4px);
heightMin: 32px;
2016-10-31 12:29:26 +00:00
}
newGroupPublicLinkPadding: margins(0px, 20px, 0px, 5px);
newGroupLinkFadeDuration: 5000;
themeWarningWidth: boxWideWidth;
themeWarningHeight: 150px;
themeWarningShadow: boxShadow;
themeWarningShadowShift: boxShadowShift;
themeWarningTextTop: 60px;
aboutWidth: 390px;
aboutVersionTop: -3px;
aboutVersionLink: LinkButton(defaultLinkButton) {
color: #999999;
overColor: #999999;
downColor: #999999;
}
aboutTextTop: 34px;
aboutSkip: 14px;
aboutLabel: FlatLabel(defaultFlatLabel) {
font: normalFont;
width: 330px;
align: align(topleft);
}
aboutTextStyle: TextStyle(defaultTextStyle) {
lineHeight: 22px;
}
editTextArea: InputField(defaultInputField) {
textMargins: margins(1px, 26px, 1px, 4px);
heightMax: 276px;
}
confirmCaptionArea: InputField(defaultInputField) {
textMargins: margins(1px, 26px, 1px, 4px);
heightMax: 78px;
}
2016-11-22 09:48:13 +00:00
confirmBg: windowBgOver;
confirmMaxHeight: 245px;
confirmCompressedSkip: 10px;
connectionHostInputField: InputField(defaultInputField) {
width: 160px;
}
connectionPortInputField: InputField(defaultInputField) {
width: 55px;
}
connectionUserInputField: InputField(defaultInputField) {
width: 95px;
}
connectionPasswordInputField: InputField(defaultInputField) {
width: 120px;
}
connectionIPv6Skip: 11px;
langsWidth: 256px;
2016-12-02 19:16:35 +00:00
langsButton: Checkbox(defaultBoxCheckbox) {
width: 200px;
}
backgroundPadding: 10px;
backgroundSize: size(108px, 193px);
backgroundScroll: FlatScroll(boxScroll) {
deltat: 10px;
deltab: 0px;
}
usernamePadding: margins(23px, 6px, 21px, 12px);
usernameSkip: 49px;
usernameTextStyle: TextStyle(defaultTextStyle) {
lineHeight: 20px;
}
usernameDefaultFg: #777777;
downloadPathSkip: 10px;