@@ -1648,6 +1648,36 @@ napi_value Js_native_window_is_focusable(napi_env env, napi_callback_info info)
16481648 return Value::Bool (result).ToJs (env);
16491649}
16501650
1651+ napi_value Js_native_window_show_system_menu (napi_env env, napi_callback_info info) {
1652+ Args args (env, info);
1653+ if (!args.ok ()) {
1654+ return nullptr ;
1655+ }
1656+ Arena arena;
1657+ (void )arena;
1658+ uint64_t self = 0 ;
1659+ if (!GetHandle (env, args[0 ], &self)) {
1660+ return nullptr ;
1661+ }
1662+ native_point_t p0 = {};
1663+ if (!FromJs (env, args[1 ], &p0, arena)) {
1664+ return nullptr ;
1665+ }
1666+ auto result = OnMainThread ([&] { return native_window_show_system_menu (self, p0); });
1667+ return Value::Bool (result).ToJs (env);
1668+ }
1669+
1670+ napi_value Js_native_window_is_system_menu_supported (napi_env env, napi_callback_info info) {
1671+ Args args (env, info);
1672+ if (!args.ok ()) {
1673+ return nullptr ;
1674+ }
1675+ Arena arena;
1676+ (void )arena;
1677+ auto result = OnMainThread ([&] { return native_window_is_system_menu_supported (); });
1678+ return Value::Bool (result).ToJs (env);
1679+ }
1680+
16511681napi_value Js_native_window_start_dragging (napi_env env, napi_callback_info info) {
16521682 Args args (env, info);
16531683 if (!args.ok ()) {
@@ -1785,6 +1815,8 @@ void RegisterWindow(napi_env env, napi_value exports) {
17851815 Export (env, exports, " native_window_is_ignore_mouse_events" , Js_native_window_is_ignore_mouse_events);
17861816 Export (env, exports, " native_window_set_focusable" , Js_native_window_set_focusable);
17871817 Export (env, exports, " native_window_is_focusable" , Js_native_window_is_focusable);
1818+ Export (env, exports, " native_window_show_system_menu" , Js_native_window_show_system_menu);
1819+ Export (env, exports, " native_window_is_system_menu_supported" , Js_native_window_is_system_menu_supported);
17881820 Export (env, exports, " native_window_start_dragging" , Js_native_window_start_dragging);
17891821 Export (env, exports, " native_window_start_resizing" , Js_native_window_start_resizing);
17901822}
0 commit comments