diff --git a/Telegram/CMakeLists.txt b/Telegram/CMakeLists.txt index d61a678dd..da5b2e0ad 100644 --- a/Telegram/CMakeLists.txt +++ b/Telegram/CMakeLists.txt @@ -1432,7 +1432,7 @@ PRIVATE qrc/telegram/export.qrc qrc/telegram/telegram.qrc qrc/telegram/sounds.qrc - winrc/Telegram.rc + winrc/Kotatogram.rc winrc/Telegram.manifest langs/lang.strings langs/cloud_lang.strings @@ -1465,7 +1465,39 @@ elseif (APPLE) endif() set(icons_path ${CMAKE_CURRENT_SOURCE_DIR}/Telegram/Images.xcassets) - target_add_resource(Telegram ${icons_path}) + set(appicon_path ${icons_path}/Icon.iconset) + + find_program(ICONUTIL iconutil) + find_program(PNG2ICNS png2icns) + if (ICONUTIL) + add_custom_command( + OUTPUT AppIcon.icns + COMMAND ${ICONUTIL} + ARGS + --convert icns + --output AppIcon.icns + ${appicon_path} + ) + elseif (PNG2ICNS) + add_custom_command( + OUTPUT AppIcon.icns + COMMAND ${PNG2ICNS} + ARGS + AppIcon.icns + ${appicon_path}/icon_16x16.png + ${appicon_path}/icon_32x32.png + ${appicon_path}/icon_128x128.png + ${appicon_path}/icon_256x256.png + ${appicon_path}/icon_512x512.png + ) + endif() + + if (ICONUTIL OR PNG2ICNS) + set_source_files_properties(AppIcon.icns PROPERTIES MACOSX_PACKAGE_LOCATION Resources) + target_add_resource(Telegram AppIcon.icns) + else() + target_add_resource(Telegram ${icons_path}) + endif() set(lang_packs en @@ -1540,10 +1572,15 @@ else() endif() endif() +set(bundle_identifier "io.github.kotatogram") +if (LINUX AND DESKTOP_APP_USE_PACKAGED) + set(output_name "kotatogram-desktop") +else() + set(output_name "Kotatogram") +endif() + if (build_macstore) - set(bundle_identifier "org.telegram.desktop") set(bundle_entitlements "Telegram Lite.entitlements") - set(output_name "Telegram Lite") set_target_properties(Telegram PROPERTIES XCODE_ATTRIBUTE_FRAMEWORK_SEARCH_PATHS ${libs_loc}/breakpad/src/client/mac/build/Release ) @@ -1557,19 +1594,13 @@ if (build_macstore) COMMAND rm -rf $/../Frameworks/Breakpad.framework/Resources/Inspector ) else() - set(bundle_identifier "com.tdesktop.Telegram$<$:Debug>") set(bundle_entitlements "Telegram.entitlements") - if (LINUX AND DESKTOP_APP_USE_PACKAGED) - set(output_name "telegram-desktop") - else() - set(output_name "Telegram") - endif() endif() set_target_properties(Telegram PROPERTIES OUTPUT_NAME ${output_name} MACOSX_BUNDLE_GUI_IDENTIFIER ${bundle_identifier} - MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Telegram.plist + MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Telegram.plist.in XCODE_ATTRIBUTE_CODE_SIGN_ENTITLEMENTS "${CMAKE_CURRENT_SOURCE_DIR}/Telegram/${bundle_entitlements}" XCODE_ATTRIBUTE_PRODUCT_BUNDLE_IDENTIFIER ${bundle_identifier} XCODE_ATTRIBUTE_CURRENT_PROJECT_VERSION ${desktop_app_version_string} @@ -1595,13 +1626,13 @@ target_compile_definitions(Telegram PRIVATE TDESKTOP_API_ID=${TDESKTOP_API_ID} TDESKTOP_API_HASH=${TDESKTOP_API_HASH} - G_LOG_DOMAIN="Telegram" + G_LOG_DOMAIN="Kotatogram" ) if (APPLE OR "${CMAKE_GENERATOR}" STREQUAL "Ninja Multi-Config" OR NOT CMAKE_EXECUTABLE_SUFFIX STREQUAL "" - OR NOT "${output_name}" STREQUAL "Telegram") + OR NOT "${output_name}" STREQUAL "Kotatogram") set(output_folder ${CMAKE_BINARY_DIR}) else() set(output_folder ${CMAKE_BINARY_DIR}/bin) @@ -1653,6 +1684,11 @@ if ((NOT DESKTOP_APP_DISABLE_AUTOUPDATE OR APPLE) AND NOT build_macstore AND NOT _other/updater.h ) + nice_target_sources(Updater ${res_loc} + PRIVATE + winrc/KotatogramUpdater.rc + ) + set_target_properties(Updater PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${output_folder} ) @@ -1719,16 +1755,17 @@ endif() if (LINUX AND DESKTOP_APP_USE_PACKAGED) include(GNUInstallDirs) - configure_file("../lib/xdg/org.telegram.desktop.metainfo.xml" "${CMAKE_CURRENT_BINARY_DIR}/org.telegram.desktop.metainfo.xml" @ONLY) - generate_appdata_changelog(Telegram "${CMAKE_SOURCE_DIR}/changelog.txt" "${CMAKE_CURRENT_BINARY_DIR}/org.telegram.desktop.metainfo.xml") + configure_file("../lib/xdg/io.github.kotatogram.desktop" "${CMAKE_CURRENT_BINARY_DIR}/io.github.kotatogram.desktop" @ONLY) + configure_file("../lib/xdg/io.github.kotatogram.metainfo.xml" "${CMAKE_CURRENT_BINARY_DIR}/io.github.kotatogram.metainfo.xml" @ONLY) + #generate_appdata_changelog(Telegram "${CMAKE_SOURCE_DIR}/changelog.txt" "${CMAKE_CURRENT_BINARY_DIR}/io.github.kotatogram.metainfo.xml") 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 "../lib/xdg/org.telegram.desktop.desktop" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/applications") - install(FILES "${CMAKE_CURRENT_BINARY_DIR}/org.telegram.desktop.metainfo.xml" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/metainfo") + 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//io.github.kotatogram.desktop" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/applications") + install(FILES "${CMAKE_CURRENT_BINARY_DIR}/io.github.kotatogram.metainfo.xml" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/metainfo") endif() diff --git a/Telegram/Resources/art/icon128.png b/Telegram/Resources/art/icon128.png index fc96863ef..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 7943dd19d..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 561369d2b..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 f220a885b..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 8c71faaf6..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 8c4abee16..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 d096c2bd0..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/icon32.png b/Telegram/Resources/art/icon32.png index cff636894..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 22b468746..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 a8299b182..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 69b69d86a..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 cdf2fdab5..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 7c1560fe6..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/icon64.png b/Telegram/Resources/art/icon64.png index b201e31ee..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 61924d136..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 8c4abee16..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_no_margin.png b/Telegram/Resources/art/logo_256_no_margin.png index 00acff3dd..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/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/qrc/telegram/telegram.qrc b/Telegram/Resources/qrc/telegram/telegram.qrc index 8eac62c66..5eefafc1c 100644 --- a/Telegram/Resources/qrc/telegram/telegram.qrc +++ b/Telegram/Resources/qrc/telegram/telegram.qrc @@ -54,6 +54,6 @@ ../../default_shortcuts-custom.json - ../../../../lib/xdg/org.telegram.desktop.desktop + ../../../../lib/xdg/io.github.kotatogram.desktop diff --git a/Telegram/Resources/winrc/Kotatogram.rc b/Telegram/Resources/winrc/Kotatogram.rc new file mode 100644 index 000000000..441af8347 --- /dev/null +++ b/Telegram/Resources/winrc/Kotatogram.rc @@ -0,0 +1,67 @@ +// Microsoft Visual C++ generated resource script. +// + +#define APSTUDIO_READONLY_SYMBOLS +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 2 resource. +// +#include "winres.h" + +///////////////////////////////////////////////////////////////////////////// +#undef APSTUDIO_READONLY_SYMBOLS + +///////////////////////////////////////////////////////////////////////////// +// English (United States) resources + +#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) +LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US +#pragma code_page(1252) + +///////////////////////////////////////////////////////////////////////////// +// +// Icon +// + +// Icon with lowest ID value placed first to ensure application icon +// remains consistent on all systems. +IDI_ICON1 ICON "..\\art\\icon256.ico" + +///////////////////////////////////////////////////////////////////////////// +// +// Version +// + +VS_VERSION_INFO VERSIONINFO + FILEVERSION 1,4,9,0 + PRODUCTVERSION 1,4,9,0 + FILEFLAGSMASK 0x3fL +#ifdef _DEBUG + FILEFLAGS 0x1L +#else + FILEFLAGS 0x0L +#endif + FILEOS 0x40004L + FILETYPE 0x0L + FILESUBTYPE 0x0L +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "040904b0" + BEGIN + VALUE "CompanyName", "Kotatogram" + VALUE "FileDescription", "Kotatogram Desktop" + VALUE "FileVersion", "1.4.9.0" + VALUE "LegalCopyright", "Copyright (C) 2019-2022" + VALUE "ProductName", "Kotatogram Desktop" + VALUE "ProductVersion", "1.4.9.0" + END + END + BLOCK "VarFileInfo" + BEGIN + VALUE "Translation", 0x409, 1200 + END +END + +#endif // English (United States) resources +///////////////////////////////////////////////////////////////////////////// diff --git a/Telegram/Resources/winrc/KotatogramUpdater.rc b/Telegram/Resources/winrc/KotatogramUpdater.rc new file mode 100644 index 000000000..b5c9bbb12 --- /dev/null +++ b/Telegram/Resources/winrc/KotatogramUpdater.rc @@ -0,0 +1,58 @@ +// Microsoft Visual C++ generated resource script. +// + +#define APSTUDIO_READONLY_SYMBOLS +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 2 resource. +// +#include "winres.h" + +///////////////////////////////////////////////////////////////////////////// +#undef APSTUDIO_READONLY_SYMBOLS + +///////////////////////////////////////////////////////////////////////////// +// English (United States) resources + +#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) +LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US +#pragma code_page(1252) + +///////////////////////////////////////////////////////////////////////////// +// +// Version +// + +VS_VERSION_INFO VERSIONINFO + FILEVERSION 1,4,9,0 + PRODUCTVERSION 1,4,9,0 + FILEFLAGSMASK 0x3fL +#ifdef _DEBUG + FILEFLAGS 0x1L +#else + FILEFLAGS 0x0L +#endif + FILEOS 0x40004L + FILETYPE 0x0L + FILESUBTYPE 0x0L +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "040904b0" + BEGIN + VALUE "CompanyName", "Kotatogram" + VALUE "FileDescription", "Kotatogram Desktop Updater" + VALUE "FileVersion", "1.4.9.0" + VALUE "LegalCopyright", "Copyright (C) 2019-2022" + VALUE "ProductName", "Kotatogram Desktop" + VALUE "ProductVersion", "1.4.9.0" + END + END + BLOCK "VarFileInfo" + BEGIN + VALUE "Translation", 0x409, 1200 + END +END + +#endif // English (United States) resources +///////////////////////////////////////////////////////////////////////////// diff --git a/Telegram/SourceFiles/_other/updater_linux.cpp b/Telegram/SourceFiles/_other/updater_linux.cpp index f286b05be..4a935a79c 100644 --- a/Telegram/SourceFiles/_other/updater_linux.cpp +++ b/Telegram/SourceFiles/_other/updater_linux.cpp @@ -267,7 +267,7 @@ bool update(bool writeprotected) { writeLog("Error: bad update, has Updater! '%s' equal '%s'", tofname.c_str(), updaterName.c_str()); delFolder(); return false; - } else if (equal(tofname, exePath + "Telegram") && exeName != "Telegram") { + } else if (equal(tofname, exePath + "Kotatogram") && exeName != "Kotatogram") { string fullBinaryPath = exePath + exeName; writeLog("Target binary found: '%s', changing to '%s'", tofname.c_str(), fullBinaryPath.c_str()); tofname = fullBinaryPath; @@ -394,7 +394,7 @@ int main(int argc, char *argv[]) { } } if (exeName.empty() || exeName.find('/') != string::npos) { - exeName = "Telegram"; + exeName = "Kotatogram"; } openLog(); @@ -426,6 +426,7 @@ int main(int argc, char *argv[]) { customWorkingDir = false; writeLog("No workdir, trying to figure it out"); + /* struct passwd *pw = getpwuid(getuid()); if (pw && pw->pw_dir && strlen(pw->pw_dir)) { string tryDir = pw->pw_dir + string("/.TelegramDesktop/"); @@ -439,6 +440,7 @@ int main(int argc, char *argv[]) { } } } + */ if (workDir.empty()) { workDir = exePath; @@ -505,7 +507,7 @@ int main(int argc, char *argv[]) { } } - writeLog("Executed Telegram, closing log and quitting.."); + writeLog("Executed Kotatogram, closing log and quitting.."); closeLog(); return 0; diff --git a/Telegram/SourceFiles/_other/updater_osx.m b/Telegram/SourceFiles/_other/updater_osx.m index 62aedabc3..4d841723c 100644 --- a/Telegram/SourceFiles/_other/updater_osx.m +++ b/Telegram/SourceFiles/_other/updater_osx.m @@ -8,7 +8,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #import #include -NSString *appName = @"Telegram.app"; +NSString *appName = @"Kotatogram.app"; NSString *appDir = nil; NSString *workDir = nil; @@ -56,7 +56,7 @@ void RemoveQuarantineAttribute(NSString *path) { void RemoveQuarantineFromBundle(NSString *path) { RemoveQuarantineAttribute(path); - RemoveQuarantineAttribute([path stringByAppendingString:@"/Contents/MacOS/Telegram"]); + RemoveQuarantineAttribute([path stringByAppendingString:@"/Contents/MacOS/Kotatogram"]); RemoveQuarantineAttribute([path stringByAppendingString:@"/Contents/Helpers/crashpad_handler"]); RemoveQuarantineAttribute([path stringByAppendingString:@"/Contents/Frameworks/Updater"]); } @@ -163,9 +163,9 @@ int main(int argc, const char * argv[]) { writeLog([@"Starting update files iteration, path: " stringByAppendingString: srcEnum]); - // Take the Updater (this currently running binary) from the place where it was placed by Telegram + // Take the Updater (this currently running binary) from the place where it was placed by Kotatogram // and copy it to the folder with the new version of the app (ready), - // so it won't be deleted when we will clear the "Telegram.app/Contents" folder. + // so it won't be deleted when we will clear the "Kotatogram.app/Contents" folder. NSString *oldVersionUpdaterPath = [appDirFull stringByAppendingString: @"/Contents/Frameworks/Updater" ]; NSString *newVersionUpdaterPath = [srcEnum stringByAppendingString:[[NSArray arrayWithObjects:@"/", appName, @"/Contents/Frameworks/Updater", nil] componentsJoinedByString:@""]]; writeLog([[NSArray arrayWithObjects: @"Copying Updater from old path ", oldVersionUpdaterPath, @" to new path ", newVersionUpdaterPath, nil] componentsJoinedByString:@""]); diff --git a/Telegram/SourceFiles/_other/updater_win.cpp b/Telegram/SourceFiles/_other/updater_win.cpp index 1873815ce..6318c862e 100644 --- a/Telegram/SourceFiles/_other/updater_win.cpp +++ b/Telegram/SourceFiles/_other/updater_win.cpp @@ -204,7 +204,7 @@ bool update() { writeLog(L"Error: bad update, has Updater.exe! '" + tofname + L"' equal '" + updaterName + L"'"); delFolder(); return false; - } else if (equal(tofname, updateTo + L"Telegram.exe") && exeName != L"Telegram.exe") { + } else if (equal(tofname, updateTo + L"Kotatogram.exe") && exeName != L"Kotatogram.exe") { wstring fullBinaryPath = updateTo + exeName; writeLog(L"Target binary found: '" + tofname + L"', changing to '" + fullBinaryPath + L"'"); tofname = fullBinaryPath; @@ -261,7 +261,7 @@ bool update() { if (!copyResult) { writeLog(L"Error: failed to copy, asking to retry.."); WCHAR errMsg[2048]; - wsprintf(errMsg, L"Failed to update Telegram :(\n%s is not accessible.", tofname.c_str()); + wsprintf(errMsg, L"Failed to update Kotatogram :(\n%s is not accessible.", tofname.c_str()); if (MessageBox(0, errMsg, L"Update error!", MB_ICONERROR | MB_RETRYCANCEL) != IDRETRY) { delFolder(); return false; @@ -280,7 +280,7 @@ void updateRegistry() { writeLog(L"Updating registry.."); versionStr[versionLen / 2] = 0; HKEY rkey; - LSTATUS status = RegOpenKeyEx(HKEY_CURRENT_USER, L"Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\{53F49750-6209-4FBF-9CA8-7A333C87D1ED}_is1", 0, KEY_QUERY_VALUE | KEY_SET_VALUE, &rkey); + LSTATUS status = RegOpenKeyEx(HKEY_CURRENT_USER, L"Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\{C4A4AE8F-B9F7-4CC7-8A6C-BF7EEE87ACA5}_is1", 0, KEY_QUERY_VALUE | KEY_SET_VALUE, &rkey); if (status == ERROR_SUCCESS) { writeLog(L"Checking registry install location.."); static const int bufSize = 4096; @@ -307,16 +307,16 @@ void updateRegistry() { SYSTEMTIME stLocalTime; GetLocalTime(&stLocalTime); RegSetValueEx(rkey, L"DisplayVersion", 0, REG_SZ, (const BYTE*)versionStr, ((versionLen / 2) + 1) * sizeof(WCHAR)); - wsprintf(nameStr, L"Telegram Desktop"); + wsprintf(nameStr, L"Kotatogram Desktop"); RegSetValueEx(rkey, L"DisplayName", 0, REG_SZ, (const BYTE*)nameStr, (wcslen(nameStr) + 1) * sizeof(WCHAR)); - wsprintf(publisherStr, L"Telegram FZ-LLC"); + wsprintf(publisherStr, L"Kotatogram"); RegSetValueEx(rkey, L"Publisher", 0, REG_SZ, (const BYTE*)publisherStr, (wcslen(publisherStr) + 1) * sizeof(WCHAR)); - wsprintf(icongroupStr, L"Telegram Desktop"); + wsprintf(icongroupStr, L"Kotatogram Desktop"); RegSetValueEx(rkey, L"Inno Setup: Icon Group", 0, REG_SZ, (const BYTE*)icongroupStr, (wcslen(icongroupStr) + 1) * sizeof(WCHAR)); wsprintf(dateStr, L"%04d%02d%02d", stLocalTime.wYear, stLocalTime.wMonth, stLocalTime.wDay); RegSetValueEx(rkey, L"InstallDate", 0, REG_SZ, (const BYTE*)dateStr, (wcslen(dateStr) + 1) * sizeof(WCHAR)); - const WCHAR *appURL = L"https://desktop.telegram.org"; + const WCHAR *appURL = L"https://t.me/kotatogram"; RegSetValueEx(rkey, L"HelpLink", 0, REG_SZ, (const BYTE*)appURL, (wcslen(appURL) + 1) * sizeof(WCHAR)); RegSetValueEx(rkey, L"URLInfoAbout", 0, REG_SZ, (const BYTE*)appURL, (wcslen(appURL) + 1) * sizeof(WCHAR)); RegSetValueEx(rkey, L"URLUpdateInfo", 0, REG_SZ, (const BYTE*)appURL, (wcslen(appURL) + 1) * sizeof(WCHAR)); @@ -377,14 +377,14 @@ int APIENTRY wWinMain(HINSTANCE instance, HINSTANCE prevInstance, LPWSTR cmdPara exeName = args[i]; for (int j = 0, l = exeName.size(); j < l; ++j) { if (exeName[j] == L'/' || exeName[j] == L'\\') { - exeName = L"Telegram.exe"; + exeName = L"Kotatogram.exe"; break; } } } } if (exeName.empty()) { - exeName = L"Telegram.exe"; + exeName = L"Kotatogram.exe"; } if (needupdate) writeLog(L"Need to update!"); if (autostart) writeLog(L"From autostart!"); @@ -491,7 +491,7 @@ int APIENTRY wWinMain(HINSTANCE instance, HINSTANCE prevInstance, LPWSTR cmdPara return 0; } -static const WCHAR *_programName = L"Telegram Desktop"; // folder in APPDATA, if current path is unavailable for writing +static const WCHAR *_programName = L"Kotatogram Desktop"; // folder in APPDATA, if current path is unavailable for writing static const WCHAR *_exeName = L"Updater.exe"; LPTOP_LEVEL_EXCEPTION_FILTER _oldWndExceptionFilter = 0; diff --git a/Telegram/SourceFiles/core/application.cpp b/Telegram/SourceFiles/core/application.cpp index 4fb01d12b..aab0f4224 100644 --- a/Telegram/SourceFiles/core/application.cpp +++ b/Telegram/SourceFiles/core/application.cpp @@ -1768,7 +1768,7 @@ void Application::RegisterUrlScheme() { : QString(), .protocol = u"tg"_q, .protocolName = u"Telegram Link"_q, - .shortAppName = u"tdesktop"_q, + .shortAppName = u"ktgdesktop"_q, .longAppName = QCoreApplication::applicationName(), .displayAppName = AppName.utf16(), .displayAppDescription = AppName.utf16(), diff --git a/Telegram/SourceFiles/core/crash_report_window.cpp b/Telegram/SourceFiles/core/crash_report_window.cpp index 41bacf4ba..8549595b4 100644 --- a/Telegram/SourceFiles/core/crash_report_window.cpp +++ b/Telegram/SourceFiles/core/crash_report_window.cpp @@ -37,7 +37,7 @@ PreLaunchWindow::PreLaunchWindow(QString title) { setWindowIcon(Window::CreateIcon()); setWindowFlags(Qt::Dialog | Qt::CustomizeWindowHint | Qt::WindowTitleHint | Qt::WindowCloseButtonHint); - setWindowTitle(title.isEmpty() ? u"Telegram"_q : title); + setWindowTitle(title.isEmpty() ? u"Kotatogram"_q : title); QPalette p(palette()); p.setColor(QPalette::Window, QColor(255, 255, 255)); @@ -204,7 +204,7 @@ NotStartedWindow::NotStartedWindow() : _label(this) , _log(this) , _close(this) { - _label.setText(u"Could not start Telegram Desktop!\nYou can see complete log below:"_q); + _label.setText(u"Could not start Kotatogram Desktop!\nYou can see complete log below:"_q); _log.setPlainText(Logs::full()); @@ -346,9 +346,9 @@ LastCrashedWindow::LastCrashedWindow( [=] { networkSettings(); }); if (_sendingState == SendingNoReport) { - _label.setText(u"Last time Telegram Desktop was not closed properly."_q); + _label.setText(u"Last time Kotatogram Desktop was not closed properly."_q); } else { - _label.setText(u"Last time Telegram Desktop crashed :("_q); + _label.setText(u"Last time Kotatogram Desktop crashed :("_q); } if (_updaterData) { @@ -423,7 +423,7 @@ LastCrashedWindow::LastCrashedWindow( } } - _pleaseSendReport.setText(u"Please send us a crash report."_q); + _pleaseSendReport.setText(u"You can view and save your crash report here."_q); _yourReportName.setText(u"Crash ID: %1"_q.arg(QString(_minidumpName).replace(".dmp", ""))); _yourReportName.setCursor(style::cur_text); _yourReportName.setTextInteractionFlags(Qt::TextSelectableByMouse); @@ -439,15 +439,17 @@ LastCrashedWindow::LastCrashedWindow( }); _saveReport.setText(u"SAVE TO FILE"_q); connect(&_saveReport, &QPushButton::clicked, [=] { saveReport(); }); - _getApp.setText(u"GET THE LATEST OFFICIAL VERSION OF TELEGRAM DESKTOP"_q); + _getApp.setText(u"GET THE LATEST OFFICIAL VERSION OF KOTATOGRAM DESKTOP"_q); connect(&_getApp, &QPushButton::clicked, [=] { - QDesktopServices::openUrl(u"https://desktop.telegram.org"_q); + QDesktopServices::openUrl(u"https://kotatgram.github.io"_q); }); + /* _send.setText(u"SEND CRASH REPORT"_q); connect(&_send, &QPushButton::clicked, [=] { sendReport(); }); + */ - _sendSkip.setText(u"SKIP"_q); + _sendSkip.setText(u"CLOSE AND START APP"_q); connect(&_sendSkip, &QPushButton::clicked, [=] { processContinue(); }); _continue.setText(u"CONTINUE"_q); connect(&_continue, &QPushButton::clicked, [=] { processContinue(); }); @@ -574,12 +576,12 @@ void LastCrashedWindow::checkingFinished() { LOG(("Crash report check for sending done, result: %1").arg(QString::fromUtf8(result))); if (result == "Old") { - _pleaseSendReport.setText(u"This report is about some old version of Telegram Desktop."_q); + _pleaseSendReport.setText(u"This report is about some old version of Kotatogram Desktop."_q); _sendingState = SendingTooOld; updateControls(); return; } else if (result == "Unofficial") { - _pleaseSendReport.setText(u"You use some custom version of Telegram Desktop."_q); + _pleaseSendReport.setText(u"You use some custom version of Kotatogram Desktop."_q); _sendingState = SendingUnofficial; updateControls(); return; @@ -656,6 +658,7 @@ void LastCrashedWindow::updateControls() { int padding = _size, h = padding + _networkSettings.height() + padding; _label.show(); + _send.hide(); if (_updaterData) { h += _networkSettings.height() + padding; if (_updaterData->state == UpdatingFail && (_sendingState == SendingNoReport || _sendingState == SendingUpdateCheck)) { @@ -764,7 +767,7 @@ void LastCrashedWindow::updateControls() { if (_sendingState == SendingProgress || _sendingState == SendingUploading) { _send.hide(); } else { - _send.show(); + //_send.show(); } _sendSkip.show(); _continue.hide(); @@ -851,7 +854,7 @@ void LastCrashedWindow::updateControls() { if (_sendingState == SendingProgress || _sendingState == SendingUploading) { _send.hide(); } else { - _send.show(); + //_send.show(); } _sendSkip.show(); if (_sendingState == SendingFail) { @@ -867,7 +870,7 @@ void LastCrashedWindow::updateControls() { h += _networkSettings.height() + padding; } - QSize s(2 * padding + QFontMetrics(_label.font()).horizontalAdvance(u"Last time Telegram Desktop was not closed properly."_q) + padding + _networkSettings.width(), h); + QSize s(2 * padding + QFontMetrics(_label.font()).horizontalAdvance(u"Last time Kotatogram Desktop was not closed properly."_q) + padding + _networkSettings.width(), h); if (s == size()) { resizeEvent(0); } else { @@ -1048,12 +1051,15 @@ void LastCrashedWindow::resizeEvent(QResizeEvent *e) { int padding = _size; _label.move(padding, padding + (_networkSettings.height() - _label.height()) / 2); + /* _send.move(width() - padding - _send.width(), height() - padding - _send.height()); if (_sendingState == SendingProgress || _sendingState == SendingUploading) { _sendSkip.move(width() - padding - _sendSkip.width(), height() - padding - _sendSkip.height()); } else { _sendSkip.move(width() - padding - _send.width() - padding - _sendSkip.width(), height() - padding - _sendSkip.height()); } + */ + _sendSkip.move(width() - padding - _sendSkip.width(), height() - padding - _sendSkip.height()); _updating.move(padding, padding * 2 + _networkSettings.height() + (_networkSettings.height() - _updating.height()) / 2); diff --git a/Telegram/SourceFiles/core/crash_reports.cpp b/Telegram/SourceFiles/core/crash_reports.cpp index be7e77cdd..1ef46dddf 100644 --- a/Telegram/SourceFiles/core/crash_reports.cpp +++ b/Telegram/SourceFiles/core/crash_reports.cpp @@ -414,7 +414,7 @@ StartResult Start() { fclose(f); LOG(("Opened '%1' for reading, the previous " - "Telegram Desktop launch was not finished properly :( " + "Kotatogram Desktop launch was not finished properly :( " "Crash log size: %2").arg(ReportPath).arg(lastdump.size())); return lastdump; diff --git a/Telegram/SourceFiles/core/launcher.cpp b/Telegram/SourceFiles/core/launcher.cpp index 52ebbd7c7..e039d62b9 100644 --- a/Telegram/SourceFiles/core/launcher.cpp +++ b/Telegram/SourceFiles/core/launcher.cpp @@ -305,7 +305,7 @@ void Launcher::init() { prepareSettings(); initQtMessageLogging(); - QApplication::setApplicationName(u"TelegramDesktop"_q); + QApplication::setApplicationName(u"KotatogramDesktop"_q); #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) // fallback session management is useless for tdesktop since it doesn't have @@ -375,7 +375,7 @@ int Launcher::exec() { Platform::start(); auto result = executeApplication(); - DEBUG_LOG(("Telegram finished, result: %1").arg(result)); + DEBUG_LOG(("Kotatogram finished, result: %1").arg(result)); if (!UpdaterDisabled() && cRestartingUpdate()) { DEBUG_LOG(("Sandbox Info: executing updater to install update.")); @@ -383,7 +383,7 @@ int Launcher::exec() { base::Platform::DeleteDirectory(cWorkingDir() + u"tupdates/temp"_q); } } else if (cRestarting()) { - DEBUG_LOG(("Sandbox Info: executing Telegram because of restart.")); + DEBUG_LOG(("Sandbox Info: executing Kotatogram because of restart.")); launchUpdater(UpdaterLaunch::JustRelaunch); } diff --git a/Telegram/SourceFiles/core/shortcuts.cpp b/Telegram/SourceFiles/core/shortcuts.cpp index ef566e64a..37a6f6adb 100644 --- a/Telegram/SourceFiles/core/shortcuts.cpp +++ b/Telegram/SourceFiles/core/shortcuts.cpp @@ -408,7 +408,7 @@ void Manager::writeDefaultFile() { return; } const char *defaultHeader = R"HEADER( -// This is a list of default shortcuts for Telegram Desktop +// This is a list of default shortcuts for Kotatogram Desktop // Please don't modify it, its content is not used in any way // You can place your own shortcuts in the 'shortcuts-custom.json' file diff --git a/Telegram/SourceFiles/core/update_checker.cpp b/Telegram/SourceFiles/core/update_checker.cpp index 590354c56..16c1b5172 100644 --- a/Telegram/SourceFiles/core/update_checker.cpp +++ b/Telegram/SourceFiles/core/update_checker.cpp @@ -1553,7 +1553,7 @@ bool checkReadyUpdate() { QFileInfo updater(cWorkingDir() + u"tupdates/temp/Updater.exe"_q); #elif defined Q_OS_MAC // Q_OS_WIN QString curUpdater = (cExeDir() + cExeName() + u"/Contents/Frameworks/Updater"_q); - QFileInfo updater(cWorkingDir() + u"tupdates/temp/Telegram.app/Contents/Frameworks/Updater"_q); + QFileInfo updater(cWorkingDir() + u"tupdates/temp/Kotatogram.app/Contents/Frameworks/Updater"_q); #elif defined Q_OS_UNIX // Q_OS_MAC QString curUpdater = (cExeDir() + u"Updater"_q); QFileInfo updater(cWorkingDir() + u"tupdates/temp/Updater"_q); @@ -1638,11 +1638,11 @@ void UpdateApplication() { return "https://itunes.apple.com/ae/app/telegram-desktop/id946399090"; #else // OS_WIN_STORE || OS_MAC_STORE if (KSandbox::isFlatpak()) { - return "https://flathub.org/apps/details/org.telegram.desktop"; - } else if (KSandbox::isSnap()) { - return "https://snapcraft.io/telegram-desktop"; + return "https://flathub.org/apps/details/io.github.kotatogram"; + //} else if (KSandbox::isSnap()) { + // return "https://snapcraft.io/telegram-desktop"; } - return "https://desktop.telegram.org"; + return "https://github.com/kotatogram/kotatogram-desktop"; #endif // OS_WIN_STORE || OS_MAC_STORE }(); UrlClickHandler::Open(url); diff --git a/Telegram/SourceFiles/core/version.h b/Telegram/SourceFiles/core/version.h index 0058d08cf..72d9344ee 100644 --- a/Telegram/SourceFiles/core/version.h +++ b/Telegram/SourceFiles/core/version.h @@ -18,10 +18,10 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #endif // TDESKTOP_ALLOW_CLOSED_ALPHA // used in Updater.cpp and Setup.iss for Windows -constexpr auto AppId = "{53F49750-6209-4FBF-9CA8-7A333C87D1ED}"_cs; +constexpr auto AppId = "{C4A4AE8F-B9F7-4CC7-8A6C-BF7EEE87ACA5}"_cs; constexpr auto AppNameOld = "Telegram Win (Unofficial)"_cs; -constexpr auto AppName = "Telegram Desktop"_cs; -constexpr auto AppFile = "Telegram"_cs; +constexpr auto AppName = "Kotatogram Desktop"_cs; +constexpr auto AppFile = "Kotatogram"_cs; constexpr auto AppVersion = 4008004; constexpr auto AppVersionStr = "4.8.4"; constexpr auto AppBetaVersion = false; diff --git a/Telegram/SourceFiles/export/output/export_output_abstract.cpp b/Telegram/SourceFiles/export/output/export_output_abstract.cpp index f9df0d1f7..b02c0e715 100644 --- a/Telegram/SourceFiles/export/output/export_output_abstract.cpp +++ b/Telegram/SourceFiles/export/output/export_output_abstract.cpp @@ -165,8 +165,8 @@ Stats AbstractWriter::produceTestExample( auto sessions = Data::SessionsList(); auto session = Data::Session(); - session.applicationName = "Telegram Desktop"; - session.applicationVersion = "1.3.8"; + session.applicationName = "Kotatogram Desktop"; + session.applicationVersion = "1.8.8"; session.country = "GB"; session.created = date(); session.deviceModel = "PC"; diff --git a/Telegram/SourceFiles/export/output/export_output_html.cpp b/Telegram/SourceFiles/export/output/export_output_html.cpp index 00c4155ad..9d987ec44 100644 --- a/Telegram/SourceFiles/export/output/export_output_html.cpp +++ b/Telegram/SourceFiles/export/output/export_output_html.cpp @@ -938,7 +938,7 @@ auto HtmlWriter::Wrap::pushMessage( dialog, basePath, "This message is not supported by this version " - "of Telegram Desktop. Please update the application.") }; + "of Kotatogram Desktop. Please update the application.") }; } const auto wrapReplyToLink = [&](const QByteArray &text) { diff --git a/Telegram/SourceFiles/intro/intro.style b/Telegram/SourceFiles/intro/intro.style index 042a744b2..e4f1701dd 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 4d7361a88..45c38979b 100644 --- a/Telegram/SourceFiles/intro/intro_step.cpp +++ b/Telegram/SourceFiles/intro/intro_step.cpp @@ -437,7 +437,7 @@ void Step::paintCover(QPainter &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); @@ -445,7 +445,7 @@ void Step::paintCover(QPainter &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/platform/linux/main_window_linux.cpp b/Telegram/SourceFiles/platform/linux/main_window_linux.cpp index 98c6ff40a..135167434 100644 --- a/Telegram/SourceFiles/platform/linux/main_window_linux.cpp +++ b/Telegram/SourceFiles/platform/linux/main_window_linux.cpp @@ -301,7 +301,7 @@ void MainWindow::createGlobalMenu() { }); auto quit = file->addAction( - tr::lng_mac_menu_quit_telegram(tr::now, lt_telegram, u"Telegram"_q), + tr::lng_mac_menu_quit_telegram(tr::now, lt_telegram, u"Kotatogram"_q), this, [=] { quitFromTray(); }, QKeySequence::Quit); @@ -462,7 +462,7 @@ void MainWindow::createGlobalMenu() { tr::lng_mac_menu_about_telegram( tr::now, lt_telegram, - u"Telegram"_q), + u"Kotatogram"_q), [=] { ensureWindowShown(); controller().show(Box()); diff --git a/Telegram/SourceFiles/platform/linux/specific_linux.cpp b/Telegram/SourceFiles/platform/linux/specific_linux.cpp index 64b6b0ff0..e15562352 100644 --- a/Telegram/SourceFiles/platform/linux/specific_linux.cpp +++ b/Telegram/SourceFiles/platform/linux/specific_linux.cpp @@ -55,7 +55,7 @@ using Platform::internal::WaylandIntegration; namespace Platform { namespace { -constexpr auto kDesktopFile = ":/misc/org.telegram.desktop.desktop"_cs; +constexpr auto kDesktopFile = ":/misc/io.github.kotatogram.desktop"_cs; bool PortalAutostart(bool start, bool silent) { if (cExeName().isEmpty()) { @@ -78,7 +78,7 @@ bool PortalAutostart(bool start, bool silent) { activeWindow->widget()->windowHandle()); }(); - const auto handleToken = Glib::ustring("tdesktop") + const auto handleToken = Glib::ustring("ktgdesktop") + std::to_string(base::RandomValue()); std::vector commandline; @@ -287,8 +287,8 @@ bool GenerateDesktopFile( if (!Core::UpdaterDisabled()) { DEBUG_LOG(("App Info: removing old .desktop files")); - QFile::remove(u"%1telegram.desktop"_q.arg(targetPath)); - QFile::remove(u"%1telegramdesktop.desktop"_q.arg(targetPath)); + QFile::remove(u"%1kotatogram.desktop"_q.arg(targetPath)); + QFile::remove(u"%1kotatogramdesktop.desktop"_q.arg(targetPath)); const auto appimagePath = u"file://%1%2"_q.arg( cExeDir(), @@ -314,7 +314,7 @@ bool GenerateDesktopFile( hashMd5Hex(exePath.constData(), exePath.size(), md5Hash); } - QFile::remove(u"%1org.telegram.desktop.%2.desktop"_q.arg( + QFile::remove(u"%1io.github.kotatogram.%2.desktop"_q.arg( targetPath, md5Hash)); } @@ -461,8 +461,8 @@ QString ExecutablePathForShortcuts() { } // namespace Platform QString psAppDataPath() { - // Previously we used ~/.TelegramDesktop, so look there first. - // If we find data there, we should still use it. + // We should not use ~/.TelegramDesktop, since it's a fork. + /* auto home = QDir::homePath(); if (!home.isEmpty()) { auto oldPath = home + u"/.TelegramDesktop/"_q; @@ -473,6 +473,7 @@ QString psAppDataPath() { return oldPath; } } + */ return QStandardPaths::writableLocation(QStandardPaths::AppLocalDataLocation) + '/'; } @@ -529,11 +530,11 @@ void start() { md5Hash.data()); } - return u"org.telegram.desktop._%1.desktop"_q.arg( + return u"io.github.kotatogram._%1.desktop"_q.arg( md5Hash.constData()); } - return u"org.telegram.desktop.desktop"_q; + return u"io.github.kotatogram.desktop"_q; }()); LOG(("Launcher filename: %1").arg(QGuiApplication::desktopFileName())); diff --git a/Telegram/SourceFiles/platform/linux/tray_linux.cpp b/Telegram/SourceFiles/platform/linux/tray_linux.cpp index 2a96e1f1b..6b24b64b1 100644 --- a/Telegram/SourceFiles/platform/linux/tray_linux.cpp +++ b/Telegram/SourceFiles/platform/linux/tray_linux.cpp @@ -70,9 +70,9 @@ private: }; IconGraphic::IconGraphic() -: _panelTrayIconName("telegram-panel") -, _mutePanelTrayIconName("telegram-mute-panel") -, _attentionPanelTrayIconName("telegram-attention-panel") +: _panelTrayIconName("kotatogram-panel") +, _mutePanelTrayIconName("kotatogram-mute-panel") +, _attentionPanelTrayIconName("kotatogram-attention-panel") , _iconSizes{ 16, 22, 24, 32, 48 } { } diff --git a/Telegram/SourceFiles/platform/mac/main_window_mac.mm b/Telegram/SourceFiles/platform/mac/main_window_mac.mm index 71096fac0..87d1d358a 100644 --- a/Telegram/SourceFiles/platform/mac/main_window_mac.mm +++ b/Telegram/SourceFiles/platform/mac/main_window_mac.mm @@ -302,7 +302,7 @@ void MainWindow::createGlobalMenu() { } }; - auto main = psMainMenu.addMenu(u"Telegram"_q); + auto main = psMainMenu.addMenu(u"Kotatogram"_q); { auto callback = [=] { ensureWindowShown(); @@ -312,7 +312,7 @@ void MainWindow::createGlobalMenu() { tr::lng_mac_menu_about_telegram( tr::now, lt_telegram, - u"Telegram"_q), + u"Kotatogram"_q), std::move(callback)) ->setMenuRole(QAction::AboutQtRole); } diff --git a/Telegram/SourceFiles/platform/mac/window_title_mac.mm b/Telegram/SourceFiles/platform/mac/window_title_mac.mm index b18d8c287..f39e3ce3f 100644 --- a/Telegram/SourceFiles/platform/mac/window_title_mac.mm +++ b/Telegram/SourceFiles/platform/mac/window_title_mac.mm @@ -79,7 +79,7 @@ void PreviewWindowTitle(Painter &p, const style::palette &palette, QRect body, i p.setPen(st::titleFgActive[palette]); p.setFont(font); - p.drawText(titleRect, u"Telegram"_q, style::al_center); + p.drawText(titleRect, u"Kotatogram"_q, style::al_center); auto isGraphite = ([NSColor currentControlTint] == NSGraphiteControlTint); auto buttonSkip = 8; diff --git a/Telegram/SourceFiles/platform/win/specific_win.cpp b/Telegram/SourceFiles/platform/win/specific_win.cpp index f8c3e8074..af8db836a 100644 --- a/Telegram/SourceFiles/platform/win/specific_win.cpp +++ b/Telegram/SourceFiles/platform/win/specific_win.cpp @@ -240,7 +240,7 @@ QString psAppDataPath() { if (GetEnvironmentVariable(L"APPDATA", wstrPath, maxFileLen)) { QDir appData(QString::fromStdWString(std::wstring(wstrPath))); #ifdef OS_WIN_STORE - return appData.absolutePath() + u"/Telegram Desktop UWP/"_q; + return appData.absolutePath() + u"/Kotatogram Desktop UWP/"_q; #else // OS_WIN_STORE return appData.absolutePath() + '/' + AppName.utf16() + '/'; #endif // OS_WIN_STORE @@ -321,10 +321,10 @@ void psDoFixPrevious() { HRESULT userDesktopRes = SHGetFolderPath(0, CSIDL_DESKTOPDIRECTORY, 0, SHGFP_TYPE_CURRENT, userDesktopFolder); HRESULT commonDesktopRes = SHGetFolderPath(0, CSIDL_COMMON_DESKTOPDIRECTORY, 0, SHGFP_TYPE_CURRENT, commonDesktopFolder); if (SUCCEEDED(userDesktopRes)) { - userDesktopLnk = QString::fromWCharArray(userDesktopFolder) + "\\Telegram.lnk"; + userDesktopLnk = QString::fromWCharArray(userDesktopFolder) + "\\Kotatogram.lnk"; } if (SUCCEEDED(commonDesktopRes)) { - commonDesktopLnk = QString::fromWCharArray(commonDesktopFolder) + "\\Telegram.lnk"; + commonDesktopLnk = QString::fromWCharArray(commonDesktopFolder) + "\\Kotatogram.lnk"; } QFile userDesktopFile(userDesktopLnk), commonDesktopFile(commonDesktopLnk); if (QFile::exists(userDesktopLnk) && QFile::exists(commonDesktopLnk) && userDesktopLnk != commonDesktopLnk) { @@ -461,8 +461,8 @@ void AutostartToggle(bool enabled, Fn done) { silent, FOLDERID_Startup, L"-autostart", - L"Telegram autorun link.\n" - "You can disable autorun in Telegram settings."); + L"Kotatogram autorun link.\n" + "You can disable autorun in Kotatogram settings."); if (done) { done(enabled && success); } @@ -665,8 +665,8 @@ void psSendToMenu(bool send, bool silent) { silent, FOLDERID_SendTo, L"-sendpath", - L"Telegram send to link.\n" - "You can disable send to menu item in Telegram settings."); + L"Kotatogram send to link.\n" + "You can disable send to menu item in Kotatogram settings."); } bool psLaunchMaps(const Data::LocationPoint &point) { diff --git a/Telegram/SourceFiles/platform/win/windows_app_user_model_id.cpp b/Telegram/SourceFiles/platform/win/windows_app_user_model_id.cpp index 1f5b8ad8d..0a4f2627d 100644 --- a/Telegram/SourceFiles/platform/win/windows_app_user_model_id.cpp +++ b/Telegram/SourceFiles/platform/win/windows_app_user_model_id.cpp @@ -25,11 +25,11 @@ const PROPERTYKEY pkey_AppUserModel_StartPinOption = { { 0x9F4C2855, 0x9F79, 0x4 const PROPERTYKEY pkey_AppUserModel_ToastActivator = { { 0x9F4C2855, 0x9F79, 0x4B39, { 0xA8, 0xD0, 0xE1, 0xD4, 0x2D, 0xE1, 0xD5, 0xF3 } }, 26 }; #ifdef OS_WIN_STORE -const WCHAR AppUserModelIdRelease[] = L"Telegram.TelegramDesktop.Store"; +const WCHAR AppUserModelIdRelease[] = L"Kotatogram.KotatogramDesktop.Store"; #else // OS_WIN_STORE -const WCHAR AppUserModelIdRelease[] = L"Telegram.TelegramDesktop"; +const WCHAR AppUserModelIdRelease[] = L"Kotatogram.KotatogramDesktop"; #endif // OS_WIN_STORE -const WCHAR AppUserModelIdAlpha[] = L"Telegram.TelegramDesktop.Alpha"; +const WCHAR AppUserModelIdAlpha[] = L"Kotatogram.KotatogramDesktop.Alpha"; } // namespace @@ -188,7 +188,7 @@ QString systemShortcutPath() { void cleanupShortcut() { static const int maxFileLen = MAX_PATH * 10; - QString path = systemShortcutPath() + u"Telegram.lnk"_q; + QString path = systemShortcutPath() + u"Kotatogram.lnk"_q; std::wstring p = QDir::toNativeSeparators(path).toStdWString(); DWORD attributes = GetFileAttributes(p.c_str()); @@ -316,19 +316,17 @@ bool validateShortcut() { } if (cAlphaVersion()) { - path += u"TelegramAlpha.lnk"_q; + path += u"KotatogramAlpha.lnk"_q; if (validateShortcutAt(path)) { return true; } } else { - const auto installed = u"Telegram Desktop/Telegram.lnk"_q; - const auto old = u"Telegram Win (Unofficial)/Telegram.lnk"_q; - if (validateShortcutAt(path + installed) - || validateShortcutAt(path + old)) { + const auto installed = u"Kotatogram Desktop/Kotatogram.lnk"_q; + if (validateShortcutAt(path + installed)) { return true; } - path += u"Telegram.lnk"_q; + path += u"Kotatogram.lnk"_q; if (validateShortcutAt(path)) { return true; } diff --git a/Telegram/SourceFiles/settings/settings_notifications.cpp b/Telegram/SourceFiles/settings/settings_notifications.cpp index 6e0163629..18ed82e5f 100644 --- a/Telegram/SourceFiles/settings/settings_notifications.cpp +++ b/Telegram/SourceFiles/settings/settings_notifications.cpp @@ -309,7 +309,7 @@ void NotificationsCount::prepareNotificationSampleLarge() { p.setPen(st::dialogsNameFg); p.setFont(st::msgNameFont); - auto notifyTitle = st::msgNameFont->elided(u"Telegram Desktop"_q, rectForName.width()); + auto notifyTitle = st::msgNameFont->elided(u"Kotatogram Desktop"_q, rectForName.width()); p.drawText(rectForName.left(), rectForName.top() + st::msgNameFont->ascent, notifyTitle); st::notifyClose.icon.paint(p, w - st::notifyClosePos.x() - st::notifyClose.width + st::notifyClose.iconPosition.x(), st::notifyClosePos.y() + st::notifyClose.iconPosition.y(), w); diff --git a/Telegram/SourceFiles/window/main_window.cpp b/Telegram/SourceFiles/window/main_window.cpp index 07c2d8a4d..f4d0876b8 100644 --- a/Telegram/SourceFiles/window/main_window.cpp +++ b/Telegram/SourceFiles/window/main_window.cpp @@ -859,7 +859,7 @@ void MainWindow::updateTitle() { : Dialogs::Key(); const auto thread = key ? key.thread() : nullptr; if (!thread) { - setTitle((user.isEmpty() ? u"Telegram"_q : user) + added); + setTitle((user.isEmpty() ? u"Kotatogram"_q : user) + added); return; } const auto history = thread->owningHistory(); diff --git a/Telegram/SourceFiles/window/notifications_manager_default.cpp b/Telegram/SourceFiles/window/notifications_manager_default.cpp index f68524d1c..72a822675 100644 --- a/Telegram/SourceFiles/window/notifications_manager_default.cpp +++ b/Telegram/SourceFiles/window/notifications_manager_default.cpp @@ -983,7 +983,7 @@ void Notification::updateNotifyDisplay() { : TextWithEntities{ name }; }; auto title = options.hideNameAndPhoto - ? TextWithEntities{ u"Telegram Desktop"_q } + ? TextWithEntities{ u"Kotatogram Desktop"_q } : reminder ? tr::lng_notification_reminder(tr::now, Ui::Text::WithEntities) : topicWithChat(); diff --git a/Telegram/SourceFiles/window/window_main_menu.cpp b/Telegram/SourceFiles/window/window_main_menu.cpp index 305b88329..1d9af541f 100644 --- a/Telegram/SourceFiles/window/window_main_menu.cpp +++ b/Telegram/SourceFiles/window/window_main_menu.cpp @@ -457,29 +457,14 @@ MainMenu::MainMenu( parentResized(); - _telegram->setMarkedText(Ui::Text::Link( - u"Telegram Desktop"_q, - u"https://desktop.telegram.org"_q)); - _telegram->setLinksTrusted(); - _version->setMarkedText( - Ui::Text::Link( - tr::lng_settings_current_version( - tr::now, - lt_version, - currentVersionText()), - 1) // Link 1. - .append(QChar(' ')) - .append(QChar(8211)) - .append(QChar(' ')) - .append(Ui::Text::Link(tr::lng_menu_about(tr::now), 2))); // Link 2. - _version->setLink( + _telegram->setMarkedText(Ui::Text::Link(u"Kotatogram Desktop"_q, 1)); + _telegram->setLink( 1, - std::make_shared(Core::App().changelogLink())); - _version->setLink( - 2, std::make_shared([=] { controller->show(Box()); })); + _version->setMarkedText(Ui::Text::Link(currentVersionText(), 1)); + _version->setLink(1, std::make_shared(qsl("https://github.com/kotatogram/kotatogram-desktop"))); rpl::combine( _toggleAccounts->rightSkipValue(), diff --git a/Telegram/Telegram.plist b/Telegram/Telegram.plist.in similarity index 75% rename from Telegram/Telegram.plist rename to Telegram/Telegram.plist.in index ea6395228..f43c168f5 100644 --- a/Telegram/Telegram.plist +++ b/Telegram/Telegram.plist.in @@ -3,15 +3,19 @@ CFBundleExecutable - $(PRODUCT_NAME) + @output_name@ CFBundleGetInfoString - Telegram Desktop messaging app + Kotatogram Desktop messaging app + CFBundleIconFile + AppIcon.icns + CFBundleIconName + AppIcon.icns CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) + @bundle_identifier@ CFBundlePackageType APPL CFBundleShortVersionString - $(CURRENT_PROJECT_VERSION) + @desktop_app_version_string@ CFBundleSignature ???? CFBundleURLTypes @@ -20,9 +24,9 @@ CFBundleTypeRole Viewer CFBundleURLIconFile - Icon.icns + AppIcon.icns CFBundleURLName - $(PRODUCT_BUNDLE_IDENTIFIER) + @bundle_identifier@ CFBundleURLSchemes tg @@ -30,13 +34,13 @@ CFBundleVersion - $(CURRENT_PROJECT_VERSION) + @desktop_app_version_string@ ITSAppUsesNonExemptEncryption LSApplicationCategoryType public.app-category.social-networking LSMinimumSystemVersion - $(MACOSX_DEPLOYMENT_TARGET) + @CMAKE_OSX_DEPLOYMENT_TARGET@ LSFileQuarantineEnabled NOTE diff --git a/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon128.png b/Telegram/Telegram/Images.xcassets/AppIcon.appiconset/icon128.png index 36d300faa..f306d5bcf 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 cbb2420d3..fc5162719 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 0ba496798..49d1da1ad 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 71066360e..1b8e79cb9 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 38f1c1f4f..900e925f4 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 10d4b1b36..4066c8561 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 ca84cd0e7..12c4294bb 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 53f70ab9c..9cacfcd93 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 7af9b445d..3fb09a4bb 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 708cfb8cc..38d0cc10e 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 36d300faa..f306d5bcf 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 cbb2420d3..fc5162719 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 0ba496798..49d1da1ad 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 71066360e..1b8e79cb9 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 38f1c1f4f..900e925f4 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 10d4b1b36..4066c8561 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 ca84cd0e7..12c4294bb 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 53f70ab9c..9cacfcd93 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 7af9b445d..3fb09a4bb 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 708cfb8cc..38d0cc10e 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 diff --git a/Telegram/build/setup.iss b/Telegram/build/setup.iss index f5975b097..ab6a6e763 100644 --- a/Telegram/build/setup.iss +++ b/Telegram/build/setup.iss @@ -1,9 +1,9 @@ -#define MyAppShortName "Telegram" -#define MyAppName "Telegram Desktop" -#define MyAppPublisher "Telegram FZ-LLC" -#define MyAppURL "https://desktop.telegram.org" -#define MyAppExeName "Telegram.exe" -#define MyAppId "53F49750-6209-4FBF-9CA8-7A333C87D1ED" +#define MyAppShortName "Kotatogram" +#define MyAppName "Kotatogram Desktop" +#define MyAppPublisher "Kotatogram" +#define MyAppURL "https://kotatogram.github.io" +#define MyAppExeName "Kotatogram.exe" +#define MyAppId "C4A4AE8F-B9F7-4CC7-8A6C-BF7EEE87ACA5" #define CurrentYear GetDateTimeString('yyyy','','') [Setup] @@ -24,7 +24,7 @@ AllowNoIcons=yes OutputDir={#ReleasePath} SetupIconFile={#SourcePath}..\Resources\art\icon256.ico UninstallDisplayName={#MyAppName} -UninstallDisplayIcon={app}\Telegram.exe +UninstallDisplayIcon={app}\Kotatogram.exe Compression=lzma SolidCompression=yes DisableStartupPrompt=yes @@ -37,11 +37,11 @@ DisableProgramGroupPage=no #if MyBuildTarget == "win64" ArchitecturesAllowed="x64 arm64" ArchitecturesInstallIn64BitMode="x64 arm64" - OutputBaseFilename=tsetup-x64.{#MyAppVersionFull} + OutputBaseFilename=ksetup-x64.{#MyAppVersionFull} #define ArchModulesFolder "x64" AppVerName={#MyAppName} {#MyAppVersion} 64bit #else - OutputBaseFilename=tsetup.{#MyAppVersionFull} + OutputBaseFilename=ksetup.{#MyAppVersionFull} #define ArchModulesFolder "x86" AppVerName={#MyAppName} {#MyAppVersion} 32bit #endif @@ -64,7 +64,7 @@ Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{ Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; OnlyBelowVersion: 0,6.1 [Files] -Source: "{#ReleasePath}\Telegram.exe"; DestDir: "{app}"; Flags: ignoreversion +Source: "{#ReleasePath}\Kotatogram.exe"; DestDir: "{app}"; Flags: ignoreversion Source: "{#ReleasePath}\Updater.exe"; DestDir: "{app}"; Flags: ignoreversion Source: "{#ReleasePath}\{#ModulesFolder}\d3d\d3dcompiler_47.dll"; DestDir: "{app}\{#ModulesFolder}\d3d"; Flags: ignoreversion ; NOTE: Don't use "Flags: ignoreversion" on any shared system files diff --git a/lib/xdg/io.github.kotatogram.desktop b/lib/xdg/io.github.kotatogram.desktop new file mode 100644 index 000000000..fe690899d --- /dev/null +++ b/lib/xdg/io.github.kotatogram.desktop @@ -0,0 +1,21 @@ +[Desktop Entry] +Name=Kotatogram Desktop +Comment=Experimental Telegram Desktop fork +TryExec=kotatogram-desktop +Exec=kotatogram-desktop -- %u +Icon=kotatogram +Terminal=false +StartupWMClass=KotatogramDesktop +Type=Application +Categories=Chat;Network;InstantMessaging;Qt; +MimeType=x-scheme-handler/tg; +Keywords=tg;chat;im;messaging;messenger;sms;tdesktop;kotatogram; +Actions=quit; +SingleMainWindow=true +X-GNOME-UsesNotifications=true +X-GNOME-SingleWindow=true + +[Desktop Action quit] +Exec=kotatogram-desktop -quit +Name=Quit Kotatogram +Icon=application-exit diff --git a/lib/xdg/io.github.kotatogram.metainfo.xml b/lib/xdg/io.github.kotatogram.metainfo.xml new file mode 100644 index 000000000..bc1b54529 --- /dev/null +++ b/lib/xdg/io.github.kotatogram.metainfo.xml @@ -0,0 +1,465 @@ + + + io.github.kotatogram + CC0-1.0 + GPL-3.0 + Kotatogram Desktop + Kotatogram Desktop messenger + +

