@bobfrankston/msger 0.1.109 → 0.1.111

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Binary file
Binary file
Binary file
@@ -587,6 +587,18 @@ fn main() {
587
587
  #[cfg(not(target_os = "linux"))]
588
588
  let webview = builder.build(window.as_ref()).expect("Failed to create webview");
589
589
 
590
+ // Fix for garbled window on Linux/GTK: Force window resize after webview creation
591
+ // This ensures webkit2gtk renders properly on initial display
592
+ #[cfg(target_os = "linux")]
593
+ {
594
+ let current_size = window.inner_size();
595
+ window.set_inner_size(tao::dpi::PhysicalSize::new(
596
+ current_size.width + 1,
597
+ current_size.height + 1,
598
+ ));
599
+ window.set_inner_size(current_size);
600
+ }
601
+
590
602
  webview
591
603
  } else {
592
604
  // Use HTML content (msger API already in template.html)
@@ -644,6 +656,18 @@ fn main() {
644
656
  #[cfg(not(target_os = "linux"))]
645
657
  let webview = builder.build(window.as_ref()).expect("Failed to create webview");
646
658
 
659
+ // Fix for garbled window on Linux/GTK: Force window resize after webview creation
660
+ // This ensures webkit2gtk renders properly on initial display
661
+ #[cfg(target_os = "linux")]
662
+ {
663
+ let current_size = window.inner_size();
664
+ window.set_inner_size(tao::dpi::PhysicalSize::new(
665
+ current_size.width + 1,
666
+ current_size.height + 1,
667
+ ));
668
+ window.set_inner_size(current_size);
669
+ }
670
+
647
671
  webview
648
672
  };
649
673
 
@@ -760,6 +784,20 @@ fn main() {
760
784
  .or_else(|| window_clone.primary_monitor());
761
785
  window_clone.set_fullscreen(Some(tao::window::Fullscreen::Borderless(monitor)));
762
786
  }
787
+
788
+ // Fix for garbled window on Linux/GTK: Force window resize after fullscreen toggle
789
+ // This ensures webkit2gtk renders properly after state change
790
+ #[cfg(target_os = "linux")]
791
+ {
792
+ // Small delay to let fullscreen state settle
793
+ std::thread::sleep(std::time::Duration::from_millis(100));
794
+ let current_size = window_clone.inner_size();
795
+ window_clone.set_inner_size(tao::dpi::PhysicalSize::new(
796
+ current_size.width + 1,
797
+ current_size.height + 1,
798
+ ));
799
+ window_clone.set_inner_size(current_size);
800
+ }
763
801
  }
764
802
  // Escape exits fullscreen or dismisses window
765
803
  KeyCode::Escape => {
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bobfrankston/msger",
3
- "version": "0.1.109",
3
+ "version": "0.1.111",
4
4
  "description": "Fast, lightweight, cross-platform message box - Rust-powered alternative to msgview",
5
5
  "type": "module",
6
6
  "main": "./index.js",