1/*
2This file is part of Telegram Desktop,
3the official desktop application for the Telegram messaging service.
4
5For license and copyright information please follow this link:
6https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
7*/
8using "ui/basic.style";
9using "ui/widgets/widgets.style";
10using "ui/chat/chat.style";
11using "boxes/boxes.style"; // UserpicButton
12
13windowMinWidth: 380px;
14windowMinHeight: 480px;
15windowDefaultWidth: 800px;
16windowDefaultHeight: 600px;
17windowBigDefaultWidth: 1024px;
18windowBigDefaultHeight: 768px;
19windowResizeArea: 4px;
20
21columnMinimalWidthLeft: 260px;
22columnMaximalWidthLeft: 540px;
23columnMinimalWidthMain: 380px;
24columnDesiredWidthMain: 512px;
25columnMinimalWidthThird: 292px;
26columnMaximalWidthThird: 392px;
27
28adaptiveChatWideWidth: 880px;
29
30notifyBorder: windowShadowFgFallback;
31notifyBorderWidth: 1px;
32notifySlowHide: 4000;
33notifyPhotoSize: 62px;
34notifyMacPhotoSize: 64px;
35notifyPhotoPos: point(9px, 9px);
36notifyClosePos: point(1px, 2px);
37notifyClose: IconButton {
38	width: 30px;
39	height: 30px;
40
41	icon: smallCloseIcon;
42	iconOver: smallCloseIconOver;
43
44	iconPosition: point(10px, 10px);
45
46	rippleAreaPosition: point(5px, 5px);
47	rippleAreaSize: 20px;
48	ripple: RippleAnimation(defaultRippleAnimation) {
49		color: windowBgOver;
50	}
51}
52notifyItemTop: 12px;
53notifyTextLeft: 12px;
54notifyTextTop: 7px;
55notifyWaitLongHide: 3000;
56notifyFastAnim: 150;
57notifyWidth: 320px;
58notifyMinHeight: 80px;
59notifyDeltaX: 6px;
60notifyDeltaY: 7px;
61notifyActionsDuration: 200;
62
63notifyHideAllHeight: 36px;
64
65notifyReplyArea: InputField(defaultInputField) {
66	font: normalFont;
67	textMargins: margins(8px, 8px, 8px, 6px);
68	heightMin: 36px;
69	heightMax: 72px;
70	placeholderFg: placeholderFg;
71	placeholderFgActive: placeholderFgActive;
72	placeholderFgError: placeholderFgActive;
73	placeholderMargins: margins(2px, 0px, 2px, 0px);
74	placeholderScale: 0.;
75	placeholderFont: normalFont;
76	border: 0px;
77	borderActive: 0px;
78}
79notifySendReply: IconButton {
80	width: 36px;
81	height: 36px;
82
83	icon: historySendIcon;
84	iconOver: historySendIconOver;
85	iconPosition: point(6px, 6px);
86}
87
88titleUnreadCounterTop: 6px;
89titleUnreadCounterRight: 35px;
90
91mainMenuWidth: 274px;
92mainMenuCoverHeight: 134px;
93mainMenuUserpicLeft: 24px;
94mainMenuUserpicTop: 20px;
95mainMenuUserpic: UserpicButton(defaultUserpicButton) {
96	size: size(48px, 48px);
97	photoSize: 48px;
98}
99mainMenuCloudButton: IconButton {
100	width: 48px;
101	height: 48px;
102
103	icon: icon {
104//		{ "menu_cloud", mainMenuCloudFg },
105	};
106	iconPosition: point(22px, 22px);
107}
108mainMenuCloudSize: 32px;
109mainMenuResetScaleFont: font(20px semibold);
110mainMenuResetScaleLeft: 36px;
111mainMenuResetScaleRight: 12px;
112mainMenuResetScaleTop: 2px;
113mainMenuResetScaleIconLeft: 5px;
114mainMenuCoverTextLeft: 30px;
115mainMenuCoverNameTop: 84px;
116mainMenuCoverStatusTop: 102px;
117mainMenuSkip: 10px;
118mainMenu: Menu(defaultMenu) {
119	itemFg: windowBoldFg;
120	itemFgOver: windowBoldFgOver;
121	itemStyle: semiboldTextStyle;
122	itemIconPosition: point(26px, 8px);
123	itemPadding: margins(76px, 13px, 28px, 13px);
124	itemToggle: Toggle(defaultMenuToggle) {
125		toggledFg: mainMenuCoverBg;
126	}
127	itemToggleOver: Toggle(defaultMenuToggleOver) {
128		toggledFg: mainMenuCoverBg;
129	}
130	itemToggleShift: 11px;
131}
132mainMenuShadow: icon {{ "menu_shadow", windowShadowFg }};
133mainMenuNewGroup: icon {{ "menu_new_group", menuIconFg }};
134mainMenuNewGroupOver: icon {{ "menu_new_group", menuIconFgOver }};
135mainMenuNewChannel: icon {{ "menu_new_channel", menuIconFg }};
136mainMenuNewChannelOver: icon {{ "menu_new_channel", menuIconFgOver }};
137mainMenuContacts: icon {{ "settings_name", menuIconFg }};
138mainMenuContactsOver: icon {{ "settings_name", menuIconFgOver }};
139mainMenuCalls: icon {{ "settings_phone_number", menuIconFg }};
140mainMenuCallsOver: icon {{ "settings_phone_number", menuIconFgOver }};
141mainMenuSettings: icon {{ "menu_settings", menuIconFg }};
142mainMenuSettingsOver: icon {{ "menu_settings", menuIconFgOver }};
143mainMenuNightMode: icon {{ "menu_night_mode", menuIconFg }};
144mainMenuNightModeOver: icon {{ "menu_night_mode", menuIconFgOver }};
145mainMenuReload: icon {{ "menu_reload", menuIconFg }};
146mainMenuReloadOver: icon {{ "menu_reload", menuIconFgOver }};
147mainMenuFixOrder: icon {{ "menu_fix_order", menuIconFg }};
148mainMenuFixOrderOver: icon {{ "menu_fix_order", menuIconFgOver }};
149mainMenuAddAccount: icon {{ "menu_add_account", menuIconFg }};
150mainMenuAddAccountOver: icon {{ "menu_add_account", menuIconFgOver }};
151mainMenuAccountSize: 32px;
152mainMenuAccountCheckPosition: point(7px, 5px);
153mainMenuAccountCheckLine: 2px;
154mainMenuAccountCheck: RoundCheckbox(defaultRoundCheckbox) {
155	size: 18px;
156	bgInactive: overviewCheckBg;
157	bgActive: overviewCheckBgActive;
158	check: icon {{ "account_check", overviewCheckFgActive }};
159}
160
161mainMenuFooterLeft: 30px;
162mainMenuTelegramLabel: FlatLabel(defaultFlatLabel) {
163	align: align(left);
164	textFg: windowSubTextFg;
165	style: TextStyle(defaultTextStyle) {
166		font: semiboldFont;
167		linkFont: semiboldFont;
168		linkFontOver: font(fsize semibold underline);
169	}
170	palette: TextPalette(defaultTextPalette) {
171		linkFg: windowSubTextFg;
172	}
173}
174mainMenuTelegramBottom: 43px;
175mainMenuVersionLabel: FlatLabel(mainMenuTelegramLabel) {
176	style: defaultTextStyle;
177}
178mainMenuVersionBottom: 21px;
179
180mainMenuToggleSize: 8px;
181mainMenuToggleFourStrokes: 4px;
182mainMenuTogglePosition: point(32px, 32px);
183
184themeEditorSampleSize: size(90px, 51px);
185themeEditorMargin: margins(17px, 10px, 17px, 10px);
186themeEditorDescriptionSkip: 10px;
187themeEditorNameFont: font(15px semibold);
188themeEditorCopyNameFont: font(fsize semibold);
189
190windowEmojiSuggestionsPopup: PopupMenu(defaultPopupMenu) {
191	menu: Menu(defaultMenu) {
192		itemPadding: margins(48px, 8px, 17px, 7px);
193		widthMax: 512px;
194	}
195}
196
197connectingLeftShadow: icon {{ "connecting_left_shadow", windowShadowFg }};
198connectingLeft: icon {{ "connecting_left", windowBg }};
199connectingRightShadow: icon {{ "connecting_right_shadow", windowShadowFg }};
200connectingRight: icon {{ "connecting_right", windowBg }};
201connectingBodyShadow: icon {{ "connecting_body_shadow", windowShadowFg }};
202connectingBody: icon {{ "connecting_body", windowBg }};
203connectingMargin: margins(2px, 2px, 2px, 2px);
204connectingTextPadding: margins(18px, 11px, 18px, 0px);
205connectingRadialSkip: 6px;
206connectingRadial: InfiniteRadialAnimation(defaultInfiniteRadialAnimation) {
207	color: menuIconFg;
208	thickness: 2px;
209	size: size(20px, 20px);
210}
211connectingRetryLink: LinkButton(defaultLinkButton) {
212	padding: margins(6px, 11px, 6px, 0px);
213}
214connectingProxyOff: icon {{ "proxy_off", menuIconFg }};
215connectingProxyOn: icon {{ "proxy_on", windowBgActive }};
216connectingDuration: 150;
217
218windowOutdatedDetails: FlatLabel(defaultFlatLabel) {
219	align: align(top);
220	minWidth: 100px;
221	textFg: outdatedFg;
222}
223windowOutdatedTitle: FlatLabel(windowOutdatedDetails) {
224	style: semiboldTextStyle;
225}
226windowOutdatedPadding: margins(10px, 10px, 10px, 10px);
227windowOutdatedSkip: 6px;
228windowOutdatedClose: IconButton(defaultIconButton) {
229	width: 60px;
230	height: 60px;
231	icon: icon {{ "info_close", outdatedFg }};
232	iconOver: icon {{ "info_close", outdatedFg }};
233	iconPosition: point(-1px, -1px);
234}
235
236createThemeImportButton: SettingsButton(defaultSettingsButton) {
237	textFg: lightButtonFg;
238	textFgOver: lightButtonFgOver;
239	textBg: windowBg;
240	textBgOver: windowBgOver;
241
242	font: semiboldFont;
243
244	height: 20px;
245	padding: margins(22px, 10px, 22px, 8px);
246
247	ripple: defaultRippleAnimation;
248}
249createThemeLink: InputField(defaultInputField) {
250	textMargins: margins(0px, 7px, 0px, 0px);
251	textBg: boxBg;
252
253	placeholderFg: placeholderFg;
254	placeholderFgActive: placeholderFgActive;
255	placeholderFgError: placeholderFgActive;
256	placeholderMargins: margins(0px, 0px, 0px, 0px);
257	placeholderScale: 0.;
258	placeholderFont: boxTextFont;
259
260	heightMin: 34px;
261
262	font: boxTextFont;
263}
264
265windowFiltersWidth: 72px;
266windowFiltersButton: SideBarButton(defaultSideBarButton) {
267	textTop: 40px;
268	textSkip: 6px;
269	minHeight: 62px;
270	minTextWidth: 48px;
271	style: TextStyle(defaultTextStyle) {
272		font: font(11px semibold);
273	}
274	badgeStyle: TextStyle(defaultTextStyle) {
275		font: font(12px semibold);
276	}
277	badgeSkip: 4px;
278	badgeHeight: 17px;
279	badgeStroke: 2px;
280	badgePosition: point(3px, 7px);
281	iconPosition: point(-1px, 6px);
282}
283windowFiltersMainMenu: SideBarButton(windowFiltersButton) {
284	icon: icon {{ "dialogs_menu", sideBarIconFg }};
285	iconPosition: point(-1px, -1px);
286	minHeight: 54px;
287}
288windowFiltersMainMenuUnread: icon {
289	{ "dialogs_menu_unread", sideBarIconFg },
290	{ "dialogs_menu_unread_dot", sideBarBadgeBg },
291};
292windowFiltersMainMenuUnreadMuted: icon {
293	{ "dialogs_menu_unread", sideBarIconFg },
294	{ "dialogs_menu_unread_dot", sideBarBadgeBgMuted },
295};
296windowFilterSmallItem: PeerListItem(defaultPeerListItem) {
297	height: 44px;
298	photoPosition: point(15px, 5px);
299	namePosition: point(62px, 14px);
300	photoSize: 34px;
301	checkbox: RoundImageCheckbox(defaultPeerListCheckbox) {
302		imageRadius: 17px;
303		imageSmallRadius: 14px;
304	}
305}
306windowFilterSmallList: PeerList(defaultPeerList) {
307	item: windowFilterSmallItem;
308}
309windowFilterSmallRemove: IconButton(notifyClose) {
310}
311windowFilterSmallRemoveRight: 10px;
312windowFilterNameInput: InputField(defaultInputField) {
313	textMargins: margins(0px, 26px, 36px, 4px);
314}
315windowFilterIconToggleSize: size(36px, 36px);
316windowFilterIconTogglePosition: point(-4px, 12px);
317windwoFilterIconPanelPosition: point(-2px, -1px);
318windowFilterIconSingle: size(44px, 42px);
319windowFilterIconPadding: margins(10px, 36px, 10px, 8px);
320windowFilterIconHeaderPosition: point(18px, 14px);
321windowFilterTypeContacts: icon {{ "filters/filters_type_contacts", historyPeerUserpicFg }};
322windowFilterTypeNonContacts: icon {{ "filters/filters_type_noncontacts", historyPeerUserpicFg }};
323windowFilterTypeGroups: icon {{ "filters/filters_type_groups", historyPeerUserpicFg }};
324windowFilterTypeChannels: icon {{ "filters/filters_type_channels", historyPeerUserpicFg }};
325windowFilterTypeBots: icon {{ "filters/filters_type_bots", historyPeerUserpicFg }};
326windowFilterTypeNoMuted: icon {{ "filters/filters_type_muted", historyPeerUserpicFg }};
327windowFilterTypeNoArchived: icon {{ "filters/filters_type_archived", historyPeerUserpicFg }};
328windowFilterTypeNoRead: icon {{ "filters/filters_type_read", historyPeerUserpicFg }};
329windowFilterChatsSectionSubtitle: FlatLabel(defaultFlatLabel) {
330	style: TextStyle(defaultTextStyle) {
331		font: searchedBarFont;
332	}
333	textFg: searchedBarFg;
334}
335windowFilterChatsSectionSubtitlePadding: margins(17px, 7px, 17px, 7px);
336windowFilterAboutPadding: margins(22px, 0px, 22px, 19px);
337
338windowArchiveToast: Toast(defaultToast) {
339	minWidth: boxWideWidth;
340	maxWidth: boxWideWidth;
341}
342
343// Mac specific
344
345macAccessoryWidth: 450.;
346macAccessoryHeight: 90.;
347macEnableFilterAdd: 2;
348macEnableFilterTop: 5;
349macSelectorTop: 6;
350macAlwaysThisAppTop: 4;
351macAppHintTop: 8;
352macCautionIconSize: 16;
353
354macWindowRoundRadius: 5;
355macWindowShadowTopLeft: icon {{ "mac_window_shadow_top_left", windowShadowFg }};
356macTrayIcon: icon {{ "mac_tray_icon", windowFg }};
357