Kotatogram Desktop is unofficial messaging based on Telegram Desktop.

+

Telegram is a popular messaging protocol with encryption and security as its key focus.

+
+ + Network + InstantMessaging + + + RadRussianRus + https://kotatogram.github.io/ + https://github.com/kotatogram/kotatogram-desktop/issues + https://github.com/kotatogram/kotatogram-desktop/issues + + + https://raw.githubusercontent.com/kotatogram/kotatogram-desktop/dev/docs/assets/ktg_preview.png + + + + tg + telegram + kotatogram + tdesktop + messaging + messenger + chat + sms + im + + + + +

TDesktop sources were updated to 3.5.2.

+

Also in this update:

+
    +
  • Internal rework of Kotatogram Settings.
  • +
  • Allow select time when jumping to date in chat.
  • +
  • Always show TDesktop's experimental settings and allow their translation.
  • +
  • Make message icon color same as name color.
  • +
  • Fix avatar cropping in Windows system notifications.
  • +
  • Warn when trying to unquoted forward a quiz (by blank-x).
  • +
  • Show "Copy callback data" only for callback buttons (by blank-x).
  • +
  • Go to chat on Shift+Enter in Forward box (by blank-x).
  • +
  • Fix name icons (by blank-x).
  • +
  • Fix tg://user?id links for 64-bit IDs (by blank-x).
  • +
  • Fix showing "Mention user" for channels (by blank-x).
  • +
  • Fix profile pictures rounding (by blank-x).
  • +
  • Fix chat status filters by admin rights (by blank-x).
  • +
  • New Kotatogram macOS icon (by gershik).
  • +
