GitHub

VK Desktop 1.0.0-alpha.0

Встаем на путь к релизу 1.0.0 версии, начиная с нулевой альфы. Мы переписали приложение, перешли на новые технологии и изменили подход к разработке, поставив в приоритет самые важные фичи для удобного общения

Постарались сохранить основные возможности из предыдущих версий, и дополнительно поддержали еще несколько:

Нововведения

  • 🔥 Прикрепление фотографий через буфер обмена или через выбор файлов с устройства
  • 🔥 Быстрая авторизация по QR-коду.
    Можно навестись камерой, либо вручную перейти по ссылке с мобильного устройства
  • Прослушивание голосовых сообщений
  • Переход к оригиналу из пересланных сообщений
  • Поддержка системной темы. Она будет использоваться по умолчанию
  • Добавлена возможность выставить окно поверх остальных окон
  • Кастомный тайтлбар теперь по умолчанию выключен, за исключением Windows ниже 10 версии
  • Все цвета теперь берутся из VKCOM/VKUI схемы, а не выдумываются разработчиком
  • Реализовано честное ограничение на количество запросов к API в секунду (используя семафор), а так же добавлен экспоненциальный бэкофф после неудачных запросов
  • Базовые интерактивные элементы по типу ссылок и кнопок теперь умеют выделяться при фокусировании через Tab. При этом при обычных нажатиях такого выделения происходить так же не будет
  • На модалки при их открытии теперь автоматически навешивается фокус, чтобы случайно не совершить непреднамеренных действий с элементами вне модалки.
    Также больше не получится вывести фокус за пределы модалки используя Tab

Производительность

  • ⚡ Значительно увеличена скорость выполнения запросов к API, за счет чего приложение стало гораздо отзывчивее (из-за перехода с require('https').request на window.fetch)

Фикс багов

  • ⚡ Переписана авторизация, исправлены многочисленные проблемы со входом
  • Синхронизирована высота шрифта между платформами, минимизированы проблемы с кривым расположением текста
  • При запуске приложения, в которой включена темная тема, теперь не мелькает белый фон
  • При перемещении приложения по экрану теперь сохраняется его положение для последующих запусков.
    Ранее позиция сохранялась только при изменении размера приложения
  • На Windows при включенной темной теме тайтлбар теперь соответствует темной теме, а не светит белым цветом

Технические изменения

  • ⚡ Кодовая база переписана на TypeScript
  • В качестве сборщика кода вместо webpack теперь используется vite, что ускорило скорость сборки и HMR
  • Вместо .vue файлов теперь используются .tsx файлы с компонентами в стиле React
  • Добавлены git-хуки: post-checkout (yarn install) и pre-push (yarn lint-staged)
  • eslint-конфиг был разделен на 2 конфига: один для редактора кода, где выключены некоторые правила, которые часто мешают во время разработки, а другой для pre-push хука или для ручного запуска по всему проекту, где все нужные правила включены
  • Теперь в режиме разработки в системной консоли больше не будет варнингов о потенциальной утечке памяти из-за отсутствия отписки от electron-событий при перезагрузке страницы (см. subscribeToElectronEvent)

VK Desktop 0.3.3

