loathingKernel
5d209e1805
GameWidgets: Split status label to two
...
The original status_label is used to reflect the state of the game,
the tooltip_label is used to reflect the action of the current hovered
widget.
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2023-02-04 17:38:06 +02:00
loathingKernel
4640f8af6f
RareGame: Add metadata loading into RareGame itself and adapt tray icon to use the same file structure
...
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2023-02-04 17:38:06 +02:00
loathingKernel
9ca39d94ab
GlobalSignals: Reorganize signals into groups
...
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2023-02-04 17:38:06 +02:00
loathingKernel
83df445de9
GlobalSignals: Fix signal names in EGLSyncGroup and ImportGroup
...
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2023-02-04 17:38:06 +02:00
loathingKernel
857b3a3cc0
WineResolver: Pass LegendaryCore
at instantiation
...
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2023-02-04 17:38:06 +02:00
loathingKernel
b73fc328d2
GameInfo: Use ui
member instead of double inheritance for the UI module
...
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2023-02-04 17:38:06 +02:00
loathingKernel
7b6a3e181a
Shared: Move GameUtils and CloudSaveUtils into rare.shared
...
Removed `rare.utils.legendary_utils`, the `uninstall_game` function
was moved to `rare.shared.game_utils` for now
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2023-02-04 17:38:06 +02:00
loathingKernel
96b80bc423
Library: Introduce new tile design from refactor_backend
...
Currently broken but Rare starts
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2023-02-04 17:38:06 +02:00
loathingKernel
ab858b87d3
InstallDialog: Fix title capitalization
...
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2023-02-04 17:38:06 +02:00
loathingKernel
672a283472
GameInfoTabs: Emit back signal instead of accessing parent when Esc
is pressed
...
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2023-02-04 17:38:06 +02:00
loathingKernel
e059db1984
LibraryWidget: Remove class variables
...
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2023-02-04 17:38:06 +02:00
loathingKernel
6eb4e19807
GameInfo: Adapt tab to handle uninstalled games too
...
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2023-02-04 17:38:06 +02:00
loathingKernel
4796fb5efa
GameSettings: Check if Igame
has save_path
attribute before using it
...
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2023-02-04 17:38:06 +02:00
loathingKernel
d7a5404517
VerifyWorker: Move to rare/shared/workers
...
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2023-02-04 17:38:06 +02:00
loathingKernel
c5e2893f64
UninstalledInfoTabs: Remove
...
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2023-02-04 17:38:06 +02:00
loathingKernel
a58e385f8b
GameInfo: Add all currently available tabs to GameInfo
...
Prepares for removal of dedicated UninstalledGameInfo tab
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2023-02-04 17:38:06 +02:00
loathingKernel
4239acea24
GameDlc: Replace double inheritance with UI member class
...
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2023-02-04 17:38:06 +02:00
loathingKernel
652968b6bf
RareGame: Introduce RareGame
from refactor_backend
branch
...
Shared: Move WineResolver to `rare/shared/workers`
PathSpec: Move to `rare/models`
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2023-02-04 17:38:06 +02:00
lanmaster53
db1691b694
Fixed a bug that caused a UI crash on Mac-based systems. ( #267 )
2023-02-04 15:23:07 +01:00
lennard
e46ae0f91e
Fix "Offline" text in account widget
2023-01-08 20:41:02 +01:00
lennard
a90d6ba7c8
Fix too high download speed
2022-12-01 00:12:12 +01:00
loathingKernel
cb49e8b678
Integrations: EOS -> Epic Overlay
2022-11-04 02:44:45 +02:00
loathingKernel
b84d8a5c67
ImportSync: Rename to Integrations due to expanding their use.
2022-11-03 22:50:21 +02:00
loathingKernel
61749f9acd
EOSWidget/UbiActivationHelper: Move them from Settings to ImportSync
2022-11-03 22:34:50 +02:00
loathingKernel
da79519e80
GameListHeadBar: Combine the "Import" and "EGL Sync" buttons into a menu
...
The "EOS and Ubisoft" tab is currently empy
2022-11-03 14:53:58 +02:00
loathingKernel
891804ae37
AccountWidget: Remove dead signals after the offline mode fix
...
Signals, if they carry the same datatype, can be chained simply
with `signal.connect(othersignal)` without the need to use a `lambda`
expression and `emit()`
TabWidget: Fix error because the `exit_app` signal was called directly
2022-10-31 17:00:01 +02:00
loathingKernel
435d560b5c
InstallDialog: Update the collapsible widget to take a widget instead of a layout
...
This change makes it more inline with how QScrollArea operates on a central widget.
Other changes include using a QFrame instead of a QWidget as a base and
adding a QLabel for the title instead of the horizontal line.
The advanced options were split into their own separate widget. Right now
their class operates only as a container with the logic remaining in the
InstallDialog.
2022-10-31 16:59:55 +02:00
loathingKernel
5370355e5d
Lgndr: Restructure module to follow legendary's file hierarchy
...
Move overloaded class files into the folders following
legendary's structure. Move Rare's integration classes into
their own subfolder.
2022-10-29 14:50:18 +03:00
loathingKernel
e6ff2bb41e
ImportGroup: Enable the button when "Import DLCs" changes
2022-10-29 14:50:18 +03:00
loathingKernel
9fcb924ae8
Widgets: Correct CollapsibleWidget name
2022-10-29 14:50:18 +03:00
loathingKernel
47b474a31a
StyleSheets: Remove last use of custom noBorder
property
...
Instead, use `QFrame.NoFrame` as `FrameShape` to set `0px` border width.
2022-10-29 14:50:18 +03:00
lennard
ca45c62414
Fix offline mode
2022-10-29 12:23:50 +02:00
lennard
923aa1b90d
Migrate to legendary 0.20.30
2022-10-26 21:36:16 +02:00
lennard
97157646a1
Fix some translation strings
2022-10-23 22:52:49 +02:00
lennard
8e721cc324
Include Origin games in get_wine_prefixes()
2022-10-23 22:52:39 +02:00
loathingKernel
3291100709
InstallDialog: Set irrelevant widgets as disabled.
...
Do not hide irrelevant options, show them as disabled instea.
This like the install directory are still informational despite
not being editable.
Also homogenize variable and widget naming.
2022-10-23 21:36:44 +03:00
loathingKernel
c1a008dce1
MainWindow: Don't connect to the global exit signal
...
Instead of connecting to the global `exit_app` signal, pass the signals
through their respective widgets. Because signals are queued by
default, this ensures that slots are executed in the order they are
connected. Makes it cleaner to do cleanup procedures where they should
make sense, unlike the global signal, where it has to be inferred by
the widget instantiating order.
2022-10-23 16:08:27 +03:00
loathingKernel
3c413c4e1f
AccountWidget: Refuse to logout if there are active downloads
...
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2022-10-23 00:54:11 +03:00
loathingKernel
28b2b7ea9b
MainWindow: Handle active downloads when exiting through WM's close button.
...
When the closed through the WM's close button, `closeEvent()` is
used directly. In this case the dialog in the `on_exit_app`
slot was skipped.
There is a mishandled case. If coming from logout while there
is an active download (Yes to logout -> No to stop download)
we end up in a weird state which I haven't investigated yet.
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2022-10-23 00:01:30 +03:00
loathingKernel
ef65e8ce09
DownloadsTab: Show the update version of InstallDialog if it is an update
...
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2022-10-22 15:44:22 +03:00
loathingKernel
e9fab53aff
UninstallDialog: If the game has selectable downloads, default to keeping configuration
...
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2022-10-22 15:41:49 +03:00
Stelios Tsampas
53cab3ecb9
GameInfo: Add missing space
2022-10-19 17:53:37 +03:00
lennard
68868c6259
Set game to not running, if an error occurred
2022-10-18 21:26:48 +02:00
lennard
378d876c3b
Add Ukrainian language
2022-10-17 20:00:46 +02:00
lennard
ebd567e665
Disable pypresence settings if not installed
2022-09-27 21:55:57 +02:00
lennard
fbd16b99ae
Update translations
2022-09-27 21:48:44 +02:00
lennard
24774b07c0
Fix move game on Windows
2022-09-27 21:09:41 +02:00
Dummerle
5d24c672b2
Catch Permission errors, when disabling and enabling EOS overlay
2022-09-19 01:00:17 +02:00
loathingKernel
83551f9b9e
DownloadThread: Don't mark prerequisites as installed if the user selected not to install them
...
Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2022-09-18 20:52:59 +03:00
Stelios Tsampas
0960cbbdd3
DownloadThread: args
is a string!
2022-09-18 15:07:42 +03:00
Stelios Tsampas
14eda1c246
DownloadThread: Weirdly setNativeArguments
doesn't exist despite the docs saying that is should be available on Windows
2022-09-18 12:52:15 +03:00
loathingKernel
e621955a22
RareSettings: Handle permission error when deleting logs
2022-09-13 12:38:43 +03:00
loathingKernel
f7e9375964
LaunchDialog: Make the split 75/25
2022-09-11 19:45:17 +03:00
loathingKernel
cf5fd415e5
LaunchDialog: Add a middle-ground solution for concurrent image downloads
2022-09-11 14:51:37 +03:00
loathingKernel
52108688d3
LaunchDialog: Use ElideLabel for progress information
2022-09-10 22:42:47 +03:00
Stelios Tsampas
7a1935335e
GameInfo: Work-around slowdown on widget update_game()
request
2022-09-10 19:04:40 +03:00
Stelios Tsampas
21ea2af8e1
App: Move timer initialization after LaunchDialog has finished
2022-09-10 18:07:32 +03:00
Stelios Tsampas
74a3d9458d
LaunchDialog: Show validation progress separately from download progress.
2022-09-10 17:27:37 +03:00
Stelios Tsampas
cc74767f0a
App: Move verification requirement check into launch dialog
2022-09-10 15:33:48 +03:00
Stelios Tsampas
afcb3f7e7a
GameLaunchHelper: Allow closing the window only if the application has exited or crashed
2022-09-08 16:02:17 +03:00
Stelios Tsampas
d5d795ce79
Paths: Query paths after the OrganizationName
and ApplicationName
have been set
...
At the point they were evaluated, `OrganizationName` and `ApplicationName` are unset
resulting in wrong paths. As a quick fix, explicitly set them to their later values
Per OS examples:
Windows:
before:
data: C:\Users\<user>\AppData\Local
cache: C:\Users\<user>\AppData\Local\cache
after:
data: C:\Users\<user>\AppData\Local\Rare\Rare
cache: C:\Users\<user>\AppData\Local\Rare\Rare\cache
2022-09-08 01:27:37 +03:00
loathingKernel
5029921b09
Move a bunch of class attributes to instance attributes
2022-09-07 18:21:50 +03:00
Dummerle
4f91c6b422
Move widgets and uninstalled_games attributes to __init__()
2022-09-05 22:46:44 +02:00
Dummerle
333bb40ad7
Fix wrong origin classification for ue plugins without assets
2022-09-05 20:50:10 +02:00
loathingKernel
1ebd0b18d8
Introduce a very basic RareCore to handle signletons and their cleanup.
2022-09-04 20:39:03 +03:00
loathingKernel
7020141148
LaunchDialog: Move update check before login()
2022-09-04 19:51:23 +03:00
loathingKernel
afcdc1dea1
App: Move legendary initialization to the singleton
...
App: Move tray to MainWindow
Shared: Add destructor for singleton instances
2022-09-04 01:14:43 +03:00
loathingKernel
0a89f0e0b8
Make launch
and alias for start
2022-09-02 13:17:05 +03:00
loathingKernel
48867a8656
DebugSettings: Add restart button, thanks Dummerle!
2022-09-02 00:31:10 +03:00
loathingKernel
3c5575fda9
LaunchDialog: Don't explicitly delete LoginDialog
2022-09-02 00:04:39 +03:00
loathingKernel
345ee443ed
ImportLogin: Only add the first part of the split
2022-09-02 00:02:20 +03:00
loathingKernel
b3348a1eca
ImportLogin: Check if programdata is set
2022-09-01 23:48:30 +03:00
loathingKernel
0388d4bf9d
ImportLogin: Fix failure to login using EGL data
2022-09-01 22:49:09 +03:00
loathingKernel
fb708ce5fd
LoginDialog: Update to legendary 0.20.28
2022-09-01 18:53:16 +03:00
loathingKernel
2c36ffcd51
Lgndr: Adjust for d8af06c936
2022-09-01 11:49:42 +03:00
loathingKernel
6941556265
InstallDialog: setup UI class as member instead of double inheritance
2022-08-31 17:42:40 +03:00
loathingKernel
b1c713be12
InstallDialog: Show silent dialog in case of error
...
InstallDialog: Default shortcut creation to Unchecked in the UI file
InstallDialog: Save and reuse last shortcut creation value
2022-08-31 17:41:12 +03:00
Dummerle
4e325eb3d8
Ignore some pylint errors
2022-08-30 01:33:08 +02:00
loathingKernel
a6d1cae8a8
Lgndr: Temporary fix for DLManager monkeypatching in Windows
2022-08-30 01:22:08 +02:00
loathingKernel
2f983d9b52
InstallDialog: Adjust collapsible widget
2022-08-28 22:07:26 +02:00
Dummerle
cb3f316bf0
Fix proton visibility on Windows
2022-08-27 12:47:17 +02:00
Dummerle
70a51902d2
Move move game stuff to external file
...
I know it's weird
2022-08-27 12:32:20 +02:00
Dummerle
3469946ee9
Install prereqs by default on windows
2022-08-27 12:32:20 +02:00
Dummerle
2797485e69
Fix reason for cloud save edit, if nothing wrong
2022-08-27 12:32:20 +02:00
Dummerle
da07d6b791
Move some options in install dialog to advanced options
2022-08-27 12:32:17 +02:00
loathingKernel
2b141c276f
InstallDialog: Fix dlm
keyword argument
2022-08-26 11:38:13 +03:00
loathingKernel
50a37be433
DownloadsTab: Remove dead code
2022-08-17 23:46:10 +03:00
loathingKernel
c40fef0595
Lgndr: Transfer what DownloadThread does to install_game_real
(not used yet)
...
DownloadThread: Refactor names to match Lgndr
2022-08-12 13:17:53 +03:00
loathingKernel
5e022e6d28
Lgndr: Rename a few fields to reflect legendary's names
2022-08-08 21:06:58 +03:00
loathingKernel
e97e9fe841
Downloads: Add skip_dlcs
and with_dlcs
arguments.
2022-08-08 17:26:38 +03:00
loathingKernel
3ee789a695
Update DownloadThread
2022-08-03 02:33:50 +03:00
loathingKernel
38dfdc8bc2
Lgndr: Remove LegendaryCLISingleton
...
Since `LegendaryCLI` isn't stateful, we can instantiate
it when needed
2022-08-02 10:42:38 +03:00
loathingKernel
5ac71e99f0
DownloadThread: Use clean_post_install
instead of local copy
...
InstallDialog: Handly empty `config_tags`
Lgndr: Cleanup
2022-08-02 10:42:38 +03:00
loathingKernel
e5c7b029ff
GameInfo: Offer to also update the game after a verification if there is one
2022-08-02 10:42:38 +03:00
loathingKernel
785aaf648e
GameInfo: Detect repair_and_update
requirement
...
If a game was partially installed and it was imported
through the import functionality, if `repair_and_update`
is specified it will report `0` download size if there
is no real update to be done. Fix it by detecting the
need for an update explicitly.
This will also force games that have failed verification
to also update while repairing them, fixing the
long-standing issue of repairing an older version of a
game and then doing the update in a separate step.
2022-08-02 10:42:38 +03:00
loathingKernel
3501741c03
DownloadsTab: invalidate and recreate update widgets on import
...
Previously on game import, multiple update widgets for the same game
were created in the downloads tab. Instead of checking if a widget
already exists, invalidate the delete the existing and add a new one
with the current information about the installed game.
2022-08-02 10:42:38 +03:00
loathingKernel
f375357a2c
Utils: fix unresolved references
2022-08-02 10:42:38 +03:00
loathingKernel
7408116deb
Lgndr: Don' use lambda with default argument
2022-08-02 10:42:38 +03:00
loathingKernel
3ecbae0564
Utils: Rename utils.py
to misc.py
to not confuse PyCharm checker
2022-08-02 10:42:38 +03:00
loathingKernel
f51563ea93
Models: Move installation related models into their own file
2022-08-02 10:42:38 +03:00