+
+
+ + +

In this update:

+
    +
  • Better font settings.
  • +
  • Fixed severe crash in Saved Messages.
  • +
  • Fixed non-clickable part of message author name if there an icon near it.
  • +
+
+
+ + +

In this update:

+
    +
  • Ability to switch accounts by hotkeys.
  • +
  • Added icon near the author name in message.
  • +
  • Fixed ranks in admin list.
  • +
+
+
+ + +

TDesktop sources were updated to 3.3.

+

Also in this update:

+
    +
  • Ability to disable remembering image compression when sending.
  • +
  • Custom auto-replaces now work without emoji replacement enabled.
  • +
  • Removed window size restiction.
  • +
  • Fixed tg:// link protocol in system.
  • +
  • Fixed "External video player" option.
  • +
+
+
+ + +

TDesktop sources were updated to 3.1.1.

+

Also in this update:

+
    +
  • Fixed caption sending modes in unquoted forward.
  • +
  • Fixed "Qt scaling" option.
  • +
  • Removed duplicate of GIF button in shared media.
  • +
  • Fixed animated emoji size.
  • +
  • Fix custom font size scale.
  • +
+
+
+ + +

TDesktop sources were updated to 3.1.

+

Also in this update:

+
    +
  • Added option to remember forward mode.
  • +
  • Added ability to set default forward mode.
  • +
  • Replaced unquoted forward method with option to restore the old one.
  • +
  • Added option to disable per-chat themes.
  • +
  • Removed GTK integration option, since it's not needed anymore.
  • +
  • Fixed missing sending inline bot response preview option.
  • +
  • Fixed missing sending inline bot response preview in comments and scheduled messages.
  • +
  • Fixed option "Disable edit by Up key" in comments and scheduled messages.
  • +
  • GIF section in shared media and forwarded sticker info are now same as in TDesktop.
  • +
