Fixed AltGr characters not allowed in auth form

This commit is contained in:
veeso
2022-03-09 11:04:46 +01:00
committed by Christian Visintin
parent ad2781b62c
commit c45ebec261
6 changed files with 27 additions and 6 deletions

View File

@@ -32,6 +32,7 @@ Released on ??
- Added new `endpoint` and `new-path-style` to s3 connection parameters
- Bugfix:
- [Issue 92](https://github.com/veeso/termscp/issues/92): updated ssh2-config to 0.1.3, which solves this issue.
- [Issue 99](https://github.com/veeso/termscp/issues/99): Fixed AltGr characters not allowed in auth form
- Dependencies:
- Updated `remotefs-rs-aws-s3` to `0.2.0`
- Updated `tui-realm-stdlib` to `1.1.6`

View File

@@ -29,7 +29,7 @@ use super::{FormMsg, Msg, UiMsg};
use tui_realm_stdlib::{Input, List, Radio};
use tuirealm::command::{Cmd, CmdResult, Direction, Position};
use tuirealm::event::{Key, KeyEvent, KeyModifiers};
use tuirealm::event::{Key, KeyEvent};
use tuirealm::props::{Alignment, BorderSides, BorderType, Borders, Color, InputType, TextSpan};
use tuirealm::{Component, Event, MockComponent, NoUserEvent, State, StateValue};
@@ -447,7 +447,7 @@ impl Component<Msg, NoUserEvent> for BookmarkName {
}
Event::Keyboard(KeyEvent {
code: Key::Char(ch),
modifiers: KeyModifiers::NONE,
..
}) => {
self.perform(Cmd::Type(ch));
Some(Msg::None)

View File

@@ -640,9 +640,14 @@ fn handle_input_ev(
Event::Keyboard(KeyEvent {
code: Key::Enter, ..
}) => Some(Msg::Form(FormMsg::Connect)),
Event::Keyboard(KeyEvent {
// NOTE: escaped control sequence
code: Key::Char('c') | Key::Char('h') | Key::Char('r') | Key::Char('s'),
modifiers: KeyModifiers::CONTROL,
}) => Some(Msg::None),
Event::Keyboard(KeyEvent {
code: Key::Char(ch),
modifiers: KeyModifiers::NONE | KeyModifiers::SHIFT,
..
}) => {
component.perform(Cmd::Type(ch));
Some(Msg::None)

View File

@@ -483,9 +483,14 @@ fn handle_input_ev(
component.perform(Cmd::Delete);
Some(Msg::None)
}
Event::Keyboard(KeyEvent {
// NOTE: escaped control sequence
code: Key::Char('h') | Key::Char('r') | Key::Char('s'),
modifiers: KeyModifiers::CONTROL,
}) => Some(Msg::None),
Event::Keyboard(KeyEvent {
code: Key::Char(ch),
modifiers: KeyModifiers::NONE | KeyModifiers::SHIFT,
..
}) => {
component.perform(Cmd::Type(ch));
Some(Msg::Config(ConfigMsg::ConfigChanged))

View File

@@ -238,9 +238,14 @@ impl Component<Msg, NoUserEvent> for SshHost {
self.perform(Cmd::Delete);
Some(Msg::None)
}
Event::Keyboard(KeyEvent {
// NOTE: escaped control sequence
code: Key::Char('h') | Key::Char('r') | Key::Char('s'),
modifiers: KeyModifiers::CONTROL,
}) => Some(Msg::None),
Event::Keyboard(KeyEvent {
code: Key::Char(ch),
modifiers: KeyModifiers::NONE | KeyModifiers::SHIFT,
..
}) => {
self.perform(Cmd::Type(ch));
Some(Msg::None)

View File

@@ -893,9 +893,14 @@ impl Component<Msg, NoUserEvent> for InputColor {
let result = self.perform(Cmd::Delete);
self.update_color(result)
}
Event::Keyboard(KeyEvent {
// NOTE: escaped control sequence
code: Key::Char('h') | Key::Char('r') | Key::Char('s'),
modifiers: KeyModifiers::CONTROL,
}) => Some(Msg::None),
Event::Keyboard(KeyEvent {
code: Key::Char(ch),
modifiers: KeyModifiers::NONE | KeyModifiers::SHIFT,
..
}) => {
let result = self.perform(Cmd::Type(ch));
self.update_color(result)