Browse Source

Keep rebuilding toast alive until dismissed manually or there's a build error (#3455)

Liigo Zhuang 6 months ago
parent
commit
26132cfc59
1 changed files with 3 additions and 2 deletions
  1. 3 2
      packages/web/src/devtools.rs

+ 3 - 2
packages/web/src/devtools.rs

@@ -23,6 +23,7 @@ const POLL_INTERVAL_SCALE_FACTOR: i32 = 2;
 
 /// Amount of time that toats should be displayed.
 const TOAST_TIMEOUT: Duration = Duration::from_secs(5);
+const TOAST_TIMEOUT_LONG: Duration = Duration::from_secs(3600); // Duration::MAX is too long for JS.
 
 pub(crate) fn init(runtime: Rc<Runtime>) -> UnboundedReceiver<HotReloadMsg> {
     // Create the tx/rx pair that we'll use for the top-level future in the dioxus loop
@@ -84,7 +85,7 @@ fn make_ws(
                     "Your app is being rebuilt.",
                     "A non-hot-reloadable change occurred and we must rebuild.",
                     ToastLevel::Info,
-                    TOAST_TIMEOUT,
+                    TOAST_TIMEOUT_LONG,
                     false,
                 ),
                 // The devserver is telling us that the full rebuild failed.
@@ -93,7 +94,7 @@ fn make_ws(
                     "Oops! The build failed.",
                     "We tried to rebuild your app, but something went wrong.",
                     ToastLevel::Error,
-                    TOAST_TIMEOUT,
+                    TOAST_TIMEOUT_LONG,
                     false,
                 ),