+
+
+ + +

In this update:

+
    +
  • Reworked sending without "via @bot" tag.
  • +
  • Optional hotkeys to restart application and to reload Kotatogram translation.
  • +
  • Fixed blocking user in "Recent Actions".
  • +
  • Updated translations, including phrases from previous version.
  • +
  • Fixed errors and crashes in AppImage related to gdk-pixbuf.
  • +
+
+
+ + +

TDesktop sources were updated to 2.8.11.

+

Also in this update:

+
    +
  • Manually choose notification mute time.
  • +
  • Auto-login option for Telegram sites.
  • +
  • Multi-threaded video decoding option.
  • +
  • External video player.
  • +
  • Sending without "via @bot" mark.
  • +
  • Font size JSON option.
  • +
  • Backported message self-destruct 1 month option.
  • +
  • Localized self-destruct messages button to Russian.
  • +
  • Fixed missing "Copy Share Link" in forward window when a single album is selected.
  • +
  • Fixed applying of some bundled Kotatogram translations.
  • +
+
+
+ + +

TDesktop sources were updated to 2.7.4.

+

Also in this update:

+
    +
  • Separate Kotatogram's MPRIS and TDesktop's MPRIS.
  • +
  • Fix crash on right clicking emoji button.
  • +
  • Attempt to fix repeating changelogs.
  • +
  • Smaller font for options with radio buttons.
  • +
  • Don't show top notification switch in own profile.
  • +
  • Remove unnecessary separator in own profile.
  • +
  • Fix dependent separated "Send stickers and GIFs" restriction.
  • +
  • Updated translations.
  • +
