1
0
Fork 0
mirror of synced 2024-07-02 21:20:54 +12:00
Commit graph

1271 commits

Author SHA1 Message Date
loathingKernel d53eb92e53
Login: Remove spacer 2023-11-28 16:38:02 +02:00
loathingKernel e4782b70ae
GameInfo: Add button icons 2023-11-28 16:38:02 +02:00
loathingKernel 301d070ab3
WrapperSettings: Show wrapper name in warning dialogs. 2023-11-28 16:38:01 +02:00
loathingKernel 7b308d7c90
WrapperSettings: Use Ui through membership instead of inheritance. 2023-11-28 16:38:01 +02:00
loathingKernel 536078748b
WrapperWidget: Use a drop-down menu to hold actions. 2023-11-28 16:38:01 +02:00
loathingKernel 22e5d3c1a3
Wrappers: Use an edit button instead of double-click 2023-11-28 16:38:01 +02:00
loathingKernel 49fdd410ce
Housekeeping: Remove some print remnants 2023-11-28 16:38:01 +02:00
loathingKernel d2af82ae35
RareLauncher: Move class attributes to instance attributes.
Removed some superfluous variables that were already exposed through
RareGame and moved around some block to correct initialization errors
after moving to instance attributes
2023-11-28 16:38:00 +02:00
loathingKernel ecdafd3c1c
Wrappers: Allow wrapper editing on double-click.
Internally this works by removing the old wrapper and adding a new wrapper
int the same index.
2023-11-28 16:38:00 +02:00
loathingKernel 95fba89277
Wrapper: Truncate text on widgets to show only the command
Truncate the widget's text down to the command only without the arguments.
Show the full command with the arguments in the tooltip instead.

Update some text.
2023-11-28 16:38:00 +02:00
loathingKernel 21141e43ea
Wrapper: Fix wrapper reordering not being saved.
The order was determined by the order of the container dictionary entries.
Re-order them before returning the list by their index in the container
widget.

Fixes #304
2023-11-28 16:38:00 +02:00
loathingKernel eb48a506d2
GameInfo: Add 'Modify Game' button to adjust selective downloads 2023-11-28 16:38:00 +02:00
loathingKernel d11faa5263
ImageManager: Remove leading space 2023-11-28 16:38:00 +02:00
loathingKernel adaf90f0a8
RareGame/RareCore: Add add_dlc method to connect a dlc with the main game
Move validation after the DLCs have been added so the can be uninstalled
too if the game can't be found.
2023-11-28 16:37:59 +02:00
loathingKernel 07cbcf52d0
Meta: Update links 2023-11-28 15:20:06 +02:00
loathingKernel f3a962260c
About: Update page
* Check for updates each time the page is visited
* Updated links, developers and contributors.
* Use a less difficult to read color for links

The check for updates still happens at startup, there is now a
subsequent check every time the about label is visited.

The update check should be moved into RareCore itself in the future.

Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2023-11-28 15:12:56 +02:00
ffqq f38c751d43 feat: add freebsd support 2023-07-16 10:03:59 +03:00
lennard da4163ced7
Bump version to 1.10.3 2023-06-11 15:53:07 +02:00
loathingKernel b2722b6ceb
RareCore: Init default sections if they are not in the config file.
Fixes: #296
2023-06-11 13:40:00 +03:00
loathingKernel 1f06c87743
ImageManager: Few improvements
Check if there is a `keyImages` attribute before accessing it, and return
an empty list in case it isn't available. Fixes a recent crash with
`Prison Architect - eureka Update 1` DLC.

Exit early from `download_image` if the requested image is currently being
downloaded. This avoids multiple preparations and loading callbacks for
queued images.

