Skip to content

Commit c6cb847

Browse files
committed
Sync with core 5a5afc77e
1 parent 144787d commit c6cb847

10 files changed

Lines changed: 296 additions & 1 deletion

File tree

‎packages/cnativeapi/cxx_impl‎

‎packages/cnativeapi/ffigen.yaml‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,11 @@ output: "lib/src/bindings_generated.dart"
99
headers:
1010
entry-points:
1111
- "cxx_impl/src/capi/accessibility_manager_c.h"
12+
- "cxx_impl/src/capi/app_info_c.h"
1213
- "cxx_impl/src/capi/application_c.h"
1314
- "cxx_impl/src/capi/color_c.h"
1415
- "cxx_impl/src/capi/common_c.h"
16+
- "cxx_impl/src/capi/device_info_c.h"
1517
- "cxx_impl/src/capi/dialog_c.h"
1618
- "cxx_impl/src/capi/display_c.h"
1719
- "cxx_impl/src/capi/display_manager_c.h"
@@ -37,9 +39,11 @@ headers:
3739

3840
include-directives:
3941
- "cxx_impl/src/capi/accessibility_manager_c.h"
42+
- "cxx_impl/src/capi/app_info_c.h"
4043
- "cxx_impl/src/capi/application_c.h"
4144
- "cxx_impl/src/capi/color_c.h"
4245
- "cxx_impl/src/capi/common_c.h"
46+
- "cxx_impl/src/capi/device_info_c.h"
4347
- "cxx_impl/src/capi/dialog_c.h"
4448
- "cxx_impl/src/capi/display_c.h"
4549
- "cxx_impl/src/capi/display_manager_c.h"

‎packages/cnativeapi/ios/cnativeapi/Sources/cnativeapi/cnativeapi.mm‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,10 @@
1212

1313
// Include source files
1414
#include "../../../../cxx_impl/src/capi/accessibility_manager_c.cpp"
15+
#include "../../../../cxx_impl/src/capi/app_info_c.cpp"
1516
#include "../../../../cxx_impl/src/capi/application_c.cpp"
1617
#include "../../../../cxx_impl/src/capi/color_c.cpp"
18+
#include "../../../../cxx_impl/src/capi/device_info_c.cpp"
1719
#include "../../../../cxx_impl/src/capi/dialog_c.cpp"
1820
#include "../../../../cxx_impl/src/capi/display_c.cpp"
1921
#include "../../../../cxx_impl/src/capi/display_manager_c.cpp"
@@ -37,7 +39,9 @@
3739
#include "../../../../cxx_impl/src/capi/window_c.cpp"
3840
#include "../../../../cxx_impl/src/capi/window_manager_c.cpp"
3941
#include "../../../../cxx_impl/src/platform/ios/accessibility_manager_ios.mm"
42+
#include "../../../../cxx_impl/src/platform/ios/app_info_ios.mm"
4043
#include "../../../../cxx_impl/src/platform/ios/application_ios.mm"
44+
#include "../../../../cxx_impl/src/platform/ios/device_info_ios.mm"
4145
#include "../../../../cxx_impl/src/platform/ios/dispatcher_ios.mm"
4246
#include "../../../../cxx_impl/src/platform/ios/display_ios.mm"
4347
#include "../../../../cxx_impl/src/platform/ios/display_manager_ios.mm"
@@ -60,7 +64,9 @@
6064
#include "../../../../cxx_impl/src/foundation/id_allocator.cpp"
6165
#include "../../../../cxx_impl/src/foundation/keyboard.cpp"
6266
#include "../../../../cxx_impl/src/accessibility_manager.cpp"
67+
#include "../../../../cxx_impl/src/app_info.cpp"
6368
#include "../../../../cxx_impl/src/application.cpp"
69+
#include "../../../../cxx_impl/src/device_info.cpp"
6470
#include "../../../../cxx_impl/src/dialog.cpp"
6571
#include "../../../../cxx_impl/src/display_manager.cpp"
6672
#include "../../../../cxx_impl/src/menu.cpp"

‎packages/cnativeapi/ios/cnativeapi/Sources/cnativeapi/include/cnativeapi.h‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33
#ifdef __cplusplus
44
// C++ API headers
55
#include "../../../../../cxx_impl/src/accessibility_manager.h"
6+
#include "../../../../../cxx_impl/src/app_info.h"
67
#include "../../../../../cxx_impl/src/application.h"
8+
#include "../../../../../cxx_impl/src/device_info.h"
79
#include "../../../../../cxx_impl/src/dialog.h"
810
#include "../../../../../cxx_impl/src/display.h"
911
#include "../../../../../cxx_impl/src/display_manager.h"
@@ -41,9 +43,11 @@
4143

