Commit graph

189 commits

Author SHA1 Message Date
Observer KRypt0n_
6340ccbd6e
feat(core): added background picture downloading 2023-02-23 16:41:13 +02:00
Observer KRypt0n_
4e6325dd4f
main window: added colors and tooltips to action button
- they all depend on current launcher state
2023-02-22 22:48:36 +02:00
Observer KRypt0n_
1d420d27aa
i18n: updated Russian
forgot to add new entries lol
2023-02-22 22:30:03 +02:00
Observer KRypt0n_
9497136ac6
main window: made action button to follow launcher's state
- also added "open debug file" option to the header menu
2023-02-22 22:28:28 +02:00
Observer KRypt0n_
f2a04f5ebe
main window: added initial states system support 2023-02-22 22:10:37 +02:00
Observer KRypt0n_
14067c7bdf
main window: added functionality to menu actions
- added ability to send toast messages
2023-02-22 21:43:01 +02:00
Observer KRypt0n_
8199e0eac9
components: made all preferences components async
- apparently they tend to freeze without it
- also added use of `AdwStatusPage` during heavy tasks execution
2023-02-22 20:58:01 +02:00
Observer KRypt0n_
76538fbf7d
appearance settings: added initial "download background" option support
- added translations for appearance section
2023-02-22 18:43:35 +02:00
Observer KRypt0n_
5870316724
general settings: added test launcher style switcher
- classic style loads its background from "config's_tmp_path/background"
  so from "launcher folder/background" by default
- icons will be changed in some future
2023-02-21 17:32:57 +02:00
Observer KRypt0n_
b26ff37b0e
i18n: added forgoten patch-related translations 2023-02-17 16:38:12 +02:00
Observer KRypt0n_
44d074d864
Changed debug logging
- stdout logs got rid of rustls messages and now are pretty styled
- logs are saved into the `debug.log` file in the launcher folder
  they're not filtered and contain all the messages
- toasts timeout fixed to 5 seconds
- added "save" button which will, well, not save logs
  but open `debug.log` file using `xdg-open`
2023-02-11 12:34:39 +02:00
Observer KRypt0n_
4965a9f005
Settings: added toast messages on errors 2023-02-11 11:12:57 +02:00
Observer KRypt0n_
fe898e6b90
Progress bar: added status translations 2023-02-04 15:48:29 +02:00
Observer KRypt0n_
bf3e58e21c
settings: added showing of installed game version 2023-01-28 21:18:24 +02:00
Observer KRypt0n_
d38d098882
General settings: added wine & dxvk selection UI 2023-01-19 14:03:11 +02:00
Observer KRypt0n_
e3d36f1f3a
Splitted localization files & added about dialog 2023-01-19 13:23:17 +02:00
Observer KRypt0n_
7bb2ecb270
Added 3 remaining options to the fps unlocker settings 2023-01-19 12:13:53 +02:00
Observer KRypt0n_
d6b5eb6411
relm4 init commit 2023-01-18 18:37:53 +02:00
Observer KRypt0n_
7d91714d30
Added new options to the fps unlocker 2022-12-21 17:31:45 +02:00
Observer KRypt0n_
c6e70cbdf7
Updated git submodules 2022-10-15 15:21:36 +02:00
Observer KRypt0n_
aa6f08f0fd
Fixed about window re-opening issue 2022-09-29 20:22:14 +02:00
Observer KRypt0n_
002c77a9c1
Several changes
- updated core library and components library
- added (likely working) updates pre-downloading functionality
- moved to `anyhow::Result` in lots of places
2022-09-26 15:08:29 +02:00
Observer KRypt0n_
5d26f84659
Moved to libadwaita 1.2 2022-09-24 16:52:31 +02:00
Observer KRypt0n_
7af63ae7f2
Added desktop file for flatpak builds 2022-09-18 15:04:23 +02:00
Observer KRypt0n_
368710fd9d
Improved FPS unlocker support
- added fullscreen and priority options
- added fps unlocker folder creation
2022-09-14 09:32:56 +02:00
Observer KRypt0n_
a7b1345302
Added support for FPS unlocker 2022-09-11 23:42:58 +02:00
Observer KRypt0n_
d3335db91d
Removed patch-related buttons, changed FSR description 2022-09-10 22:21:39 +02:00
Observer KRypt0n_
8a62ed5674
Reworked DXVKs UI components to support different builds 2022-08-31 22:39:58 +02:00
Observer KRypt0n_
00ff5c6409
Implemented updated core library and new components system (2) 2022-08-31 20:27:52 +02:00
Observer KRypt0n_
17ad2f718a
Changed repos links to github 2022-08-26 10:51:36 +02:00
Observer KRypt0n_
69cccd3a11
Updated core library with lots of fixes, added new wine versions 2022-08-24 14:51:36 +02:00
Observer KRypt0n_
13de707baa
Added icon loading from "icon" file, added --run-game argument 2022-08-08 21:31:46 +02:00
Observer KRypt0n_
43b09f295d
1.0.0
- added new wine versions

