makepad/widgets/themes/android-dark/theme.splash
Admin a8bf0e4dcf wm on Android: every app is its own process -- the plain makepad-wm now ships as an Android APK (cargo makepad android ... proc-pack -p makepad-wm-android) whose phone apps run as real child processes instead of dylibs loaded into the WM. The interface between WM and app shrinks to what the desktop WM uses: shared GPU buffers and the StudioToApp/AppToStudio protocol. The WM allocates each app's swapchain as AHardwareBuffers and hands them over a unix socket (AHardwareBuffer_sendHandleToUnixSocket, API 26); the child, started through the libmakepad_launch.so launcher in nativeLibraryDir (W^X allows it there), imports them into a windowless Vulkan device and renders its window pass into them (android_hosted.rs). Each app library links the engine statically, so the engine-dylib identity handling of wm-dyn is not needed. Children have no JVM: assets are read from the APK file, audio device lookup no longer goes through Java, and the startup/resize extra draw of the Activity build is repeated so the first frame carries its text. On a phone the WM asks for the soft keyboard only while the child reports a focused text field. Proven on a Pixel 11 Pro XL: all twelve phone apps launch as processes (first frame 1.6-2.4 s cold), taps reach them. Not yet: HTTP in children (the Activity build borrows Java's), clipboard/permission/file-picker relays, idle-app reclaim, and on-device builds of app libraries
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 22:34:44 +02:00

276 lines
11 KiB
Text

