Skip to content

VK Desktop 1.0.0-alpha.0

Latest
Compare
Choose a tag to compare
@danyadev danyadev released this 09 May 18:25
· 5 commits to master since this release

Встаем на путь к релизу 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)