From previous commits:
- changed preferences icon, updated main window's menu
- removed open launcher folder button from settings
- added fix for dxvk applying with spaces to the runners folder path
- updated default patch repo's mirror
- updated core library; added support for Chinese version
- added default game edition prediction based on system locale
- added ability to run the game when all patch servers are down
- used `std::process::Output` on DXVK applying instead of String
  this fixes errors related to UTF-8 decoding since different systems may have
  different default encodings
- added "borderless" and "virtual desktop" options to settings;
  added separate FSR option to gamescope settings
- dxvk now uses wine64 to update prefix before applying patches
- added setting of `-window-mode exclusive` args to the wine when using wine FSR
- `WinePrefix::update` and so now use wine64 binary instead of wineboot
- renamed `files.wine` to `files.wine64` in `wine.json`
- `Config::try_get_wine_executable` function now return wine64 binary
- added errors toasting for initial setup window
2022-08-07 15:15:51 +02:00
Observer KRypt0n_
bfa8276a8e
Removed open launcher folder button from settings 2022-08-07 14:27:56 +02:00
Observer KRypt0n_
049a9b72a2
Changed preferences icon, updated main window's menu 2022-08-06 21:28:38 +02:00
Observer KRypt0n_
5e2bac1a3f
Fixed initial setup window 2022-08-05 22:59:41 +02:00
Observer KRypt0n_
08a6e3bc5e
Several changes
- added "borderless" and "virtual desktop" options to settings;
  added separate FSR option to gamescope settings
- dxvk now uses wine64 to update prefix before applying patches
- added setting of `-window-mode exclusive` args to the wine when using wine FSR
- `WinePrefix::update` and so now use wine64 binary instead of wineboot
- renamed `files.wine` to `files.wine64` in `wine.json`
- `Config::try_get_wine_executable` function now return wine64 binary
- added picture to the repo
2022-08-05 22:33:47 +02:00
Observer KRypt0n_
7efa5e4a7e
Added errors toasting for initial setup window 2022-08-05 15:13:20 +02:00
Observer KRypt0n_
bcdb0217ad
Several changes
- updated core library;
  this fixes getting available space on systems with lots of disks
- added patch folder selection during initial setup
- fixed error panicking when you're closing folder selection dialogue
  during initial setup
2022-08-04 17:23:05 +02:00
Observer KRypt0n_
bf31327532
Reworked work with config file
- now missing fields will be automatically filled;
  excess fields - removed.
  thanks to new code structure I can easily create
  new fields or rename old ones
- improved `WineLang` enum; now launcher loads languages list dynamically
  from this enum so I can easily add support for new languages
2022-08-04 11:47:57 +02:00
Observer KRypt0n_
82691f70f9
Initial setup changes
- renamed "page_*" to some actual pages names
- added voice packages selection page
- made "Advanced" button working. It shows default paths selection page
2022-08-04 01:24:25 +02:00
Observer KRypt0n_
cc5e9b3d4e
0.7.1
- updated core library; new version caches patch fetching results
- added Nvidia Image Scaling option to gamescope

From previous commits:
- added `dxvk-async-1.10.3`
2022-08-03 22:37:36 +02:00
Observer KRypt0n_
027dad12eb
Added dxvk-async-1.10.3 2022-08-03 21:44:55 +02:00
Observer KRypt0n_
ea6094daf5
0.7.0
- added gamescope support
- now gamemode option will not be clickabke if gamemode is not installed
- reworked enhancements page's events
- changed winesync env variables
- added `lib::is_available` function to check packages availability
2022-08-03 21:38:01 +02:00
Observer KRypt0n_
c3a6cf37de
0.6.2
- updated core library;
  now launcher will check available free space
  before downloading anything
- added dxvk 1.10.3

From previous commits:
- added `WINEARCH=win64` to some places
- added `devel` style to `FirstRunApp` if it's debug mode
- changed app's id
- added xdelta3 requirement during initial setup
- added wine & dxvk version selection during initial setup
- added "Open launcher folder" button to settings
- removed `glib::Downgrade` trait from all the `App`s' `Value`s
- removed `tasks` mod; removed `tokio` dependency;
  rewritten `OpenPreferencesPage` to work with threads instead of futures