+
+
+ + +

TDesktop sources were updated to 2.7.1.

+

Also in this update:

+
    +
  • Ability to forward messages without author.
  • +
  • Local folders.
  • +
  • Ability to set API ID and hash by start parameter or environment variable.
  • +
  • Use checkboxes in polls with multiple answers.
  • +
  • Reworked admins info.
  • +
  • Show group type in chat lists.
  • +
  • Show star icon for groups where you're an admin.
  • +
  • Do not notify when pinning by default.
  • +
  • Ability to mention user from context menu in members list.
  • +
  • Improved theme keys search.
  • +
  • Experimental top bar customization.
  • +
  • Reworked changning time when scheduling messages.
  • +
  • Improved keyboard navigation for calendar.
  • +
  • Ability to jump to date in chat (Ctrl+H by default).
  • +
  • Use ghost icon from Android app.
  • +
  • Hide Edit and All Chats from context menu.
  • +
  • Show button to remove recent sticker.
  • +
  • Option to retain selection after forward.
  • +
  • Hide account name in notification if it's the current one.
  • +
  • Possible fix for crash on Permissions click in profile.
  • +
  • Fix for crash on profile double open in blocked users list.
  • +
  • Option to disable monospace bubbles expansion (user-contributed).
  • +
  • Click-to-copy for ID, phone and username in profile.
  • +
  • Revoke messages by default.
  • +
  • Additional info for chats in folders.
  • +
  • Manage buttons in profile.
  • +
  • Forward to multiple chats.
  • +
  • Allow add up to 10 accounts in 32-bit build and up to 100 in 64 bit builds.
  • +
  • Do not share phone number by default (from 64Gram).
  • +
  • GIFs shared media section (from 64Gram).
  • +
  • Uwrapped "Stickers and GIFs" permission (from 64Gram).
  • +
  • Option to disable emoji panel on hover.
  • +
  • Option to use native window frame on Windows and macOS.
  • +
  • Option to disable tray counter.
  • +
  • Option to use Telegram tray icon on Linux panels.
  • +
  • Set media clear limit down to 1 day.
  • +
  • Many translations from Crowdin page.
  • +