Remove checking for supported OS when creating the icon. Now we create
icons in `icns` format for `Darwin` irregardless the fact we don't use them
for anything.
2023-06-05 01:33:11 +03:00
loathingKernel 605a5050af
RareGame: Make owned_dlcs a set
By making the attribute into a set, we avoid adding already existing dlcs
back into it when refreshing the library. Fixes duplicated entries in
the DLC page.
2023-05-29 16:40:45 +03:00
loathingKernel 5307932656
RareCore: Replace individual fetch workers with a single one.
The workers where co-dependent anyways as the non-asset worker
was started after the games worker had sent back its results.
By combining them we can move any data manipulations to the worker
and simplify the handling in RareCore.
2023-05-29 16:40:36 +03:00
loathingKernel 497bdc08cc
Downloads: Remove UNINSTALLING state on cancel 2023-05-29 15:49:52 +03:00
loathingKernel eaed611c5f
GameDlcWidget: Respond to update signal
Using the update signal we can enable and disable the install/uninstall
button by querying the state of the RareGame
2023-05-29 14:32:30 +03:00
loathingKernel d4c763296e
Downloads: Apply DOWNLOADING and UNINSTALLING states earlier
By applying the state earlier, we can implicitly avoid re-queuing
downloads.
2023-05-29 14:30:54 +03:00
loathingKernel 6b0bf9621d
GameDlcWidget: Fix crash when installing or uninstalling a DLC
When the user navigates to a different game info page, the dlc widgets
get deleted. Because the signal was connected to a lambda, the connection
wasn't severed upon deletion and once the DLC would finish downloading,
Rare would crash because the object with the piggyback signal was already
deleted. By using a dedicated slot to emit the signal we ensure that the
connction is severed at Qt object deletion
2023-05-29 03:04:43 +03:00
lennard 3acf289280
Update translations
and update config, so tx push works
2023-05-28 23:30:01 +02:00
lennard 875ba52768
Bump version to 1.10.2 2023-05-26 23:32:50 +02:00
loathingKernel 5ce9a2edfa RareCore: Handle exception when fetching non-asset games
https://discord.com/channels/826881530310819914/884510635642216499/1111321692703305729
There is a tab character in the appId of Fallout New Vegas: Honest Hearts DLC, this breaks metadata storage
on Windows as they can't handle tabs at the end of the filename (?)
Legendary and Heroic are also affected, but it completed breaks Rare, so dodge it for now pending a fix.
2023-05-26 19:11:58 +02:00
loathingKernel 737730583f ImageManager: Check if desktop icons are supported on current plaform
Before creating icons, check if desktop links are supported by Rare
on the current platform.

Fixes Dummerle/Rare#262
2023-05-14 22:13:12 +02:00
lennard ae8cee76ae
Fix crash on launch helper exit 2023-05-08 18:58:49 +02:00
lennard 21a339b394
Finish french translation 2023-05-08 08:46:47 +02:00
loathingKernel 7218f0b696
ImportGroup: Add force import option.
When checked, the check for missing files will be skipped, allowing
for games missing too many files or their executable to be imported.
2023-05-07 16:33:08 +03:00
Stelios Tsampas 23c2f6dc0a RareGame: Return app_title as folder name if FolderName is not in customAttributes
Fortnite specifically doesn't provide `FolderName` in `customAttributes`, meaning we can't create the shortcut. If the attribute is not provided, assume that it is safe to use the application title.

