Packages
mob
0.7.18
0.7.20
0.7.19
0.7.18
0.7.17
0.7.16
0.7.15
0.7.14
0.7.13
0.7.12
0.7.11
0.7.10
0.7.9
0.7.8
0.7.7
0.7.6
0.7.5
0.7.4
0.7.3
0.7.2
0.7.1
0.7.0
0.6.26
0.6.25
0.6.24
0.6.23
0.6.22
0.6.21
0.6.20
0.6.19
0.6.18
0.6.17
0.6.16
0.6.15
0.6.14
0.6.13
0.6.12
0.6.11
0.6.10
0.6.9
0.6.8
0.6.7
0.6.6
0.6.5
0.6.2
0.6.1
0.6.0
0.5.18
0.5.17
0.5.16
0.5.15
0.5.14
0.5.11
0.5.10
0.5.7
0.5.6
0.5.5
0.5.4
0.5.3
0.5.2
0.5.1
0.5.0
0.4.0
0.3.10
0.3.9
0.3.8
0.3.7
0.3.6
0.3.5
0.3.4
0.3.3
0.3.2
0.3.1
0.3.0
0.2.0
0.1.0
BEAM-on-device mobile framework for Elixir
Current section
Files
Jump to
Current section
Files
ios/MobDemo-Bridging-Header.h
// MobDemo-Bridging-Header.h — Exposes Mob ObjC types to Swift.
// Passed to swiftc via -import-objc-header.
#import "MobNode.h"
// Called from MobHostingController to signal a back gesture to the BEAM.
// Implemented in mob_nif.m; looks up :mob_screen and sends {:mob, :back}.
void mob_handle_back(void);
// Called from MobRootView.swift WebView delegate when JS sends a message or a URL is blocked.
// Implemented in mob_nif.m; looks up :mob_screen and sends the appropriate tuple.
void mob_deliver_webview_message(const char *json_utf8);
void mob_deliver_webview_blocked(const char *url_utf8);
// Called from MobNativeViewRegistry.send closure when a native view fires an event.
// Implemented in mob_nif.m; looks up the component pid by handle and delivers
// {:component_event, event, payload_json} to it.
void mob_send_component_event(int handle, const char *event, const char *payload_json);
// Called from MobRootView.swift's .onChange(of: colorScheme) modifier when
// the OS appearance toggles (light/dark). Dispatches to Mob.Device subscribers.
// `scheme` is "light" or "dark".
void mob_notify_color_scheme(const char *scheme);
// Called from MobFrameTracker (SwiftUI) as a tagged element lays out, recording
// its on-screen frame (logical points) keyed by the element's :id. Read back via
// the element_frames NIF so an agent can locate/drive elements without a
// screenshot. Implemented in mob_nif.m.
void mob_register_frame(const char *id, double x, double y, double w, double h);