- added `opt-level = 3` to release profile
- upscaled logo to 512x512; added source link
- bundled all the UI files into gtk resources
2022-08-03 10:49:13 +02:00
Observer KRypt0n_
e021b79ae7
Added xdelta3 requirement during initial setup 2022-08-02 20:31:28 +02:00
Observer KRypt0n_
ceffbe795a
Added wine & dxvk version selection during initial setup 2022-08-02 19:57:17 +02:00
Observer KRypt0n_
b5fe109be6
Several changes
- added "Open launcher folder" button to settings
- removed `glib::Downgrade` trait from all the `App`s' `Value`s
- removed `tasks` mod; removed `tokio` dependency;
  rewritten `OpenPreferencesPage` to work with threads instead of futures
- added `opt-level = 3` to release profile
2022-08-02 19:26:10 +02:00
Observer KRypt0n_
0baa3593ac
Several changes
- upscaled logo to 512x512; added source link
- bundled all the UI files into gtk resources
2022-08-02 18:43:07 +02:00
Observer KRypt0n_
0990340a2b
0.6.1
- added ability to edit game running command
2022-08-02 12:22:37 +02:00
Observer KRypt0n_
2d520f5e40
0.6.0
- made working environment variables manager

From previous commits:
- renamed `ToastError` trait to `Toast`;
  renamed its `toast_error` method to `toast`;
  now `toast` method will not display button if toast's message is empty
- updated `game::run` function, now it prints running command
  and supports `gamemoderun`
- added automatic `DXVK_ASYNC=1` setting for dxvk-async
2022-08-02 10:45:37 +02:00
Observer KRypt0n_
85b2e6741e
Added automatic DXVK_ASYNC=1 setting for dxvk-async 2022-08-02 08:24:34 +02:00
Observer KRypt0n_
4a83100b7e
0.5.3
- added "Repair game" button
- added `repairer` field to settings file
- updated core library

From previous commits:
- made preparations for environment settings
- now launcher hides when you launch the game
- now `Config::try_get_wine_executable` can return `Some("wine")`
- removed old wine and dxvk versions;
  added new Wine-GE-Proton and GE-Proton builds
2022-08-01 20:04:32 +02:00
Observer KRypt0n_
21ee39ad17
Several changes
- made preparations for environment settings
- now launcher hides when you launch the game
- now `Config::try_get_wine_executable` can return `Some("wine")`
- removed old wine and dxvk versions;
  added new Wine-GE-Proton and GE-Proton builds
2022-08-01 14:13:26 +02:00
Observer KRypt0n_
c378f8e379
0.5.2
- updated core library
- now general settings page displays patch version with orange color
  if patch is not applied
- added working patch applying mechanism
- added `patch.root` config, and you can apply patch
  without using root privilegies
2022-07-31 13:42:16 +02:00
Observer KRypt0n_
2f0862946f
0.5.0
- removed "Settings" main menu item because I said so
- made `VoiceoverRow` component;
  added dynamic voiceovers loading
  Now you can download new voiceovers, but can't delete them (WIP)

From previous commits:
- probably fixed startup gtk errors
2022-07-30 11:54:11 +02:00
Observer KRypt0n_
4c5a38dfc2
0.4.0
- added "Settings" option for main window menu
- added working default paths selection in first run window

From previous commits:
- added subfolders support for blueprint compiler;
  moved first_run and preferences pages to subfolders
- added 2 first run pages:
  + when you don't have some required components
  + to select default folders paths
2022-07-29 22:20:06 +02:00
Observer KRypt0n_
dcf2a7821a
Several changes
- added subfolders support for blueprint compiler;
  moved first_run and preferences pages to subfolders
- added 2 first run pages:
  + when you don't have some required components
  + to select default folders paths
2022-07-29 14:44:48 +02:00
Observer KRypt0n_
9ff00c7085
0.3.1
- added automatic downloading if you already clicked "download" button
  so e.g. you don't need to press "download" button two times to download the game
  and then download its voiceover
- reduced amount of action calls
- added "WIP" tooltips for progress pause buttons
2022-07-28 18:54:28 +02:00
Observer KRypt0n_
c85805d14f
0.2.1
- removed excess code
- tested and fixed game downloading
2022-07-28 13:50:44 +02:00
Observer KRypt0n_
3e9f32a16c
Small first run UI changes, marked some wine version as not recommended 2022-07-28 09:47:14 +02:00
Observer KRypt0n_
ecb5094785
0.2.0
- updated core library to 0.1.3
- added soda wine version
- added default patch servers for config file
- with core modifications now first run window
  finally works