+
+
+ + +

TDesktop sources were updated to 2.3.2.

+

Also in this update:

+
    +
  • Ability to forward messages without author.
  • +
  • Local folders.
  • +
  • Ability to set API ID and hash by start parameter or environment variable.
  • +
  • Use checkboxes in polls with multiple answers.
  • +
  • Reworked admins info.
  • +
  • Show group type in chat lists.
  • +
  • Show star icon for groups where you're an admin.
  • +
  • Do not notify when pinning by default.
  • +
  • Ability to mention user from context menu in members list.
  • +
  • Open pop-up emoji panel on RMB when disabled by hover.
  • +
  • Improved theme keys search.
  • +
  • Experimental top bar customization.
  • +
  • Reworked changning time when scheduling messages.
  • +
  • Improved keyboard navigation for calendar.
  • +
  • Italian translation (by alsoGAMER and CrisMystik).
  • +
  • Ability to jump to date in chat (Ctrl+J by default).
  • +
  • Use ghost icon from Android app.
  • +
  • Hide Edit and All Chats from context menu.
  • +
  • Show button to remove recent sticker.
  • +
  • Portuguese (Brasil) translation (by lipetst).
  • +
+
+
+ + +

TDesktop sources were updated to 2.1.18.

+

Also in this update:

+
    +
  • Restored one-click forward to Saved Messages.
  • +
  • Ability to go to chat from forward when selecting one.
  • +
  • Make retaining selection after forward optional.
  • +
  • Option to open chat on click in forward.
  • +
  • Hide account name in notification if it's the current one.
  • +
  • Possible fix for crash on Permissions click in profile.
  • +
  • Turkish translation (by disk3).
  • +
  • Polish translation (by Sebek).
  • +
