rcurses 6.3.2 → 6.3.3

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.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/rcurses/pane.rb +13 -1
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 539d715f0c1f3dfa00a185a2e59e733201ed58f3e75ec9c9c893c5b720a71600
4
- data.tar.gz: ebcd4c2551bb4efbcab6606b6279eef2e5738a113a03bd3486cdd89b7ef02920
3
+ metadata.gz: 8da51fe4d11778fce9941e08a03f67ec108f3f09e0625a32335a6ea1a953375d
4
+ data.tar.gz: 1379e2f96f8fa20d20e73111ac47df90aab71ecd1897cf3816fb78bb5294c5d1
5
5
  SHA512:
6
- metadata.gz: 673b3e6150f8d2f439a9304512b5f8ad799c2a5f34a2ecf9d826b2161bac569043197dea1d09f62ba5d8cfd1ba6069587487cf8f6d8d11a5302883891bc2fb16
7
- data.tar.gz: 9c3ccfa42b7de4cf51961ec2d7bdb63bbfcb39bdb2f3b03ee024722cd186602ea8d1c7d3c2126751ec8685e69e046ed1ece3786da6406dab95e9f65d43aae321
6
+ metadata.gz: 761fd3c178607f530c6b9fe0ad4bc997fb2c3872e70068b21c913d719c941ed766222d75efc16fa5fcd5de3131fe6f5859b07c269c7c59ea831fa612d9313252
7
+ data.tar.gz: 0b110d9d36765c614b01539af2ec38b85cf8237888d297667e736e6711a1d0a68aa10ff107fc05e61f02cbd2c07765df8d15a3cb2adaf442abfe447929a78154
data/lib/rcurses/pane.rb CHANGED
@@ -575,10 +575,16 @@ module Rcurses
575
575
  right
576
576
  end
577
577
 
578
- # Handle any buffered input
578
+ # Handle any buffered input (multi-line paste)
579
579
  while IO.select([$stdin], nil, nil, 0)
580
580
  input_char = $stdin.read_nonblock(1) rescue nil
581
581
  break unless input_char
582
+ # ESC byte starts an escape sequence (arrow key, etc.)
583
+ # Push it back for getchr to parse properly on next iteration
584
+ if input_char == "\e"
585
+ $stdin.ungetbyte(0x1b)
586
+ break
587
+ end
582
588
  posx = calculate_posx
583
589
  content.insert(posx, input_char)
584
590
  right
@@ -728,6 +734,12 @@ module Rcurses
728
734
  while IO.select([$stdin], nil, nil, 0)
729
735
  chr = $stdin.read_nonblock(1) rescue nil
730
736
  break unless chr
737
+ # ESC byte starts an escape sequence (arrow key, etc.)
738
+ # Push it back for getchr to parse properly on next iteration
739
+ if chr == "\e"
740
+ $stdin.ungetbyte(0x1b)
741
+ break
742
+ end
731
743
  # Normalize \r\n to a single newline: skip \n after \r
732
744
  if chr == "\n" && last_was_cr
733
745
  last_was_cr = false
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rcurses
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.3.2
4
+ version: 6.3.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Geir Isene
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-03-28 00:00:00.000000000 Z
11
+ date: 2026-03-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: clipboard