wails/v3/pkg/application
Lea Anthony 0cb4037ed9 fix: prevent window menu crash on Wayland by realizing window before showing
On Wayland with GTK3, the appmenu-gtk-module tries to set DBus properties
for global menu integration before the window is fully realized, causing
a crash with the error "GDK_IS_WAYLAND_WINDOW (window) assertion failed".

The fix calls gtk_widget_realize() before gtk_widget_show_all() to ensure
the window has a valid GdkWindow when the menu system accesses it.

This fix is applied to both the CGO and purego implementations.

Fixes wailsapp/wails#4769

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-12 15:41:50 +11:00
..
assets/alpha BREAKING CHANGE: wml attributes are now prefixed with data- 2025-01-28 07:37:17 +11:00
internal/tests Refactor Manager API to use singular naming convention (#4367) 2025-06-22 12:19:14 +10:00
application.go fix: convert all printf-style info() calls to slog-style 2025-12-12 06:36:05 +11:00
application_android.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
application_android_nocgo.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
application_darwin.go fix: convert remaining printf-style debug calls to slog-style 2025-12-12 06:29:39 +11:00
application_darwin.h Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
application_darwin_delegate.h Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
application_darwin_delegate.m feat: adapt iOS and Android message processors to RuntimeRequest transport 2025-12-10 21:27:04 +11:00
application_debug.go fix: convert all printf-style info() calls to slog-style 2025-12-12 06:36:05 +11:00
application_dev.go [v3] Late service registration and error handling overhaul (#4066) 2025-02-19 09:27:41 +01:00
application_ios.go fix: convert all printf-style info() calls to slog-style 2025-12-12 06:36:05 +11:00
application_ios.h Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
application_ios.m Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
application_ios_delegate.h Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
application_ios_delegate.m feat: adapt iOS and Android message processors to RuntimeRequest transport 2025-12-10 21:27:04 +11:00
application_linux.go fix: auto-disable DMA-BUF renderer on Wayland with NVIDIA to prevent crashes 2025-12-12 08:39:15 +11:00
application_options.go fix: resolve merge conflict in AndroidOptions and add AGENTS.md 2025-12-10 21:15:15 +11:00
application_production.go Refactor menu functions and streamline devtools toggle across systems 2024-01-21 20:52:32 +11:00
application_windows.go [v3 alpha] windows tray minor refactor (#4653) 2025-11-04 07:44:58 +11:00
bindings.go [v3] Late service registration and error handling overhaul (#4066) 2025-02-19 09:27:41 +01:00
bindings_test.go [v3] Late service registration and error handling overhaul (#4066) 2025-02-19 09:27:41 +01:00
browser_manager.go feat: Complete App API restructuring with organized manager pattern (#4359) 2025-06-21 19:51:14 +10:00
clipboard.go [linux] support clipboard 2023-10-02 20:47:04 +11:00
clipboard_android.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
clipboard_darwin.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
clipboard_ios.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
clipboard_linux.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
clipboard_manager.go feat: Complete App API restructuring with organized manager pattern (#4359) 2025-06-21 19:51:14 +10:00
clipboard_windows.go [v3 windows] Add clipboard support 2023-06-10 13:01:10 +10:00
context.go Fix build issue 2025-01-17 21:21:32 +11:00
context_application_event.go rename context consts 2025-07-12 19:09:57 -06:00
context_menu_manager.go feat: Complete App API restructuring with organized manager pattern (#4359) 2025-06-21 19:51:14 +10:00
context_window_event.go [V3] Drag-n-Drop Zones and improvements (#4318) 2025-08-04 20:40:19 +10:00
dialog_manager.go feat: Complete App API restructuring with organized manager pattern (#4359) 2025-06-21 19:51:14 +10:00
dialogs.go Refactor to using Window interface (#4471) 2025-08-09 15:28:08 +10:00
dialogs_android.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
dialogs_darwin.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
dialogs_darwin_delegate.h Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
dialogs_darwin_delegate.m Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
dialogs_ios.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
dialogs_linux.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
dialogs_windows.go Refactor to using Window interface (#4471) 2025-08-09 15:28:08 +10:00
dialogs_windows_test.go Create dialogs_windows_test.go 2025-04-09 16:21:59 -03:00
environment.go Update system.Environment 2024-03-19 20:37:03 +11:00
environment_manager.go Added getAccentColor implementation to Env (#4399) 2025-07-15 03:44:34 +00:00
errors.go [v3] Late service registration and error handling overhaul (#4066) 2025-02-19 09:27:41 +01:00
event_manager.go [V3] Refactor binding transport layer (#4702) 2025-12-07 22:19:12 +11:00
events.go fix: restore events.go from v3-alpha to fix compilation errors 2025-12-10 22:06:33 +11:00
events_common_android.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
events_common_darwin.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
events_common_ios.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
events_common_linux.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
events_common_windows.go Refactor Manager API to use singular naming convention (#4367) 2025-06-22 12:19:14 +10:00
events_loose.go [v3] Typed Events, revisited (#4633) 2025-11-11 20:25:57 +11:00
events_strict.go [v3] Typed Events, revisited (#4633) 2025-11-11 20:25:57 +11:00
events_test.go [v3] Typed Events, revisited (#4633) 2025-11-11 20:25:57 +11:00
image.go V3 alpha linux dbus (#2996) 2023-10-21 11:39:46 +11:00
init_android.go chore: remove temporary debug print statements from mobile merge 2025-12-12 06:26:23 +11:00
init_desktop.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
init_ios.go chore: remove temporary debug print statements from mobile merge 2025-12-12 06:26:23 +11:00
ios_runtime_api.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
ios_runtime_ios.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
ios_runtime_stub.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
key_binding_manager.go Refactor to using Window interface (#4471) 2025-08-09 15:28:08 +10:00
keys.go Fix tests 2024-08-04 21:28:15 +10:00
keys_android.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
keys_darwin.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
keys_ios.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
keys_linux.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
keys_windows.go Fix modifier processing on windows. 2023-10-15 13:53:31 +11:00
linux_cgo.go fix: prevent window menu crash on Wayland by realizing window before showing 2025-12-12 15:41:50 +11:00
linux_purego.go fix: prevent window menu crash on Wayland by realizing window before showing 2025-12-12 15:41:50 +11:00
logger_dev.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
logger_dev_windows.go Standardise and enhance logger service 2025-02-13 03:11:21 +01:00
logger_ios.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
logger_prod.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
mainthread.go Improved panic handling. Added guide. 2025-01-16 22:08:18 +11:00
mainthread_android.go chore: remove temporary debug print statements from mobile merge 2025-12-12 06:26:23 +11:00
mainthread_darwin.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
mainthread_ios.go chore: remove temporary debug print statements from mobile merge 2025-12-12 06:26:23 +11:00
mainthread_linux.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
mainthread_windows.go [v3] Make Windows window class configurable (#3682) 2024-08-20 18:20:44 +10:00
menu.go Refactor Manager API to use singular naming convention (#4367) 2025-06-22 12:19:14 +10:00
menu_android.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
menu_darwin.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
menu_ios.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
menu_linux.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
menu_manager.go feat: Complete App API restructuring with organized manager pattern (#4359) 2025-06-21 19:51:14 +10:00
menu_test.go Menu improvements (#3492) 2024-05-20 21:15:02 +10:00
menu_windows.go Refactor to using Window interface (#4471) 2025-08-09 15:28:08 +10:00
menuitem.go [v3] Late service registration and error handling overhaul (#4066) 2025-02-19 09:27:41 +01:00
menuitem_android.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
menuitem_darwin.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
menuitem_darwin.h Ensure some menuitem methods are run on the main thread. 2025-01-12 15:05:39 +11:00
menuitem_darwin.m Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
menuitem_dev.go Refactor Manager API to use singular naming convention (#4367) 2025-06-22 12:19:14 +10:00
menuitem_ios.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
menuitem_linux.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
menuitem_production.go Significant updates to mac menu items. More roles. More fixes to come. 2024-09-12 20:51:07 +10:00
menuitem_roles.go Refactor Manager API to use singular naming convention (#4367) 2025-06-22 12:19:14 +10:00
menuitem_selectors_darwin.go Fix typos 2025-01-16 20:25:07 +11:00
menuitem_test.go Fix tests 2024-08-04 21:28:15 +10:00
menuitem_windows.go fix: restore hidden menuitem at correct position 2025-04-27 12:00:13 +08:00
messageprocessor.go feat: adapt iOS and Android message processors to RuntimeRequest transport 2025-12-10 21:27:04 +11:00
messageprocessor_android.go feat: adapt iOS and Android message processors to RuntimeRequest transport 2025-12-10 21:27:04 +11:00
messageprocessor_application.go [V3] Refactor binding transport layer (#4702) 2025-12-07 22:19:12 +11:00
messageprocessor_args.go [V3] Refactor binding transport layer (#4702) 2025-12-07 22:19:12 +11:00
messageprocessor_browser.go [V3] Refactor binding transport layer (#4702) 2025-12-07 22:19:12 +11:00
messageprocessor_call.go [V3] Refactor binding transport layer (#4702) 2025-12-07 22:19:12 +11:00
messageprocessor_clipboard.go [V3] Refactor binding transport layer (#4702) 2025-12-07 22:19:12 +11:00
messageprocessor_contextmenu.go [V3] Refactor binding transport layer (#4702) 2025-12-07 22:19:12 +11:00
messageprocessor_dialog.go [V3] Refactor binding transport layer (#4702) 2025-12-07 22:19:12 +11:00
messageprocessor_events.go [V3] Refactor binding transport layer (#4702) 2025-12-07 22:19:12 +11:00
messageprocessor_ios.go feat: adapt iOS and Android message processors to RuntimeRequest transport 2025-12-10 21:27:04 +11:00
messageprocessor_mobile_stub.go feat: adapt iOS and Android message processors to RuntimeRequest transport 2025-12-10 21:27:04 +11:00
messageprocessor_screens.go [V3] Refactor binding transport layer (#4702) 2025-12-07 22:19:12 +11:00
messageprocessor_system.go [V3] Refactor binding transport layer (#4702) 2025-12-07 22:19:12 +11:00
messageprocessor_window.go [V3] Refactor binding transport layer (#4702) 2025-12-07 22:19:12 +11:00
panic_handler.go [v3] Late service registration and error handling overhaul (#4066) 2025-02-19 09:27:41 +01:00
path.go *BREAKING CHANGE* move Path and Paths methods into application package. 2025-01-24 08:09:29 +11:00
popupmenu_windows.go Refactor to using Window interface (#4471) 2025-08-09 15:28:08 +10:00
roles.go Refactor Manager API to use singular naming convention (#4367) 2025-06-22 12:19:14 +10:00
roles_dev.go ToggleDevTools -> OpenDevTools 2024-03-06 11:43:12 -06:00
roles_production.go Refactor menu functions and streamline devtools toggle across systems 2024-01-21 20:52:32 +11:00
screen_android.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
screen_darwin.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
screen_ios.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
screen_linux.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
screen_windows.go Refactor Manager API to use singular naming convention (#4367) 2025-06-22 12:19:14 +10:00
screenmanager.go Refactor Manager API to use singular naming convention (#4367) 2025-06-22 12:19:14 +10:00
screenmanager_test.go feat: Complete App API restructuring with organized manager pattern (#4359) 2025-06-21 19:51:14 +10:00
services.go [v3] Typed Events, revisited (#4633) 2025-11-11 20:25:57 +11:00
signal_handler_android.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
signal_handler_desktop.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
signal_handler_ios.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
signal_handler_types_android.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
signal_handler_types_desktop.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
signal_handler_types_ios.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
single_instance.go Improved panic handling. Added guide. 2025-01-16 22:08:18 +11:00
single_instance_android.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
single_instance_darwin.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
single_instance_ios.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
single_instance_linux.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
single_instance_windows.go [v3] Late service registration and error handling overhaul (#4066) 2025-02-19 09:27:41 +01:00
system_tray_manager.go feat: Complete App API restructuring with organized manager pattern (#4359) 2025-06-21 19:51:14 +10:00
systemtray.go Refactor to using Window interface (#4471) 2025-08-09 15:28:08 +10:00
systemtray_android.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
systemtray_darwin.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
systemtray_darwin.h Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
systemtray_darwin.m Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
systemtray_ios.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
systemtray_linux.go Merge origin/v3-alpha into v3-alpha-feature/android-support 2025-11-28 21:20:47 +11:00
systemtray_windows.go fix: convert remaining printf-style debug calls to slog-style 2025-12-12 06:29:39 +11:00
TODO.md merge exp branch 2023-01-18 21:42:49 +11:00
transport.go [V3] Refactor binding transport layer (#4702) 2025-12-07 22:19:12 +11:00
transport_event_ipc.go [V3] Refactor binding transport layer (#4702) 2025-12-07 22:19:12 +11:00
transport_http.go [V3] Refactor binding transport layer (#4702) 2025-12-07 22:19:12 +11:00
urlvalidator.go [v3] Sanitise browser URL (#4500) 2025-08-12 21:20:36 +10:00
urlvalidator_test.go [v3] Sanitise browser URL (#4500) 2025-08-12 21:20:36 +10:00
webview_window.go chore: remove temporary debug print statements from mobile merge 2025-12-12 06:26:23 +11:00
webview_window_android.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
webview_window_close_darwin.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
webview_window_darwin.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
webview_window_darwin.h Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
webview_window_darwin.m feat: adapt iOS and Android message processors to RuntimeRequest transport 2025-12-10 21:27:04 +11:00
webview_window_darwin_dev.go Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
webview_window_darwin_drag.h Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
webview_window_darwin_drag.m Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
webview_window_darwin_production.go ToggleDevTools -> OpenDevTools 2024-03-06 11:43:12 -06:00
webview_window_ios.go chore: remove temporary debug print statements from mobile merge 2025-12-12 06:26:23 +11:00
webview_window_ios.h Merge iOS support from v3-alpha-feature/ios-support 2025-12-10 18:34:21 +11:00
webview_window_ios.m feat: adapt iOS and Android message processors to RuntimeRequest transport 2025-12-10 21:27:04 +11:00
webview_window_linux.go Merge Android support from v3-alpha-feature/android-support 2025-12-10 18:37:24 +11:00
webview_window_linux_dev.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
webview_window_linux_production.go feat: Add Android support for Wails v3 2025-11-28 21:06:59 +11:00
webview_window_options.go Add native Liquid Glass effect support for macOS (#4534) 2025-08-24 07:16:19 +10:00
webview_window_windows.go fix: convert all printf-style info() calls to slog-style 2025-12-12 06:36:05 +11:00
webview_window_windows_devtools.go [v3] Late service registration and error handling overhaul (#4066) 2025-02-19 09:27:41 +01:00
webview_window_windows_production.go [v3] Late service registration and error handling overhaul (#4066) 2025-02-19 09:27:41 +01:00
window.go [V3] Refactor binding transport layer (#4702) 2025-12-07 22:19:12 +11:00
window_manager.go Refactor to using Window interface (#4471) 2025-08-09 15:28:08 +10:00