Skip to content

Releases: veeso/tui-realm

tui-realm 3.0.1

11 Jun 12:55
3a8b2d2
Compare
Choose a tag to compare

3.0.1

Released on 09/06/2025

  • Fix subclause_and_not! macro, which was creating a not(AndMany...) instead of AndMany(not(...), not(...), ...).

tui-realm 3.0.0

21 May 09:33
42e57c7
Compare
Choose a tag to compare

3.0.0

Released on 21/05/2025

  • Add SubClause::AndMany for easier adding of many clauses that would otherwise be nested SubClause::And.

  • Add SubClause::OrMany for easier adding of many clauses that would otherwise be nested SubClause::Or.

  • Change the subclause_ macros to make use of the new SubClause::*Many variants.

  • Change the subclause_ macros to be able to end with a , without error.

  • Change the subclause_and_not to only have one Not instead of for every case.

  • Remove + Sync bound on PollAsync trait and U(Event) bound and all related functions.

  • Fix bug that EventListener::stop did not actually stop any async tasks.

  • Add function EventListenerCfg::async_tick to switch the ticker from Sync-Port to Async-Ports. Note that EventListenerCfg::tick_interval is still necessary to enable any ticker.

  • Dont start the Sync-Port worker if there are no sync ports (note that async_tick(false)(the default) also counts as a sync port).

  • Fix accidental always inclusion of crossterm dependency, even if crossterm feature was disabled. (since 2.2.0)

  • Change PollAsync::poll to take &mut self instead of &self.

  • Add async crossterm input listener CrosstermAsyncStream as a alternative to the sync CrosstermInputListener.

  • Issue 94 / PR 94: improve Async Ports to make full use of it being async by running all async ports on the runtime instead of blocking on them like a Sync-port.

    let event_listener = EventListenerCfg::default()
          .crossterm_input_listener(Duration::from_millis(10), 3)
          .with_handle(tokio::runtime::Handle::current())
          .add_async_port(
              Box::new(AsyncPort::new()),
              Duration::from_millis(1000),
              1,
          );

tuirealm 2.2.0

15 May 14:16
b535361
Compare
Choose a tag to compare

2.2.0

Released on 15/05/2025

  • Added new SubEventClause::Discriminant, which works as SubEventClause::User, but only checks the discriminant of the enum, instead of the whole enum. (e.g. Foo::Bar(2) has the same discriminant as Foo::Bar(20), while when using SubEventClause::User, it would be different)
  • Rust edition 2024

tuirealm 2.1.0

12 Feb 09:15
ede93f9
Compare
Choose a tag to compare

tui-realm 2.0.3

14 Oct 07:32
0a5932a
Compare
Choose a tag to compare

2.0.3

Released on 14/10/2024

  • Fixed: macros were not usable from external crates since the tuirealm:: namespace of the recursive macro was not specified

tui-realm 2.0.2

14 Oct 07:28
8f65b88
Compare
Choose a tag to compare

2.0.2

Released on 14/10/2024

  • Added subclause_and_not!

tui-realm 2.0.1

13 Oct 18:57
6a5f407
Compare
Choose a tag to compare

2.0.1

Released on 13/10/2024

  • Fixed docs not building

tui-realm 2.0.0

13 Oct 17:19
4a67999
Compare
Choose a tag to compare

2.0.0

Released on 13/10/2024

  • Dropped support for tui-rs. Tui-rs was deprecated a long time ago, so it doesn't really makes sense to keep supporting it.
  • Added new methods for TerminalBridge
    • init: Initialize a terminal with reasonable defaults for most applications.
      • Raw mode is enabled
      • Alternate screen buffer enabled
      • A panic hook is installed that restores the terminal before panicking. Ensure that this method is called after any other panic hooks that may be installed to ensure that the terminal is.
    • restore: Restore the terminal to its original state
    • set_panic_hook: Sets a panic hook that restores the terminal before panicking.
    • Added draw to TerminalBridge
  • CmdResult::Custom(&'static str) changed to CmdResult::Custom(&'static str, State)
  • Added new subclause_and!(Id::Foo, Id::Bar, Id::Baz) and subclause_or!(Id::Foo, Id::Bar, Id::Baz) macros.
  • Removed InputListener. Now use CrosstermInputListener or TermionInputListener.
  • Added Event handling for Mouse Events
    • Added Mouse in SubEventClause.
  • Bump ratatui version to 0.28
  • Dont enable MouseCapture by default
  • Add function enable_mouse_capture and disable_mouse_capture to TerminalBridge
  • Max poll for ports:
    • Add Port::set_max_poll to set the amount a Port is polled in a single Port::should_poll.
    • Add EventListenerCfg::port to add a manually constructed Port
    • Previous EventListenerCfg::port has been renamed to EventListenerCfg::add_port

tui-realm 1.9.1

16 Oct 11:20
Compare
Choose a tag to compare

1.9.1

Relesed on 19/10/2023

  • Fixed duplicated key events on Windows
  • Update dependencies:
    • bitflags 2
    • termion 2

tui-realm 1.9.0

22 Aug 12:53
f4e6a08
Compare
Choose a tag to compare

1.9.0

Released on 22/08/2023

  • Bump crossterm to 0.27
  • Added support for ratatui
    • to enable ratatui set feature ratatui (enabled by default)
    • to enable tui set feature tui.
  • Deprecated features with-crossterm, with-termion