Fixes: #283
2023-05-04 17:45:51 +03:00
lennard 3d0ebf702a
Bump version 1.10.1 2023-05-04 01:03:59 +02:00
loathingKernel 82128e35ca
RareCore: Use correct typing identifier 2023-05-03 17:27:36 +03:00
loathingKernel 184be66662
ImportGame: Pass app_name through the signal to resolve some information
Not working particularly well, since setting the path tries to auto-detect
the `app_name`, but it doesn't break anything either.
2023-05-03 17:27:36 +03:00
loathingKernel 4a96224dd3
GameInfo: Enable Import Game button, redirects to Import Game tab 2023-05-03 17:27:36 +03:00
loathingKernel 1c6a05c3f1
Refactor: Import ImageSize from widgets or directly from models 2023-05-03 17:27:36 +03:00
loathingKernel 0e4e7420cf
Refactor: Move ImageSize to models
`ImageSize` is a property of `ImageWidget` it is relevant to
`ImageManager` and the store widgets. So move it out of `ImageManager`.
2023-05-03 17:27:35 +03:00
loathingKernel 6986b1eab3
Rare: Apply UTC timezone info on dates 2023-05-03 17:27:35 +03:00
lennard 672bc814ba Fix import game 2023-05-03 12:32:12 +02:00
lennard 62aa78dcae Fix release-tests workflow 2023-05-03 12:32:12 +02:00
lennard f8b38e0cb8 Fix desktop shortcuts on windows 2023-05-03 12:32:12 +02:00
lennard ec6f24e3f8 Add tag to hide games from library 2023-05-03 12:32:12 +02:00
lennard 263af75853 Do not set available space text twice in install dialog 2023-05-03 12:32:12 +02:00
lennard 075443261d Show free space in install dialog 2023-05-03 12:32:12 +02:00
lennard b6fc468681 Fix win-zip workflow 2023-05-03 12:32:12 +02:00
lennard fb67c15622
Bump version to 1.10.0 2023-05-01 16:27:26 +02:00
lennard 5cfd3fffe3
Fix offline mode 2023-04-16 19:38:26 +02:00
lennard 30c3dadd4d
Update translations 2023-04-13 01:10:12 +02:00
lennard 42c1a1aaa6 Add a small fix 2023-04-08 01:03:14 +02:00
lennard c876e1fc3a Fix linux and proton settings environment_changed on windows 2023-04-08 01:03:14 +02:00
lennard a06dc7cd0f Use signal.disconnect without parameters 2023-04-08 01:03:14 +02:00
lennard 60da656877 Disconnect all game process signals before stop to prevent exceptions 2023-04-08 01:03:14 +02:00
lennard b48e1603cb Add a signal handler to launch helper 2023-04-08 01:03:14 +02:00
lennard f1fa0ada1a Open cloud save dialog after playing a game, if no action set on start 2023-04-08 01:03:14 +02:00
Dummerle 3f17a69e65
Merge pull request #272 from loathingKernel/fixups
Show environment variables from the "default" section in per-game settings.
2023-04-07 19:37:56 +02:00
loathingKernel 2e1585bda8
EnvVarsModel: Be more lenient when checking for unchanged contents
Previously the unchanged contents check tested both `key` and `value`
at the same time, so the following case was not accepted.

`ENV_VAR=ENV_VAR`

No matter how unlikely it is for the key to be equal to the value, there
is no reason to restrict it.

For the `key` ("0") column, protecting against existing keys also handles
this case. For the `value` ("1") column, a check has been added.
2023-04-07 14:19:20 +03:00
loathingKernel fee96a5f9d
[RareGame] Apply state if the game is found to be running at startup 2023-04-06 23:41:23 +03:00
lennard 9644d45b23
Check if mangohud exists when enabling it 2023-04-05 17:51:36 +02:00
lennard 0186b4f3c4
Add documentation for is_non_asset
{'Windows': GameAsset(app_name='', asset_id='', build_version='', catalog_item_id='', label_name='', namespace='', metadata={})}
2023-04-05 13:32:35 +02:00
lennard df1731de09 Fix key error for default mango hud settings 2023-04-05 13:09:34 +02:00
lennard ea0f40bb41 Update game state, when saves updated 2023-04-05 13:09:34 +02:00
lennard 9233c28e5b Update loading widget 2023-04-05 13:09:34 +02:00
lennard 37a8a052c8 Add loading widget to cloud saves 2023-04-05 13:09:34 +02:00
lennard 0943d06820 Add class loadingWidget 2023-04-05 13:09:34 +02:00
lennard 3ec6a45cc3 Add double check for game assets and fix error in cloud save dialog 2023-04-05 13:09:34 +02:00
loathingKernel 849c98bee5
ProgressLabel: Use a centering procedure based on events
Previously the `setGeometry()` method was called explicitly. In this
procedure the self-centering widget installs an `eventFilter` on its
parent to react to `Resize` events of the parent.

This breaks centering on the list widgets a bit, pending an investigation
2023-04-04 13:34:33 +03:00
loathingKernel e9b9f91df8
ImageSize: Include reference to the base image preset
"Base" refers to the preset used fetching and storing the image
2023-04-04 13:30:40 +03:00
loathingKernel cfba81b2ec
SideTabContents: Add implements_scrollarea option
In case a widget uses its own scrollareas for dynamic resizing
(for example the store), setting `implements_scrollarea` to `True`
will avoid the encapsulating scrollarea of the container.
2023-04-01 21:29:30 +03:00
loathingKernel dcb6bc7b98
GamesTab: Since the layouting is fixed, add a nice margin at the bottom 2023-04-01 00:55:42 +03:00
loathingKernel 74eb87b396
ImageSize: Add smaller size presets for wide images 2023-04-01 00:55:11 +03:00
loathingKernel 8de4213874
FlowLayout: Calculate sizeHint() based on the container.
Fixes `heightForWidth()` and layouting extending past what was required.

