Commit graph

252 commits

Author SHA1 Message Date
Marie
20ab0d648b
feat(i18n): Correct first_run translation for de 2023-02-27 14:34:08 +01:00
Marie
7e184688fa
feat(i18n): Add de translations for environment page 2023-02-27 14:33:22 +01:00
Observer KRypt0n_
3b40ce75e6
feat(ui): added environment settings page
Added Environment settings page where you can specify command which
will be used to run the game, and manage
its environment variables
2023-02-26 19:15:18 +02:00
Observer KRypt0n_
c8e8413a00
feat(i18n): added automatic language settings updating from i18n mod 2023-02-26 15:05:43 +02:00
Mar0xy
e8ba3bbd13 Add new lines to de
Thanks Krypton for adding them while I was translating
2023-02-26 10:06:16 +00:00
Mar0xy
6284233cfa Add de 2023-02-26 10:03:47 +00:00
Observer KRypt0n_
5ddbe87830
feat(i18n): translated wine-downloading error toasts 2023-02-26 11:56:11 +02:00
Observer KRypt0n_
84697bb917
feat: added LauncherState::WineNotInstalled state support 2023-02-26 11:50:30 +02:00
Observer KRypt0n_
099d3c232b
feat: added game/voice downloading functionality 2023-02-26 01:59:29 +02:00
Observer KRypt0n_
1755faaab1
feat(core): added LauncherState::PrefixNotExists state support
Taught launcher how to create wine prefixes
2023-02-25 18:18:18 +02:00
Observer KRypt0n_
0e07cb0698
feat(core): reworked main window's messages
Some messages (relm4 component's input commands) were renamed

Added `UpdateLauncherState` message to, well, update launcher state.
By calling this status page will appear with information about
current status getting progress

Added some new error messages. Before, heavy tasks
were sending errors only to tracing logs. Now they also will generate toast messages

Added patch applying functionality to the main button.
Also made main window disappear when the game is running (like it works now in GTK launcher)
2023-02-25 18:08:25 +02:00
Observer KRypt0n_
681ad01835
feat(i18n): added localization to first run window 2023-02-25 16:06:43 +02:00
Observer KRypt0n_
4f560eaa5e
feat(ui): added paths selection page in first run window 2023-02-24 11:13:14 +02:00
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