Files
PortProtonQt/TODO.md
2025-07-10 22:01:49 +05:00

8.7 KiB
Raw Blame History

  • Адаптировать структуру проекта для поддержки инструментов сборки
  • Добавить возможность управления с геймпада
  • Добавить возможность управления с тачскрина
  • Добавить возможность управления с мыши и клавиатуры
  • Добавить систему тем Документация
  • Вынести все константы, такие как уровень закругления карточек, в темы (частично выполнено)
  • Добавить метаданные для тем (скриншоты, описание, домашняя страница и автор)
  • Продумать систему вкладок вместо текущей
  • Добавить сессию Gamescope, аналогичную той, что используется в SteamOS
  • Разобраться почему теряется часть стилей в Gamescope
  • Разработать адаптивный дизайн (за эталон берётся Steam Deck с разрешением 1280×800)
  • Переделать скриншоты для соответствия гайдлайнам Flathub
  • Получать описания и названия игр из базы данных Steam
  • Получать обложки для игр из SteamGridDB или CDN Steam
  • Оптимизировать работу со Steam API для ускорения времени запуска
  • Улучшить функцию поиска в Steam API для исправления некорректного определения ID (например, Graven определялся как ENGRAVEN или GRAVENFALL, Spore — как SporeBound или Spore Valley)
  • Убрать логи Steam API в релизной версии, так как они замедляют выполнение кода
  • Решить проблему с ограничением Steam API в 50 тысяч игр за один запрос (иногда нужные игры не попадают в выборку и остаются без обложки)
  • Избавиться от вызовов yad
  • Реализовать собственный механизм запрета ухода в спящий режим вместо использования механизма PortProton (оставлено для PortProton 2.0)
  • Реализовать собственный системный трей вместо использования трея PortProton
  • Добавить экранную клавиатуру в поиск (реализация собственной клавиатуры слишком затратна, поэтому используется встроенная в DE клавиатура: Maliit в KDE, gjs-osk в GNOME, Squeekboard в Phosh, клавиатура SteamOS и т.д.)
  • Добавить сортировку карточек по различным критериям (доступны: по недавности, количеству наигранного времени, избранному или алфавиту)
  • Добавить индикацию запуска приложения
  • Достигнуть паритета функциональности с Ingame
  • Достигнуть паритета функциональности с PortProton
  • Добавить возможность изменения названия, описания и обложки через файлы .local/share/PortProtonQT/custom_data/exe_name/{desc,name,cover}
  • Добавить встроенное переопределение названия, описания и обложки, например, по пути portprotonqt/custom_data Документация
  • Добавить переводы в переопределения
  • Добавить в карточку игры сведения о поддержке геймпада
  • Добавить в карточки данные с ProtonDB
  • Добавить в карточки данные с AreWeAntiCheatYet
  • Продублировать бейджи с карточки на страницу с деталями игры
  • Добавить парсинг ярлыков из Steam
  • Добавить парсинг ярлыков из EGS
  • Избавиться от бинарника legendary
  • Добавить запуск игр из EGS
  • Добавить скачивание игр из EGS
  • Добавить поддержку запуска сторонних игр из EGS
  • Добавить авторизацию в EGS через WebView вместо ручного ввода
  • Получать описания для игр из EGS через их API
  • Получать slug через GraphQL запрос
  • Добавить на карточку бейдж, указывающий, что игра из Steam
  • Добавить поддержку версий Steam для Flatpak и Snap
  • Отображать данные о самом последнем пользователе Steam, а не первом попавшемся
  • Исправить склонения в детальном выводе времени, например, не «3 часов назад», а «3 часа назад»
  • Добавить перевод через gettext Документация
  • Отображать описания игр и другие данные на языке системы
  • Добавить недокументированные параметры конфигурации в GUI (time_detail_level, games_sort_method, games_display_filter)
  • Добавить систему избранного для карточек
  • Заменить все print на logging
  • Привести все логи к единому языку
  • Уменьшить количество подстановок в переводах
  • Стилизовать все элементы без стилей (QMessageBox, QSlider, QDialog)
  • Убрать жёсткую привязку путей к стрелочкам QComboBox в styles.py
  • Исправить частичное применение тем на лету
  • Исправить наложение подписей скриншотов при первом перелистывании в полноэкранном режиме
  • Добавить поддержку GOG (?)
  • Определиться с названием (PortProtonQt или PortProtonQT или вообще третий вариант)
  • Добавить данные с HowLongToBeat на страницу с деталями игры (?)
  • Добавить виброотдачу на геймпаде при запуске игры
  • Исправить некорректную работу слайдера увеличения размера карточек(Последствия регрессии после этого коммита
  • Исправить баг с наложением карточек друг на друга при изменении фильтра отображения (Последствия регрессии после этого коммита)
  • Скопировать логику управления с D-pad на стрелки с клавиатуры
  • Доделать светлую тему
  • Добавить подсказки к управлению с геймпада
  • Добавить загрузку звуков в темы например для добавления звука запуска в тему и тд
  • Добавить миниатюры к выбору файлов в диалоге добавления игры
  • Добавить быстрый доступ к смонтированным дискам к выбору файлов в диалоге добавления игры