From 46a238ce62bc2f7486d9dafd8423752d66bd1e31 Mon Sep 17 00:00:00 2001 From: loathingKernel <142770+loathingKernel@users.noreply.github.com> Date: Mon, 25 May 2026 17:18:55 +0300 Subject: [PATCH] GameWidget: always show third-party store on the widget --- .../tabs/library/widgets/game_widget.py | 9 ++ rare/resources/static_css/__init__.py | 118 +++++++++--------- rare/resources/static_css/stylesheet.py | 2 +- rare/resources/static_css/stylesheet.qss | 6 +- 4 files changed, 72 insertions(+), 63 deletions(-) diff --git a/rare/components/tabs/library/widgets/game_widget.py b/rare/components/tabs/library/widgets/game_widget.py index 0aaa9dfc7..96adc957c 100644 --- a/rare/components/tabs/library/widgets/game_widget.py +++ b/rare/components/tabs/library/widgets/game_widget.py @@ -84,6 +84,9 @@ def __init__(self, rgame: RareGame, parent=None): 'needs_verification': self.tr('Needs verification'), 'not_can_launch': self.tr("Can't launch"), 'save_not_up_to_date': self.tr('Save is not up-to-date'), + 'is_origin': 'The EA App', + 'is_ubisoft': 'Ubisoft Connect', + 'is_android': 'Android', } self.hover_strings = { @@ -150,6 +153,12 @@ def update_state(self): and not self.rgame.is_save_up_to_date ): self.ui.status_label.setText(self.state_strings['save_not_up_to_date']) + elif self.rgame.is_origin: + self.ui.status_label.setText(self.state_strings['is_origin']) + elif self.rgame.is_ubisoft: + self.ui.status_label.setText(self.state_strings['is_ubisoft']) + elif self.rgame.is_android_only: + self.ui.status_label.setText(self.state_strings['is_android']) else: self.ui.status_label.setText(self.state_strings[self.rgame.state]) else: diff --git a/rare/resources/static_css/__init__.py b/rare/resources/static_css/__init__.py index f097927e1..e49c306e4 100644 --- a/rare/resources/static_css/__init__.py +++ b/rare/resources/static_css/__init__.py @@ -6,65 +6,65 @@ from PySide6 import QtCore qt_resource_data = b"\ -\x00\x00\x03\x88\ +\x00\x00\x03\x89\ \x00\ -\x00\x0f\xffx\x9c\xbdWmo\xda0\x10\xfe\xde_\xe1\ -R!\xadS\xa1y!\x012\xf5K\xb7i\xaa\xd4n\ -\xab\xca\xb6\x0f\xd5>8\xf1\x91X\x0dv\xe48\xa3l\ -\xda\x7f\x9fC\x02$\x90\x18Z\xb5C\x88\x04\xbf\x7f\x99\xa0\ -\x8f\x1f\xae&\xc7\xc7\xc7\xe8\xed\xf9\xd1\xd1\xed\xd7,\x8d\ -.3)9C\x7f\x8e\x90\xfa\xcc(\xebE@\xc3H\ -z\xc8\xea\x0f\x1dx|w\xf4W\xad\x13<\x14\x90\xa6\ -\x97X\xe8\x17\xde%\x94]\xf2G\xfd\xa2\x09\xe7\xf1!\ -R\xaf)\x83\x8f\x84J\xfd\xaa\xf7|\xe6\xf3\xbd27\ -\x96\xdeOc,/:Rd\xd0\xf9Yn\xf2\xb9 \ - \x94?\xa7/k\x83\xcf\xd5\x81\x9e\xd5\xcd\x18\ -7.\xa9\x1b2\xee6zeBe\x0c\xaf\xe2\x14\xa3\ -\xde9m$\xaa\x96Q\xd2\xa4\xa1\xd9y\x06x\xb5_\ -XKh\xc8\xd1\xcb\xc8.r\x0f\xf2c\x05\xdeH\xb5\ -it\x9f\xe2,\xbd|M:\x0f\x05^T\xb8\xb9\xa6\ -\xa9<\xdc\x1b\x0d\xdb^\xf1h\x0d\xb7\xc2r\xd9X\xef\ -%\xd2^\xa5\x91\x04\x13BY\xb8\x0cW\xb5\xb5o\xc3\ -\xac>!\x0a\x15\xcb\x99&J^\x22\x5c\xfe\xbb\x15\x95\ -\xb8\xd8\x98R\x8bK\x09\x8f\xb2\xa7\xda\xf8\x90y(\xc7\ -m4^{+\xc8\xaf_\xd8W\xf7\xb8\x93\x1bLY\ -\xf1\xeay\x12\xfb\xcd\xd5\xbez%\xda\xa1K\x0a\xcc\xd2\ -\x04\x0b`r[\xff;\x88!\x90\xdf)\xcc5\xa7\x8b\ -q\xd6\xea\x0a\x0dv\xf1X]\x0e\xeb\xc8z\x9cF\xbb\ -Jw\x94#\xd5\xeb\xd5'<\x83\x09\x0eW\xffW\x17\ -L,B\xcav\xab\xdeS;\x98R\xc1\xc3#i\xdd\ -\xec\xfc\x03\x95\x03\x08\xca\ +\x00\x0f\xffx\x9c\xbdWm\x8f\xd2@\x10\xfe~\xbfb\ +\x8f\x0b\xc9i\x04\xfbB\x0b\xd4\xf8\xe5\xf4b.\xf1|\ +\x09\xa8\x1f\x8c\x1f\xb6\xdd\xa1\xdd\x5c\xd9m\xb6[\x01\x8d\ +\xff\xdd-m\xa1\x85vAsJ\x08-\xfb\xf2\xcc\xcc\ +3\xb33\xb3\xcf\x9f\xa2yDS\xb4\xa01 \xf5\xc4\ +\x99\xe4\x83\x10\x18\x08,\x81\xa0\x85\xe0K\xd4K\xe5&\ +\x864\x02\x90\xc3d\xd3\x1b\xa2\xd7\xef\xd1\xbb\xf7st\ +\xfb\xfan~yy\x89\x9e>\xbf\xb8\xf8\xf8!K\xa3\ +\x9bLJ\xce\xd0\xcf\x0b\xa4>K\xca\x06\x11\xd00\x92\ +\x1e\xb2\x86c\x07\xd6/.~\xa9u\x82\x87\x02\xd2\xf4\ +\x06\x0b\xfd\xc2YB\xd9\x0d_\xeb\x17\xcd9\x8f\xcf\x91\ +\xfa\x962\xb8%T\xeaW\xbd\xe2K\x9f\x9f\x94\xb9\xb7\ +\xf4\xeb\x22\xc6\xf2eO\x8a\x0cz\xdf\xcaM>\x17\x04\ +\x84\x87\x8cD\xad\xde\x0f\x0c\x04&4K=\xe4\xec\xc6\ +q\xf0\x10\x0a\x9e12\x08x\xcc\xd5\x16\x11\xfa\xf8\xda\ +r\x9cgh\xff\xe3\xf4\x9f\x14\x06`\x1f\xe2\xab;\xb6\ +\xe0\xdb\xb7RX\xb9\xf1j:\x9d\x16\xa0\x0b\xce\xe4`\ +\xeb.\x0fQ\x89c\x1a\xd4\xc6W\xa5-\x8c\x8b%\x8e\ +\x0b\x8b#\x08\x1e\x94\xc5\x8f\x8f\xbcgIa\xa7jC\ +\xd3O%+\x95\x18\xc3\xf0G\x86\xd1E\x8c\x9av\xb7\ +\xd3\x1a\x5c/\xe2\xdfAt\xa1O\xc6Z\xf4\x91{\x0a\ +\x9d\xd0\x14\xfb\xb1:\x11\x1d\x02\xec@+\xc0\x9a\x1c\x0b\ +\xf8\xc4\xe8ibrZ4\xc8n9\xadE\xd6Q\x93\ +\x13\xa3\xc1\xcf\x899\x8d\xaf''\xa7F#\x22\xa7\xe6\ +X\xc4g\x10t\xb1\xd11\xe3\xfa\xce\xd8\x0a:am\ +\xc7\x0aLW\x07\xab\xa3e4\xb6\xb1I\xbau\xf6-\ +\xdb4\xb5\xe0'8)\xb5\xeb\xc2\x1f\x99\xc4\x80C\xfc\ +{\xa5\xaf\x8e\x11\xcbp\x1d\xb7\x9b\x11\xd3\xb0-\xfb\x88\ +\x91=\xa8\x8e\x0f\xd3\x1d\xd9\xa3Iw\x80\x13kb\xf9\ +\x1ah=\x1b\x95f]\xe8\xbeeY\xa3Z\x1a\xfc\x98\ +A\x06_\xb8x\x00Q\xcfY%\xea\x8a\x12\x19y\xc8\ +W\x07z\xd94c\ +\xda\xba\xa4i\xc8\xb4\xdf\xea\x959\x951\xfc\x13\xa7\x18\ +\xcd\xcei/Q\xb5\x8c\x92&-\xcd\xce_\x80\xd7\xfb\ +\x85\x9d\x84\x96\x1c\xbd\x8d\xec\x22\xf7 ?V\xe0\xadT\ +\x9bF\xffO\x9c\xa5\x97\xafI\xe7\xa1\xc0\x9b\x1a7o\ +i*\xcf\xf7F\xcb\xb6\x7fx\xb4\xc6N3,\xb7\x8d\ +\xf5I\x22\xed*\x8d$\x98\x10\xca\xc2m\xb8\xaa\xadC\ +\x1b\x96\xcd\x09Q\xa8X\xce\xb4Q\xf2\x18\xe1\xf2\xdf\xad\ +\xa8\xc5\xc5\xde\x94F\x5cJX\xcb\x81j\xe3C\xe6\xa1\ +\x1c\xb7\xd5x\xed\xad \xbf~a_\xdd\xe3\xae\xee1\ +e\xc5\xab\xe7I\xec\xb7W\xfb\xfa\x95\xe8\x88.)0\ +K\x13,\x80\xc9C\xfdg\x10C ?SXiN\ +\x17\xe3\xac\xd3\x15\x1a\xec\xe2Q]\x0e\x9b\xc8z\x9cV\ +\xbbJw\x94#\xf5\xeb\xd5\x1b\xbc\x849\x0e\xab\xff\xd5\ +\x05\x13\x8b\x90\xb2\xe3\xaa\xf7\xa7\x1dL\xa9\xe0\xf9\x91\xb4\ +kv~\x03b'\x08\xc1\ " qt_resource_name = b"\ @@ -84,7 +84,7 @@ \x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x02\ \x00\x00\x00\x00\x00\x00\x00\x00\ \x00\x00\x00\x1a\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\ -\x00\x00\x01\x9d\xc9~\xe1\xf2\ +\x00\x00\x01\x9e_\x80\x06Q\ " def qInitResources(): diff --git a/rare/resources/static_css/stylesheet.py b/rare/resources/static_css/stylesheet.py index b1a15aa06..d60ca6534 100644 --- a/rare/resources/static_css/stylesheet.py +++ b/rare/resources/static_css/stylesheet.py @@ -137,7 +137,7 @@ def css_name(widget: wrappertype | QObject | type, subwidget: str = ''): from rare.components.tabs.library.widgets.icon_widget import IconWidget # noqa: E402 icon_background_props = { - 'backgroundColor': 'rgba(0, 0, 0, 65%)', + 'backgroundColor': 'rgba(0, 0, 0, 80%)', } style.QLabel[css_name(IconWidget, 'StatusLabel')].setValues( fontWeight='bold', diff --git a/rare/resources/static_css/stylesheet.qss b/rare/resources/static_css/stylesheet.qss index e1d60499f..3ae81216f 100644 --- a/rare/resources/static_css/stylesheet.qss +++ b/rare/resources/static_css/stylesheet.qss @@ -107,14 +107,14 @@ QLabel#ProgressLabel { QLabel#IconWidgetStatusLabel { font-weight: bold; color: white; - background-color: rgba(0, 0, 0, 65%); + background-color: rgba(0, 0, 0, 80%); border-radius: 5%; border-top-left-radius: 11%; border-top-right-radius: 11%; } QWidget#IconWidgetMiniWidget { color: rgb(238, 238, 238); - background-color: rgba(0, 0, 0, 65%); + background-color: rgba(0, 0, 0, 80%); border-radius: 5%; border-bottom-left-radius: 9%; border-bottom-right-radius: 9%; @@ -131,7 +131,7 @@ QLabel#IconWidgetTooltipLabel { QPushButton#IconWidgetButton { border: 1px solid black; border-radius: 10%; - background-color: rgba(0, 0, 0, 65%); + background-color: rgba(0, 0, 0, 80%); } QPushButton#IconWidgetButton:hover { border-color: gray;