Remove dead code from LibraryLayout
2023-04-01 00:54:39 +03:00
loathingKernel 334e30dcc8
ImageWidget: Implement sizeHint() and minimumSizeHint()
Fixes inaccurate widget positioning
2023-04-01 00:53:00 +03:00
loathingKernel 28e6f02fc1
GameSettings: Emit signal when a non-editable row changes from the settings 2023-03-31 14:03:32 +03:00
loathingKernel 459828f1de
RareGame: Initialize steam_date and last_played to datetime.min
Due to some metadata corruption, metadata now gets locked before
being accessed
2023-03-31 14:02:01 +03:00
loathingKernel 639395c454
EnvVars: Re-enable key press handler
EnvVarsModel: Better vertical header icons
2023-03-31 02:42:16 +03:00
lennard 574e491cbf
Bump version 1.9.91 2023-03-31 00:16:04 +02:00
loathingKernel 42b9f581f6
GameInfo: Use QFormLayout instead of QGridLayout for the information
Also partition the space to left and right layouts, left layout being the
image and the space below it (pending future usage), and right the
information.
2023-03-30 12:50:42 +03:00
loathingKernel 8e6503758c
RareGame: Store steam grade and its fetch date in metadata 2023-03-29 18:02:48 +03:00
loathingKernel 4b2bc7f91f
EnvVars: Handle environment variables with a QAbstractTableModel
Using a ChainMap and this custom model, we can display global environ
variables in the per-game settings, allowin better overview and
simpler override.
2023-03-29 14:07:19 +03:00
loathingKernel b1d438c34c
config_helper: Don't remove section when removing the last option
This is a synchronization nightmare as it is now,
so keep the section to avoid excessive checks.
2023-03-29 14:04:45 +03:00
loathingKernel 392ea81707
ProtonSettings: correctly access wine_groupbox 2023-03-29 14:02:46 +03:00
loathingKernel afea6c54f6
GameSettings: Ignore override checks if the game is not installed 2023-03-29 14:01:57 +03:00
lennard 639d785bf1
Update version 2023-03-19 22:14:56 +01:00
lennard c48a5ff2f8
Update version 2023-03-19 22:05:30 +01:00
lennard bc69851639
Bump version 2023-03-19 21:45:49 +01:00
lennard 554d3557d3
fix auto sync saves 2023-03-19 20:23:44 +01:00
lennard 3874fac402
Sync saves when game finished 2023-03-18 16:14:01 +01:00
loathingKernel 748ff6d9ed RareCore: Detect if a game in saves is from another account.
And some cleanup
2023-03-18 14:42:46 +01:00
lennard 22b8992e55
Update translation_source.ts 2023-03-16 23:31:16 +01:00
loathingKernel a768bce996
RareGame: export .egstore only after installing and successful verification 2023-03-16 18:07:33 +02:00
loathingKernel c3231d9e17
Use object instead of ctypes.c_uint64 for signals that carry large ints 2023-03-16 14:04:12 +02:00
loathingKernel ae74d3438b
GameSettings: Use a PathEdit for override_exe
In the process convert to Ui membership instead of dual
sub-classing for those forms
2023-03-16 12:41:50 +02:00
loathingKernel 44590bb92b
Code cleanup
CloudSaves: don't save `save_path` in case it hasn't changed
IconGameWidget/ListGameWidget: Remove dead code
RareCore: add string translations
utils/paths: Use `AppDataLocation` instead of deprecated `DataLocation`
2023-03-16 12:38:33 +02:00
loathingKernel 837b391350
PathEdit: Allow for the completer's root path to be set at runtime.
This allows to complete from relative paths, such use exe override

Fix constructor argument names to follow Qt's types.
Set the same filters as the dialog for the completer.
Use the completer's icon provider for the dialog.

Force Rare to use Qt's file dialog instead of the native one.
2023-03-15 22:49:18 +02:00
loathingKernel 3236a4090c
RareGame: don't delete .egstore if the game is a DLC
VerifyWorker: use RareGame property to apply the verification check
to any DLCs
2023-03-15 21:20:52 +02:00
Stelios Tsampas dc20293abb IndicatorLineEdit: Wrap edit_func inside the QRunnable 2023-03-15 18:25:32 +02:00
Stelios Tsampas 07c64b8b9b GameInfo: Fix enablement check 2023-03-15 18:07:20 +02:00