/* 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_types.style"; semibold: "Open Sans Semibold"; fsize: 13px; normalFont: font(fsize); semiboldFont: font(fsize semibold); emojiImgSize: 18px; // exceptional value for retina emojiSize: 18px; emojiPadding: 0px; counterBG: #f23c34; counterMuteBG: #888888; counterColor: #ffffff; counterMacInvColor: #ffffff01; lineWidth: 1px; transparent: #ffffff00; white: #ffffff; black: #000000; wndMinWidth: 380px; adaptiveNormalWidth: 640px; adaptiveWideWidth: 1366px; windowBg: #ffffff; // fallback for background: white windowActiveBg: #40ace3; // fallback for blue filled active areas windowTextFg: #000000; // fallback for text color: black windowSubTextFg: #8a8a8a; // fallback for subtext color: gray windowSubTextFgOver: #7c99b2; // fallback for subtext over color: gray over blue bg windowActiveTextFg: #1485c2; // fallback for active color: blue online windowShadowFg: #000000; // fallback for shadow color semiboldButtonBlueText: #2b99d5; wndMinHeight: 480px; wndDefWidth: 800px; wndDefHeight: 600px; wndShadow: icon {{ "window_shadow", windowShadowFg }}; wndShadowShift: 1px; layerAlpha: 0.5; layerBg: black; overBg: #edf2f5; labelDefFlat: flatLabel { font: font(fsize); width: 0px; maxHeight: 0px; align: align(left); textFg: windowTextFg; } boxBg: white; boxVerticalMargin: 10px; boxWidth: 320px; boxWideWidth: 364px; boxPadding: margins(26px, 30px, 34px, 8px); boxMaxListHeight: 600px; boxFontSize: 14px; boxTextFont: font(boxFontSize); boxLittleSkip: 10px; boxMediumSkip: 20px; boxTitleFg: #444444; boxTitleFont: font(boxFontSize bold); boxTitlePosition: point(26px, 28px); boxTitleHeight: 54px; boxButtonFont: font(boxFontSize semibold); defaultBoxButton: RoundButton { textFg: #2f9fea; textFgOver: #2f9fea; secondaryTextFg: #2f9fea; secondaryTextFgOver: #2f9fea; textBg: white; textBgOver: #edf7ff; width: -24px; height: 36px; padding: margins(0px, 0px, 0px, 0px); textTop: 8px; downTextTop: 9px; font: boxButtonFont; duration: 200; } cancelBoxButton: RoundButton(defaultBoxButton) { textFg: #aeaeae; } attentionBoxButton: RoundButton(defaultBoxButton) { textFg: #ea4b2f; textFgOver: #ea4b2f; textBgOver: #fff0ed; } boxButtonPadding: margins(12px, 16px, 22px, 16px); defaultBoxLinkButton: linkButton { color: #0080c0; overColor: #0080c0; downColor: #0073ad; font: boxTextFont; overFont: font(boxFontSize underline); } redBoxLinkButton: linkButton(defaultBoxLinkButton) { color: #d15948; overColor: #d15948; downColor: #db6352; } boxLabel: flatLabel(labelDefFlat) { font: font(boxFontSize); align: align(topleft); } defaultLeftOutlineButton: OutlineButton { outlineWidth: 3px; outlineFg: windowBg; outlineFgOver: windowActiveBg; textBg: windowBg; textBgOver: #f2f7fa; textFg: windowActiveTextFg; textFgOver: windowActiveTextFg; font: normalFont; padding: margins(11px, 5px, 11px, 5px); } attentionLeftOutlineButton: OutlineButton(defaultLeftOutlineButton) { outlineFgOver: #e43f3f; textBgOver: #faf2f2; textFg: #d15948; textFgOver: #d15948; } defaultInputArea: InputArea { textFg: black; textMargins: margins(5px, 6px, 5px, 4px); placeholderFg: #999999; placeholderFgActive: #aaaaaa; placeholderMargins: margins(2px, 0px, 2px, 0px); placeholderAlign: align(topleft); placeholderShift: 50px; duration: 120; borderFg: #e0e0e0; borderFgActive: #62c0f7; borderFgError: #e48383; border: 1px; borderActive: 2px; borderError: 2px; font: boxTextFont; heightMin: 32px; heightMax: 128px; } defaultInputField: InputField { textBg: white; textFg: black; textMargins: margins(0px, 6px, 0px, 4px); textAlign: align(topleft); placeholderFg: #999999; placeholderFgActive: #aaaaaa; placeholderMargins: margins(2px, 0px, 2px, 0px); placeholderAlign: align(topleft); placeholderShift: 50px; duration: 120; borderFg: #e0e0e0; borderFgActive: #62c0f7; borderFgError: #e48383; border: 1px; borderActive: 2px; borderError: 2px; font: boxTextFont; height: 32px; } defaultCheckbox: Checkbox { textFg: black; textBg: white; checkFg: #b3b3b3; checkFgOver: #b3b3b3; checkFgActive: #40ace3; width: -44px; height: 22px; textPosition: point(32px, 2px); diameter: 22px; thickness: 2px; checkIcon: icon {{ "default_checkbox_check", #ffffff, point(4px, 7px) }}; font: normalFont; duration: 120; } defaultBoxCheckbox: Checkbox(defaultCheckbox) { width: -46px; textPosition: point(34px, 1px); font: boxTextFont; } defaultRadiobutton: Radiobutton { textFg: black; textBg: white; checkFg: #b3b3b3; checkFgOver: #bfbfbf; checkFgActive: #4eb3ee; width: -46px; height: 22px; textPosition: point(34px, 0px); diameter: 22px; thickness: 2px; checkSkip: 65px; // * 0.1 font: boxTextFont; duration: 120; } solidScroll: flatScroll { barColor: #3f729734; bgColor: #214f751a; barOverColor: #3f729734; bgOverColor: #214f751a; minHeight: 20px; round: 2px; deltax: 5px; width: 14px; deltat: 6px; deltab: 6px; topsh: 0px; bottomsh: 0px; shColor: #00000012; duration: 150; hiding: 0; } defaultDropdownDuration: 150; defaultDropdownPadding: margins(10px, 10px, 10px, 10px); defaultDropdownShadow: icon {{ "dropdown_shadow", windowShadowFg }}; defaultDropdownShadowShift: 1px; defaultTooltip: Tooltip { textBg: #eef2f5; textFg: #5d6c80; textFont: normalFont; textBorder: #c9d1db; textPadding: margins(5px, 2px, 5px, 2px); shift: point(-20px, 20px); skip: 10px; widthMax: 800px; linesMax: 12; } almostTransparent: #ffffff0d; boxScroll: flatScroll(solidScroll) { round: 3px; width: 18px; deltax: 6px; } boxScrollSkip: 6px; boxScrollShadowBg: #00000012; titleBg: #6389a8; titleHeight: 39px; titleFont: font(17px); titlePos: point(44px, 29px); titleMenuOffset: 36px; titleRed: #ee4928; titleGray: #777777; titleGreen: #41a903; titleStatusFg: #999999; titleStatusActiveFg: #0080c0; titleTypingFg: #0080c0; statusFont: font(fsize); versionColor: #777777; shadowColor: #00000018; shadowToggleDuration: 200; slideDuration: 240; slideShift: 100px; slideFadeOut: 0.3; slideShadow: icon {{ "slide_shadow", #000000 }}; slideFunction: transition(easeOutCirc); titleButtonFg: #c4d8e9; titleButtonActiveFg: #ffffff; titleButtonDuration: 150; sysBtnDelta: 6px; sysUpd: sysButton { size: size(31px, 39px); icon: icon {{ "title_button_update", titleBg }}; color: titleButtonFg; overColor: titleButtonActiveFg; duration: titleButtonDuration; } updateBlinkDuration: 500; sysMin: sysButton(sysUpd) { icon: icon {{ "title_button_minimize", titleBg }}; } sysMax: sysButton(sysUpd) { icon: icon {{ "title_button_maximize", titleBg }}; } sysRes: sysButton(sysUpd) { icon: icon {{ "title_button_restore", titleBg }}; } sysCls: sysButton(sysUpd) { icon: icon {{ "title_button_close", titleBg }}; } sysLock: sysButton(sysUpd) { icon: icon {{ "title_button_lock", titleBg }}; } sysUnlock: sysButton(sysUpd) { icon: icon {{ "title_button_unlock", titleBg }}; } btnWhiteHover: #f5f5f5; btnBoxWhiteHover: #fafafa; btnYesColor: #0080c0; btnYesHover: #0073ad; btnNoColor: #8b8b8b; btnNoHover: #777777; titleTextButton: flatButton { color: #d4e3ef; overColor: #ffffff; downColor: #ffffff; bgColor: transparent; overBgColor: transparent; downBgColor: transparent; width: -14px; height: 39px; textTop: 10px; overTextTop: 10px; downTextTop: 11px; font: font(fsize); overFont: font(fsize); duration: 150; cursor: cursor(default); } btnDefFlat: flatButton { duration: 200; cursor: cursor(pointer); } btnDefBig: flatButton(btnDefFlat) { textTop: 11px; overTextTop: 11px; downTextTop: 12px; font: font(23px); overFont: font(23px); height: 56px; } btnNextBG: #2fa9e2; btnDefNext: flatButton(btnDefFlat) { color: white; overColor: white; downColor: white; bgColor: btnNextBG; overBgColor: #279ad0; downBgColor: #279ad0; } btnDefBack: flatButton(btnDefFlat) { color: white; overColor: white; downColor: white; bgColor: #c7c7c7; overBgColor: #b9b9b9; downBgColor: #b9b9b9; } linkCropLimit: 360px; linkFont: normalFont; linkOverFont: font(fsize underline); btnDefLink: linkButton { color: btnYesColor; overColor: btnYesColor; downColor: btnYesHover; font: linkFont; overFont: linkOverFont; } inpDefFont: font(17px); inpDefFlat: flatInput { textColor: #000000; bgColor: #ffffff; bgActive: #ffffff; width: 210px; height: 40px; align: align(left); textMrg: margins(5px, 5px, 5px, 5px); font: inpDefFont; cursor: cursor(text); borderWidth: 0px; borderColor: black; borderActive: black; borderError: black; phColor: #949494; phFocusColor: #aaaaaa; phAlign: align(left); phPos: point(2px, 0px); phShift: 50px; phDuration: 100; phLeftFunc: transition(linear); phAlphaFunc: transition(linear); phColorFunc: transition(linear); } inpDefGray: flatInput(inpDefFlat) { bgColor: #f2f2f2; borderWidth: 2px; borderColor: #f2f2f2; borderActive: #54c3f3; borderError: #ed8080; phColor: #808080; } taDefFlat: flatTextarea { textColor: #000000; bgColor: #ffffff; align: align(left); textMrg: margins(5px, 5px, 5px, 5px); font: inpDefFont; cursor: cursor(text); phColor: #999999; phFocusColor: #aaaaaa; phAlign: align(topleft); phPos: point(2px, 0px); phShift: 50px; phDuration: 100; phLeftFunc: transition(linear); phAlphaFunc: transition(linear); phColorFunc: transition(linear); } scrollDef: flatScroll { barColor: #00000053; bgColor: #0000001a; barOverColor: #0000007a; bgOverColor: #0000002c; round: 2px; width: 10px; minHeight: 20px; deltax: 3px; deltat: 3px; deltab: 3px; topsh: 2px; bottomsh: 2px; shColor: #00000012; duration: 150; hiding: 1000; } dateRadius: 10px; buttonRadius: 3px; scrollCountries: flatScroll(scrollDef) { topsh: 0px; bottomsh: -2px; } lnkText: #0f7dc7; introBtnTop: 288px; introSkip: 45px; introFinishSkip: 15px; introPhotoSize: 98px; introHeaderFont: font(24px); introHeaderSkip: 14px; introIconSkip: 54px; introFont: font(16px); introLink: linkButton(btnDefLink) { font: introFont; overFont: font(16px underline); } introColor: black; introLabel: flatLabel(labelDefFlat) { font: introFont; align: align(center); } introPointsTop: -30px; // intro steps bottom points introPointWidth: 4px; introPointHeight: 4px; introPointHoverWidth: 10px; introPointHoverHeight: 10px; introPointLeft: 3px; introPointTop: 3px; introPointDelta: 10px; introPointColor: #000000; introPointAlpha: 0.5; introPointHoverColor: #86b4e3; introPointStepT: transition(sineInOut); introPointAlphaT: transition(linear); introPointShowStepT: transition(easeOutCirc); introPointHideStepT: transition(easeInCirc); introPointShowAlphaT: transition(easeInCirc); introPointHideAlphaT: transition(easeOutCirc); introStepSize: size(400px, 200px); introSize: size(400px, 400px); introSlideShift: 500px; // intro hiding animation introSlideDuration: 200; introSlideDelta: 0; // between hide start and show start introHideFunc: transition(easeInCirc); introShowFunc: transition(easeOutCirc); introAlphaHideFunc: transition(easeOutCirc); introAlphaShowFunc: transition(easeInCirc); introTextTop: 22px; introTextSize: size(400px, 93px); introCallSkip: 15px; introPwdTextSize: size(400px, 73px); btnIntroSep: 12px; btnIntroNext: flatButton(btnDefNext, btnDefBig) { textTop: 16px; overTextTop: 16px; downTextTop: 17px; font: font(17px); overFont: font(17px); width: 300px; radius: buttonRadius; } boxShadow: icon {{ "box_shadow", windowShadowFg }}; boxShadowShift: 2px; introCountry: countryInput { width: 300px; height: 41px; top: 33px; bgColor: #f2f2f2; ptrSize: size(15px, 8px); textMrg: margins(16px, 5px, 16px, 15px); font: inpDefFont; align: align(left); } introPhoneTop: 8px; inpIntroCountryCode: flatInput(inpDefGray) { width: 70px; height: 41px; align: align(center); } inpIntroPhone: flatInput(inpDefGray) { textMrg: margins(12px, 5px, 12px, 6px); width: 225px; height: 41px; } inpIntroCode: flatInput(inpDefGray) { textMrg: margins(12px, 5px, 12px, 6px); width: 106px; height: 41px; align: align(center); phPos: point(0px, 0px); phAlign: align(center); phShift: 0px; } inpIntroName: flatInput(inpIntroPhone) { width: 192px; } inpIntroPassword: flatInput(inpIntroPhone) { width: 300px; } introSelectDelta: 30px; btnSelectSep: #e0e0e0; btnRedLink: linkButton(btnDefLink) { color: #d15948; overColor: #d15948; downColor: #db6352; } countryRowHeight: 36px; countryRowNameFont: semiboldFont; countryRowPadding: margins(22px, 9px, 8px, 0px); countryRowCodeFont: font(fsize); countryRowBgOver: overBg; countryRowCodeFg: #808080; countryRowCodeFgOver: #7c99b2; countriesSkip: 12px; countriesScroll: flatScroll(boxScroll) { deltat: 9px; deltab: 3px; } introErrWidth: 450px; introErrDuration: 200; introErrFunc: transition(linear); introErrColor: black; introErrTop: 15px; introErrHeight: 40px; introErrFont: font(16px); setLittleSkip: 9px; setScroll: flatScroll(scrollDef) { bottomsh: 0px; topsh: 0px; } setPhotoDuration: 150; setErrColor: #d84d4d; setGoodColor: #4ab44a; noContactsHeight: 100px; noContactsFont: font(fsize); noContactsColor: #777777; fieldSearchIcon: icon {{ "box_search", #aaaaaa, point(10px, 9px) }}; dlgFilter: flatInput(inpDefGray) { font: font(fsize); bgColor: #f2f2f2; phColor: #949494; phFocusColor: #a4a4a4; icon: fieldSearchIcon; width: 240px; height: 34px; textMrg: margins(34px, 2px, 34px, 4px); } topBarHeight: 54px; topBarBG: white; topBarDuration: 200; topBarForward: icon {{ "title_next", #a3a3a3 }}; topBarBackward: icon {{ "title_previous", #a3a3a3 }}; topBarForwardAlpha: 0.6; topBarBack: icon {{ "title_previous", #259fd8 }}; topBarBackAlpha: 0.8; topBarBackColor: #005faf; topBarBackFont: font(16px); topBarArrowPadding: margins(39px, 8px, 17px, 8px); topBarMinPadding: 5px; topBarButton: RoundButton { textFg: #0084c4; textFgOver: #0084c4; secondaryTextFg: #0084c4; secondaryTextFgOver: #0084c4; textBg: windowBg; textBgOver: #edf4f7; width: -22px; height: 28px; padding: margins(0px, 14px, 12px, 12px); textTop: 6px; downTextTop: 7px; font: font(fsize); duration: 200; } defaultActiveButton: RoundButton { textFg: #ffffff; textFgOver: #ffffff; secondaryTextFg: #cceeff; secondaryTextFgOver: #cceeff; textBg: windowActiveBg; textBgOver: #46b4eb; secondarySkip: 7px; width: -34px; height: 34px; padding: margins(0px, 0px, 0px, 0px); textTop: 8px; downTextTop: 9px; font: semiboldFont; duration: 200; } topBarClearButton: RoundButton(defaultActiveButton) { textFg: semiboldButtonBlueText; textFgOver: semiboldButtonBlueText; textBg: #ffffff; textBgOver: #f2f7fa; width: -18px; } topBarActionSkip: 10px; activeFadeInDuration: 500; activeFadeOutDuration: 3000; msgMaxWidth: 430px; msgFont: font(fsize); msgNameFont: semiboldFont; msgServiceFont: semiboldFont; msgServiceNameFont: semiboldFont; msgServicePhotoWidth: 100px; msgDateFont: font(13px); msgMinWidth: 190px; msgPhotoSize: 33px; msgPhotoSkip: 40px; msgPadding: margins(13px, 7px, 13px, 8px); msgMargin: margins(13px, 10px, 53px, 2px); msgMarginTopAttached: 3px; msgLnkPadding: 2px; // for media open / save links msgBorder: #f0f0f0; msgInBg: #ffffff; msgInBgSelected: #c2dcf2; // #358cd4 with 30% opacity msgOutBg: #effdde; msgOutBgSelected: #b7dbdb; msgSelectOverlay: #358cd44c; msgStickerOverlay: #358cd47f; msgInServiceFg: #0e7acd; msgInServiceFgSelected: #0e7acd; msgOutServiceFg: #3a8e26; msgOutServiceFgSelected: #367570; msgShadow: 2px; msgInShadow: #748ea229; msgInShadowSelected: #548dbb29; msgOutShadow: #3ac34740; msgOutShadowSelected: #37a78e40; msgInDateFg: #a0acb6; msgInDateFgSelected: #6a9cc5; msgOutDateFg: #6cc264; msgOutDateFgSelected: #50a79c; msgReplyPadding: margins(6px, 6px, 11px, 6px); msgReplyBarPos: point(1px, 0px); msgReplyBarSize: size(2px, 36px); msgReplyBarSkip: 10px; msgInReplyBarColor: #2fa9e2; msgInReplyBarSelColor: #2fa9e2; msgBotKbDuration: 200; msgBotKbFont: semiboldFont; msgBotKbOverOpacity: 0.1; msgBotKbIconPadding: 2px; msgBotKbUrlIcon: icon {{ "inline_button_url", #ffffff }}; msgBotKbSwitchPmIcon: icon {{ "inline_button_switch", #ffffff }}; msgBotKbButton: botKeyboardButton { margin: 5px; padding: 10px; height: 36px; textTop: 8px; downTextTop: 9px; } msgServiceBg: #89a0b47f; msgServiceSelectBg: #bbc8d4a2; msgServiceColor: #ffffff; msgServicePadding: margins(12px, 3px, 12px, 4px); msgServiceMargin: margins(10px, 10px, 80px, 2px); msgColor: #000000; msgDateColor: #000000; msgLinkColor: #2a6dc2; msgPressedLinkColor: #004bad; msgSkip: 40px; msgPtr: 8px; msgBG: ":/gui/art/bg.jpg"; msgBG0: ":/gui/art/bg0.png"; msgDateSpace: 12px; msgDateDelta: point(2px, 5px); msgDateImgDelta: 4px; msgDateImgColor: #ffffff; msgDateImgBg: #00000054; msgDateImgBgOver: #00000074; msgDateImgBgSelected: #1c4a7187; msgDateImgPadding: point(8px, 2px); msgDateImgCheckSpace: 4px; collapseButton: flatButton(btnDefFlat) { font: msgServiceFont; overFont: msgServiceFont; width: -24px; bgColor: transparent; downBgColor: transparent; overBgColor: transparent; color: white; overColor: white; downColor: white; textTop: 3px; overTextTop: 3px; downTextTop: 3px; height: 25px; } collapseHideDuration: 200; collapseShowDuration: 200; defaultTextStyle: textStyle { linkFlags: font(fsize); linkFlagsOver: font(fsize underline); linkFg: btnYesColor; linkFgDown: btnYesHover; monoFg: #777777; selectBg: msgInBgSelected; selectOverlay: msgSelectOverlay; lineHeight: 0px; } boxTextStyle: textStyle(defaultTextStyle) { lineHeight: 22px; } serviceTextStyle: textStyle(defaultTextStyle) { linkFlags: msgServiceFont; linkFlagsOver: font(fsize semibold underline); linkFg: msgServiceColor; linkFgDown: msgServiceColor; monoFg: msgServiceColor; selectBg: msgServiceSelectBg; selectOverlay: msgServiceSelectBg; } inTextStyle: textStyle(defaultTextStyle) { monoFg: #4e7391; selectBg: msgInBgSelected; selectOverlay: msgSelectOverlay; } outTextStyle: textStyle(defaultTextStyle) { monoFg: #469165; selectBg: msgOutBgSelected; selectOverlay: msgSelectOverlay; } inFwdTextStyle: textStyle(defaultTextStyle) { linkFlags: semiboldFont; linkFlagsOver: semiboldFont; linkFg: msgInServiceFg; linkFgDown: msgInServiceFg; } outFwdTextStyle: textStyle(inFwdTextStyle) { linkFg: msgOutServiceFg; linkFgDown: msgOutServiceFg; } inFwdTextStyleSelected: textStyle(inFwdTextStyle) { linkFg: msgInServiceFgSelected; linkFgDown: msgInServiceFgSelected; } outFwdTextStyleSelected: textStyle(inFwdTextStyle) { linkFg: msgOutServiceFgSelected; linkFgDown: msgOutServiceFgSelected; } medviewSaveAsTextStyle: textStyle(defaultTextStyle) { linkFg: #91d9ff; linkFgDown: #91d9ff; } introLabelTextStyle: textStyle(defaultTextStyle) { lineHeight: 30px; } introErrLabelTextStyle: textStyle(defaultTextStyle) { lineHeight: 27px; } mediaPadding: margins(0px, 0px, 0px, 0px);//1px, 1px, 1px, 1px);//2px, 2px, 2px, 2px); mediaCaptionSkip: 5px; mediaInBubbleSkip: 5px; mediaThumbSize: 48px; mediaNameTop: 3px; mediaDetailsShift: 3px; mediaInFg: msgInDateFg; mediaInFgSelected: msgInDateFgSelected; mediaOutFg: msgOutDateFg; mediaOutFgSelected: msgOutDateFgSelected; mediaInUnreadFg: #999999; mediaInUnreadFgSelected: #7b95aa; mediaOutUnreadFg: #6aad60; mediaOutUnreadFgSelected: #5aa382; mediaUnreadSize: 7px; mediaUnreadSkip: 5px; mediaUnreadTop: 6px; mediaInStyle: textStyle(defaultTextStyle) { linkFg: mediaInFg; linkFgDown: mediaInFg; } mediaInStyleSelected: textStyle(defaultTextStyle) { linkFg: mediaInFgSelected; linkFgDown: mediaInFgSelected; } msgFileRedColor: #e47272; msgFileYellowColor: #efc274; msgFileGreenColor: #61b96e; msgFileBlueColor: #72b1df; msgFileRedDark: #cd5b5e; msgFileYellowDark: #e6a561; msgFileGreenDark: #4da859; msgFileBlueDark: #5c9ece; msgFileRedOver: #c35154; msgFileYellowOver: #dc9c5a; msgFileGreenOver: #44a050; msgFileBlueOver: #5294c4; msgFileRedSelected: #9f6a82; msgFileYellowSelected: #b19d84; msgFileGreenSelected: #46a07e; msgFileBlueSelected: #5099d0; msgFileMenuSize: size(36px, 36px); msgFileSize: 44px; msgFilePadding: margins(14px, 12px, 11px, 12px); msgFileThumbSize: 72px; msgFileThumbPadding: margins(10px, 10px, 14px, 10px); msgFileThumbNameTop: 12px; msgFileThumbStatusTop: 32px; msgFileThumbLinkTop: 60px; msgFileThumbLinkInFg: semiboldButtonBlueText; msgFileThumbLinkInFgSelected: semiboldButtonBlueText; msgFileThumbLinkOutFg: #5eba5b; msgFileThumbLinkOutFgSelected: #31a298; msgFileNameTop: 16px; msgFileStatusTop: 37px; msgFileMinWidth: 294px; msgFileInBg: windowActiveBg; msgFileInBgOver: #4eade3; msgFileInBgSelected: #51a3d3; msgFileOutBg: #78c67f; msgFileOutBgOver: #6bc272; msgFileOutBgSelected: #5fb389; msgFileOverDuration: 200; msgFileRadialLine: 3px; msgVideoSize: size(320px, 240px); msgWaveformBar: 2px; msgWaveformSkip: 1px; msgWaveformMin: 2px; msgWaveformMax: 20px; msgWaveformInActive: windowActiveBg; msgWaveformInActiveSelected: #51a3d3; msgWaveformInInactive: #d4dee6; msgWaveformInInactiveSelected: #9cc1e1; msgWaveformOutActive: #78c67f; msgWaveformOutActiveSelected: #6badad; msgWaveformOutInactive: #b3e2b4; msgWaveformOutInactiveSelected: #91c3c3; sendPadding: 9px; btnSend: flatButton(btnDefFlat) { color: btnYesColor; overColor: btnYesHover; downColor: btnYesHover; bgColor: white; overBgColor: btnWhiteHover; downBgColor: btnWhiteHover; width: -32px; height: 46px; textTop: 12px; overTextTop: 12px; downTextTop: 13px; font: font(16px); overFont: font(16px); } btnUnblock: flatButton(btnSend) { color: #d15948; overColor: #d15948; downColor: #db6352; } historyScroll: flatScroll(scrollDef) { barColor: #89a0b47a; bgColor: #89a0b44c; barOverColor: #89a0b4bc; bgOverColor: #89a0b46b; round: 3px; width: 12px; deltax: 3px; deltat: 3px; deltab: 3px; topsh: 0px; bottomsh: -1px; } textRectMargins: margins(-2px, -1px, -2px, -1px); taMsgField: flatTextarea(taDefFlat) { font: msgFont; } maxFieldHeight: 224px; // historyMinHeight: 56px; reportSpamHide: flatButton(btnDefFlat) { color: btnYesColor; overColor: btnYesHover; downColor: btnYesHover; bgColor: transparent; overBgColor: transparent; downBgColor: transparent; width: -40px; height: 46px; textTop: 15px; overTextTop: 15px; downTextTop: 16px; font: font(fsize); overFont: font(fsize underline); } reportSpamButton: flatButton(reportSpamHide) { textTop: 6px; overTextTop: 6px; downTextTop: 7px; width: -50px; height: 30px; bgColor: #888888; overBgColor: #7b7b7b; downBgColor: #7b7b7b; } reportSpamSeparator: 30px; reportSpamBg: #fffffff0; newMsgSound: ":/gui/art/newmsg.wav"; unreadBarHeight: 32px; unreadBarMargin: 8px; unreadBarFont: semiboldFont; unreadBarBG: #fcfbfa; unreadBarBorder: shadowColor; unreadBarColor: #538bb4; searchedBarHeight: unreadBarHeight; searchedBarFont: unreadBarFont; searchedBarBG: #ebeef1; searchedBarBorder: unreadBarBorder; searchedBarColor: #a2aeb7; layerSlideDuration: 200; layerHideDuration: 200; layerPadding: margins(10px, 10px, 10px, 10px); contactPadding: margins(49px, 22px, 0px, 6px); contactSkip: 13px; contactPhoneSkip: 30px; contactsPhotoSize: 42px; contactsPadding: margins(16px, 7px, 16px, 7px); contactsNameTop: 2px; contactsNameFont: semiboldFont; contactsStatusTop: 23px; contactsStatusFont: font(fsize); contactsStatusFg: #999999; contactsStatusFgOver: #7c99b2; contactsStatusFgOnline: #3b8dcc; contactsBgOver: overBg; contactsCheckPosition: point(8px, 16px); contactsAboutBg: #f7f7f7; contactsAboutShadow: #0000001F; contactsAdminCheckbox: Checkbox(defaultBoxCheckbox) { font: semiboldFont; textBg: #f7f7f7; textPosition: point(34px, 1px); } contactsAboutHeight: 42px; contactsAboutTop: 9px; contactsScroll: flatScroll(boxScroll) { deltab: 0px; } simpleCloseIcon: icon {{ "simple_close", #000000 }}; boxPhotoPadding: margins(28px, 28px, 28px, 18px); boxPhotoCompressedPadding: margins(0px, 2px, 0px, 22px); boxPhotoTextFg: #808080; cropPointSize: 10px; cropSkip: 13px; cropMinSize: 20px; confirmCaptionArea: InputArea(defaultInputArea) { textMargins: margins(1px, 6px, 1px, 4px); heightMax: 56px; } confirmBg: #f2f2f2; confirmMaxHeight: 245px; confirmCompressedSkip: 10px; profileMaxWidth: 410px; profilePadding: margins(28px, 30px, 28px, 0px); profileOnlineFg: titleStatusActiveFg; profileOfflineFg: titleStatusFg; membersPadding: margins(0px, 10px, 0px, 10px); forwardMargins: margins(30px, 10px, 30px, 10px); forwardFont: font(16px); forwardBg: #0000004c; newGroupAboutFg: #808080; newGroupPadding: margins(4px, 6px, 4px, 3px); newGroupSkip: 17px; newGroupInfoPadding: margins(0px, -4px, 0px, 1px); newGroupLinkPadding: margins(4px, 27px, 4px, 12px); newGroupLinkTop: 3px; newGroupLinkFont: font(16px); newGroupPhotoSize: 76px; newGroupPhotoBg: #4eb5f0; newGroupPhotoBgOver: #3fa9e7; newGroupPhotoIcon: icon {{ "new_chat_photo", #ffffff }}; newGroupPhotoIconPosition: point(23px, 25px); newGroupNamePosition: point(27px, 20px); newGroupDescriptionPadding: margins(0px, 23px, 0px, 14px); newGroupDescription: InputArea(defaultInputArea) { textMargins: margins(1px, 6px, 1px, 4px); heightMax: 115px; } newGroupPublicLinkPadding: margins(0px, 20px, 0px, 5px); newGroupLinkFadeDuration: 5000; connectionHostInputField: InputField(defaultInputField) { width: 160px; } connectionPortInputField: InputField(defaultInputField) { width: 55px; } connectionUserInputField: InputField(defaultInputField) { width: 95px; } connectionPasswordInputField: InputField(defaultInputField) { width: 120px; } connectionIPv6Skip: 11px; aboutIcon: icon {{ "intro_logo", #008ed5 }}; aboutWidth: 390px; aboutVersionTop: -3px; aboutVersionLink: linkButton(btnDefLink) { color: #999999; overColor: #999999; downColor: #999999; } aboutTextTop: 34px; aboutSkip: 14px; aboutLabel: flatLabel(labelDefFlat) { font: normalFont; width: 330px; align: align(topleft); } aboutTextStyle: textStyle(defaultTextStyle) { lineHeight: 22px; } emojiTextFont: font(15px); emojiReplaceWidth: 52px; emojiReplaceHeight: 56px; emojiReplaceInnerHeight: 42px; emojiReplacePadding: 14px; connectingBG: #ffffffee; connectingColor: #777777; connectingPadding: margins(5px, 5px, 5px, 5px); dragFont: font(28px semibold); dragSubfont: font(20px semibold); dragColor: #777777; dragDropColor: btnYesColor; dragMargin: margins(0px, 10px, 0px, 10px); dragPadding: margins(20px, 10px, 20px, 10px); dragHeight: 72px; dpiActive: black; dpiInactive: #999999; dpiFont1: linkFont; dpiFont2: linkFont; dpiFont3: linkFont; dpiFont4: linkFont; botKbDuration: 200; botKbBg: #edf1f5; botKbOverBg: #d8e2ec; botKbDownBg: #d8e2ec; botKbColor: #4b565f; botKbFont: font(15px semibold); botKbButton: botKeyboardButton { margin: 10px; padding: 10px; height: 38px; textTop: 9px; downTextTop: 9px; } botKbTinyButton: botKeyboardButton { margin: 4px; padding: 3px; height: 25px; textTop: 2px; downTextTop: 2px; } botKbScroll: flatScroll(solidScroll) { deltax: 3px; width: 10px; } switchPmButton: RoundButton(defaultBoxButton) { width: 320px; height: 34px; textTop: 7px; downTextTop: 8px; } minPhotoSize: 100px; maxMediaSize: 420px; maxStickerSize: 256px; maxGifSize: 320px; maxSignatureSize: 144px; mvBgColor: #222222; mvBgOpacity: 0.92; mvThickFont: semiboldFont; mvFont: font(fsize); mvTextLeft: 16px; mvTextSkip: 10px; mvHeaderTop: 48px; mvTextTop: 24px; mvTextColor: white; mvTextOpacity: 0.5; mvTextOverOpacity: 1; mvIconOpacity: 0.45; mvIconOverOpacity: 1; mvControlBgColor: black; mvControlBgOpacity: 0.3; mvControlMargin: 0px; mvControlSize: 90px; mvIconSize: size(60px, 56px); mvWaitHide: 2000; mvHideDuration: 1000; mvShowDuration: 200; mvFadeDuration: 150; mvDocPadding: 18px; mvDocSize: size(340px, 116px); mvDocBg: white; mvDocNameTop: 4px; mvDocNameFont: font(semibold 14px); mvDocNameColor: black; mvDocSizeTop: 29px; mvDocSizeColor: #808080; mvDocExtTop: 35px; mvDocExtFont: font(semibold 18px); mvDocExtColor: white; mvDocExtPadding: 10px; mvDocLinksTop: 57px; mvDocIconSize: 80px; mvDocLink: linkButton(btnDefLink) { color: #4595d3; overColor: #4595d3; downColor: #4595d3; } mvDeltaFromLastAction: 5px; mvSwipeDistance: 80px; mvCaptionPadding: margins(18px, 10px, 18px, 10px); mvCaptionMargin: size(11px, 11px); mvCaptionRadius: 2px; mvCaptionBg: #11111180; mvCaptionFont: font(fsize); medviewSaveMsgCheck: icon {{ "mediaview_save_check", #ffffff }}; medviewSaveMsgFont: font(16px); medviewSaveMsgPadding: margins(55px, 19px, 29px, 20px); medviewSaveMsgCheckPos: point(23px, 21px); medviewSaveMsgShowing: 200; medviewSaveMsgShown: 2000; medviewSaveMsgHiding: 2500; medviewSaveMsg: #000000b2; // Mac specific macAccessoryWidth: 450.; macAccessoryHeight: 90.; macEnableFilterAdd: 2; macEnableFilterTop: 5; macSelectorTop: 6; macAlwaysThisAppTop: 4; macAppHintTop: 8; macCautionIconSize: 16; radialSize: size(50px, 50px); radialLine: 3px; radialDuration: 350; radialPeriod: 3000; radialBgOpacity: 0.4; downloadPathSkip: 10px; usernamePadding: margins(23px, 22px, 21px, 12px); usernameSkip: 49px; usernameTextStyle: textStyle(defaultTextStyle) { lineHeight: 20px; } usernameDefaultFg: #777777; youtubeIcon: icon { { "media_youtube_play_bg", #e83131c8 }, { "media_youtube_play", #ffffff, point(24px, 12px) }, }; videoIcon: icon { { "media_video_play_bg", #0000007f }, { "media_video_play", #ffffff, point(12px, 12px) }, }; locationSize: size(320px, 240px); boxOptionListPadding: margins(2px, 20px, 2px, 2px); langsWidth: 256px; langsButton: Radiobutton(defaultRadiobutton) { width: 200px; } backgroundPadding: 10px; backgroundSize: size(108px, 193px); backgroundScroll: flatScroll(boxScroll) { round: 2px; width: 10px; deltax: 3px; deltat: 10px; deltab: 0px; } passcodeHeaderFont: font(19px); passcodeHeaderHeight: 80px; passcodeInput: flatInput(inpIntroPhone) { } passcodeSubmit: flatButton(btnIntroNext) { textTop: 15px; overTextTop: 15px; downTextTop: 16px; width: 225px; font: font(19px); overFont: font(19px); } passcodeSubmitSkip: 40px; passcodePadding: margins(0px, 22px, 0px, 3px); passcodeSkip: 31px; mentionHeight: 40px; mentionScroll: flatScroll(scrollDef) { topsh: 0px; bottomsh: 0px; } mentionPadding: margins(8px, 5px, 8px, 5px); mentionTop: 11px; mentionFont: linkFont; mentionPhotoSize: msgPhotoSize; mentionBgOver: #f5f5f5; mentionFg: #777777; mentionFgOver: #707070; mentionFgActive: #0080c0; mentionFgOverActive: #0077b3; webPageLeft: 10px; webPageBar: 2px; webPageTitleFont: semiboldFont; webPageDescriptionFont: normalFont; webPagePhotoSize: 100px; webPagePhotoDelta: 8px; mediaPlayerSuppressDuration: 150; botDescSkip: 8px; suppressAll: 0.2; suppressSong: 0.05; inlineResultsLeft: 11px; inlineResultsSkip: 3px; inlineMediaHeight: 96px; inlineThumbSize: 64px; inlineThumbSkip: 10px; inlineDescriptionFg: windowSubTextFg; inlineRowMargin: 6px; inlineRowBorder: 1px; inlineRowBorderFg: #eaeaea; inlineRowFileNameTop: 2px; inlineRowFileDescriptionTop: 23px; inlineResultsMinWidth: 64px; inlineDurationMargin: 3px; editTextArea: InputArea(defaultInputArea) { textMargins: margins(1px, 6px, 1px, 4px); heightMax: 256px; } toastFont: normalFont; toastMaxWidth: 480px; toastMinMargin: 13px; toastBg: medviewSaveMsg; toastFg: #ffffff; toastPadding: margins(19px, 13px, 19px, 12px); toastFadeInDuration: 200; toastFadeOutDuration: 1000; infoButton: PeerAvatarButton { size: topBarHeight; photoSize: 42px; } // forward declaration for single "title_previous" usage. profileTopBarBackIconFg: #0290d7; profileTopBarBackIcon: icon {{ "title_previous", profileTopBarBackIconFg }}; boxCancelIcon: icon {{ "box_cancel", #000000 }}; historyReplyCancelIcon: icon {{ "box_cancel", #adadad }}; notifyBg: white; notifyFadeRight: icon {{ "fade_horizontal_right", notifyBg }}; emojiPanCategories: #f7f7f7; stickerIconLeft: icon {{ "fade_horizontal_left", emojiPanCategories }}; stickerIconRight: icon {{ "fade_horizontal_right", emojiPanCategories }};