Нововведения

  • 🔥 Темная тема
  • 🔥 Поддержка Apple Silicon
  • На macOS улучшена поддержка сочетаний клавиш: теперь Cmd+W скрывает окно, а Cmd+Q закрывает его (fix #68)
  • На macOS появился счетчик уведомлений в иконке приложения (fix #69)
  • Возможность включить системный тайтлбар (fix #65)
  • По умолчанию нечиталка теперь выключена (fix #67)
  • Снекбары стали круче: теперь при наведении на них сбрасывается таймер до закрытия снекбара, а так же теперь можно выделить и скопировать текст из них
  • Освежен дизайн контекстных и экшн меню: иконки заменены на outline варианты и были покрашены в синий и красный цвета
  • Обновлен дизайн меню действий при выделении сообщений
  • Обновился установщик для винды. Теперь он выглядит свежее, а не как из Windows XP
  • Добавлена поддержка донат-бесед и донат-постов

Фиксы багов

  • ⚡ Теперь заработала авторизация
  • ⚡ Теперь отображаются vmoji стикеры
  • При завершении сессии (протух токен, заблокирован пользователь) теперь происходит полный выход из аккаунта (все так же предварительно предупредив об этом). Ранее аккаунт сохранялся в списке под формой авторизации
  • При наведении на ссылку теперь показывается декодированный вид ссылки
  • Теперь закрепление старой беседы с другого устройства не приводит к ошибке
  • Подтянут внешний вид отдельно на Windows и macOS: теперь отступы и центровка текста на обеих платформах должна быть одинаковой
  • Множество фиксов стилей для вложений

Не запускается приложение на macOS arm64

Такое может произойти, потому что приложение не подписано (ибо для этого нужно платить 100$ в год)

Решение 1:
Установите приложение
Откройте папку приложений и консоль и введите:
xattr -r -d com.apple.quarantine , добавьте пробел в конце и переместите приложение из папки в консоль
Отправьте команду
Пользуйтесь приложением

Решение 2:
Соберите приложение самостоятельно по инструкции из README.md

VK Desktop 0.3.2

Нововведения

  • Субпиксельный антиалиасинг текста во всем приложении ( 6284ec5 , ca16d93 )
  • Редизайн модальных окон ( ca16d93 )

Фиксы багов

  • Теперь обрабатывается ошибка сети с кодом EAI_AGAIN ( daaf050 )

VK Desktop 0.3.1

Нововведения

  • Субпиксельный антиалиасинг: текст выглядит гораздо четче ( b9c8f63 )
  • Возможность выйти из аккаунта (в окошке при нажатии на иконку профиля) ( 464d35a )
  • Поддержка новых вложений (за счет переиспользования компонента сниппета)
  • Автоматическая анимация стикеров при отправке собеседником ( d09b642 )
    • и возможность отключить ее в настройках ( 9d2a574 )
  • Обновлены эмодзи ( 9afb296 )
  • Возможность переключиться на системные эмодзи в настройках ( 69aca0e )
  • Улучшено отображение сниппетов ( 12d415a , 85ba86e , b0afd5c )

Фиксы багов

  • Исправлена работа авторизации
    • У некоторых пользователей не работала простая авторизация ( e85c1b6 )
    • У всех пользователей не работала авторизация по смс ( 67e1ebe )
  • Не обновлялись вложения при редактировании сообщений ( af73c83 )
  • Исправления по отображению фотографий ( cabb718 , d7e1874 , 34cae1b )
  • Немного уменьшен межсимвольный интервал на macOS ( 3b58dad )
  • Увеличена стабильность модуля запросов в сеть ( e3d9e88 , 8cda566 , a0a92d2 )
  • Не отображались удаленные комментарии ( f4ee302 )
  • В некоторых случаях не работал ответ на сообщения ( fd836b0 )
  • Увеличено минимальное время работы ripple-анимации ( f6e154c )
  • Исправлен прыжок скролла при загрузке записи на стене с длинным текстом ( 26c1bee )
  • Не работал переход к отправляющемуся сообщению ( 9a95395 )
  • Больше нельзя выделить отправляемое сообщение ( 7f1cd88 )
  • Исправлено поведение кнопки скролла вниз во время скролла вниз ( 1cf8bd3 )
  • Переход только к сообщениям ниже при нажатии на кнопку для скролла вниз ( 44f2cb3 )
  • Появлялась ошибка при удалении нескольких сообщений модератора беседы ( d3942ed )

Оптимизация

  • Рендер только новых сообщений в списке ( 428aefa )
  • Небольшая оптимизация производительности скроллинга ( 3ea3789 )

VK Desktop 0.3.0

Нововведения

  • Редизайн ( 7c7c934 , dd32c02 , 1df93d4 )
  • Поддержка вложений:
    • Записи на стене ( ba28fa4 , a2e4517 )
    • Комментарии на стене ( 1cbe24d )
    • Документы ( 9b5f941 )
    • Сниппеты ( 3f11f95 )
    • Сетка фотографий (фотографии, видео, фото-документы) ( 2e291af )
  • Обновление авторизации: ( ef6c2b6 , d6700e4 , 05954f2 )
    • Теперь ошибки при авторизации показываются в снекбарах
    • При добавлении нового аккаунта будет происходить переброс на страницу авторизации, а не открываться модалка
    • Список аккаунтов отображается напрямую под авторизацией, а не в отдельной модалке
  • Обновление снекбаров:
    • Теперь они отображаются по одному и показываются по очереди ( fd65fed )
    • Теперь в них отображаются эмодзи и их можно закрыть ( 8a4ee0c )
  • Поддержка хештегов ( cc9b460 , 13b193d )
  • Переход по ссылкам в беседы внутри приложения ( 35a87ee )
  • Переход на Electron 8 и проверка орфографии ( 5933a0e )
  • Упрощенная смена аккаунта с новым дизайном ( c601c4a )
  • Сохранение состояния бесед и возможность перехода между беседами ( fcdb2c0 )
  • Поддержка новых типов тайпинга: загрузка фотографии, видеозаписи и файла ( 4b4dd47 )
  • Отображение платформы и названия приложения в истории активности ( 47d4235 )
  • Отображение меню действий при наведении на иконку, а не при клике ( efb0dda , bfdada9 )
  • Возможность удалять сообщения модераторов, когда ты админ беседы ( 8262f7c )
  • Улучшенное определение ссылок ( 3b8868b , adc09fc )
  • Поддержка новых сервисных сообщений ( f75250f )
  • Поддержка callback-кнопок ( c39ac10 , ac15eef , e60a2ac )
  • Закрепление бесед ( 4ac10fb )
  • Сохранение позиции скролла при закрытии беседы до загрузки сообщений ( 50b8f39 , 58f8ebd )
  • Отображение фотографии в сервисном сообщении обновления фотографии ( e63128b )
  • Отображение массовых упоминаний (@все, @онлайн и их вариации) ( 76de798 )
  • Частично работающая история переходов ( cef6643 )
  • Теперь скроллбар не отображается при открытии беседы и написании нового сообщения ( af5dcbd )
  • Отображение вложений "куратор" и "сюжет" ( a45b4f9 )

Фиксы багов

  • Фокусировался инпут при отмене ответа на сообщение или пересылаемых сообщений ( 9184e40 )
  • Не работала подгрузка имени пользователя в сервисных сообщениях ( 11f4433 )
  • При выборе беседы для пересылки сообщений отображались беседы, в которые нельзя писать ( b3a2692 , fd9fd79 , d9da9e4 )
  • Не работала пересылка сообщений в другие беседы ( 855fcb9 )
  • Исправления для функции удаления сообщений ( 8334edd , 18ce674 , c51cb6a )
  • Отображение переносов строк в пересланных сообщениях ( f2ba299 )
  • Сохранение состояния пути при переходе между разделами ( d1386dd )
  • Не работал скролл при наведении на скроллбар ( 0f14d91 )
  • Не закрывалось контекстное меню при удалении беседы или сообщения ( 68a1114 )
  • Без описания: 71ae60e 65108c1 b0ebf3b 51c06bd 1a1de1f 892bd44 7e11e15

Оптимизация

  • Более быстрая первая загрузка списка диалогов ( 68ad9ed )
  • Использование URLSearchParams вместо модуля querystring ( 4798788 )
  • Использование приходящих в LongPoll готовых вложений ( e7c37c5 )
  • Асинхронный вызов методов VK API ( 9506194 )
  • Оптимизация прочтения сообщений ( f14c449 )
  • Более быстрое отображение сообщения с ответом на сообщение ( ccd6131 )

VK Desktop 0.3.0-alpha.4

Pre-release

Нововведения

  • Теперь контекстное меню можно закрыть нажатием на Esc
  • Иконка меню была переведена в svg ( 9a242b0 )
  • Отображение ответов на сообщения ( 9006ca3 )
  • Возможность отвечать на сообщения ( 6ae781f , 4a60bff )
  • Теперь время в исчезающих сообщениях по умолчанию скрыто. Его можно посмотреть при клике на иконку бомбочки, которое скроется через 5 секунд ( 356f5e9 )
  • Отображение пересланных сообщений ( de379fb , d57b0e9 , 3879179 , 88422a8 )
  • Возможность пересылать сообщения ( bc8b2f2 , 857003c )
  • Добавлено отображение сервисного сообщения группового звонка ( be3c71d )
  • Отображение обычных и анимированных стикеров ( 4a46a84 , 2be8d9e , 582e44d , cd3d197 )
  • Теперь инлайн клавиатура отображается внутри сообщения ( 1bdf606 , e87aa82 )
  • При нажатии на край эмодзи в поле для ввода текста каретка будет поставлена до или после самого эмодзи ( 52938bc )

Фиксы багов

  • Исправлено обновление первой кнопки при смене клавиатуры для ботов ( 27ba152 )
  • Теперь при нажатии на беседу с сообщением в поиске по списку диалогов будет происходить переход к этому сообщению ( 68ac2f9 )
  • Исправлен переход к сообщениям, чья высота больше видимой высоты списка сообщений ( f83fd33 )
  • Теперь количество сообщений в меню не отображается, если оно равно нулю ( 72e7f64 )
  • Исправлено некорректное положение кнопок в карусели для ботов ( abd3b93 )
  • Исправлено определение как продолжение ссылки всех символов, находящихся после " или ) (такое можно было встретить в JSON) ( 1756a62 , 1c68482 )
  • Исправлено отображение эмодзи в поле для ввода текста при его вводе через панель эмодзи windows 10 ( 58a2a93 , 2b5922b )

VK Desktop 0.3.0-alpha.3

Pre-release

Приложение снова пишется с нуля, поэтому сейчас в приложении не реализовано ни одного вложения.
Но все остальное есть и даже реализованы новые фичи!

Нововведения

  • В проект был добавлен ESLint, чтобы улучшить код и исправить всевозможные глупые ошибки перед коммитом
  • Произведен переход на бета версию Vue 3.0
  • Перенесены все цвета в переменную. Часть цветовой палитры была изменена и уменьшена
  • Улучшен дизайн меню и некоторых других частей приложения
  • Реализован парсер ссылок ( d4965fa , aeb043c )
  • Добавлена возможность отправлять код через смс каждые две минуты ( 60a4e9f )
  • Реализован нативный и плавный скролл ( faea6d4 )
  • Добавлено сервисное сообщение создания скриншота ( 006c632 )
  • Реализован поиск по беседам ( a9f8cc4 )
  • Добавлена поддержка фантомных чатов: нормальное отображение чатов, отображение исчезающих и уже исчезнувших сообщений, и даже возможность туда писать ( d0a1e5d )
  • Добавлено контекстное меню и выделение для сообщений: ( 1622b57 )
    • Первое сообщение выделяется длительным нажатием (половина секунды)
    • Остальные сообщения выделяются простым нажатием на сообщение
    • Выделенные сообщения можно удалить или пометить как спам
    • Можно выделить сразу несколько сообщений, если после выделения первого сообщения нажать Shift и выделить второе
  • Реализован поиск по сообщениям ( 45f09d5 )

VK Desktop 0.2.2

Нововведения

  • Наконец было удалено отображение теней у текста ( e1966ff )
  • Теперь можно выделить только текст у сообщений ( 5780918 )
  • Обновлена иконка галочки; убрано отображение галочки в имени пользователя в сообщении ( 6711cbc )
  • Двойной клик по закрытой или клик по открытой беседе открывает самый низ диалога ( 86fb6f2 )
  • Теперь максимальная ширина сообщения 600px ( 401e058 )
  • Теперь фотографии в сообщениях отображаются без отступов справа и слева в большем количестве случаев ( 401e058 )
  • Добавлен автофокус поля для ввода текста в авторизации и капче ( 7bc044b )
  • Изменено поведение автоматического скролла до последнего отправленного сообщения ( 88c7e9a )
    • Теперь он может скроллить и до еще не отправленного на сервер
      сообщения
    • Если диалог не был доскроллен до конца, то приложение больше не будет
      скроллить до последнего сообщения
  • Теперь отображаются подарки в сообщениях ( e86809f )

Фиксы багов

  • Фикс закрытия модалки, которую нельзя закрывать, с помощью Esc ( 5df4e22 , #35)
  • Исправлено отображение стикера вместе с текстом (исключительный случаей) ( b059bdd )
  • Исправлено отображение перевода для нескольких стикеров в одном сообщении (исключительный случаей) ( 0a505c2 )
  • Исправлено отображение двойной загрузки в некоторых случаях и вследствие неправильное отображение сообщений в списке ( e1859c2 )
  • Исправлена многократная загрузка одних и тех же сообщений, из-за чего казалось, что приложение зависло. Возникало при: ( 16b43cb )
    • многократном клике по беседе, которая ранее не загружалась / были
      загружены не последние сообщения
    • при открытии беседы без интернета и отправке туда нескольких сообщений
  • Исправлено отображение времени онлайна, где на конце было число 1 (21 минуту назад -> 2минуту назад) ( 0bb344c )
  • Теперь больше нельзя удалить историю сообщений для каналов. При ее удалении она удаляется навсегда и не восстанавливается при перезаходе в канал ( 18b9bf2 )
  • Фикс ошибки при переходе к началу диалога когда в канале нет сообщений ( f3d5305 )
  • Исправлено неправильное отображение фотографии с большим размером на экране с большим разрешением ( b752e55 )
  • Теперь вместе со стикером не могут отображаться другие вложения ( 8b775ff )

VK Desktop 0.2.1

Сборка для Windows

  • Исправлена установка приложения не имея прав администратора. Теперь приложение будет устанавливаться в папку AppData/Local/VK Desktop ( 17afd15 )
  • Из сборки была удалена сборка .zip файлов, т.к. они нигде не используются ( 479b8f7 )

Фиксы багов

  • Исправлена работа кнопки копирования ссылки на фотографию ( be07067 )
  • Теперь при написании сообщений ботам они будут понимать, что клиент поддерживает карусели для ботов ( dabbcc6 )
  • Сообщение с фотографиями, видеозаписями и/или гифками теперь отображается с уменьшенными отступами (как уже сделано в остальных случаях), если в самом сообщении дополнительно есть текст, ответ на сообщение или другие вложения ( 67cf8c8 )
  • Ранее в большинстве сообщений, где была прикреплена фотография и было достаточно много текста, чтобы занимать целую строку или более, у фотографий был некоторый отступ. Теперь же этот отступ будет отображаться только когда сама фотография будет довольно узкой ( 09a9df7 4f548f8 )

VK Desktop 0.2.0

Увеличение скорости появления новых сборок

Начиная с этого релиза, новые версии будут появляться гораздо чаще, однако изменений в этих сборках будет меньше.

Сборка для Linux

Была добавлена автоматическая сборка .zip архивов приложения для Linux. ( 8fb48b2 , 020fdad , ae9fc8c )
В будущем, возможно, будут добавлены и установщики.

Отказ от автообновления

Автообновление, которое уже было реализовано, но нигде не использовалось, было удалено в коммите fa6a73c . На его место в скором времени придет упрощенная версия данной фичи, которая будет только предлагать установить обновление самостоятельно. Пойти на такой шаг пришлось по следующим причинам:

  • На данный момент не было возможности реализовать автоматическое обновление на macOS, потому что для ее работы требуется подписывание приложения, а для этого необходимо приобрести платную подписку, на которую у разработчика нет денег.
  • Сервер, который использовался для проверки обновлений не позволял работать автоматическому обновлению на Linux.
  • Сборка приложения для Windows стала довольно проблематичной, потому что для работы автообновления требовались .node модули.

Нововведения

  • Просмотр фотографий, видеозаписей и гифок и возможность скопировать на них ссылку и скачать ( f7e7a11 , c816a26 , 3a2cc30 , 5a90c16 , ce76ba8 )
  • Отображение документов и возможность их скачивания ( 8a8bb78 )
  • Отображение пересланных сообщений ( 8186839 , 5d8bea4 , 4fd21c4 , 12662c9 , aedae23 , 4eaa7d8 , 9c0827f )
  • Отображение карусели для ботов ( 99454bf )
  • Отображение количества вложений в сообщении из списка диалогов (пример: 2 фотографии) ( 35725b4 )
  • Прочтение и прокрутка до новых сообщений только при активном окне и без открытых модалок ( 9181e22 , 8420a73 )
  • Хранение настроек отдельно для каждого юзера ( a154231 )
  • Отображение капчи вместо целой страницы при обработке 17 ошибки VK API ( b494728 )
  • Возможность повторить отправку или удалить сообщение при ошибке отправки сообщения ( aaec354 )
  • Предпросмотр историй в ответе на сообщение ( cc24e4e , 8ca6f39 )
  • Перенос тайпинга в шапку беседы ( e4b1bf2 )
  • Поддержка кнопки-ссылки в клавиатуре для ботов ( 50b2db6 )
  • Для Windows установщика больше не нужны права администратора ( c782cfe )
  • Новый перевод: (контент удален) -> Вложение удалено ( 96c6054 )
  • Обработка временно выключенных уведомлений ( 584d405 )

Фиксы багов

  • Исправлены кейсы неправильного отображения сетки фотографий ( b147288 , 8b53b3d )
  • Исправлена сборка событий лп в кучу, теперь лп больше не падает ( 8708710 , 434cd83 , 3574545 )
  • Исправлено отображение двойной загрузки и неправильное отображение списка сообщений ( 4cbb1ee )
  • Исправлены цвета и размеры кнопок в некоторых кейсах в клавиатуре для ботов ( ae6fd56 , b369a8b )
  • Фикс утечек памяти, связанных с эвент листенерами ( 8150a8b , daf3969 , cf459f0 )
  • Рефактор Srcolly.vue: полная блокировка скролла при lock=true, оптимизация и фикс всех багов ( 41196cc , c220d7d , ed83469 , 849b5d0 )
  • Фикс скролла до начала непрочитанных сообщений при открытии беседы ( 1ee53c4 )
  • Фикс изменения положения плашки "Непрочитанные сообщения" при прочтении сообщений ( 90278cc )
  • Фикс отображения онлайна при включенной невидимке ( abfe163 )
  • Фикс: скролл до плашки непрочитанных сообщений при перезаходе в беседу с ранее доскролленным до конца контентом и отсутствием непрочитанных сообщений ( 16d96ac )
  • Использование keyup/keydown вместо globalShortcut для сочетаний клавиш. Это исправляет проблему с блокировкой всех используемых сочетаний клавиш ( fe07a99 )
  • Теперь у каналов, которые были созданы верифицированными сообществами, больше не отображается галочка ( 7f19976 )
  • Исправлено отображение неизвестных вложений ( 1dd0922 )
  • Теперь названия вложений мероприятия, музыканта, плейлиста и статьи отображаются всегда ( 5331902 )
  • Теперь при выходе из аккаунта страница авторизации не отображается перед перезагрузкой приложения ( cfb8617 )
  • Теперь при вставке текста в поле для ввода сообщения и отправке этого сообщения не отображаются лишние пустые строки ( 7387e98 )

Read the original on github.com ↗