/* This file is part of Telegram Desktop, the official desktop application for the Telegram messaging service. For license and copyright information please follow this link: https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL */ using "ui/basic.style"; using "ui/layers/layers.style"; using "ui/widgets/widgets.style"; using "intro/intro.style"; UserpicButton { size: size; photoSize: pixels; photoPosition: point; changeButton: RoundButton; changeIcon: icon; changeIconPosition: point; duration: int; uploadHeight: pixels; uploadBg: color; uploadIcon: icon; uploadIconPosition: point; } FeedUserpicButton { size: size; innerSize: pixels; innerPosition: point; innerPart: UserpicButton; } 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: ScrollArea(boxScroll) { deltat: 9px; deltab: 3px; } boxPhotoTitleFont: font(16px semibold); boxPhotoTitlePosition: point(28px, 20px); boxPhotoPadding: margins(28px, 28px, 28px, 18px); boxPhotoCompressedSkip: 20px; boxPhotoCaptionSkip: 8px; boxPhotoTextFg: windowSubTextFg; defaultChangeUserpicIcon: icon {{ "new_chat_photo", activeButtonFg }}; defaultUploadUserpicIcon: icon {{ "upload_chat_photo", msgDateImgFg }}; defaultUserpicButton: UserpicButton { size: size(76px, 76px); photoSize: 76px; photoPosition: point(-1px, -1px); changeButton: defaultActiveButton; changeIcon: defaultChangeUserpicIcon; changeIconPosition: point(23px, 25px); duration: 500; uploadHeight: 24px; uploadBg: msgDateImgBgOver; uploadIcon: defaultUploadUserpicIcon; uploadIconPosition: point(-1px, 1px); } defaultFeedUserpicButton: FeedUserpicButton { size: size(76px, 76px); innerSize: 76px; innerPosition: point(-1px, -1px); innerPart: defaultUserpicButton; } confirmInviteTitle: FlatLabel(defaultFlatLabel) { align: align(center); minWidth: 320px; maxHeight: 24px; textFg: windowBoldFg; style: TextStyle(defaultTextStyle) { font: font(18px semibold); linkFont: font(18px semibold); linkFontOver: font(18px semibold underline); } } confirmInviteAbout: FlatLabel(boxLabel) { align: align(center); minWidth: 320px; maxHeight: 60px; style: TextStyle(boxLabelStyle) { lineHeight: 19px; } } confirmInviteStatus: FlatLabel(confirmInviteAbout) { textFg: windowSubTextFg; style: boxLabelStyle; maxHeight: 0px; } confirmInviteAboutPadding: margins(36px, 4px, 36px, 10px); confirmInviteAboutRequestsPadding: margins(36px, 9px, 36px, 15px); confirmInviteTitleTop: 141px; confirmInvitePhotoSize: 96px; confirmInvitePhotoTop: 33px; confirmInviteStatusTop: 164px; confirmInviteUserHeight: 100px; confirmInviteUserPhotoSize: 50px; confirmInviteUserPhotoTop: 210px; confirmInviteUsersWidth: 320px; confirmInviteUserName: FlatLabel(defaultFlatLabel) { align: align(center); minWidth: 66px; maxHeight: 20px; } confirmInviteUserNameTop: 264px; confirmPhoneAboutLabel: FlatLabel(defaultFlatLabel) { minWidth: 272px; } confirmPhoneCodeField: InputField(defaultInputField) { } revokePublicLinkStatusPalette: TextPalette(defaultTextPalette) { linkFg: contactsStatusFgOnline; } aboutRevokePublicLabel: FlatLabel(defaultFlatLabel) { align: align(topleft); minWidth: 320px; } editBioCountdownLabel: FlatLabel(defaultFlatLabel) { style: boxTextStyle; textFg: windowSubTextFg; } contactUserIcon: icon {{ "settings/settings_name", menuIconFg }}; contactPhoneIcon: icon {{ "settings/settings_phone_number", menuIconFg }}; contactIconPosition: point(-5px, 23px); contactPadding: margins(49px, 2px, 0px, 14px); contactSkip: 9px; contactPhoneSkip: 30px; contactsPhotoSize: 42px; contactsPadding: margins(16px, 7px, 16px, 7px); contactsNameTop: 2px; contactsNameStyle: TextStyle(defaultTextStyle) { font: semiboldFont; linkFont: semiboldFont; linkFontOver: semiboldFont; } contactsStatusTop: 23px; contactsStatusFont: font(fsize); contactsCheckPosition: point(8px, 16px); contactsAllAdminsTop: 15px; contactsAboutBg: windowBgOver; contactsAboutFg: windowSubTextFgOver; contactsAboutTop: 60px; contactsAboutBottom: 19px; contactsSortButton: IconButton(defaultIconButton) { width: 48px; height: 54px; icon: icon{{ "contacts_alphabet", boxTitleCloseFg }}; iconOver: icon{{ "contacts_alphabet", boxTitleCloseFgOver }}; iconPosition: point(10px, -1px); rippleAreaPosition: point(1px, 6px); rippleAreaSize: 42px; ripple: RippleAnimation(defaultRippleAnimation) { color: windowBgOver; } } contactsSortOnlineIcon: icon{{ "contacts_online", boxTitleCloseFg }}; contactsSortOnlineIconOver: icon{{ "contacts_online", boxTitleCloseFgOver }}; contactsMarginTop: 4px; contactsMarginBottom: 4px; membersMarginTop: 10px; membersMarginBottom: 10px; peerListBoxItem: PeerListItem(defaultPeerListItem) { height: 56px; photoSize: contactsPhotoSize; photoPosition: point(16px, 7px); namePosition: point(74px, 9px); statusPosition: point(74px, 30px); button: OutlineButton(defaultPeerListButton) { textBg: contactsBg; textBgOver: contactsBgOver; ripple: defaultRippleAnimation; } statusFg: contactsStatusFg; statusFgOver: contactsStatusFgOver; statusFgActive: contactsStatusFgOnline; } peerListBox: PeerList(defaultPeerList) { padding: margins( 0px, membersMarginTop, 0px, membersMarginBottom); item: peerListBoxItem; } localStorageRowHeight: 50px; localStorageRowPadding: margins(22px, 5px, 20px, 5px); localStorageRowTitle: FlatLabel(defaultFlatLabel) { textFg: windowBoldFg; maxHeight: 20px; style: TextStyle(defaultTextStyle) { font: font(14px semibold); linkFont: font(14px semibold); linkFontOver: font(14px semibold); } } localStorageRowSize: FlatLabel(defaultFlatLabel) { textFg: contactsStatusFg; maxHeight: 20px; style: TextStyle(defaultTextStyle) { font: font(14px); linkFont: font(14px); linkFontOver: font(14px); } } localStorageClear: defaultBoxButton; localStorageLimitLabel: LabelSimple(defaultLabelSimple) { font: boxTextFont; } localStorageLimitLabelMargin: margins(22px, 10px, 20px, 5px); localStorageLimitSlider: MediaSlider(defaultContinuousSlider) { seekSize: size(15px, 15px); } localStorageLimitMargin: margins(22px, 5px, 20px, 10px); shareRowsTop: 12px; shareRowHeight: 108px; sharePhotoTop: 6px; shareBoxListItem: PeerListItem(defaultPeerListItem) { nameStyle: TextStyle(defaultTextStyle) { font: font(11px); linkFont: font(11px); linkFontOver: font(11px); } nameFg: windowFg; nameFgChecked: windowActiveTextFg; checkbox: RoundImageCheckbox(defaultPeerListCheckbox) { imageRadius: 28px; imageSmallRadius: 24px; } } shareBoxList: PeerList(defaultPeerList) { bg: boxBg; item: shareBoxListItem; } shareNameTop: 6px; shareColumnSkip: 6px; shareActivateDuration: 150; shareScrollDuration: 300; shareComment: InputField(defaultInputField) { font: normalFont; textMargins: margins(8px, 8px, 8px, 6px); heightMin: 36px; heightMax: 72px; placeholderFg: placeholderFg; placeholderFgActive: placeholderFgActive; placeholderFgError: placeholderFgActive; placeholderMargins: margins(2px, 0px, 2px, 0px); placeholderScale: 0.; placeholderFont: normalFont; border: 0px; borderActive: 0px; } shareCommentPadding: margins(5px, 5px, 5px, 5px); notificationsBoxMonitor: icon {{ "monitor", notificationsBoxMonitorFg }}; notificationsBoxScreenTop: 10px; notificationsBoxScreenSize: size(280px, 160px); notificationsSampleSkip: 5px; notificationsSampleTopSkip: 5px; notificationsSampleBottomSkip: 5px; notificationsSampleMargin: 2px; notificationSampleOpacity: 0.5; notificationSampleSize: size(64px, 16px); membersAboutLimitPadding: margins(0px, 12px, 0px, 12px); membersAbout: FlatLabel(defaultFlatLabel) { minWidth: 240px; textFg: membersAboutLimitFg; align: align(top); style: boxLabelStyle; } passcodeHeaderFont: font(19px); passcodeHeaderHeight: 80px; passcodeInput: InputField(introPhone) { textMargins: margins(1px, 27px, 1px, 6px); } passcodeSubmit: RoundButton(introNextButton) { width: 225px; } passcodeSubmitSkip: 40px; passcodePadding: margins(0px, 0px, 0px, 5px); passcodeTextLine: 28px; passcodeLittleSkip: 5px; passcodeAboutSkip: 7px; passcodeSkip: 23px; newGroupAboutFg: windowSubTextFg; newGroupPadding: margins(4px, 6px, 4px, 3px); newGroupSkip: 27px; newGroupInfoPadding: margins(0px, -4px, 0px, 1px); newGroupLinkPadding: margins(4px, 27px, 4px, 21px); newGroupLinkTop: 3px; newGroupLinkFont: font(16px); newGroupNamePosition: point(27px, 5px); newGroupDescriptionPadding: margins(0px, 13px, 0px, 4px); newGroupDescription: InputField(defaultInputField) { textMargins: margins(1px, 26px, 1px, 4px); heightMax: 116px; } setupChannelLink: InputField(defaultInputField) { textMargins: margins(0px, 6px, 0px, 4px); heightMin: 32px; } newGroupPublicLinkPadding: margins(0px, 20px, 0px, 5px); themeWarningWidth: boxWideWidth; themeWarningHeight: 150px; themeWarningTextTop: 60px; aboutWidth: 390px; aboutVersionTop: -3px; aboutVersionLink: LinkButton(defaultLinkButton) { color: windowSubTextFg; overColor: windowSubTextFg; } aboutTextTop: 34px; aboutSkip: 14px; aboutLabel: FlatLabel(defaultFlatLabel) { minWidth: 300px; align: align(topleft); style: TextStyle(defaultTextStyle) { lineHeight: 22px; } } autoDownloadTopDelta: 10px; autoDownloadTitlePosition: point(22px, 18px); autoDownloadTitleFont: font(15px semibold); autoDownloadLimitSlider: MediaSlider(defaultContinuousSlider) { seekSize: size(15px, 15px); } autoDownloadLimitPadding: margins(22px, 8px, 22px, 8px); confirmCaptionArea: InputField(defaultInputField) { textMargins: margins(1px, 26px, 31px, 4px); heightMax: 158px; } confirmEditCaptionAreaHeightMax: 78px; confirmBg: windowBgOver; confirmMaxHeight: 245px; confirmMaxHeightSkip: 25px; confirmCompressedSkip: 10px; supportInfoField: InputField(defaultInputField) { heightMax: 256px; } connectionHostInputField: InputField(defaultInputField) { width: 160px; } connectionPortInputField: InputField(defaultInputField) { width: 55px; } connectionUserInputField: InputField(defaultInputField) { width: 95px; } connectionPasswordInputField: InputField(defaultInputField) { width: 120px; } connectionIPv6Skip: 11px; autolockWidth: 256px; autolockButton: Checkbox(defaultBoxCheckbox) { width: 200px; } langsRadio: Radio(defaultRadio) { bg: boxBg; } backgroundPadding: 10px; backgroundSize: size(108px, 193px); backgroundScroll: ScrollArea(boxScroll) { deltax: 3px; width: 10px; deltat: 10px; deltab: 10px; } sendMediaPreviewSize: 308px; sendMediaPreviewHeightMax: 1280; sendMediaRowSkip: 10px; editMediaButtonSize: 32px; editMediaButtonSkip: 5px; editMediaButtonFileSkipRight: 1px; editMediaButtonFileSkipTop: 7px; editMediaButtonIconFile: icon {{ "send_media/send_media_replace", menuIconFg }}; editMediaButton: IconButton(defaultIconButton) { width: editMediaButtonSize; height: editMediaButtonSize; icon: editMediaButtonIconFile; rippleAreaSize: editMediaButtonSize; ripple: defaultRippleAnimation; } editMediaHintLabel: FlatLabel(defaultFlatLabel) { textFg: windowSubTextFg; minWidth: sendMediaPreviewSize; } // SendFilesBox sendBoxAlbumGroupEditInternalSkip: 8px; sendBoxAlbumGroupSkipRight: 5px; sendBoxAlbumGroupSkipTop: 5px; sendBoxAlbumGroupRadius: 4px; sendBoxAlbumGroupSize: size(62px, 25px); sendBoxAlbumSmallGroupSize: size(30px, 25px); sendBoxFileGroupSkipTop: 2px; sendBoxFileGroupSkipRight: 5px; sendBoxFileGroupEditInternalSkip: -1px; sendBoxAlbumGroupButtonFile: IconButton(editMediaButton) { ripple: RippleAnimation(defaultRippleAnimation) { color: windowBgRipple; } } sendBoxAlbumGroupEditButtonIconFile: editMediaButtonIconFile; sendBoxAlbumGroupDeleteButtonIconFile: icon {{ "send_media/send_media_delete", menuIconFg }}; sendBoxAlbumButtonMediaEdit: icon {{ "send_media/send_media_replace", roundedFg }}; sendBoxAlbumGroupButtonMediaEdit: icon {{ "send_media/send_media_replace", roundedFg, point(4px, 1px) }}; sendBoxAlbumGroupButtonMediaDelete: icon {{ "send_media/send_media_delete", roundedFg }}; // End of SendFilesBox calendarTitleHeight: boxTitleHeight; calendarPrevious: IconButton { width: calendarTitleHeight; height: calendarTitleHeight; icon: icon {{ "calendar_down-flip_vertical", boxTitleFg }}; iconPosition: point(-1px, -1px); rippleAreaPosition: point(2px, 2px); rippleAreaSize: 44px; ripple: RippleAnimation(defaultRippleAnimation) { color: windowBgOver; } } calendarPreviousDisabled: icon {{ "calendar_down-flip_vertical", menuIconFg }}; calendarNext: IconButton(calendarPrevious) { icon: icon {{ "calendar_down", boxTitleFg }}; } CalendarSizes { width: pixels; daysHeight: pixels; cellSize: size; cellInner: pixels; padding: margins; } calendarNextDisabled: icon {{ "calendar_down", menuIconFg }}; calendarTitleFont: boxTitleFont; defaultCalendarSizes: CalendarSizes { width: boxWideWidth; daysHeight: 40px; cellSize: size(48px, 40px); cellInner: 34px; padding: margins(14px, 0px, 14px, 0px); } calendarDaysFont: normalFont; calendarDaysFg: boxTitleAdditionalFg; calendarScroll: ScrollArea(defaultSolidScroll) { deltat: 3px; deltab: 3px; round: 1px; width: 8px; deltax: 3px; hiding: 1000; } CalendarColors { dayTextColor: color; dayTextGrayedOutColor: color; iconButtonNext: IconButton; iconButtonNextDisabled: icon; iconButtonPrevious: IconButton; iconButtonPreviousDisabled: icon; iconButtonRippleColorDisabled: color; rippleColor: color; rippleColorHighlighted: color; rippleGrayedOutColor: color; titleTextColor: color; } defaultCalendarColors: CalendarColors { dayTextColor: boxTextFg; dayTextGrayedOutColor: windowSubTextFg; iconButtonNext: calendarNext; iconButtonNextDisabled: calendarNextDisabled; iconButtonPrevious: calendarPrevious; iconButtonPreviousDisabled: calendarPreviousDisabled; iconButtonRippleColorDisabled: boxBg; rippleColor: windowBgOver; rippleColorHighlighted: dialogsRippleBgActive; rippleGrayedOutColor: windowBgRipple; titleTextColor: boxTitleFg; } passcodeTextStyle: TextStyle(defaultTextStyle) { lineHeight: 20px; } defaultBoxLabel: FlatLabel(defaultFlatLabel) { minWidth: 272px; } usernamePadding: margins(24px, 2px, 24px, 10px); usernameSkip: 44px; usernameTextStyle: defaultTextStyle; usernameDefaultFg: windowSubTextFg; editMediaLabelMargins: margins(0px, 11px, 0px, 0px); editMediaCheckboxMargins: margins(0px, 15px, 23px, 15px); downloadPathSkip: 10px; colorEditWidth: 390px; colorEditSkip: 10px; colorPickerSize: 256px; colorPickerMarkRadius: 6px; colorPickerMarkLine: 1px; colorSliderSkip: 8px; colorSliderArrowLeft: icon {{ "color_slider_arrow", sliderBgActive }}; colorSliderArrowRight: icon {{ "color_slider_arrow-flip_horizontal", sliderBgActive }}; colorSliderArrowTop: icon {{ "color_slider_arrow_vertical", sliderBgActive }}; colorSliderArrowBottom: icon {{ "color_slider_arrow_vertical-flip_vertical", sliderBgActive }}; colorSliderWidth: 19px; colorSampleSize: size(60px, 34px); colorFieldSkip: 13px; colorValueInput: InputField(defaultInputField) { textMargins: margins(16px, 3px, 0px, 2px); heightMin: 27px; } colorResultInput: InputField(colorValueInput) { } changePhoneButton: RoundButton(defaultActiveButton) { width: 256px; height: 42px; textTop: 11px; font: boxButtonFont; } changePhoneButtonPadding: margins(0px, 32px, 0px, 44px); changePhoneTitle: FlatLabel(boxTitle) { } changePhoneTitlePadding: margins(0px, 8px, 0px, 8px); changePhoneDescription: FlatLabel(defaultFlatLabel) { minWidth: 332px; align: align(top); textFg: windowSubTextFg; } changePhoneDescriptionPadding: margins(0px, 1px, 0px, 8px); changePhoneIconPadding: margins(0px, 39px, 0px, 5px); changePhoneIconSize: 120px; changePhoneLabel: FlatLabel(defaultFlatLabel) { minWidth: 275px; textFg: windowSubTextFg; } changePhoneError: FlatLabel(changePhoneLabel) { textFg: boxTextFgError; } blockedUsersListSubtitleAddPadding: margins(0px, 1px, 0px, -14px); blockedUsersListIconPadding: margins(0px, 34px, 0px, 5px); adminLogFilterUserpicLeft: 15px; adminLogFilterLittleSkip: 16px; adminLogFilterCheckbox: Checkbox(defaultBoxCheckbox) { style: TextStyle(boxTextStyle) { font: font(boxFontSize semibold); linkFont: font(boxFontSize semibold); linkFontOver: font(boxFontSize semibold underline); } } adminLogFilterSkip: 32px; adminLogFilterUserCheckbox: Checkbox(defaultBoxCheckbox) { margin: margins(8px, 6px, 8px, 6px); checkPosition: point(8px, 6px); } rightsCheckbox: Checkbox(defaultCheckbox) { textPosition: point(10px, 1px); rippleBg: attentionButtonBgOver; } rightsToggle: Toggle(defaultToggle) { toggledFg: windowBgActive; untoggledFg: attentionButtonFg; lockIcon: icon {{ "info/info_rights_lock", windowBgActive }}; xsize: 8px; vsize: 5px; vshift: 1px; stroke: 2px; duration: 120; } rightsDividerHeight: boxDividerHeight; rightsDividerMargin: margins(0px, 0px, 0px, 20px); rightsHeaderMargin: margins(22px, 0px, 22px, 8px); rightsToggleMargin: margins(22px, 8px, 22px, 8px); rightsAboutMargin: margins(22px, 8px, 22px, 8px); rightsPhotoButton: UserpicButton(defaultUserpicButton) { size: size(60px, 60px); photoSize: 60px; } rightsPhotoMargin: margins(20px, 0px, 15px, 18px); rightsNameStyle: TextStyle(semiboldTextStyle) { font: font(15px semibold); linkFont: font(15px semibold); linkFontOver: font(15px semibold underline); } rightsNameTop: 8px; rightsStatusTop: 32px; rightsHeaderLabel: FlatLabel(boxLabel) { style: TextStyle(semiboldTextStyle) { font: font(boxFontSize semibold); linkFont: font(boxFontSize semibold); linkFontOver: font(boxFontSize semibold underline); } textFg: windowActiveTextFg; } rightsUntilMargin: margins(0px, 8px, 0px, 20px); rightsRankMargin: margins(0px, 16px, 0px, 20px); mutePhotoButton: UserpicButton(defaultUserpicButton) { size: size(40px, 40px); photoSize: 40px; } muteChatTitle: FlatLabel(boxLabel) { minWidth: 235px; maxHeight: 20px; // block word wrap style: TextStyle(boxTextStyle) { font: font(boxFontSize semibold); } } muteChatTitleLeft: 50px; groupStickersRemove: defaultMultiSelectSearchCancel; groupStickersRemovePosition: point(6px, 6px); groupStickersFieldPadding: margins(8px, 6px, 8px, 6px); groupStickersField: InputField(defaultMultiSelectSearchField) { placeholderFont: boxTextFont; font: boxTextFont; placeholderMargins: margins(0px, 0px, 0px, 0px); textMargins: margins(0px, 7px, 0px, 0px); textBg: boxBg; heightMin: 32px; } groupStickersSubTitleHeight: 36px; proxyUsePadding: margins(22px, 6px, 22px, 5px); proxyTryIPv6Padding: margins(22px, 8px, 22px, 5px); proxyRowPadding: margins(22px, 8px, 8px, 8px); proxyRowIconSkip: 32px; proxyRowSkip: 2px; proxyRowRipple: RippleAnimation(defaultRippleAnimation) { color: windowBgOver; } proxyRowSelectedIcon: icon {{ "passport_ready", windowActiveTextFg }}; proxyRowTitleFg: windowFg; proxyRowTitlePalette: TextPalette(defaultTextPalette) { linkFg: windowSubTextFg; } proxyRowTitleStyle: TextStyle(defaultTextStyle) { font: semiboldFont; linkFont: normalFont; linkFontOver: normalFont; } proxyRowStatusFg: windowSubTextFg; proxyRowStatusFgOnline: windowActiveTextFg; proxyRowStatusFgOffline: boxTextFgError; proxyRowStatusFgAvailable: boxTextFgGood; proxyRowEdit: IconButton(defaultIconButton) { width: 40px; height: 40px; icon: icon {{ "settings/settings_edit_name", menuIconFg }}; iconOver: icon {{ "settings/settings_edit_name", menuIconFgOver }}; iconPosition: point(12px, 13px); rippleAreaSize: 40px; rippleAreaPosition: point(0px, 0px); ripple: RippleAnimation(defaultRippleAnimation) { color: windowBgOver; } } proxyEditTitle: FlatLabel(defaultFlatLabel) { style: TextStyle(defaultTextStyle) { font: autoDownloadTitleFont; } textFg: boxTitleFg; } proxyEditTitlePadding: margins(22px, 16px, 22px, 0px); proxyEditTypePadding: margins(22px, 4px, 22px, 8px); proxyEditInputPadding: margins(22px, 0px, 22px, 0px); proxyEditSkip: 16px; proxyEmptyListLabel: FlatLabel(defaultFlatLabel) { align: align(top); textFg: windowSubTextFg; } proxyEmptyListPadding: margins(22px, 48px, 22px, 0px); proxyCheckingPosition: point(2px, 5px); proxyCheckingSkip: 6px; proxyCheckingAnimation: InfiniteRadialAnimation(defaultInfiniteRadialAnimation) { color: windowSubTextFg; thickness: 1px; size: size(8px, 8px); } proxyDropdownDownPosition: point(-2px, 35px); proxyDropdownUpPosition: point(-2px, 20px); proxyAboutPadding: margins(22px, 7px, 22px, 14px); proxyAboutSponsorPadding: margins(22px, 7px, 22px, 0px); markdownLinkFieldPadding: margins(22px, 0px, 22px, 10px); termsContent: FlatLabel(defaultFlatLabel) { minWidth: 285px; } termsPadding: margins(22px, 4px, 16px, 16px); termsAgePadding: margins(22px, 16px, 16px, 0px); themesSmallSkip: 10px; themesBackgroundSize: 120px; themesMenuToggle: IconButton(defaultIconButton) { width: 44px; height: 44px; icon: menuToggleIcon; iconOver: menuToggleIconOver; iconPosition: point(-1px, -1px); rippleAreaPosition: point(4px, 4px); rippleAreaSize: 36px; ripple: RippleAnimation(defaultRippleAnimation) { color: windowBgOver; } } themesMenuPosition: point(-2px, 25px); createPollField: InputField(defaultInputField) { font: boxTextFont; textMargins: margins(0px, 4px, 0px, 4px); textAlign: align(left); heightMin: 36px; heightMax: 86px; placeholderFg: placeholderFg; placeholderFgActive: placeholderFgActive; placeholderFgError: placeholderFgActive; placeholderMargins: margins(2px, 0px, 2px, 0px); placeholderAlign: align(topleft); placeholderScale: 0.; placeholderFont: boxTextFont; placeholderShift: -50px; border: 0px; borderActive: 0px; duration: 100; } createPollFieldPadding: margins(22px, 5px, 22px, 5px); createPollOptionField: InputField(createPollField) { textMargins: margins(22px, 11px, 40px, 11px); placeholderMargins: margins(2px, 0px, 2px, 0px); heightMax: 68px; } createPollSolutionField: InputField(createPollField) { textMargins: margins(0px, 4px, 0px, 4px); border: 1px; borderActive: 2px; } createPollLimitLabel: FlatLabel(defaultFlatLabel) { minWidth: 274px; align: align(topleft); } createPollLimitPadding: margins(22px, 10px, 22px, 16px); createPollOptionRemove: CrossButton { width: 22px; height: 22px; cross: CrossAnimation { size: 22px; skip: 6px; stroke: 1.; minScale: 0.3; } crossFg: boxTitleCloseFg; crossFgOver: boxTitleCloseFgOver; crossPosition: point(0px, 0px); duration: 150; loadingPeriod: 1000; ripple: RippleAnimation(defaultRippleAnimation) { color: windowBgOver; } } createPollOptionRemovePosition: point(11px, 9px); createPollWarning: FlatLabel(defaultFlatLabel) { textFg: windowSubTextFg; palette: TextPalette(defaultTextPalette) { linkFg: boxTextFgError; } } createPollWarningPosition: point(16px, 6px); createPollCheckboxMargin: margins(22px, 10px, 22px, 10px); createPollFieldTitlePadding: margins(22px, 7px, 10px, 6px); callSettingsButton: IconButton { width: 50px; height: boxTitleHeight; icon: icon {{ "menu_settings", boxTitleCloseFg }}; iconOver: icon {{ "menu_settings", boxTitleCloseFgOver }}; iconPosition: point(8px, -1px); rippleAreaSize: 44px; rippleAreaPosition: point(0px, 6px); ripple: RippleAnimation(defaultRippleAnimation) { color: windowBgOver; } } backgroundCheckbox: Checkbox(defaultCheckbox) { textFg: msgServiceFg; textFgActive: msgServiceFg; width: -50px; margin: margins(0px, 0px, 0px, 0px); textPosition: point(0px, 6px); checkPosition: point(0px, 0px); style: semiboldTextStyle; } backgroundCheck: ServiceCheck { margin: margins(10px, 6px, 8px, 6px); diameter: 18px; shift: 2px; thickness: 2px; tip: point(7px, 13px); small: 3px; large: 6px; stroke: 2px; color: msgServiceFg; duration: 200; } urlAuthCheckbox: Checkbox(defaultBoxCheckbox) { width: 240px; } linkedChatAbout: membersAbout; linkedChatAboutPadding: margins(20px, 20px, 20px, 20px); addContactFieldMargin: margins(19px, 0px, 19px, 10px); addContactWarningMargin: margins(19px, 10px, 19px, 5px); blockUserConfirmation: FlatLabel(boxLabel) { minWidth: 240px; } transferCheckWidth: 320px; slowmodeLabelsMargin: margins(0px, 5px, 0px, 0px); slowmodeLabel: LabelSimple(defaultLabelSimple) { textFg: windowSubTextFg; } customBadgeField: InputField(defaultInputField) { textMargins: margins(2px, 7px, 2px, 0px); placeholderFg: placeholderFg; placeholderFgActive: placeholderFgActive; placeholderFgError: placeholderFgActive; placeholderMargins: margins(0px, 0px, 0px, 0px); placeholderScale: 0.; placeholderFont: normalFont; heightMin: 32px; } pollResultsQuestion: FlatLabel(defaultFlatLabel) { minWidth: 320px; textFg: windowBoldFg; style: TextStyle(defaultTextStyle) { font: font(16px semibold); linkFont: font(16px semibold); linkFontOver: font(16px semibold underline); } } pollResultsVotesCount: FlatLabel(defaultFlatLabel) { textFg: windowSubTextFg; } pollResultsHeaderPadding: margins(22px, 22px, 22px, 8px); pollResultsShowMore: SettingsButton(defaultSettingsButton) { textFg: lightButtonFg; textFgOver: lightButtonFgOver; textBg: windowBg; textBgOver: windowBgOver; style: semiboldTextStyle; height: 20px; padding: margins(71px, 10px, 8px, 8px); ripple: defaultRippleAnimation; } inviteViaLinkButton: SettingsButton(defaultSettingsButton) { textFg: lightButtonFg; textFgOver: lightButtonFgOver; textBg: windowBg; textBgOver: windowBgOver; style: TextStyle(defaultTextStyle) { font: font(14px semibold); linkFont: font(14px semibold); linkFontOver: font(14px semibold underline); } height: 20px; padding: margins(74px, 8px, 8px, 9px); ripple: defaultRippleAnimation; } inviteViaLinkIcon: icon {{ "info/edit/group_manage_links", lightButtonFg }}; inviteViaLinkIconPosition: point(23px, 2px); peerListWithInviteViaLink: PeerList(peerListBox) { padding: margins( 0px, 0px, 0px, membersMarginBottom); } peerListSingleRow: PeerList(peerListBox) { padding: margins(0px, 0px, 0px, 0px); } scheduleHeight: 95px; scheduleDateTop: 38px; scheduleDateField: InputField(defaultInputField) { textMargins: margins(2px, 0px, 2px, 0px); placeholderScale: 0.; heightMin: 30px; textAlign: align(top); font: font(14px); } scheduleTimeField: InputField(scheduleDateField) { border: 0px; borderActive: 0px; heightMin: 28px; placeholderFont: font(14px); placeholderFgActive: placeholderFgActive; } scheduleDateWidth: 136px; scheduleTimeWidth: 72px; scheduleAtSkip: 24px; scheduleAtTop: 42px; scheduleAtLabel: FlatLabel(defaultFlatLabel) { } scheduleTimeSeparator: FlatLabel(defaultFlatLabel) { style: TextStyle(defaultTextStyle) { font: font(14px); } } scheduleTimeSeparatorPadding: margins(2px, 0px, 2px, 0px); muteBoxTimeField: InputField(scheduleDateField) { textMargins: margins(0px, 0px, 0px, 0px); placeholderMargins: margins(0px, 0px, 0px, 0px); placeholderScale: 0.; heightMin: 30px; textAlign: align(left); font: font(14px); } muteBoxTimeFieldPadding: margins(5px, 0px, 5px, 0px); boxAttentionDividerLabel: FlatLabel(boxDividerLabel) { textFg: boxTextFgError; } autolockDateField: InputField(scheduleDateField) { heightMin: 22px; } autolockTimeField: InputField(scheduleTimeField) { heightMin: 20px; } autolockTimeWidth: 52px; sponsoredUrlButtonSkip: 11px; sponsoredUrlButton: RoundButton(defaultActiveButton) { height: 32px; width: -42px; textBg: transparent; textBgOver: transparent; radius: roundRadiusLarge; padding: margins(2px, 2px, 2px, 2px); textFg: historyLinkInFg; textFgOver: historyLinkInFg; textTop: 7px; font: normalFont; ripple: RippleAnimation(defaultRippleAnimation) { color: windowBgOver; } } requestsBoxItem: PeerListItem(peerListBoxItem) { height: 99px; button: OutlineButton(defaultPeerListButton) { textBg: contactsBg; textBgOver: contactsBg; ripple: RippleAnimation(defaultRippleAnimation) { color: contactsBgOver; } } } requestsBoxList: PeerList(peerListBox) { padding: margins(0px, 12px, 0px, 12px); item: requestsBoxItem; } requestsAcceptButton: RoundButton(defaultActiveButton) { width: -28px; height: 30px; textTop: 6px; } requestsRejectButton: RoundButton(defaultLightButton) { width: -28px; height: 30px; textTop: 6px; } requestAcceptPosition: point(71px, 58px); requestButtonsSkip: 9px; ringtonesBoxButton: SettingsButton(defaultSettingsButton) { textFg: lightButtonFg; textFgOver: lightButtonFgOver; padding: margins(56px, 10px, 22px, 8px); iconLeft: 25px; } ringtonesBoxSkip: 7px; gradientButtonGlareDuration: 700; gradientButtonGlareTimeout: 2000; gradientButtonGlareWidth: 100px;