+
+
+ + +

TDesktop sources were updated to 2.1.17.

+

Also in this update:

+
    +
  • Option to disable monospace bubbles expansion (user-contributed).
  • +
  • Click-to-copy for ID, phone and username in profile.
  • +
  • Revoke messages by default.
  • +
  • Additional info for chats in folders.
  • +
  • Manage buttons in profile.
  • +
  • Forward to multiple chats.
  • +
  • Allow add up to 10 accounts.
  • +
  • Do not share phone number by default (from TDesktop-x64).
  • +
  • GIFs shared media section (from TDesktop-x64).
  • +
  • Uwrapped "Stickers and GIFs" permission (from TDesktop-x64).
  • +
  • Ukranian translation (by winqooq).
  • +
+
+
+ + +

TDesktop sources were updated to 2.1.6.

+

Also in this update:

+
    +
  • Option to disable emoji panel on hover.
  • +
  • Option to use native window frame on Windows and macOS.
  • +
  • Option to disable tray counter.
  • +
  • Option to use Telegram tray icon on Linux panels.
  • +
  • Set media clear limit down to 1 day.
  • +
+
+
+ + +

TDesktop sources were updated to 2.1.4.

+
+
+ + +

TDesktop sources were updated to 2.1.2.

+

Also in this update:

