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