4244
// C API headers (available for both C and C++)
4345
#include "../../../../../cxx_impl/src/capi/accessibility_manager_c.h"
46+
#include "../../../../../cxx_impl/src/capi/app_info_c.h"
4447
#include "../../../../../cxx_impl/src/capi/application_c.h"
4548
#include "../../../../../cxx_impl/src/capi/color_c.h"
4649
#include "../../../../../cxx_impl/src/capi/common_c.h"
50+
#include "../../../../../cxx_impl/src/capi/device_info_c.h"
4751
#include "../../../../../cxx_impl/src/capi/dialog_c.h"
4852
#include "../../../../../cxx_impl/src/capi/display_c.h"
4953
#include "../../../../../cxx_impl/src/capi/display_manager_c.h"

‎packages/cnativeapi/lib/src/bindings_generated.dart‎

Lines changed: 139 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,56 @@ class CNativeApiBindings {
4646
late final _native_accessibility_manager_is_enabled =
4747
_native_accessibility_manager_is_enabledPtr.asFunction<bool Function()>();
4848

49+
/// Caller owns the returned string; free it with free_c_str().
50+
ffi.Pointer<ffi.Char> native_app_info_get_name() {
51+
return _native_app_info_get_name();
52+
}
53+
54+
late final _native_app_info_get_namePtr =
55+
_lookup<ffi.NativeFunction<ffi.Pointer<ffi.Char> Function()>>(
56+
'native_app_info_get_name',
57+
);
58+
late final _native_app_info_get_name = _native_app_info_get_namePtr
59+
.asFunction<ffi.Pointer<ffi.Char> Function()>();
60+
61+
/// Caller owns the returned string; free it with free_c_str().
62+
ffi.Pointer<ffi.Char> native_app_info_get_identifier() {
63+
return _native_app_info_get_identifier();
64+
}
65+
66+
late final _native_app_info_get_identifierPtr =
67+
_lookup<ffi.NativeFunction<ffi.Pointer<ffi.Char> Function()>>(
68+
'native_app_info_get_identifier',
69+
);
70+
late final _native_app_info_get_identifier =
71+
_native_app_info_get_identifierPtr
72+
.asFunction<ffi.Pointer<ffi.Char> Function()>();
73+
74+
/// Caller owns the returned string; free it with free_c_str().
75+
ffi.Pointer<ffi.Char> native_app_info_get_version() {
76+
return _native_app_info_get_version();
77+
}
78+
79+
late final _native_app_info_get_versionPtr =
80+
_lookup<ffi.NativeFunction<ffi.Pointer<ffi.Char> Function()>>(
81+
'native_app_info_get_version',
82+
);
83+
late final _native_app_info_get_version = _native_app_info_get_versionPtr
84+
.asFunction<ffi.Pointer<ffi.Char> Function()>();
85+
86+
/// Caller owns the returned string; free it with free_c_str().
87+
ffi.Pointer<ffi.Char> native_app_info_get_build_number() {
88+
return _native_app_info_get_build_number();
89+
}
90+
91+
late final _native_app_info_get_build_numberPtr =
92+
_lookup<ffi.NativeFunction<ffi.Pointer<ffi.Char> Function()>>(
93+
'native_app_info_get_build_number',
94+
);
95+
late final _native_app_info_get_build_number =
96+
_native_app_info_get_build_numberPtr
97+
.asFunction<ffi.Pointer<ffi.Char> Function()>();
98+
4999
/// Caller owns the returned handle; release it with native_image_free().
50100
int native_image_from_file(ffi.Pointer<ffi.Char> file_path) {
51101
return _native_image_from_file(file_path);
@@ -2136,6 +2186,95 @@ class CNativeApiBindings {
21362186
late final _native_application_remove_listener =
21372187
_native_application_remove_listenerPtr.asFunction<bool Function(int)>();
21382188

2189+
/// Caller owns the returned string; free it with free_c_str().
2190+
ffi.Pointer<ffi.Char> native_device_info_get_name() {
2191+
return _native_device_info_get_name();
2192+
}
2193+
2194+
late final _native_device_info_get_namePtr =
2195+
_lookup<ffi.NativeFunction<ffi.Pointer<ffi.Char> Function()>>(
2196+
'native_device_info_get_name',
2197+
);
2198+
late final _native_device_info_get_name = _native_device_info_get_namePtr
2199+
.asFunction<ffi.Pointer<ffi.Char> Function()>();
2200+
2201+
/// Caller owns the returned string; free it with free_c_str().
2202+
ffi.Pointer<ffi.Char> native_device_info_get_model() {
2203+
return _native_device_info_get_model();
2204+
}
2205+
2206+
late final _native_device_info_get_modelPtr =
2207+
_lookup<ffi.NativeFunction<ffi.Pointer<ffi.Char> Function()>>(
2208+
'native_device_info_get_model',
2209+
);
2210+
late final _native_device_info_get_model = _native_device_info_get_modelPtr
2211+
.asFunction<ffi.Pointer<ffi.Char> Function()>();
2212+
2213+
/// Caller owns the returned string; free it with free_c_str().
2214+
ffi.Pointer<ffi.Char> native_device_info_get_manufacturer() {
2215+
return _native_device_info_get_manufacturer();
2216+
}
2217+
2218+
late final _native_device_info_get_manufacturerPtr =
2219+
_lookup<ffi.NativeFunction<ffi.Pointer<ffi.Char> Function()>>(
2220+
'native_device_info_get_manufacturer',
2221+
);
2222+
late final _native_device_info_get_manufacturer =
2223+
_native_device_info_get_manufacturerPtr
2224+
.asFunction<ffi.Pointer<ffi.Char> Function()>();
2225+
2226+
/// Caller owns the returned string; free it with free_c_str().
2227+
ffi.Pointer<ffi.Char> native_device_info_get_os_name() {
2228+
return _native_device_info_get_os_name();
2229+
}
2230+
2231+
late final _native_device_info_get_os_namePtr =
2232+
_lookup<ffi.NativeFunction<ffi.Pointer<ffi.Char> Function()>>(
2233+
'native_device_info_get_os_name',
2234+
);
2235+
late final _native_device_info_get_os_name =
2236+
_native_device_info_get_os_namePtr
2237+
.asFunction<ffi.Pointer<ffi.Char> Function()>();
2238+
2239+
/// Caller owns the returned string; free it with free_c_str().
2240+
ffi.Pointer<ffi.Char> native_device_info_get_os_version() {
2241+
return _native_device_info_get_os_version();
2242+
}
2243+
2244+
late final _native_device_info_get_os_versionPtr =
2245+
_lookup<ffi.NativeFunction<ffi.Pointer<ffi.Char> Function()>>(
2246+
'native_device_info_get_os_version',
2247+
);
2248+
late final _native_device_info_get_os_version =
2249+
_native_device_info_get_os_versionPtr
2250+
.asFunction<ffi.Pointer<ffi.Char> Function()>();
2251+
2252+
/// Caller owns the returned string; free it with free_c_str().
2253+
ffi.Pointer<ffi.Char> native_device_info_get_kernel_version() {
2254+
return _native_device_info_get_kernel_version();
2255+
}
2256+
2257+
late final _native_device_info_get_kernel_versionPtr =
2258+
_lookup<ffi.NativeFunction<ffi.Pointer<ffi.Char> Function()>>(
2259+
'native_device_info_get_kernel_version',
2260+
);
2261+
late final _native_device_info_get_kernel_version =
2262+
_native_device_info_get_kernel_versionPtr
2263+
.asFunction<ffi.Pointer<ffi.Char> Function()>();
2264+
2265+
/// Caller owns the returned string; free it with free_c_str().
2266+
ffi.Pointer<ffi.Char> native_device_info_get_architecture() {
2267+
return _native_device_info_get_architecture();
2268+
}
2269+
2270+
late final _native_device_info_get_architecturePtr =
2271+
_lookup<ffi.NativeFunction<ffi.Pointer<ffi.Char> Function()>>(
2272+
'native_device_info_get_architecture',
2273+
);
2274+
late final _native_device_info_get_architecture =
2275+
_native_device_info_get_architecturePtr
2276+
.asFunction<ffi.Pointer<ffi.Char> Function()>();
2277+
21392278
/// Creates a Display instance; release it with native_display_free().
21402279
int native_display_create(ffi.Pointer<ffi.Void> display) {
21412280
return _native_display_create(display);

‎packages/cnativeapi/macos/cnativeapi/Sources/cnativeapi/cnativeapi.mm‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,10 @@
1616

1717
// Include source files
1818
#include "../../../../cxx_impl/src/capi/accessibility_manager_c.cpp"
19+
#include "../../../../cxx_impl/src/capi/app_info_c.cpp"
1920
#include "../../../../cxx_impl/src/capi/application_c.cpp"
2021
#include "../../../../cxx_impl/src/capi/color_c.cpp"
22+
#include "../../../../cxx_impl/src/capi/device_info_c.cpp"
2123
#include "../../../../cxx_impl/src/capi/dialog_c.cpp"
2224
#include "../../../../cxx_impl/src/capi/display_c.cpp"
2325
#include "../../../../cxx_impl/src/capi/display_manager_c.cpp"
@@ -41,7 +43,9 @@
4143
#include "../../../../cxx_impl/src/capi/window_c.cpp"
4244
#include "../../../../cxx_impl/src/capi/window_manager_c.cpp"
4345
#include "../../../../cxx_impl/src/platform/macos/accessibility_manager_macos.mm"
46+
#include "../../../../cxx_impl/src/platform/macos/app_info_macos.mm"
4447
#include "../../../../cxx_impl/src/platform/macos/application_macos.mm"
48+
#include "../../../../cxx_impl/src/platform/macos/device_info_macos.mm"
4549
#include "../../../../cxx_impl/src/platform/macos/dispatcher_macos.mm"
4650
#include "../../../../cxx_impl/src/platform/macos/display_macos.mm"
4751
#include "../../../../cxx_impl/src/platform/macos/display_manager_macos.mm"
@@ -63,7 +67,9 @@
6367
#include "../../../../cxx_impl/src/foundation/id_allocator.cpp"
6468
#include "../../../../cxx_impl/src/foundation/keyboard.cpp"
6569
#include "../../../../cxx_impl/src/accessibility_manager.cpp"
70+
#include "../../../../cxx_impl/src/app_info.cpp"
6671
#include "../../../../cxx_impl/src/application.cpp"
72+
#include "../../../../cxx_impl/src/device_info.cpp"
6773
#include "../../../../cxx_impl/src/dialog.cpp"
6874
#include "../../../../cxx_impl/src/display_manager.cpp"
6975
#include "../../../../cxx_impl/src/menu.cpp"

‎packages/cnativeapi/macos/cnativeapi/Sources/cnativeapi/include/cnativeapi.h‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33
#ifdef __cplusplus
44
// C++ API headers
55
#include "../../../../../cxx_impl/src/accessibility_manager.h"
6+
#include "../../../../../cxx_impl/src/app_info.h"
67
#include "../../../../../cxx_impl/src/application.h"
8+
#include "../../../../../cxx_impl/src/device_info.h"
79
#include "../../../../../cxx_impl/src/dialog.h"
810
#include "../../../../../cxx_impl/src/display.h"
911
#include "../../../../../cxx_impl/src/display_manager.h"
@@ -41,9 +43,11 @@
4143

4244
// C API headers (available for both C and C++)
4345
#include "../../../../../cxx_impl/src/capi/accessibility_manager_c.h"
46+
#include "../../../../../cxx_impl/src/capi/app_info_c.h"
4447
#include "../../../../../cxx_impl/src/capi/application_c.h"
4548
#include "../../../../../cxx_impl/src/capi/color_c.h"
4649
#include "../../../../../cxx_impl/src/capi/common_c.h"
50+
#include "../../../../../cxx_impl/src/capi/device_info_c.h"
4751
#include "../../../../../cxx_impl/src/capi/dialog_c.h"
4852
#include "../../../../../cxx_impl/src/capi/display_c.h"
4953
#include "../../../../../cxx_impl/src/capi/display_manager_c.h"
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
// AUTO-GENERATED. DO NOT EDIT.
2+
// Any manual changes WILL BE LOST when this file is regenerated.
3+
4+
// ignore_for_file: unused_import, unnecessary_import
5+
6+
import 'dart:ffi' as ffi;
7+
import 'dart:ui';
8+
9+
import 'package:cnativeapi/cnativeapi.dart' as c;
10+
import 'package:ffi/ffi.dart' as pkg_ffi;
11+
12+
final _bindings = c.cnativeApiBindings;
13+
14+
class AppInfo {
15+
const AppInfo._();
16+
17+
/// The shared instance backed by the native singleton.
18+
static const AppInfo instance = AppInfo._();
19+
20+
String? getName() {
21+
final resultPointer = _bindings.native_app_info_get_name();
22+
if (resultPointer == ffi.nullptr) return null;
23+
final result = resultPointer.cast<pkg_ffi.Utf8>().toDartString();
24+
_bindings.free_c_str(resultPointer);
25+
return result;
26+
}
27+
28+
String? getIdentifier() {
29+
final resultPointer = _bindings.native_app_info_get_identifier();
30+
if (resultPointer == ffi.nullptr) return null;
31+
final result = resultPointer.cast<pkg_ffi.Utf8>().toDartString();
32+
_bindings.free_c_str(resultPointer);
33+
return result;
34+
}
35+
36+
String? getVersion() {
37+
final resultPointer = _bindings.native_app_info_get_version();
38+
if (resultPointer == ffi.nullptr) return null;
39+
final result = resultPointer.cast<pkg_ffi.Utf8>().toDartString();
40+
_bindings.free_c_str(resultPointer);
41+
return result;
42+
}
43+
44+
String? getBuildNumber() {
45+
final resultPointer = _bindings.native_app_info_get_build_number();
46+
if (resultPointer == ffi.nullptr) return null;
47+
final result = resultPointer.cast<pkg_ffi.Utf8>().toDartString();
48+
_bindings.free_c_str(resultPointer);
49+
return result;
50+
}
51+
52+
}
53+

0 commit comments

Comments
 (0)