2022-07-28 09:39:24 +02:00
Observer KRypt0n_
0f6ebfff55
I don't wanna die, I don't wanna die 2022-07-27 17:37:52 +02:00
Observer KRypt0n_
744f234acd
Several changes
- added new wine versions
- added automatic default folder creation
- added `latest` methods for DXVK/Wine versions
- added `wine_prefix` mod with `WinePrefix` struct to manage what do you think what
- spent lots of time trying to make the launcher
  download default wine version,
  create prefix and apply DXVK
  but it just pauses actions flow after
  ~400 KB of downloaded wine version progress
2022-07-26 23:02:43 +02:00
Observer KRypt0n_
daac4c8ff0
0.1.1
- added more system data in about dialog
- updated core library
2022-07-26 17:34:46 +02:00
Observer KRypt0n_
c7c0c3d9dc
Added about dialog 2022-07-26 10:57:12 +02:00
Observer KRypt0n_
a6667f73d4
Updated libs, added icon to the gtk resources 2022-07-24 14:02:14 +02:00
Observer KRypt0n_
3f4949fc26
Several changes
- added DXVK applying
- added wine versions sorting in comborow
- fixed error toast displaying during wine/dxvk downloading
2022-07-23 17:08:50 +02:00
Observer KRypt0n_
bc5b9d2b45
Added foundation of the launcher states functionality 2022-07-16 14:52:20 +02:00
Observer KRypt0n_
82a6e01200
Added working wine version selection 2022-07-15 17:17:34 +02:00
Observer KRypt0n_
b6bfc4d2ec
Added dxvks downloading and deleting functionality 2022-07-15 15:09:45 +02:00
Observer KRypt0n_
c3413cef12
Added wine downloading feature 2022-07-14 20:50:49 +02:00
Observer KRypt0n_
fb021a0742
Added WineRow and WineGroup components, made dynamic loading 2022-07-14 15:35:33 +02:00
Observer KRypt0n_
8c0685836f
Added async preferences opening
May show white screen with no controls for unknown reason
2022-07-14 14:53:51 +02:00
Observer KRypt0n_
9817cbd989
Added DxvkRow component, made example downloading progress 2022-07-10 11:55:49 +02:00
Observer KRypt0n_
fd6e729cd4
Synced project structure with krypt0nn/gtk-example-app 2022-07-09 17:57:42 +02:00
Observer KRypt0n_
0524cf80d4
Updated DXVK / wine versions UI, added dynamic data loading 2022-07-04 08:39:37 +02:00
Observer KRypt0n_
d26c75c726
Small UI changes 2022-07-04 07:33:55 +02:00
Observer KRypt0n_
edf5e69d8e
Changed FSR and DXVK HUD env values 2022-07-03 17:46:47 +02:00
Observer KRypt0n_
9d5c0cc9ee
Added game voiceover selection ui 2022-07-02 18:03:32 +02:00
Observer KRypt0n_
178c45ae48
Preparations for loading page
- added `Adw.StatusPage` to the preferences
- made preparations for progress bar and launcher states system
- fixed toasts resizing window issue
2022-07-02 12:18:44 +02:00
Observer KRypt0n_
3be54b22d2
Added wine language option, added gamemode option sync 2022-07-01 21:38:12 +02:00
Observer KRypt0n_
6cd2c326d8
Added wine sync and fsr options syncronization
- moved `WineSync` and `WineHUD` to separate files
2022-07-01 21:04:12 +02:00
Observer KRypt0n_
919d7eaaa9
Preparations for preferences updates
- added `update` methods for preferences pages
- added wine hud option synchronization
2022-07-01 20:40:45 +02:00
Observer KRypt0n_
59405f440c
Added game and patch status updating in settings 2022-07-01 20:12:25 +02:00
Observer KRypt0n_
1eed56e53a
Several changes
- added `add_action` function to add actions to widgets
- added `MainApp::toast_error` method to show toast with some error
- added `lib::game` mod with `run` function to run the game
- added `lib::consts` mod with constant values like config file path
- added `lib::config` mod to control config file
- added warning subtitle to `Proton-GE` wine version selector
2022-06-30 21:40:25 +02:00
Observer KRypt0n_
48d354cc4c
Separated preferences pages, added better debugging 2022-06-29 17:58:48 +02:00
Observer KRypt0n_
992f1ad02d
Synced project structure with krypt0nn/gtk-example-app 2022-06-29 09:11:19 +02:00
Observer KRypt0n_
baca5a787f
Init commit 2022-06-28 23:59:20 +02:00