diff --git a/Cargo.lock b/Cargo.lock index e512de4..01f1abf 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -282,7 +282,7 @@ dependencies = [ "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.76", + "syn 2.0.77", "which", ] @@ -347,7 +347,7 @@ dependencies = [ [[package]] name = "build_playerglobal" version = "0.1.0" -source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#48170bd8e616746e8beb9bed3a525e361c6c77bb" +source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#200617172107d282695332b817c0ffd9449497e8" dependencies = [ "clap", "convert_case", @@ -381,7 +381,7 @@ checksum = "0cc8b54b395f2fcfbb3d90c47b01c7f444d94d05bdeb775811dec868ac3bbc26" dependencies = [ "proc-macro2", "quote", - "syn 2.0.76", + "syn 2.0.77", ] [[package]] @@ -505,7 +505,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.76", + "syn 2.0.77", ] [[package]] @@ -730,7 +730,7 @@ dependencies = [ "ident_case", "proc-macro2", "quote", - "syn 2.0.76", + "syn 2.0.77", ] [[package]] @@ -741,7 +741,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ "darling_core", "quote", - "syn 2.0.76", + "syn 2.0.77", ] [[package]] @@ -880,7 +880,7 @@ checksum = "67e77553c4162a157adbf834ebae5b415acbecbeafc7a74b0e886657506a7611" dependencies = [ "proc-macro2", "quote", - "syn 2.0.76", + "syn 2.0.77", ] [[package]] @@ -891,7 +891,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.76", + "syn 2.0.77", ] [[package]] @@ -941,7 +941,7 @@ checksum = "f282cfdfe92516eb26c2af8589c274c7c17681f5ecc03c18255fe741c6aa64eb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.76", + "syn 2.0.77", ] [[package]] @@ -962,7 +962,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.76", + "syn 2.0.77", ] [[package]] @@ -1107,7 +1107,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.76", + "syn 2.0.77", "unic-langid", ] @@ -1142,7 +1142,7 @@ dependencies = [ [[package]] name = "flv-rs" version = "0.1.0" -source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#48170bd8e616746e8beb9bed3a525e361c6c77bb" +source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#200617172107d282695332b817c0ffd9449497e8" dependencies = [ "bitflags 2.6.0", "thiserror", @@ -1172,7 +1172,7 @@ checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" dependencies = [ "proc-macro2", "quote", - "syn 2.0.76", + "syn 2.0.77", ] [[package]] @@ -1259,7 +1259,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" dependencies = [ "proc-macro2", "quote", - "syn 2.0.76", + "syn 2.0.77", ] [[package]] @@ -1311,7 +1311,7 @@ checksum = "c612a69f5557a11046b77a7408d2836fe77077f842171cd211c5ef504bd3cddd" dependencies = [ "proc-macro2", "quote", - "syn 2.0.76", + "syn 2.0.77", "synstructure", ] @@ -2122,7 +2122,7 @@ dependencies = [ [[package]] name = "naga-agal" version = "0.1.0" -source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#48170bd8e616746e8beb9bed3a525e361c6c77bb" +source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#200617172107d282695332b817c0ffd9449497e8" dependencies = [ "bitflags 2.6.0", "naga", @@ -2133,7 +2133,7 @@ dependencies = [ [[package]] name = "naga-pixelbender" version = "0.1.0" -source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#48170bd8e616746e8beb9bed3a525e361c6c77bb" +source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#200617172107d282695332b817c0ffd9449497e8" dependencies = [ "anyhow", "naga", @@ -2254,7 +2254,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 2.0.76", + "syn 2.0.77", ] [[package]] @@ -2294,7 +2294,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.76", + "syn 2.0.77", ] [[package]] @@ -2413,7 +2413,7 @@ checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" dependencies = [ "proc-macro2", "quote", - "syn 2.0.76", + "syn 2.0.77", ] [[package]] @@ -2490,7 +2490,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "479cf940fbbb3426c32c5d5176f62ad57549a0bb84773423ba8be9d089f5faba" dependencies = [ "proc-macro2", - "syn 2.0.76", + "syn 2.0.77", ] [[package]] @@ -2504,11 +2504,11 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "3.1.0" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284" +checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" dependencies = [ - "toml_edit 0.21.1", + "toml_edit", ] [[package]] @@ -2799,13 +2799,14 @@ dependencies = [ "tokio", "tracing", "url", + "webbrowser", "wgpu", ] [[package]] name = "ruffle_core" version = "0.1.0" -source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#48170bd8e616746e8beb9bed3a525e361c6c77bb" +source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#200617172107d282695332b817c0ffd9449497e8" dependencies = [ "async-channel", "bitflags 2.6.0", @@ -2867,7 +2868,7 @@ dependencies = [ [[package]] name = "ruffle_frontend_utils" version = "0.1.0" -source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#48170bd8e616746e8beb9bed3a525e361c6c77bb" +source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#200617172107d282695332b817c0ffd9449497e8" dependencies = [ "async-channel", "async-io", @@ -2878,18 +2879,17 @@ dependencies = [ "slotmap", "thiserror", "tokio", - "toml_edit 0.22.17", + "toml_edit", "tracing", "url", "urlencoding", - "webbrowser", "zip", ] [[package]] name = "ruffle_gc_arena" version = "0.0.0" -source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#48170bd8e616746e8beb9bed3a525e361c6c77bb" +source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#200617172107d282695332b817c0ffd9449497e8" dependencies = [ "gc-arena", ] @@ -2897,16 +2897,16 @@ dependencies = [ [[package]] name = "ruffle_macros" version = "0.1.0" -source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#48170bd8e616746e8beb9bed3a525e361c6c77bb" +source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#200617172107d282695332b817c0ffd9449497e8" dependencies = [ "quote", - "syn 2.0.76", + "syn 2.0.77", ] [[package]] name = "ruffle_render" version = "0.1.0" -source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#48170bd8e616746e8beb9bed3a525e361c6c77bb" +source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#200617172107d282695332b817c0ffd9449497e8" dependencies = [ "byteorder", "downcast-rs", @@ -2932,7 +2932,7 @@ dependencies = [ [[package]] name = "ruffle_render_wgpu" version = "0.1.0" -source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#48170bd8e616746e8beb9bed3a525e361c6c77bb" +source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#200617172107d282695332b817c0ffd9449497e8" dependencies = [ "bytemuck", "enum-map", @@ -2954,7 +2954,7 @@ dependencies = [ [[package]] name = "ruffle_video" version = "0.1.0" -source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#48170bd8e616746e8beb9bed3a525e361c6c77bb" +source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#200617172107d282695332b817c0ffd9449497e8" dependencies = [ "ruffle_render", "slotmap", @@ -2965,7 +2965,7 @@ dependencies = [ [[package]] name = "ruffle_video_software" version = "0.1.0" -source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#48170bd8e616746e8beb9bed3a525e361c6c77bb" +source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#200617172107d282695332b817c0ffd9449497e8" dependencies = [ "flate2", "h263-rs", @@ -2984,7 +2984,7 @@ dependencies = [ [[package]] name = "ruffle_wstr" version = "0.1.0" -source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#48170bd8e616746e8beb9bed3a525e361c6c77bb" +source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#200617172107d282695332b817c0ffd9449497e8" [[package]] name = "rustc-demangle" @@ -3144,7 +3144,7 @@ checksum = "a5831b979fd7b5439637af1752d535ff49f4860c0f341d1baeb6faf0f4242170" dependencies = [ "proc-macro2", "quote", - "syn 2.0.76", + "syn 2.0.77", ] [[package]] @@ -3281,7 +3281,7 @@ checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" [[package]] name = "swf" version = "0.2.1" -source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#48170bd8e616746e8beb9bed3a525e361c6c77bb" +source = "git+https://github.com/ruffle-rs/ruffle.git?branch=master#200617172107d282695332b817c0ffd9449497e8" dependencies = [ "bitflags 2.6.0", "bitstream-io", @@ -3358,9 +3358,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.76" +version = "2.0.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "578e081a14e0cefc3279b0472138c513f37b41a08d5a3cca9b6e4e8ceb6cd525" +checksum = "9f35bcdf61fd8e7be6caf75f429fdca8beb3ed76584befb503b1569faee373ed" dependencies = [ "proc-macro2", "quote", @@ -3384,7 +3384,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.76", + "syn 2.0.77", ] [[package]] @@ -3434,7 +3434,7 @@ checksum = "a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261" dependencies = [ "proc-macro2", "quote", - "syn 2.0.76", + "syn 2.0.77", ] [[package]] @@ -3527,7 +3527,7 @@ checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" dependencies = [ "proc-macro2", "quote", - "syn 2.0.76", + "syn 2.0.77", ] [[package]] @@ -3562,24 +3562,13 @@ checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" [[package]] name = "toml_edit" -version = "0.21.1" +version = "0.22.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1" +checksum = "583c44c02ad26b0c3f3066fe629275e50627026c51ac2e595cca4c230ce1ce1d" dependencies = [ "indexmap", "toml_datetime", - "winnow 0.5.40", -] - -[[package]] -name = "toml_edit" -version = "0.22.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d9f8729f5aea9562aac1cc0441f5d6de3cff1ee0c5d67293eeca5eb36ee7c16" -dependencies = [ - "indexmap", - "toml_datetime", - "winnow 0.6.13", + "winnow", ] [[package]] @@ -3629,7 +3618,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.76", + "syn 2.0.77", ] [[package]] @@ -3732,7 +3721,7 @@ checksum = "1ed7f4237ba393424195053097c1516bd4590dc82b84f2f97c5c69e12704555b" dependencies = [ "proc-macro-hack", "quote", - "syn 2.0.76", + "syn 2.0.77", "unic-langid-impl", ] @@ -3886,7 +3875,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.76", + "syn 2.0.77", "wasm-bindgen-shared", ] @@ -3920,7 +3909,7 @@ checksum = "afc340c74d9005395cf9dd098506f7f44e38f2b4a21c6aaacf9a105ea5e1e836" dependencies = [ "proc-macro2", "quote", - "syn 2.0.76", + "syn 2.0.77", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -4354,18 +4343,9 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "winnow" -version = "0.5.40" +version = "0.6.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" -dependencies = [ - "memchr", -] - -[[package]] -name = "winnow" -version = "0.6.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59b5e5f6c299a3c7890b876a2a587f3115162487e704907d9b6cd29473052ba1" +checksum = "68a9bda4691f099d435ad181000724da8e5899daa10713c2d432552b9ccd3a6f" dependencies = [ "memchr", ] @@ -4394,7 +4374,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.76", + "syn 2.0.77", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index cf888ca..b0f9c9e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -46,6 +46,7 @@ log-panics = { version = "2.1.0", features = ["with-backtrace"]} tracing = {version = "0.1.40", features = ["log", "log-always"]} url = "2.5.2" +webbrowser = "1.0.1" tokio = { version = "1.40.0", features = ["rt-multi-thread", "macros"]} diff --git a/src/keycodes.rs b/src/keycodes.rs index 30f16e2..b7a0c49 100644 --- a/src/keycodes.rs +++ b/src/keycodes.rs @@ -3,20 +3,20 @@ use ruffle_core::events::KeyCode as Ruffle; pub fn android_keycode_to_ruffle(android: Android) -> Option<(Ruffle, Option)> { Some(match android { - Android::DpadUp => (Ruffle::Up, None), - Android::DpadDown => (Ruffle::Down, None), - Android::DpadLeft => (Ruffle::Left, None), - Android::DpadRight => (Ruffle::Right, None), - Android::Keycode0 => (Ruffle::Key0, Some('0')), - Android::Keycode1 => (Ruffle::Key1, Some('1')), - Android::Keycode2 => (Ruffle::Key2, Some('2')), - Android::Keycode3 => (Ruffle::Key3, Some('3')), - Android::Keycode4 => (Ruffle::Key4, Some('4')), - Android::Keycode5 => (Ruffle::Key5, Some('5')), - Android::Keycode6 => (Ruffle::Key6, Some('6')), - Android::Keycode7 => (Ruffle::Key7, Some('7')), - Android::Keycode8 => (Ruffle::Key8, Some('8')), - Android::Keycode9 => (Ruffle::Key9, Some('9')), + Android::DpadUp => (Ruffle::UP, None), + Android::DpadDown => (Ruffle::DOWN, None), + Android::DpadLeft => (Ruffle::LEFT, None), + Android::DpadRight => (Ruffle::RIGHT, None), + Android::Keycode0 => (Ruffle::KEY0, Some('0')), + Android::Keycode1 => (Ruffle::KEY1, Some('1')), + Android::Keycode2 => (Ruffle::KEY2, Some('2')), + Android::Keycode3 => (Ruffle::KEY3, Some('3')), + Android::Keycode4 => (Ruffle::KEY4, Some('4')), + Android::Keycode5 => (Ruffle::KEY5, Some('5')), + Android::Keycode6 => (Ruffle::KEY6, Some('6')), + Android::Keycode7 => (Ruffle::KEY7, Some('7')), + Android::Keycode8 => (Ruffle::KEY8, Some('8')), + Android::Keycode9 => (Ruffle::KEY9, Some('9')), Android::A => (Ruffle::A, Some('a')), Android::B => (Ruffle::B, Some('b')), Android::C => (Ruffle::C, Some('c')), @@ -43,38 +43,38 @@ pub fn android_keycode_to_ruffle(android: Android) -> Option<(Ruffle, Option (Ruffle::X, Some('x')), Android::Y => (Ruffle::Y, Some('y')), Android::Z => (Ruffle::Z, Some('z')), - Android::Comma => (Ruffle::Comma, Some(',')), - Android::Period => (Ruffle::Period, Some('.')), - Android::AltLeft => (Ruffle::Alt, None), - Android::AltRight => (Ruffle::Alt, None), - Android::ShiftLeft => (Ruffle::Shift, None), - Android::ShiftRight => (Ruffle::Shift, None), - Android::Tab => (Ruffle::Tab, Some('\t')), - Android::Space => (Ruffle::Space, Some(' ')), - Android::Enter => (Ruffle::Return, Some(13 as char)), - Android::Del => (Ruffle::Backspace, Some(8 as char)), - Android::Grave => (Ruffle::Grave, Some('`')), - Android::Minus => (Ruffle::Minus, Some('-')), - Android::Equals => (Ruffle::Equals, Some('=')), - Android::LeftBracket => (Ruffle::LBracket, Some('(')), - Android::RightBracket => (Ruffle::RBracket, Some(')')), - Android::Backslash => (Ruffle::Backslash, Some('\\')), - Android::Semicolon => (Ruffle::Semicolon, Some(';')), - Android::Apostrophe => (Ruffle::Apostrophe, Some('\'')), - Android::Slash => (Ruffle::Slash, Some('/')), - Android::Plus => (Ruffle::Plus, Some('+')), - Android::PageUp => (Ruffle::PgUp, None), - Android::PageDown => (Ruffle::PgDown, None), - Android::Escape => (Ruffle::Escape, None), - Android::ForwardDel => (Ruffle::Delete, Some(127 as char)), - Android::CtrlLeft => (Ruffle::Control, None), - Android::CtrlRight => (Ruffle::Control, None), - Android::CapsLock => (Ruffle::CapsLock, None), - Android::ScrollLock => (Ruffle::ScrollLock, None), - Android::Break => (Ruffle::Pause, None), - Android::MoveHome => (Ruffle::Home, None), - Android::MoveEnd => (Ruffle::End, None), - Android::Insert => (Ruffle::Insert, None), + Android::Comma => (Ruffle::COMMA, Some(',')), + Android::Period => (Ruffle::PERIOD, Some('.')), + Android::AltLeft => (Ruffle::ALT, None), + Android::AltRight => (Ruffle::ALT, None), + Android::ShiftLeft => (Ruffle::SHIFT, None), + Android::ShiftRight => (Ruffle::SHIFT, None), + Android::Tab => (Ruffle::TAB, Some('\t')), + Android::Space => (Ruffle::SPACE, Some(' ')), + Android::Enter => (Ruffle::RETURN, Some(13 as char)), + Android::Del => (Ruffle::BACKSPACE, Some(8 as char)), + Android::Grave => (Ruffle::GRAVE, Some('`')), + Android::Minus => (Ruffle::MINUS, Some('-')), + Android::Equals => (Ruffle::EQUALS, Some('=')), + Android::LeftBracket => (Ruffle::LBRACKET, Some('(')), + Android::RightBracket => (Ruffle::RBRACKET, Some(')')), + Android::Backslash => (Ruffle::BACKSLASH, Some('\\')), + Android::Semicolon => (Ruffle::SEMICOLON, Some(';')), + Android::Apostrophe => (Ruffle::APOSTROPHE, Some('\'')), + Android::Slash => (Ruffle::SLASH, Some('/')), + Android::Plus => (Ruffle::PLUS, Some('+')), + Android::PageUp => (Ruffle::PG_UP, None), + Android::PageDown => (Ruffle::PG_DOWN, None), + Android::Escape => (Ruffle::ESCAPE, None), + Android::ForwardDel => (Ruffle::DELETE, Some(127 as char)), + Android::CtrlLeft => (Ruffle::CONTROL, None), + Android::CtrlRight => (Ruffle::CONTROL, None), + Android::CapsLock => (Ruffle::CAPS_LOCK, None), + Android::ScrollLock => (Ruffle::SCROLL_LOCK, None), + Android::Break => (Ruffle::PAUSE, None), + Android::MoveHome => (Ruffle::HOME, None), + Android::MoveEnd => (Ruffle::END, None), + Android::Insert => (Ruffle::INSERT, None), Android::F1 => (Ruffle::F1, None), Android::F2 => (Ruffle::F2, None), Android::F3 => (Ruffle::F3, None), @@ -87,25 +87,25 @@ pub fn android_keycode_to_ruffle(android: Android) -> Option<(Ruffle, Option (Ruffle::F10, None), Android::F11 => (Ruffle::F11, None), Android::F12 => (Ruffle::F12, None), - Android::NumLock => (Ruffle::NumLock, None), - Android::Numpad0 => (Ruffle::Numpad0, Some('0')), - Android::Numpad1 => (Ruffle::Numpad1, Some('1')), - Android::Numpad2 => (Ruffle::Numpad2, Some('2')), - Android::Numpad3 => (Ruffle::Numpad3, Some('3')), - Android::Numpad4 => (Ruffle::Numpad4, Some('4')), - Android::Numpad5 => (Ruffle::Numpad5, Some('5')), - Android::Numpad6 => (Ruffle::Numpad6, Some('6')), - Android::Numpad7 => (Ruffle::Numpad7, Some('7')), - Android::Numpad8 => (Ruffle::Numpad8, Some('8')), - Android::Numpad9 => (Ruffle::Numpad9, Some('9')), - Android::NumpadDivide => (Ruffle::NumpadSlash, Some('/')), - Android::NumpadMultiply => (Ruffle::Multiply, Some('*')), - Android::NumpadSubtract => (Ruffle::NumpadMinus, Some('-')), - Android::NumpadAdd => (Ruffle::Plus, Some('+')), - Android::NumpadDot => (Ruffle::NumpadPeriod, Some('.')), - Android::NumpadComma => (Ruffle::Comma, Some(',')), - Android::NumpadEnter => (Ruffle::NumpadEnter, Some(13 as char)), - Android::NumpadEquals => (Ruffle::Equals, Some('=')), + Android::NumLock => (Ruffle::NUM_LOCK, None), + Android::Numpad0 => (Ruffle::NUMPAD0, Some('0')), + Android::Numpad1 => (Ruffle::NUMPAD1, Some('1')), + Android::Numpad2 => (Ruffle::NUMPAD2, Some('2')), + Android::Numpad3 => (Ruffle::NUMPAD3, Some('3')), + Android::Numpad4 => (Ruffle::NUMPAD4, Some('4')), + Android::Numpad5 => (Ruffle::NUMPAD5, Some('5')), + Android::Numpad6 => (Ruffle::NUMPAD6, Some('6')), + Android::Numpad7 => (Ruffle::NUMPAD7, Some('7')), + Android::Numpad8 => (Ruffle::NUMPAD8, Some('8')), + Android::Numpad9 => (Ruffle::NUMPAD9, Some('9')), + Android::NumpadDivide => (Ruffle::NUMPAD_SLASH, Some('/')), + Android::NumpadMultiply => (Ruffle::MULTIPLY, Some('*')), + Android::NumpadSubtract => (Ruffle::NUMPAD_MINUS, Some('-')), + Android::NumpadAdd => (Ruffle::PLUS, Some('+')), + Android::NumpadDot => (Ruffle::NUMPAD_PERIOD, Some('.')), + Android::NumpadComma => (Ruffle::COMMA, Some(',')), + Android::NumpadEnter => (Ruffle::NUMPAD_ENTER, Some(13 as char)), + Android::NumpadEquals => (Ruffle::EQUALS, Some('=')), _ => return None, }) } diff --git a/src/lib.rs b/src/lib.rs index f0c52eb..c85c1aa 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -492,7 +492,7 @@ pub unsafe extern "C" fn Java_rs_ruffle_PlayerActivity_keydown( ) { let event_loop: MutexGuard> = env.get_rust_field(this, "eventLoopHandle").unwrap(); - let key_code: KeyCode = ::std::mem::transmute(key_code_raw); + let key_code = KeyCode::from_code(key_code_raw as u32); let key_char = std::char::from_u32(key_char_raw as u32); let _ = event_loop.send(RuffleEvent::VirtualKeyEvent { down: true, @@ -511,7 +511,7 @@ pub unsafe extern "C" fn Java_rs_ruffle_PlayerActivity_keyup( ) { let event_loop: MutexGuard> = env.get_rust_field(this, "eventLoopHandle").unwrap(); - let key_code: KeyCode = ::std::mem::transmute(key_code_raw); + let key_code = KeyCode::from_code(key_code_raw as u32); let key_char = std::char::from_u32(key_char_raw as u32); let _ = event_loop.send(RuffleEvent::VirtualKeyEvent { down: false, diff --git a/src/navigator.rs b/src/navigator.rs index 85672e6..82cf25f 100644 --- a/src/navigator.rs +++ b/src/navigator.rs @@ -8,8 +8,9 @@ pub struct AndroidNavigatorInterface; // TODO: Prompt the user for these things! impl NavigatorInterface for AndroidNavigatorInterface { - fn confirm_website_navigation(&self, _url: &Url) -> bool { - true + fn navigate_to_website(&self, url: Url, _ask: bool) { + // TODO: Implement `ask` behavior! + let _ = webbrowser::open(url.as_ref()); } fn open_file(&self, path: &Path) -> std::io::Result {