Skip to content

App closes silently after splash screen on first launch #1

@Galamooth

Description

@Galamooth

Bug Report: App closes silently after splash screen on first launch

Environment

  • WEave version: v2.4.0
  • OS: Windows 11 (10.0.26200)
  • Python: 3.12.9
  • PyQt6: 6.4.2
  • PyQt6-WebEngine: 6.4.0
  • PyQt6-WebEngine-Qt6: 6.4.0
  • DepotDownloaderMod: latest available
  • Running from: Source code (python main.py)

Description

After selecting the Wallpaper Engine folder on first launch, the app shows a loading spinner (hourglass icon) for a few seconds and then closes silently without any error message or traceback.


Steps to Reproduce

  1. Clone the repository and install dependencies via pip install -r requirements.txt
  2. Place DepotDownloaderMod.exe in plugins/DepotDownloaderMod/
  3. Place RePKG.exe in plugins/RePKG/
  4. Run python main.py
  5. Select a valid Wallpaper Engine folder (containing projects/myprojects/)
  6. Observe the hourglass loading spinner
  7. App closes after a few seconds

Debug Output

Added print statements to main.py and bootstrap/startup.py to trace execution:

INICIANDO...
APP CREADA
CREANDO MAIN WINDOW
[WebEngine context info...]
CONTEXTO CREADO
VENTANA MOSTRADA
[INFO:CONSOLE] "[DOM] Input elements should have autocomplete attributes..."
  source: https://steamcommunity.com/login/home/
js: Couldn't find localization key Wallpapers  (x4)
[WARNING:backend_impl.cc(1827)] Destroying invalid entry.

Key observations:

  • The app reaches VENTANA MOSTRADA successfully
  • WebEngine loads steamcommunity.com/login/home/ — login is attempted
  • steamcommunity.com/my is never reached — login fails silently
  • QApplication.quit() is never called from Python code
  • No Python exception or traceback is produced
  • The app closes cleanly with exit code 0

Root Cause Investigation

1. All built-in public accounts fail authentication

Tested each account from account_service.py manually using DepotDownloaderMod.exe:

Account | Result -- | -- ruiiixx | InvalidPassword premexilmenledgconis | Timeout / no response vAbuDy | Timeout / no response adgjl1182 | Timeout / no response gobjj16182 | Timeout / no response 787109690 | Timeout / no response weworkshopmanager2 | Login OK, but AccessDenied on depot key

The only account that successfully authenticates (weworkshopmanager2) does not have a valid depot key for app 431960, so wallpaper downloads fail.

2. Steam Guard blocks personal account login

Tested with a personal Steam account that owns Wallpaper Engine. DepotDownloaderMod.exe successfully downloaded wallpapers when run manually (the Steam Guard code was entered interactively). However, WEave cannot handle Steam Guard interactively — the login times out and the app closes.

3. Couldn't find localization key Wallpapers

This error originates from Steam's own CDN JavaScript (chunk-FWIJ5ZG5.js), not from WEave's localization files. It is a cosmetic issue unrelated to the crash.

4. PyQt6 compatibility issue (separate bug)

browse_toggle.py uses Qt.QSize which does not exist in PyQt6 — QSize must be imported separately from PyQt6.QtCore. This causes an AttributeError on startup and must be patched manually before the app can run:

python
# In ui/widgets/browse_toggle.py, add to imports:
from PyQt6.QtCore import QSize

# Change return type annotation from:
def _get_icon_size(self) -> Qt.QSize:
# To:
def _get_icon_size(self) -> QSize:

Expected Behavior

  • App should remain open even when all public accounts fail to authenticate
  • App should show an error message or settings dialog prompting the user to provide valid credentials
  • App should support Steam Guard (interactive code entry or QR login)

Suggested Fixes

  1. Account fallback: When all public accounts fail, instead of closing, show the Settings dialog so the user can enter their own Steam credentials
  2. Steam Guard support: Add an input dialog for the Steam Guard code when required
  3. Graceful degradation: If login fails completely, allow the app to run in "offline mode" showing only locally installed wallpapers
  4. Fix Qt.QSize in browse_toggle.py: Replace with proper QSize import from PyQt6.QtCore
  5. Update public accounts: The current built-in accounts appear to be outdated or banned

Additional Notes

  • The weworkshopmanager2 account connects to Steam successfully but receives AccessDenied on the depot key — this may indicate the account's WE license was revoked
  • Manually running DepotDownloaderMod.exe -username weworkshopmanager2 -password [redacted] -app 431960 -pubfile [ID] -dir [output] confirms the AccessDenied error
  • The app works correctly in all other aspects: folder detection, installed wallpaper display, UI rendering — the only blocker is the Steam authentication step

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions