Studio: shutdown, first window size, Start app wait, WebView2 check, Setup errors, Add a ZBrush folder, import wording

Chiusa
#82 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
32/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
javascript, python

Direzione di ricerca

Start with zorbit/studio.py, then follow the Setup flow through onboarding.snapshot and app.js; also review docs/files.md for the import wording. The issue identifies concrete changes for shutdown handling, window sizing, startup polling, WebView2 detection, setup errors, ZBrush folder registration, legacy installations, and import messaging. Done means each listed behavior is implemented and the affected startup and Setup paths no longer produce the reported false or misleading states.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

bug studio

From the audit of ZOrbit 0.11.0 (31 October 2026). All in zorbit/studio.py unless said otherwise.

  • Studio cancels Windows shutdown. _on_closing returns False for every close and asks the page on another thread. WinForms raises the same FormClosing when the session ends, so Studio answers "do not close" to a shutdown or sign-out even with nothing unsaved. Let the winframe subclass see WM_QUERYENDSESSION and WM_ENDSESSION and let the close through.
  • The first window does not fit a laptop. Without a saved placement the window is 1320x860 logical pixels with no check against the work area, and the minimum is 980x640. A 1080p laptop at 150 percent has about 1280x680, so the first thing a new user sees runs off the bottom of the screen. Clamp the default to the primary work area and lower the minimum height or let Menus scroll.
  • Start app gives up after 4 s with old log lines. start_app polls the mutex for 4.0 s; a cold PyInstaller start with an antivirus scan takes longer, so it returns "The app did not start. The last lines of its log:" with lines from an earlier run, and the status turns green a few seconds later. Wait 8 to 10 s; if the process is alive at the deadline return "still starting"; show only lines newer than the launch. On Setup the toast ends in a colon and no lines follow, because Setup's startApp in app.js discards the returned log; keep it and offer Open Status.
  • No WebView2 check. main() calls webview.start() with no renderer check. pywebview falls back to the old IE engine with a logger warning, so on a Windows 10 without the Evergreen runtime Studio opens dark and empty with no title bar buttons (they are HTML). Probe the runtime's registry key before import webview and show a MessageBox with the download link and a studio.log line. Same for the browser.
  • A failed Setup probe says "No ZBrush was found". get_setup catches any exception from onboarding.snapshot and returns a fallback with an error string; app.js never reads it, so step 1 tells a correctly installed user to add a folder. Show "The setup check failed: ... (see studio.log)" and do not derive steps from the fallback.
  • Add a ZBrush folder refuses a 2026+ folder. A ZBrush on another drive that has never run is not found by the scan; Setup says "No ZBrush was found. Add its folder if you have one"; adding it is refused with "it appears on Setup by itself once it has been started once", and Setup still says nothing was found. Accept the folder into zbrush_folders, or say "Start ZBrush once" and show the registered state and Fix anyway.
  • Install on a running-only 2022 to 2025 is refused (_known_legacy); see the ZScript issue.
  • Import says "load" where it means "replace". Importing swaps all menus, the ring section, the bridge key and the browser hotkey, but the dialog and toast say "The menus and settings load into the editor", and tags get a Merge/Replace choice that suggests menus merge too. Say the file's N menus replace your M, that nothing is written until Save, and that Undo brings yours back. docs/files.md too. A tags object holding only Favourites counts as "has tags".
  • save_config catches only OSError, so an encoding error becomes a generic failure and leaves a .tmp.

Audit ids: F169, F181, F202, F025, F017, F160, F170, F184, F057, F312, F116, F087, F090, F274, F372.

Lingua principale
Python
Stelle
2
Fork
1
Merge medio
1h 1m
PR unite (30g)
10

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di combwizard/ZOrbit

Tutte le issue di combwizard/ZOrbit

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.