arc/canvas.md | 15 +- corpus/clipboard/README.md | 11 + corpus/clipboard/onenote-2010.html | 96 +++ crates/canvas/src/document.rs | 84 ++- crates/canvas/src/editor.rs | 16 +- crates/canvas/src/editor/clip.rs | 548 +++++++++++++++ crates/canvas/src/editor/format.rs | 6 +- crates/canvas/src/editor/html.rs | 1181 ++++++++++++++++++++++++++++++++ crates/canvas/src/editor/link.rs | 2 +- crates/canvas/src/editor/ops.rs | 2 +- crates/canvas/src/editor/table.rs | 2 +- crates/canvas/src/interaction/mod.rs | 72 +- crates/canvas/src/interaction/tests.rs | 21 +- crates/canvas/tests/clip_paste.rs | 193 ++++++ crates/canvas/tests/picture_paste.rs | 28 +- crates/mobile/src/lib.rs | 4 +- crates/snowbound/Cargo.toml | 3 + crates/snowbound/src/linux.rs | 32 + crates/snowbound/src/macos.rs | 43 +- crates/snowbound/src/main.rs | 38 +- crates/snowbound/src/paste.rs | 310 ++------- crates/snowbound/src/web.rs | 9 + crates/snowbound/src/windows.rs | 108 ++- 23 files changed, 2442 insertions(+), 382 deletions(-)