ratatui_ruby 1.4.2 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 02c2259fdb6a74e9ddb9fc51eea5ce6133804c626ad2722caa7d9aae0d17647d
4
- data.tar.gz: 1e70fa8b366f6a807872d65ce5c64e45105e0b9621f6f49ada9a6711f8996358
3
+ metadata.gz: 7347ab027e39b8f45508b95726a1df888a59986992991f0b1d85cf323df44b02
4
+ data.tar.gz: 1b3ee78d0f00b79fd725ccf40c4b01fa7006bf6c020cfc218822755fa64ef069
5
5
  SHA512:
6
- metadata.gz: 13703d3e96dd83392d68954547f241001fdf8a0d9df0abf592d27c87c280c6210fac9ec002523a8c367202e2e24cedf686a2d4cc16318b73e1934a7f38be52c1
7
- data.tar.gz: a6590daaa79de0987a80aacd10ab4bf4a66080e14ba34e1c514e91b71a4190bfbadcb8d778513d3108aa04aacdb47e7e42280480941046a1e911e2c0f32fa694
6
+ metadata.gz: 143594a3f444f72c6a288c4ab639090edcbeca94d35f0557a65868f2a2fcdc5778576de2855d9182912a4dcb0daa913c76d324d7ed71ce71eed2a7ff9eadd523
7
+ data.tar.gz: 0f53412365b876a79fe699fa16edb696f6432b4ff66771cd64077b5b32bcf8cbbb3893473cd1d33b6f146671179e6f1ae3ea15207b066bbf37c730eb0317223b
@@ -1059,7 +1059,7 @@ dependencies = [
1059
1059
 
1060
1060
  [[package]]
1061
1061
  name = "ratatui_ruby"
1062
- version = "1.4.2"
1062
+ version = "1.5.0"
1063
1063
  dependencies = [
1064
1064
  "bumpalo",
1065
1065
  "lazy_static",
@@ -3,7 +3,7 @@
3
3
 
4
4
  [package]
5
5
  name = "ratatui_ruby"
6
- version = "1.4.2"
6
+ version = "1.5.0"
7
7
  edition = "2021"
8
8
 
9
9
  [lib]
@@ -1,4 +1,4 @@
1
- // SPDX-FileCopyrightText: 2025 Kerrick Long <me@kerricklong.com>
1
+ // SPDX-FileCopyrightText: 2026 Kerrick Long <me@kerricklong.com>
2
2
  // SPDX-License-Identifier: LGPL-3.0-or-later
3
3
 
4
4
  use magnus::{Error, IntoValue, TryConvert, Value};
@@ -11,6 +11,7 @@ use std::os::raw::c_void;
11
11
  enum TestEvent {
12
12
  Crossterm(ratatui::crossterm::event::Event),
13
13
  Sync,
14
+ None,
14
15
  }
15
16
 
16
17
  thread_local! {
@@ -123,6 +124,7 @@ pub fn inject_test_event(event_type: String, data: magnus::RHash) -> Result<(),
123
124
  "focus_gained" => TestEvent::Crossterm(ratatui::crossterm::event::Event::FocusGained),
124
125
  "focus_lost" => TestEvent::Crossterm(ratatui::crossterm::event::Event::FocusLost),
125
126
  "sync" => TestEvent::Sync,
127
+ "none" => TestEvent::None,
126
128
  _ => {
127
129
  return Err(Error::new(
128
130
  ruby.exception_arg_error(),
@@ -430,6 +432,10 @@ fn handle_test_event(event: TestEvent) -> Result<Value, Error> {
430
432
  match event {
431
433
  TestEvent::Crossterm(e) => handle_crossterm_event(e),
432
434
  TestEvent::Sync => handle_sync_event(),
435
+ TestEvent::None => {
436
+ let ruby = magnus::Ruby::get().unwrap();
437
+ Ok(ruby.qnil().into_value_with(&ruby))
438
+ }
433
439
  }
434
440
  }
435
441
 
@@ -57,6 +57,7 @@ module RatatuiRuby
57
57
  # inject_event(RatatuiRuby::Event::Key.new(code: "q"))
58
58
  # inject_event(RatatuiRuby::Event::Mouse.new(kind: "down", button: "left", x: 10, y: 5))
59
59
  # inject_event(RatatuiRuby::Event::Paste.new(content: "Hello"))
60
+ # inject_event(RatatuiRuby::Event::None.new) # idle frame
60
61
  #
61
62
  #--
62
63
  # SPDX-SnippetEnd
@@ -96,6 +97,8 @@ module RatatuiRuby
96
97
  # Default 1.0 behavior: use the engine-level synthetic queue
97
98
  RatatuiRuby::SyntheticEvents.push(event)
98
99
  end
100
+ when RatatuiRuby::Event::None
101
+ RatatuiRuby.inject_test_event("none", {})
99
102
  else
100
103
  raise ArgumentError, "Unknown event type: #{event.class}"
101
104
  end
@@ -8,5 +8,5 @@
8
8
  module RatatuiRuby
9
9
  # The version of the ratatui_ruby gem.
10
10
  # See https://semver.org/spec/v2.0.0.html
11
- VERSION = "1.4.2"
11
+ VERSION = "1.5.0"
12
12
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ratatui_ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.2
4
+ version: 1.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kerrick Long