diff --git a/Telegram/CMakeLists.txt b/Telegram/CMakeLists.txt index 2a6da282f..0923dbb19 100644 --- a/Telegram/CMakeLists.txt +++ b/Telegram/CMakeLists.txt @@ -1222,13 +1222,13 @@ if (LINUX AND DESKTOP_APP_USE_PACKAGED) include(GNUInstallDirs) configure_file("../lib/xdg/kotatogramdesktop.appdata.xml.in" "${CMAKE_CURRENT_BINARY_DIR}/kotatogramdesktop.appdata.xml" @ONLY) install(TARGETS Telegram RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" BUNDLE DESTINATION "${CMAKE_INSTALL_BINDIR}") - install(FILES "Resources/art/icon16.png" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/16x16/apps" RENAME "telegram.png") - install(FILES "Resources/art/icon32.png" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/32x32/apps" RENAME "telegram.png") - install(FILES "Resources/art/icon48.png" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/48x48/apps" RENAME "telegram.png") - install(FILES "Resources/art/icon64.png" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/64x64/apps" RENAME "telegram.png") - install(FILES "Resources/art/icon128.png" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/128x128/apps" RENAME "telegram.png") - install(FILES "Resources/art/icon256.png" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/256x256/apps" RENAME "telegram.png") - install(FILES "Resources/art/icon512.png" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/512x512/apps" RENAME "telegram.png") + install(FILES "Resources/art/icon16.png" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/16x16/apps" RENAME "kotatogram.png") + install(FILES "Resources/art/icon32.png" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/32x32/apps" RENAME "kotatogram.png") + install(FILES "Resources/art/icon48.png" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/48x48/apps" RENAME "kotatogram.png") + install(FILES "Resources/art/icon64.png" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/64x64/apps" RENAME "kotatogram.png") + install(FILES "Resources/art/icon128.png" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/128x128/apps" RENAME "kotatogram.png") + install(FILES "Resources/art/icon256.png" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/256x256/apps" RENAME "kotatogram.png") + install(FILES "Resources/art/icon512.png" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/512x512/apps" RENAME "kotatogram.png") install(FILES "../lib/xdg/kotatogramdesktop.desktop" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/applications" RENAME "${TDESKTOP_LAUNCHER_BASENAME}.desktop") install(FILES "${CMAKE_CURRENT_BINARY_DIR}/kotatogramdesktop.appdata.xml" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/metainfo" RENAME "${TDESKTOP_LAUNCHER_BASENAME}.appdata.xml") endif() diff --git a/Telegram/Resources/art/favicon.ico b/Telegram/Resources/art/favicon.ico index 7a3551000..7b494a561 100644 Binary files a/Telegram/Resources/art/favicon.ico and b/Telegram/Resources/art/favicon.ico differ diff --git a/Telegram/Resources/art/icon128.png b/Telegram/Resources/art/icon128.png index 59e7e25b3..1db40ee4a 100644 Binary files a/Telegram/Resources/art/icon128.png and b/Telegram/Resources/art/icon128.png differ diff --git a/Telegram/Resources/art/icon128@2x.png b/Telegram/Resources/art/icon128@2x.png index f4616cc30..fbcd6fab6 100644 Binary files a/Telegram/Resources/art/icon128@2x.png and b/Telegram/Resources/art/icon128@2x.png differ diff --git a/Telegram/Resources/art/icon16.png b/Telegram/Resources/art/icon16.png index b753bbb18..f3a82511a 100644 Binary files a/Telegram/Resources/art/icon16.png and b/Telegram/Resources/art/icon16.png differ diff --git a/Telegram/Resources/art/icon16@2x.png b/Telegram/Resources/art/icon16@2x.png index c19f3b6db..cbd1e33bf 100644 Binary files a/Telegram/Resources/art/icon16@2x.png and b/Telegram/Resources/art/icon16@2x.png differ diff --git a/Telegram/Resources/art/icon256.ico b/Telegram/Resources/art/icon256.ico index 4749c1f79..b60051a74 100644 Binary files a/Telegram/Resources/art/icon256.ico and b/Telegram/Resources/art/icon256.ico differ diff --git a/Telegram/Resources/art/icon256.png b/Telegram/Resources/art/icon256.png index 5ecf12d4a..284b4faf1 100644 Binary files a/Telegram/Resources/art/icon256.png and b/Telegram/Resources/art/icon256.png differ diff --git a/Telegram/Resources/art/icon256@2x.png b/Telegram/Resources/art/icon256@2x.png index ef4fc7d25..be31e89d5 100644 Binary files a/Telegram/Resources/art/icon256@2x.png and b/Telegram/Resources/art/icon256@2x.png differ diff --git a/Telegram/Resources/art/icon256blue.ico b/Telegram/Resources/art/icon256blue.ico new file mode 100644 index 000000000..4b0b5a396 Binary files /dev/null and b/Telegram/Resources/art/icon256blue.ico differ diff --git a/Telegram/Resources/art/icon256green.ico b/Telegram/Resources/art/icon256green.ico new file mode 100644 index 000000000..de7bdc7cf Binary files /dev/null and b/Telegram/Resources/art/icon256green.ico differ diff --git a/Telegram/Resources/art/icon256old.ico b/Telegram/Resources/art/icon256old.ico new file mode 100644 index 000000000..4749c1f79 Binary files /dev/null and b/Telegram/Resources/art/icon256old.ico differ diff --git a/Telegram/Resources/art/icon256orange.ico b/Telegram/Resources/art/icon256orange.ico new file mode 100644 index 000000000..639f37e4a Binary files /dev/null and b/Telegram/Resources/art/icon256orange.ico differ diff --git a/Telegram/Resources/art/icon256red.ico b/Telegram/Resources/art/icon256red.ico new file mode 100644 index 000000000..a5e333fce Binary files /dev/null and b/Telegram/Resources/art/icon256red.ico differ diff --git a/Telegram/Resources/art/icon32.png b/Telegram/Resources/art/icon32.png index 66868915e..8fc510ca1 100644 Binary files a/Telegram/Resources/art/icon32.png and b/Telegram/Resources/art/icon32.png differ diff --git a/Telegram/Resources/art/icon32@2x.png b/Telegram/Resources/art/icon32@2x.png index 74697abfd..1a8782642 100644 Binary files a/Telegram/Resources/art/icon32@2x.png and b/Telegram/Resources/art/icon32@2x.png differ diff --git a/Telegram/Resources/art/icon48.png b/Telegram/Resources/art/icon48.png index 5e214df0a..f09e9df7f 100644 Binary files a/Telegram/Resources/art/icon48.png and b/Telegram/Resources/art/icon48.png differ diff --git a/Telegram/Resources/art/icon48@2x.png b/Telegram/Resources/art/icon48@2x.png index fb526b10c..a647177ed 100644 Binary files a/Telegram/Resources/art/icon48@2x.png and b/Telegram/Resources/art/icon48@2x.png differ diff --git a/Telegram/Resources/art/icon512.png b/Telegram/Resources/art/icon512.png index 28c5b8685..b34f7f4b7 100644 Binary files a/Telegram/Resources/art/icon512.png and b/Telegram/Resources/art/icon512.png differ diff --git a/Telegram/Resources/art/icon512@2x.png b/Telegram/Resources/art/icon512@2x.png index d9ae73b8e..3d4284673 100644 Binary files a/Telegram/Resources/art/icon512@2x.png and b/Telegram/Resources/art/icon512@2x.png differ diff --git a/Telegram/Resources/art/icon512_blue@2x.png b/Telegram/Resources/art/icon512_blue@2x.png new file mode 100644 index 000000000..65a165c8e Binary files /dev/null and b/Telegram/Resources/art/icon512_blue@2x.png differ diff --git a/Telegram/Resources/art/icon512_green@2x.png b/Telegram/Resources/art/icon512_green@2x.png new file mode 100644 index 000000000..569e49ae7 Binary files /dev/null and b/Telegram/Resources/art/icon512_green@2x.png differ diff --git a/Telegram/Resources/art/icon512_orange@2x.png b/Telegram/Resources/art/icon512_orange@2x.png new file mode 100644 index 000000000..791d1cbbb Binary files /dev/null and b/Telegram/Resources/art/icon512_orange@2x.png differ diff --git a/Telegram/Resources/art/icon512_red@2x.png b/Telegram/Resources/art/icon512_red@2x.png new file mode 100644 index 000000000..89e557c77 Binary files /dev/null and b/Telegram/Resources/art/icon512_red@2x.png differ diff --git a/Telegram/Resources/art/icon64.png b/Telegram/Resources/art/icon64.png index 7fea82e8f..d20e69907 100644 Binary files a/Telegram/Resources/art/icon64.png and b/Telegram/Resources/art/icon64.png differ diff --git a/Telegram/Resources/art/icon64@2x.png b/Telegram/Resources/art/icon64@2x.png index 8a55764f0..34512d22e 100644 Binary files a/Telegram/Resources/art/icon64@2x.png and b/Telegram/Resources/art/icon64@2x.png differ diff --git a/Telegram/Resources/art/logo_256.png b/Telegram/Resources/art/logo_256.png index e03acca61..fdc1a2fe8 100644 Binary files a/Telegram/Resources/art/logo_256.png and b/Telegram/Resources/art/logo_256.png differ diff --git a/Telegram/Resources/art/logo_256_blue.png b/Telegram/Resources/art/logo_256_blue.png new file mode 100644 index 000000000..8443bd4da Binary files /dev/null and b/Telegram/Resources/art/logo_256_blue.png differ diff --git a/Telegram/Resources/art/logo_256_green.png b/Telegram/Resources/art/logo_256_green.png new file mode 100644 index 000000000..90688030b Binary files /dev/null and b/Telegram/Resources/art/logo_256_green.png differ diff --git a/Telegram/Resources/art/logo_256_no_margin.png b/Telegram/Resources/art/logo_256_no_margin.png index 1d4b3d4c2..c48e472e4 100644 Binary files a/Telegram/Resources/art/logo_256_no_margin.png and b/Telegram/Resources/art/logo_256_no_margin.png differ diff --git a/Telegram/Resources/art/logo_256_no_margin_blue.png b/Telegram/Resources/art/logo_256_no_margin_blue.png new file mode 100644 index 000000000..b772365cf Binary files /dev/null and b/Telegram/Resources/art/logo_256_no_margin_blue.png differ diff --git a/Telegram/Resources/art/logo_256_no_margin_green.png b/Telegram/Resources/art/logo_256_no_margin_green.png new file mode 100644 index 000000000..0522cde26 Binary files /dev/null and b/Telegram/Resources/art/logo_256_no_margin_green.png differ diff --git a/Telegram/Resources/art/logo_256_no_margin_old.png b/Telegram/Resources/art/logo_256_no_margin_old.png new file mode 100644 index 000000000..1d4b3d4c2 Binary files /dev/null and b/Telegram/Resources/art/logo_256_no_margin_old.png differ diff --git a/Telegram/Resources/art/logo_256_no_margin_orange.png b/Telegram/Resources/art/logo_256_no_margin_orange.png new file mode 100644 index 000000000..b13d32d09 Binary files /dev/null and b/Telegram/Resources/art/logo_256_no_margin_orange.png differ diff --git a/Telegram/Resources/art/logo_256_no_margin_red.png b/Telegram/Resources/art/logo_256_no_margin_red.png new file mode 100644 index 000000000..36b08072e Binary files /dev/null and b/Telegram/Resources/art/logo_256_no_margin_red.png differ diff --git a/Telegram/Resources/art/logo_256_old.png b/Telegram/Resources/art/logo_256_old.png new file mode 100644 index 000000000..e03acca61 Binary files /dev/null and b/Telegram/Resources/art/logo_256_old.png differ diff --git a/Telegram/Resources/art/logo_256_orange.png b/Telegram/Resources/art/logo_256_orange.png new file mode 100644 index 000000000..888d9cba1 Binary files /dev/null and b/Telegram/Resources/art/logo_256_orange.png differ diff --git a/Telegram/Resources/art/logo_256_red.png b/Telegram/Resources/art/logo_256_red.png new file mode 100644 index 000000000..6a8fa31f9 Binary files /dev/null and b/Telegram/Resources/art/logo_256_red.png differ diff --git a/Telegram/Resources/icons/intro_kotato_top.png b/Telegram/Resources/icons/intro_kotato_top.png new file mode 100644 index 000000000..33d9e867c Binary files /dev/null and b/Telegram/Resources/icons/intro_kotato_top.png differ diff --git a/Telegram/Resources/icons/intro_kotato_top@2x.png b/Telegram/Resources/icons/intro_kotato_top@2x.png new file mode 100644 index 000000000..62da7ed30 Binary files /dev/null and b/Telegram/Resources/icons/intro_kotato_top@2x.png differ diff --git a/Telegram/Resources/icons/intro_kotato_top@3x.png b/Telegram/Resources/icons/intro_kotato_top@3x.png new file mode 100644 index 000000000..1d3bc1826 Binary files /dev/null and b/Telegram/Resources/icons/intro_kotato_top@3x.png differ diff --git a/Telegram/Resources/icons/intro_kotato_trace.png b/Telegram/Resources/icons/intro_kotato_trace.png new file mode 100644 index 000000000..d2ed4c495 Binary files /dev/null and b/Telegram/Resources/icons/intro_kotato_trace.png differ diff --git a/Telegram/Resources/icons/intro_kotato_trace@2x.png b/Telegram/Resources/icons/intro_kotato_trace@2x.png new file mode 100644 index 000000000..1f21f7c21 Binary files /dev/null and b/Telegram/Resources/icons/intro_kotato_trace@2x.png differ diff --git a/Telegram/Resources/icons/intro_kotato_trace@3x.png b/Telegram/Resources/icons/intro_kotato_trace@3x.png new file mode 100644 index 000000000..68b71f9ec Binary files /dev/null and b/Telegram/Resources/icons/intro_kotato_trace@3x.png differ diff --git a/Telegram/Resources/icons/mac_tray_icon.png b/Telegram/Resources/icons/mac_tray_icon.png index 5a812fb64..f26e11c2d 100644 Binary files a/Telegram/Resources/icons/mac_tray_icon.png and b/Telegram/Resources/icons/mac_tray_icon.png differ diff --git a/Telegram/Resources/icons/mac_tray_icon@2x.png b/Telegram/Resources/icons/mac_tray_icon@2x.png index 968fcc6eb..16f01dc4d 100644 Binary files a/Telegram/Resources/icons/mac_tray_icon@2x.png and b/Telegram/Resources/icons/mac_tray_icon@2x.png differ diff --git a/Telegram/Resources/icons/mac_tray_icon@3x.png b/Telegram/Resources/icons/mac_tray_icon@3x.png index 49d95a3d0..696b77239 100644 Binary files a/Telegram/Resources/icons/mac_tray_icon@3x.png and b/Telegram/Resources/icons/mac_tray_icon@3x.png differ diff --git a/Telegram/Resources/icons/settings_kotato.png b/Telegram/Resources/icons/settings_kotato.png index 972896188..80f8439f2 100644 Binary files a/Telegram/Resources/icons/settings_kotato.png and b/Telegram/Resources/icons/settings_kotato.png differ diff --git a/Telegram/Resources/icons/settings_kotato@2x.png b/Telegram/Resources/icons/settings_kotato@2x.png index 39f327c83..d2e46778e 100644 Binary files a/Telegram/Resources/icons/settings_kotato@2x.png and b/Telegram/Resources/icons/settings_kotato@2x.png differ diff --git a/Telegram/Resources/icons/settings_kotato@3x.png b/Telegram/Resources/icons/settings_kotato@3x.png index 6aed3ff98..f2613626d 100644 Binary files a/Telegram/Resources/icons/settings_kotato@3x.png and b/Telegram/Resources/icons/settings_kotato@3x.png differ diff --git a/Telegram/Resources/icons/settings_kotato_old.png b/Telegram/Resources/icons/settings_kotato_old.png new file mode 100644 index 000000000..972896188 Binary files /dev/null and b/Telegram/Resources/icons/settings_kotato_old.png differ diff --git a/Telegram/Resources/icons/settings_kotato_old@2x.png b/Telegram/Resources/icons/settings_kotato_old@2x.png new file mode 100644 index 000000000..39f327c83 Binary files /dev/null and b/Telegram/Resources/icons/settings_kotato_old@2x.png differ diff --git a/Telegram/Resources/icons/settings_kotato_old@3x.png b/Telegram/Resources/icons/settings_kotato_old@3x.png new file mode 100644 index 000000000..6aed3ff98 Binary files /dev/null and b/Telegram/Resources/icons/settings_kotato_old@3x.png differ diff --git a/Telegram/Resources/qrc/telegram/telegram.qrc b/Telegram/Resources/qrc/telegram/telegram.qrc index ec7bbf2a4..daacdb128 100644 --- a/Telegram/Resources/qrc/telegram/telegram.qrc +++ b/Telegram/Resources/qrc/telegram/telegram.qrc @@ -45,7 +45,17 @@ ../../art/bg.jpg ../../art/bg_initial.jpg ../../art/logo_256.png + ../../art/logo_256_blue.png + ../../art/logo_256_green.png + ../../art/logo_256_orange.png + ../../art/logo_256_red.png + ../../art/logo_256_old.png ../../art/logo_256_no_margin.png + ../../art/logo_256_no_margin_blue.png + ../../art/logo_256_no_margin_green.png + ../../art/logo_256_no_margin_orange.png + ../../art/logo_256_no_margin_red.png + ../../art/logo_256_no_margin_old.png ../../art/sunrise.jpg ../../day-blue.tdesktop-theme ../../night.tdesktop-theme diff --git a/Telegram/Resources/winrc/Telegram.rc b/Telegram/Resources/winrc/Telegram.rc index f02b0627c..9cd1c9b19 100644 --- a/Telegram/Resources/winrc/Telegram.rc +++ b/Telegram/Resources/winrc/Telegram.rc @@ -26,6 +26,11 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US // Icon with lowest ID value placed first to ensure application icon // remains consistent on all systems. IDI_ICON1 ICON "..\\art\\icon256.ico" +IDI_ICON2 ICON "..\\art\\icon256blue.ico" +IDI_ICON3 ICON "..\\art\\icon256green.ico" +IDI_ICON4 ICON "..\\art\\icon256orange.ico" +IDI_ICON5 ICON "..\\art\\icon256red.ico" +IDI_ICON6 ICON "..\\art\\icon256old.ico" ///////////////////////////////////////////////////////////////////////////// // diff --git a/Telegram/SourceFiles/core/application.cpp b/Telegram/SourceFiles/core/application.cpp index 0898544a3..f1cb2a906 100644 --- a/Telegram/SourceFiles/core/application.cpp +++ b/Telegram/SourceFiles/core/application.cpp @@ -98,9 +98,29 @@ Application::Application(not_null launcher) , _emojiKeywords(std::make_unique()) , _audio(std::make_unique()) , _logo(Window::LoadLogo()) -, _logoNoMargin(Window::LoadLogoNoMargin()) { +, _logoBlue(Window::LoadLogo(1)) +, _logoGreen(Window::LoadLogo(2)) +, _logoOrange(Window::LoadLogo(3)) +, _logoRed(Window::LoadLogo(4)) +, _logoOld(Window::LoadLogo(5)) +, _logoNoMargin(Window::LoadLogoNoMargin()) +, _logoNoMarginBlue(Window::LoadLogoNoMargin(1)) +, _logoNoMarginGreen(Window::LoadLogoNoMargin(2)) +, _logoNoMarginOrange(Window::LoadLogoNoMargin(3)) +, _logoNoMarginRed(Window::LoadLogoNoMargin(4)) +, _logoNoMarginOld(Window::LoadLogoNoMargin(5)) { Expects(!_logo.isNull()); + Expects(!_logoBlue.isNull()); + Expects(!_logoGreen.isNull()); + Expects(!_logoOrange.isNull()); + Expects(!_logoRed.isNull()); + Expects(!_logoOld.isNull()); Expects(!_logoNoMargin.isNull()); + Expects(!_logoNoMarginBlue.isNull()); + Expects(!_logoNoMarginGreen.isNull()); + Expects(!_logoNoMarginOrange.isNull()); + Expects(!_logoNoMarginRed.isNull()); + Expects(!_logoNoMarginOld.isNull()); Ui::Integration::Set(&_private->uiIntegration); diff --git a/Telegram/SourceFiles/core/application.h b/Telegram/SourceFiles/core/application.h index dd0b1a805..206543601 100644 --- a/Telegram/SourceFiles/core/application.h +++ b/Telegram/SourceFiles/core/application.h @@ -115,10 +115,26 @@ public: PeerData *ui_getPeerForMouseAction(); QPoint getPointForCallPanelCenter() const; - QImage logo() const { + QImage logo(int variant = 0) const { + switch (variant) { + case 1: return _logoBlue; + case 2: return _logoGreen; + case 3: return _logoOrange; + case 4: return _logoRed; + case 5: return _logoOld; + } + return _logo; } - QImage logoNoMargin() const { + QImage logoNoMargin(int variant = 0) const { + switch (variant) { + case 1: return _logoNoMarginBlue; + case 2: return _logoNoMarginGreen; + case 3: return _logoNoMarginOrange; + case 4: return _logoNoMarginRed; + case 5: return _logoNoMarginOld; + } + return _logoNoMargin; } @@ -281,7 +297,17 @@ private: const std::unique_ptr _audio; const QImage _logo; + const QImage _logoBlue; + const QImage _logoGreen; + const QImage _logoOrange; + const QImage _logoRed; + const QImage _logoOld; const QImage _logoNoMargin; + const QImage _logoNoMarginBlue; + const QImage _logoNoMarginGreen; + const QImage _logoNoMarginOrange; + const QImage _logoNoMarginRed; + const QImage _logoNoMarginOld; rpl::variable _passcodeLock; rpl::event_stream _termsLockChanges; diff --git a/Telegram/SourceFiles/core/kotato_settings.cpp b/Telegram/SourceFiles/core/kotato_settings.cpp index 64f517cff..1ab5e2484 100644 --- a/Telegram/SourceFiles/core/kotato_settings.cpp +++ b/Telegram/SourceFiles/core/kotato_settings.cpp @@ -327,6 +327,12 @@ bool Manager::readCustomFile() { ReadBoolOption(settings, "always_show_top_userpic", [&](auto v) { cSetShowTopBarUserpic(v); }); + + ReadIntOption(settings, "custom_app_icon", [&](auto v) { + if (v >= 0 || v <= 5) { + cSetCustomAppIcon(v); + } + }); return true; } @@ -370,6 +376,7 @@ void Manager::writeDefaultFile() { settings.insert(qsl("recent_stickers_limit"), RecentStickersLimit()); settings.insert(qsl("userpic_corner_type"), cUserpicCornersType()); settings.insert(qsl("always_show_top_userpic"), cShowTopBarUserpic()); + settings.insert(qsl("custom_app_icon"), cCustomAppIcon()); auto settingsScales = QJsonArray(); settings.insert(qsl("scales"), settingsScales); @@ -434,6 +441,7 @@ void Manager::writeCurrentSettings() { settings.insert(qsl("recent_stickers_limit"), RecentStickersLimit()); settings.insert(qsl("userpic_corner_type"), cUserpicCornersType()); settings.insert(qsl("always_show_top_userpic"), cShowTopBarUserpic()); + settings.insert(qsl("custom_app_icon"), cCustomAppIcon()); auto settingsScales = QJsonArray(); auto currentScales = cInterfaceScales(); diff --git a/Telegram/SourceFiles/data/data_peer.cpp b/Telegram/SourceFiles/data/data_peer.cpp index b0a9c6b4d..99f81e9fc 100644 --- a/Telegram/SourceFiles/data/data_peer.cpp +++ b/Telegram/SourceFiles/data/data_peer.cpp @@ -377,7 +377,7 @@ void PeerData::clearUserpic() { const auto loc = StorageImageLocation(); const auto photo = [&] { if (isNotificationsUser()) { - auto image = Core::App().logoNoMargin().scaledToWidth( + auto image = Core::App().logoNoMargin(cCustomAppIcon()).scaledToWidth( kUserpicSize, Qt::SmoothTransformation); return _userpic diff --git a/Telegram/SourceFiles/intro/intro.style b/Telegram/SourceFiles/intro/intro.style index 59ff6e7d3..9b462d5c2 100644 --- a/Telegram/SourceFiles/intro/intro.style +++ b/Telegram/SourceFiles/intro/intro.style @@ -21,6 +21,10 @@ introCoverIcon: icon { { "intro_plane_outer", introCoverPlaneOuter }, { "intro_plane_top", introCoverPlaneTop }, }; +introKotatoCoverIcon: icon { + { "intro_kotato_trace", introCoverPlaneTrace }, + { "intro_kotato_top", introCoverPlaneTop }, +}; introCoverIconLeft: 50px; introCoverIconTop: 46px; diff --git a/Telegram/SourceFiles/intro/intro_step.cpp b/Telegram/SourceFiles/intro/intro_step.cpp index 0ad9d7da5..b21b19d8f 100644 --- a/Telegram/SourceFiles/intro/intro_step.cpp +++ b/Telegram/SourceFiles/intro/intro_step.cpp @@ -340,7 +340,7 @@ void Step::paintCover(Painter &p, int top) { st::introCoverLeft.paint(p, left, coverHeight - st::introCoverLeft.height(), width()); st::introCoverRight.paint(p, width() - right - st::introCoverRight.width(), coverHeight - st::introCoverRight.height(), width()); - auto planeLeft = (width() - st::introCoverIcon.width()) / 2 - st::introCoverIconLeft; + auto planeLeft = (width() - st::introKotatoCoverIcon.width()) / 2 - st::introCoverIconLeft; auto planeTop = top + st::introCoverIconTop; if (top < 0 && !_hasCover) { auto deltaLeft = -qRound(float64(st::introPlaneWidth / st::introPlaneHeight) * top); @@ -348,7 +348,7 @@ void Step::paintCover(Painter &p, int top) { planeLeft += deltaLeft; // planeTop += top; } - st::introCoverIcon.paint(p, planeLeft, planeTop, width()); + st::introKotatoCoverIcon.paint(p, planeLeft, planeTop, width()); } int Step::contentLeft() const { diff --git a/Telegram/SourceFiles/mainwindow.cpp b/Telegram/SourceFiles/mainwindow.cpp index 47cb3b6e3..f7b30c82c 100644 --- a/Telegram/SourceFiles/mainwindow.cpp +++ b/Telegram/SourceFiles/mainwindow.cpp @@ -81,7 +81,7 @@ MainWindow::MainWindow(not_null controller) QImage iconImage(cWorkingDir() + "tdata/icon.png"); auto logo = iconImage.isNull() - ? Core::App().logo() + ? Core::App().logo(cCustomAppIcon()) : iconImage; icon16 = logo.scaledToWidth(16, Qt::SmoothTransformation); @@ -89,7 +89,7 @@ MainWindow::MainWindow(not_null controller) icon64 = logo.scaledToWidth(64, Qt::SmoothTransformation); auto logoNoMargin = iconImage.isNull() - ? Core::App().logoNoMargin() + ? Core::App().logoNoMargin(cCustomAppIcon()) : iconImage; iconbig16 = logoNoMargin.scaledToWidth(16, Qt::SmoothTransformation); diff --git a/Telegram/SourceFiles/platform/linux/main_window_linux.cpp b/Telegram/SourceFiles/platform/linux/main_window_linux.cpp index 17b2f0b3e..73caee832 100644 --- a/Telegram/SourceFiles/platform/linux/main_window_linux.cpp +++ b/Telegram/SourceFiles/platform/linux/main_window_linux.cpp @@ -200,7 +200,7 @@ QIcon TrayIconGen(int counter, bool muted) { } else { currentImageBack = QImage(cWorkingDir() + "tdata/icon.png"); if (currentImageBack.isNull()) { - currentImageBack = Core::App().logo(); + currentImageBack = Core::App().logo(cCustomAppIcon()); } } diff --git a/Telegram/SourceFiles/platform/win/main_window_win.cpp b/Telegram/SourceFiles/platform/win/main_window_win.cpp index 53e699d9b..0e0164fd6 100644 --- a/Telegram/SourceFiles/platform/win/main_window_win.cpp +++ b/Telegram/SourceFiles/platform/win/main_window_win.cpp @@ -686,7 +686,7 @@ void MainWindow::psSetupTrayIcon() { trayIcon = new QSystemTrayIcon(this); auto icon = QIcon(cWorkingDir() + "tdata/icon.png"); if (icon.isNull()) { - icon = QIcon(App::pixmapFromImageInPlace(Core::App().logoNoMargin())); + icon = QIcon(App::pixmapFromImageInPlace(Core::App().logoNoMargin(cCustomAppIcon()))); } trayIcon->setIcon(icon); diff --git a/Telegram/SourceFiles/settings.cpp b/Telegram/SourceFiles/settings.cpp index 8e859a54b..4b60a46d4 100644 --- a/Telegram/SourceFiles/settings.cpp +++ b/Telegram/SourceFiles/settings.cpp @@ -318,3 +318,4 @@ rpl::producer RecentStickersLimitChanges() { int gUserpicCornersType = 3; bool gShowTopBarUserpic = false; +int gCustomAppIcon = 0; diff --git a/Telegram/SourceFiles/settings.h b/Telegram/SourceFiles/settings.h index dce080b97..bedeba54c 100644 --- a/Telegram/SourceFiles/settings.h +++ b/Telegram/SourceFiles/settings.h @@ -248,3 +248,4 @@ void SetRecentStickersLimit(int limit); DeclareSetting(int, UserpicCornersType); DeclareSetting(bool, ShowTopBarUserpic); +DeclareSetting(int, CustomAppIcon); diff --git a/Telegram/SourceFiles/settings/settings.style b/Telegram/SourceFiles/settings/settings.style index e4e22d777..28b5654cb 100644 --- a/Telegram/SourceFiles/settings/settings.style +++ b/Telegram/SourceFiles/settings/settings.style @@ -61,6 +61,7 @@ settingsIconStickers: icon {{ "settings_stickers", menuIconFg }}; settingsIconEmoji: icon {{ "settings_emoji", menuIconFg }}; settingsIconThemes: icon {{ "settings_themes", menuIconFg }}; settingsIconKotato: icon {{ "settings_kotato", menuIconFg }}; +settingsIconKotatoOld: icon {{ "settings_kotato_old", menuIconFg }}; settingsSetPhotoSkip: 7px; diff --git a/Telegram/SourceFiles/settings/settings_main.cpp b/Telegram/SourceFiles/settings/settings_main.cpp index 006e436ea..0b707cab7 100644 --- a/Telegram/SourceFiles/settings/settings_main.cpp +++ b/Telegram/SourceFiles/settings/settings_main.cpp @@ -108,7 +108,9 @@ void SetupSections( addSection( tr::ktg_settings_kotato(), Type::Kotato, - &st::settingsIconKotato); + (cCustomAppIcon() == 5 + ? &st::settingsIconKotatoOld + : &st::settingsIconKotato)); SetupLanguageButton(container); diff --git a/Telegram/SourceFiles/settings/settings_notifications.cpp b/Telegram/SourceFiles/settings/settings_notifications.cpp index 96b712523..6048848fb 100644 --- a/Telegram/SourceFiles/settings/settings_notifications.cpp +++ b/Telegram/SourceFiles/settings/settings_notifications.cpp @@ -251,7 +251,7 @@ void NotificationsCount::prepareNotificationSampleSmall() { void NotificationsCount::prepareNotificationSampleUserpic() { if (_notificationSampleUserpic.isNull()) { _notificationSampleUserpic = App::pixmapFromImageInPlace( - Core::App().logoNoMargin().scaled( + Core::App().logoNoMargin(cCustomAppIcon()).scaled( st::notifyPhotoSize * cIntRetinaFactor(), st::notifyPhotoSize * cIntRetinaFactor(), Qt::IgnoreAspectRatio, diff --git a/Telegram/SourceFiles/window/main_window.cpp b/Telegram/SourceFiles/window/main_window.cpp index 531733b03..2dd4e18ca 100644 --- a/Telegram/SourceFiles/window/main_window.cpp +++ b/Telegram/SourceFiles/window/main_window.cpp @@ -49,12 +49,24 @@ constexpr auto kSaveWindowPositionTimeout = crl::time(1000); } // namespace -QImage LoadLogo() { - return QImage(qsl(":/gui/art/logo_256.png")); +QString LogoVariant(int variant) { + switch (variant) { + case 1: return QString("_blue"); + case 2: return QString("_green"); + case 3: return QString("_orange"); + case 4: return QString("_red"); + case 5: return QString("_old"); + } + + return QString(); } -QImage LoadLogoNoMargin() { - return QImage(qsl(":/gui/art/logo_256_no_margin.png")); +QImage LoadLogo(int variant) { + return QImage(qsl(":/gui/art/logo_256%1.png").arg(LogoVariant(variant))); +} + +QImage LoadLogoNoMargin(int variant) { + return QImage(qsl(":/gui/art/logo_256_no_margin%1.png").arg(LogoVariant(variant))); } void ConvertIconToBlack(QImage &image) { @@ -106,7 +118,7 @@ void ConvertIconToBlack(QImage &image) { } QIcon CreateOfficialIcon(Main::Account *account) { - auto image = Core::IsAppLaunched() ? Core::App().logo() : LoadLogo(); + auto image = Core::IsAppLaunched() ? Core::App().logo(cCustomAppIcon()) : LoadLogo(cCustomAppIcon()); if (account && account->sessionExists() && account->session().supportMode()) { diff --git a/Telegram/SourceFiles/window/main_window.h b/Telegram/SourceFiles/window/main_window.h index 3282483f0..17c12b462 100644 --- a/Telegram/SourceFiles/window/main_window.h +++ b/Telegram/SourceFiles/window/main_window.h @@ -29,8 +29,9 @@ class SessionController; class TitleWidget; struct TermsLock; -QImage LoadLogo(); -QImage LoadLogoNoMargin(); +QString LogoVariant(int variant = 0); +QImage LoadLogo(int variant = 0); +QImage LoadLogoNoMargin(int variant = 0); QIcon CreateIcon(Main::Account *account = nullptr); void ConvertIconToBlack(QImage &image); diff --git a/Telegram/SourceFiles/window/notifications_manager_default.cpp b/Telegram/SourceFiles/window/notifications_manager_default.cpp index 0d19e5ac7..965da1904 100644 --- a/Telegram/SourceFiles/window/notifications_manager_default.cpp +++ b/Telegram/SourceFiles/window/notifications_manager_default.cpp @@ -88,7 +88,7 @@ Manager::QueuedNotification::QueuedNotification( QPixmap Manager::hiddenUserpicPlaceholder() const { if (_hiddenUserpicPlaceholder.isNull()) { - _hiddenUserpicPlaceholder = App::pixmapFromImageInPlace(Core::App().logoNoMargin().scaled(st::notifyPhotoSize, st::notifyPhotoSize, Qt::IgnoreAspectRatio, Qt::SmoothTransformation)); + _hiddenUserpicPlaceholder = App::pixmapFromImageInPlace(Core::App().logoNoMargin(cCustomAppIcon()).scaled(st::notifyPhotoSize, st::notifyPhotoSize, Qt::IgnoreAspectRatio, Qt::SmoothTransformation)); _hiddenUserpicPlaceholder.setDevicePixelRatio(cRetinaFactor()); } return _hiddenUserpicPlaceholder; diff --git a/Telegram/SourceFiles/window/notifications_utilities.cpp b/Telegram/SourceFiles/window/notifications_utilities.cpp index 43faaf1dd..23cabb57f 100644 --- a/Telegram/SourceFiles/window/notifications_utilities.cpp +++ b/Telegram/SourceFiles/window/notifications_utilities.cpp @@ -57,7 +57,7 @@ QString CachedUserpics::get(const InMemoryKey &key, PeerData *peer) { peer->saveUserpic(v.path, st::notifyMacPhotoSize); } } else { - Core::App().logoNoMargin().save(v.path, "PNG"); + Core::App().logoNoMargin(cCustomAppIcon()).save(v.path, "PNG"); } i = _images.insert(key, v); _someSavedFlag = true; diff --git a/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon128.png b/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon128.png index 59e7e25b3..1db40ee4a 100644 Binary files a/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon128.png and b/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon128.png differ diff --git a/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon128@2x.png b/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon128@2x.png index f4616cc30..fbcd6fab6 100644 Binary files a/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon128@2x.png and b/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon128@2x.png differ diff --git a/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon16.png b/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon16.png index b753bbb18..f3a82511a 100644 Binary files a/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon16.png and b/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon16.png differ diff --git a/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon16@2x.png b/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon16@2x.png index c19f3b6db..cbd1e33bf 100644 Binary files a/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon16@2x.png and b/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon16@2x.png differ diff --git a/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon256.png b/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon256.png index 5ecf12d4a..284b4faf1 100644 Binary files a/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon256.png and b/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon256.png differ diff --git a/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon256@2x.png b/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon256@2x.png index ef4fc7d25..be31e89d5 100644 Binary files a/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon256@2x.png and b/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon256@2x.png differ diff --git a/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon32.png b/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon32.png index 66868915e..8fc510ca1 100644 Binary files a/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon32.png and b/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon32.png differ diff --git a/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon32@2x.png b/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon32@2x.png index 74697abfd..1a8782642 100644 Binary files a/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon32@2x.png and b/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon32@2x.png differ diff --git a/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon512.png b/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon512.png index 28c5b8685..b34f7f4b7 100644 Binary files a/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon512.png and b/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon512.png differ diff --git a/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon512@2x.png b/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon512@2x.png index d9ae73b8e..3d4284673 100644 Binary files a/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon512@2x.png and b/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon512@2x.png differ diff --git a/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_128x128.png b/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_128x128.png index 59e7e25b3..1db40ee4a 100644 Binary files a/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_128x128.png and b/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_128x128.png differ diff --git a/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_128x128@2x.png b/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_128x128@2x.png index f4616cc30..fbcd6fab6 100644 Binary files a/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_128x128@2x.png and b/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_128x128@2x.png differ diff --git a/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_16x16.png b/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_16x16.png index b753bbb18..f3a82511a 100644 Binary files a/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_16x16.png and b/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_16x16.png differ diff --git a/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_16x16@2x.png b/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_16x16@2x.png index c19f3b6db..cbd1e33bf 100644 Binary files a/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_16x16@2x.png and b/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_16x16@2x.png differ diff --git a/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_256x256.png b/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_256x256.png index 5ecf12d4a..284b4faf1 100644 Binary files a/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_256x256.png and b/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_256x256.png differ diff --git a/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_256x256@2x.png b/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_256x256@2x.png index ef4fc7d25..be31e89d5 100644 Binary files a/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_256x256@2x.png and b/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_256x256@2x.png differ diff --git a/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_32x32.png b/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_32x32.png index 66868915e..8fc510ca1 100644 Binary files a/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_32x32.png and b/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_32x32.png differ diff --git a/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_32x32@2x.png b/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_32x32@2x.png index 74697abfd..1a8782642 100644 Binary files a/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_32x32@2x.png and b/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_32x32@2x.png differ diff --git a/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_512x512.png b/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_512x512.png index 28c5b8685..b34f7f4b7 100644 Binary files a/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_512x512.png and b/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_512x512.png differ diff --git a/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_512x512@2x.png b/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_512x512@2x.png index d9ae73b8e..3d4284673 100644 Binary files a/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_512x512@2x.png and b/Telegram/Telegram/Images.xcassets/Icon.iconset/icon_512x512@2x.png differ