+
    +
  • Optional Bot API chat ID format.
  • +
  • Message ID in date tooltip.
  • +
  • Option to scale sticker width along with height.
  • +
  • Show time of service message.
  • +
+
+
+ + +

TDesktop sources were updated to 2.1.1.

+

1.3.2 had crash with "All chats" enabled, so there is 1.3.3.

+
+
+ + +

TDesktop sources were updated to 2.1.1.

+
+
+ + +

Some post-release bugfixes, including folder names.

+
+
+ + +

TDesktop sources were updated to 2.1.

+

Also in this update:

+
    +
  • Search messages from user from context menu.
  • +
  • "query" parameter for tg://resolve and t.me links to set search query.
  • +
  • Select and copy text in link open box and bot button click.
  • +
  • Select and copy text of poll explanation, showing it in box.
  • +
  • Added two existed options to menu: tray icon and profile picture rounding.
  • +
  • Suggest to hide pinned message when unpinning.
  • +
  • Show Discuss button even if you haven't subscribed to channel.
  • +
+
+
+ + +

TDesktop sources were updated to 2.0.1.

+

Also in this update:

+
    +
  • Option to hide All chats folder.
  • +
+
+
+ + +

TDesktop sources were updated to 2.0.

+

Also in this update:

+
    +
  • Option to set default folder. Also added context menu to All chats filter.
  • +
  • Option to show only unmuted chats in folder counter.
  • +
  • Option to hide Edit button in folder sidebar.
  • +
  • Compact folder sidebar option.
  • +
  • Restored unreleased notification toggle as option.
  • +
  • tg://settings/kotato link to open Kotatogram Settings. Also added three-dots menu there.
  • +
+
+
+ + +

TDesktop sources were updated to 1.9.21.

+

Also in this update:

+
    +
  • New logo and option to choose alternative icons.
  • +
  • Support for taskbar flashing alert.
  • +
  • Bot privacy status in members list.
  • +
  • Custom tray and taskbar icon.
  • +
  • Show working dir in tray icon tooltip.
  • +
  • Option to change rounding of profile pictures.
  • +
  • Option to always show profile picture in top bar.
  • +
  • Ban members option in Recent Actions.
  • +
  • Control notification sound from tray menu.
  • +
  • Option to change recent stickers show limit (up to 200 or disable at all).
  • +
  • Show video playback controls for GIFs.
  • +
  • Allow up to 64px as minimal sticker size.
  • +
  • Optional confirmation before calling.
  • +
  • "Disable Up to edit" now in options menu.
  • +
  • Option to use original font height.
  • +
+
+
+ + +

TDesktop sources were updated to 1.9.20 beta.

+

Also in this update:

+
    +
  • Support for taskbar flashing alert.
  • +
  • Bot privacy status in members list.
  • +
  • Custom tray and taskbar icon.
  • +
  • Show working dir in tray icon tooltip.
  • +
  • Option to change rounding of profile pictures.
  • +
  • Option to always show profile picture in top bar.
  • +
  • Ban members option in Recent Actions.
  • +
+
+
+ + +

TDesktop sources were updated to 1.9.19 beta.

+

Also in this update:

+
    +
  • Control notification sound from tray menu.
  • +
  • Option to change recent stickers show limit (up to 200 or disable at all).
  • +
  • Show video playback controls for GIFs.
  • +
+
+
+ + +

TDesktop sources were updated to 1.9.10 beta.

+

Also in this update:

+
    +
  • Allow up to 64px as minimal sticker size.
  • +
  • Optional confirmation before calling.
  • +
  • "Disable Up to edit" now in options menu.
  • +
  • Option to use original font height.
  • +
+
+
+ + +

TDesktop sources were updated to 1.9.9.

+

Also in this update:

+
    +
  • Custom instant replaces in JSON settings.
  • +
  • Ability to use system font (user-contributed).
  • +
+
+
+
+ + none + none + none + none + none + none + none + none + none + none + none + none + none + none + none + none + none + none + none + none + intense + none + intense + none + intense + none + none + + + kotatogram-desktop + +
diff --git a/lib/xdg/org.telegram.desktop.metainfo.xml b/lib/xdg/org.telegram.desktop.metainfo.xml deleted file mode 100644 index d787eada9..000000000 --- a/lib/xdg/org.telegram.desktop.metainfo.xml +++ /dev/null @@ -1,90 +0,0 @@ - - - org.telegram.desktop - CC0-1.0 - GPL-3.0 - Telegram Desktop - Fast. Secure. Powerful. - -

Pure instant messaging — simple, fast, secure, and synced across all your devices. One of the world's top 10 most downloaded apps with over 500 million active users.

-

FAST: Telegram is the fastest messaging app on the market, connecting people via a unique, distributed network of data centers around the globe.

-

SYNCED: You can access your messages from all your phones, tablets and computers at once. Telegram apps are standalone, so you don’t need to keep your phone connected. Start typing on one device and finish the message from another. Never lose your data again.

-

UNLIMITED: You can send media and files, without any limits on their type and size. Your entire chat history will require no disk space on your device, and will be securely stored in the Telegram cloud for as long as you need it.

-

SECURE: We made it our mission to provide the best security combined with ease of use. Everything on Telegram, including chats, groups, media, etc. is encrypted using a combination of 256-bit symmetric AES encryption, 2048-bit RSA encryption, and Diffie–Hellman secure key exchange.

-

100% FREE & OPEN: Telegram has a fully documented and free API for developers, open source apps and verifiable builds to prove the app you download is built from the exact same source code that is published.

-

POWERFUL: You can create group chats with up to 200,000 members, share large videos, documents of any type (.DOCX, .MP3, .ZIP, etc.) up to 2 GB each, and even set up bots for specific tasks. Telegram is the perfect tool for hosting online communities and coordinating teamwork.

-

RELIABLE: Built to deliver your messages using as little data as possible, Telegram is the most reliable messaging system ever made. It works even on the weakest mobile connections.

-

FUN: Telegram has powerful photo and video editing tools, animated stickers and emoji, fully customizable themes to change the appearance of your app, and an open sticker/GIF platform to cater to all your expressive needs.

-

SIMPLE: While providing an unprecedented array of features, we take great care to keep the interface clean. Telegram is so simple you already know how to use it.

-

PRIVATE: We take your privacy seriously and will never give any third parties access to your data. You can delete any message you ever sent or received for both sides, at any time and without a trace. Telegram will never use your data to show you ads.

-

We keep expanding the boundaries of what you can do with a messaging app. Don’t wait years for older messengers to catch up with Telegram — join the revolution today.

-
- - Network - InstantMessaging - - johnprestonmail_at_gmail.com - John Preston - https://desktop.telegram.org/ - https://github.com/telegramdesktop/tdesktop/issues - https://translations.telegram.org/ - https://github.com/telegramdesktop/tdesktop/blob/dev/.github/CONTRIBUTING.md - - - https://raw.githubusercontent.com/telegramdesktop/tdesktop/dev/docs/assets/preview.png - - - - tg - telegram - tdesktop - messaging - messenger - chat - sms - im - - - medium - always - - - pointing - keyboard - touch - - - none - none - none - none - none - none - none - none - none - none - none - none - none - none - none - none - none - none - none - none - intense - none - intense - none - intense - intense - none - moderate - - org.telegram.desktop.desktop - - telegram-desktop - -