// Current Android Material 3 Expressive semantic theme.
mod.theme = mod.themes.dark
mod.theme.color_terminal_bg = #000000
mod.theme.color_terminal_text = #e8eaed
mod.theme.textselection_corner_radius = 3.0
mod.theme.space_factor = 7.0
mod.theme.space_1 = 3.5
mod.theme.space_2 = 7.0
mod.theme.space_3 = 10.5
mod.theme.mspace_1 = mod.turtle.Inset{top: 3.5 right: 3.5 bottom: 3.5 left: 3.5}
mod.theme.color_bg_highlight_inline = #244d75
mod.theme.color_text = #e6e0e9
mod.theme.color_text_hover = #e6e0e9
mod.theme.color_text_focus = #e6e0e9
mod.theme.color_text_active = #e6e0e9
mod.theme.color_text_down = #e6e0e9
mod.theme.color_text_disabled = #98989e
mod.theme.color_label_inner = #e6e0e9
mod.theme.color_label_inner_hover = #e6e0e9
mod.theme.color_label_inner_focus = #e6e0e9
mod.theme.color_label_inner_active = #e6e0e9
mod.theme.color_label_inner_down = #e6e0e9
mod.theme.color_label_inner_disabled = #98989e
mod.theme.color_label_outer = #e6e0e9
mod.theme.color_label_outer_hover = #e6e0e9
mod.theme.color_label_outer_focus = #e6e0e9
mod.theme.color_label_outer_active = #e6e0e9
mod.theme.color_label_outer_down = #e6e0e9
mod.theme.color_label_outer_disabled = #98989e
mod.theme.color_label = #e6e0e9
mod.theme.color_label_hover = #e6e0e9
mod.theme.color_label_focus = #e6e0e9
mod.theme.color_label_active = #e6e0e9
mod.theme.color_label_down = #e6e0e9
mod.theme.color_label_disabled = #98989e
mod.theme.color_icon = #e6e0e9
mod.theme.color_icon_hover = #e6e0e9
mod.theme.color_icon_focus = #e6e0e9
mod.theme.color_icon_active = #e6e0e9
mod.theme.color_icon_down = #e6e0e9
mod.theme.color_icon_disabled = #98989e
mod.theme.color_bevel_inset_1 = #5b5b60
mod.theme.color_bevel_inset_2 = #5b5b60
mod.theme.color_bevel_outset_1 = #5b5b60
mod.theme.color_bevel_outset_2 = #5b5b60
mod.theme.color_bevel_inset_1_hover = #5b5b60
mod.theme.color_bevel_inset_2_hover = #5b5b60
mod.theme.color_bevel_outset_1_hover = #5b5b60
mod.theme.color_bevel_outset_2_hover = #5b5b60
mod.theme.color_bevel_inset_1_focus = #0a84ff
mod.theme.color_bevel_inset_2_focus = #0a84ff
mod.theme.color_bevel_outset_1_focus = #0a84ff
mod.theme.color_bevel_outset_2_focus = #0a84ff
mod.theme.color_inset_active = #353537
mod.theme.color_inset_1_active = #353537
mod.theme.color_inset_2_active = #353537
mod.theme.color_outset_active = #353537
mod.theme.color_outset_1_active = #353537
mod.theme.color_outset_2_active = #353537
mod.theme.color_bevel_inset_1_active = #5b5b60
mod.theme.color_bevel_inset_2_active = #5b5b60
mod.theme.color_bevel_outset_1_active = #5b5b60
mod.theme.color_bevel_outset_2_active = #5b5b60
mod.theme.color_bevel_inset_1_down = #5b5b60
mod.theme.color_bevel_inset_2_down = #5b5b60
mod.theme.color_bevel_outset_1_down = #5b5b60
mod.theme.color_bevel_outset_2_down = #5b5b60
mod.theme.color_inset_disabled = #28282a
mod.theme.color_inset_1_disabled = #28282a
mod.theme.color_inset_2_disabled = #28282a
mod.theme.color_outset_disabled = #28282a
mod.theme.color_outset_1_disabled = #28282a
mod.theme.color_outset_2_disabled = #28282a
mod.theme.color_bevel_inset_1_disabled = #5b5b60
mod.theme.color_bevel_inset_2_disabled = #5b5b60
mod.theme.color_bevel_outset_1_disabled = #5b5b60
mod.theme.color_bevel_outset_2_disabled = #5b5b60
mod.theme.color_bevel_inset_1_empty = #5b5b60
mod.theme.color_bevel_inset_2_empty = #5b5b60
mod.theme.color_bevel_outset_1_empty = #5b5b60
mod.theme.color_bevel_outset_2_empty = #5b5b60
mod.theme.color_inset_drag = #353537
mod.theme.color_inset_1_drag = #353537
mod.theme.color_inset_2_drag = #353537
mod.theme.color_outset_drag = #353537
mod.theme.color_outset_1_drag = #353537
mod.theme.color_outset_2_drag = #353537
mod.theme.color_bevel_inset_1_drag = #5b5b60
mod.theme.color_bevel_inset_2_drag = #5b5b60
mod.theme.color_bevel_outset_1_drag = #5b5b60
mod.theme.color_bevel_outset_2_drag = #5b5b60
mod.theme.corner_radius = 20.0
mod.theme.container_corner_radius = 28.0
mod.theme.beveling = 0.0
mod.theme.font_size_p = 12.0
mod.theme.color_bg_app = #141218
mod.theme.color_fg_app = #141218
mod.theme.color_bg_container = #141218
mod.theme.color_focus = #d0bcff
mod.theme.color_ctrl_selected = #d0bcff
mod.theme.color_ctrl_active = #d0bcff
mod.theme.color_cursor = #e6e0e9
mod.theme.color_text_cursor = #e6e0e9
mod.theme.color_bg_highlight = #4f378b
mod.theme.color_text_on_accent = #381e72
mod.theme.color_inset = #211f26
mod.theme.color_inset_1 = #211f26
mod.theme.color_inset_2 = #211f26
mod.theme.color_inset_hover = #211f26
mod.theme.color_inset_1_hover = #211f26
mod.theme.color_inset_2_hover = #211f26
mod.theme.color_inset_focus = #211f26
mod.theme.color_inset_1_focus = #211f26
mod.theme.color_inset_2_focus = #211f26
mod.theme.color_inset_down = #211f26
mod.theme.color_inset_1_down = #211f26
mod.theme.color_inset_2_down = #211f26
mod.theme.color_inset_empty = #211f26
mod.theme.color_inset_1_empty = #211f26
mod.theme.color_inset_2_empty = #211f26
mod.theme.color_outset = #211f26
mod.theme.color_outset_1 = #211f26
mod.theme.color_outset_2 = #211f26
mod.theme.color_outset_hover = #211f26
mod.theme.color_outset_1_hover = #211f26
mod.theme.color_outset_2_hover = #211f26
mod.theme.color_outset_focus = #211f26
mod.theme.color_outset_1_focus = #211f26
mod.theme.color_outset_2_focus = #211f26
mod.theme.color_outset_down = #211f26
mod.theme.color_outset_1_down = #211f26
mod.theme.color_outset_2_down = #211f26
mod.theme.color_outset_empty = #211f26
mod.theme.color_outset_1_empty = #211f26
mod.theme.color_outset_2_empty = #211f26
use mod.res.*
use mod.text.*
mod.theme.font_regular = mod.theme.font_regular{font_family: FontFamily{latin := FontMember{res: crate_resource("makepad_widgets:resources/RobotoFlex.ttf") weight: 400.0 asc: 0.0 desc: 0.0}}}
mod.theme.font_label = mod.theme.font_label{font_family: FontFamily{latin := FontMember{res: crate_resource("makepad_widgets:resources/RobotoFlex.ttf") weight: 400.0 asc: 0.0 desc: 0.0}}}
mod.theme.font_bold = mod.theme.font_bold{font_family: FontFamily{latin := FontMember{res: crate_resource("makepad_widgets:resources/RobotoFlex.ttf") weight: 600.0 asc: 0.0 desc: 0.0}}}
// The Architecture map's categorical palette (top-level directory ownership), kind stripes and status roles.
mod.theme.color_map_1 = #286cab
mod.theme.color_map_1_a = #075d8f
mod.theme.color_map_1_b = #177abc
mod.theme.color_map_1_c = #0067a9
mod.theme.color_map_1_d = #4885be
mod.theme.color_map_1_e = #1a548c
mod.theme.color_map_1_f = #2d70b9
mod.theme.color_map_1_g = #1f5da6
mod.theme.color_map_1_h = #4f7bba
mod.theme.color_map_2 = #00816b
mod.theme.color_map_2_a = #126d53
mod.theme.color_map_2_b = #0e8f70
mod.theme.color_map_2_c = #007b62
mod.theme.color_map_2_d = #409882
mod.theme.color_map_2_e = #006756
mod.theme.color_map_2_f = #008774
mod.theme.color_map_2_g = #007365
mod.theme.color_map_2_h = #319184
mod.theme.color_map_3 = #906b00
mod.theme.color_map_3_a = #805802
mod.theme.color_map_3_b = #a37300
mod.theme.color_map_3_c = #8b6400
mod.theme.color_map_3_d = #a78339
mod.theme.color_map_3_e = #735600
mod.theme.color_map_3_f = #947200
mod.theme.color_map_3_g = #7e6200
mod.theme.color_map_3_h = #998132
mod.theme.color_map_4 = #78569e
mod.theme.color_map_4_a = #5f4a8a
mod.theme.color_map_4_b = #8061b3
mod.theme.color_map_4_c = #714f9f
mod.theme.color_map_4_d = #8d70b3
mod.theme.color_map_4_e = #604280
mod.theme.color_map_4_f = #8358a7
mod.theme.color_map_4_g = #734693
mod.theme.color_map_4_h = #8e68a7
mod.theme.color_map_5 = #04869c
mod.theme.color_map_5_a = #007480
mod.theme.color_map_5_b = #0094a6
mod.theme.color_map_5_c = #008092
mod.theme.color_map_5_d = #429eb1
mod.theme.color_map_5_e = #006c80
mod.theme.color_map_5_f = #008ca7
mod.theme.color_map_5_g = #007892
mod.theme.color_map_5_h = #4196b0
mod.theme.color_map_6 = #3b7d3f
mod.theme.color_map_6_a = #3c682b
mod.theme.color_map_6_b = #4b893d
mod.theme.color_map_6_c = #35782e
mod.theme.color_map_6_d = #5b945a
mod.theme.color_map_6_e = #28642f
mod.theme.color_map_6_f = #328544
mod.theme.color_map_6_g = #137436
mod.theme.color_map_6_h = #488f5e
mod.theme.color_map_7 = #9c5313
mod.theme.color_map_7_a = #874219
mod.theme.color_map_7_b = #b0591e
mod.theme.color_map_7_c = #9a4900
mod.theme.color_map_7_d = #b26d3d
mod.theme.color_map_7_e = #7e4000
mod.theme.color_map_7_f = #a45800
mod.theme.color_map_7_g = #8a4b00
mod.theme.color_map_7_h = #a76a2e
mod.theme.color_map_8 = #a04b6f
mod.theme.color_map_8_a = #863f65
mod.theme.color_map_8_b = #af5382
mod.theme.color_map_8_c = #9c416e
mod.theme.color_map_8_d = #b56787
mod.theme.color_map_8_e = #823857
mod.theme.color_map_8_f = #ac4c71
mod.theme.color_map_8_g = #993a5d
mod.theme.color_map_8_h = #b16078
mod.theme.color_map_9 = #b64f4b
mod.theme.color_map_9_a = #9c4149
mod.theme.color_map_9_b = #c9555b
mod.theme.color_map_9_c = #b54246
mod.theme.color_map_9_d = #cb6c68
mod.theme.color_map_9_e = #963d38
mod.theme.color_map_9_f = #c25046
mod.theme.color_map_9_g = #ae3e31
mod.theme.color_map_9_h = #c46857
mod.theme.color_map_10 = #606cbd
mod.theme.color_map_10_a = #485fa3
mod.theme.color_map_10_b = #6179d2
mod.theme.color_map_10_c = #5466be
mod.theme.color_map_10_d = #7786d0
mod.theme.color_map_10_e = #4d569c
mod.theme.color_map_10_f = #696fca
mod.theme.color_map_10_g = #5b5cb6
mod.theme.color_map_10_h = #7c7cc8
mod.theme.color_map_11 = #737c24
mod.theme.color_map_11_a = #696715
mod.theme.color_map_11_b = #85861d
mod.theme.color_map_11_c = #717500
mod.theme.color_map_11_d = #8c9348
mod.theme.color_map_11_e = #5b6416
mod.theme.color_map_11_f = #758421
mod.theme.color_map_11_g = #617307
mod.theme.color_map_11_h = #7c9049
mod.theme.color_map_kind_module = #94bfff
mod.theme.color_map_kind_file = #b7c0cc
mod.theme.color_map_kind_struct = #74cbb7
mod.theme.color_map_kind_enum = #9bcb79
mod.theme.color_map_kind_trait = #c1a0e0
mod.theme.color_map_kind_impl = #8aace0
mod.theme.color_map_kind_fn = #ddc27b
mod.theme.color_map_kind_const = #daa37d
mod.theme.color_map_kind_type_alias = #84c7d8
mod.theme.color_map_kind_macro = #d895b6
mod.theme.color_map_kind_component = #94bfff
mod.theme.color_map_kind_thread = #ddc27b
mod.theme.color_map_kind_queue = #9bcb79
mod.theme.color_map_kind_store = #daa37d
mod.theme.color_map_kind_memory = #c1a0e0
mod.theme.color_map_kind_gpu = #84c7d8
mod.theme.color_map_kind_io = #d895b6
mod.theme.color_success = #79be93
mod.theme.color_map_basis_exact = #b8c2cf
mod.theme.color_map_basis_inferred = #d9ae6b
mod.theme.color_map_basis_candidates = #b69acf
mod.theme.color_syntax_keyword = #90badc
mod.theme.color_syntax_ident = #d4d4d4
mod.theme.color_syntax_type = #a7d2cb
mod.theme.color_syntax_fn = #d6c9ac
mod.theme.color_syntax_literal = #b3d1af
mod.theme.color_syntax_string = #e0baac
mod.theme.color_syntax_comment = #b2c3ae
mod.theme.color_syntax_macro = #d8bcde
mod.theme.color_syntax_attribute = #e7c8a6
mod.theme.color_syntax_punctuation = #d4d4d4
mod.theme.color_syntax_keyword_branch = #d8bcde
mod.theme.color_syntax_keyword_loop = #e7c8a6
mod.theme.color_syntax_constant = #e0baac
mod.theme.color_syntax_bg = #202125
true