summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorManos Pitsidianakis <el13635@mail.ntua.gr>2019-03-03 22:11:15 +0200
committerManos Pitsidianakis <el13635@mail.ntua.gr>2019-06-10 19:40:39 +0300
commit5e306130fb10e55a05985475b6e4f3a83903cf6f (patch)
tree4285bd720b7d690e88b6078c59da20b41b7f2039
parentd4c64916f0efdad4774503e5bae4e86ba40770fa (diff)
Fix clippy warnings
-rw-r--r--melib/src/addressbook.rs8
-rw-r--r--melib/src/mailbox/backends.rs8
-rw-r--r--melib/src/mailbox/backends/maildir.rs6
-rw-r--r--melib/src/mailbox/backends/maildir/backend.rs2
-rw-r--r--melib/src/mailbox/email.rs26
-rw-r--r--melib/src/mailbox/email/compose.rs2
-rw-r--r--melib/src/mailbox/email/compose/mime.rs2
-rw-r--r--melib/src/mailbox/email/parser.rs10
-rw-r--r--melib/src/mailbox/thread.rs16
-rw-r--r--ui/src/components/contacts.rs16
-rw-r--r--ui/src/components/mail/accounts.rs4
-rw-r--r--ui/src/components/mail/accounts/contacts.rs105
-rw-r--r--ui/src/components/mail/compose.rs73
-rw-r--r--ui/src/components/mail/listing/compact.rs2
-rw-r--r--ui/src/components/utilities.rs4
-rw-r--r--ui/src/components/utilities/widgets.rs21
-rw-r--r--ui/src/types/keys.rs2
17 files changed, 67 insertions, 240 deletions
diff --git a/melib/src/addressbook.rs b/melib/src/addressbook.rs
index 86022008..b0920ebb 100644
--- a/melib/src/addressbook.rs
+++ b/melib/src/addressbook.rs
@@ -146,7 +146,7 @@ impl Card {
self.id = new;
}
pub fn set_title(&mut self, new: &str) {
- self.title = new.to_string();()
+ self.title = new.to_string();
}
pub fn set_firstname(&mut self, new: &str) {
self.firstname = new.to_string();
@@ -217,3 +217,9 @@ impl From<FnvHashMap<String, String>> for Card {
card
}
}
+
+impl Default for Card {
+ fn default() -> Self {
+ Self::new()
+ }
+}
diff --git a/melib/src/mailbox/backends.rs b/melib/src/mailbox/backends.rs
index b401da34..ca5aa23b 100644
--- a/melib/src/mailbox/backends.rs
+++ b/melib/src/mailbox/backends.rs
@@ -72,7 +72,7 @@ impl Backends {
self.map[key]()
}
- pub fn register(&mut self, key: String, backend: Box<Fn() -> BackendCreator>) -> () {
+ pub fn register(&mut self, key: String, backend: Box<Fn() -> BackendCreator>) {
if self.map.contains_key(&key) {
panic!("{} is an already registered backend", key);
}
@@ -116,7 +116,7 @@ impl RefreshEventConsumer {
pub fn new(b: Box<Fn(RefreshEvent) -> ()>) -> Self {
RefreshEventConsumer(b)
}
- pub fn send(&self, r: RefreshEvent) -> () {
+ pub fn send(&self, r: RefreshEvent) {
self.0(r);
}
}
@@ -141,7 +141,7 @@ impl NotifyFn {
pub fn new(b: Box<Fn() -> ()>) -> Self {
NotifyFn(b)
}
- pub fn notify(&self) -> () {
+ pub fn notify(&self) {
self.0();
}
}
@@ -203,7 +203,7 @@ pub trait BackendOp: ::std::fmt::Debug + ::std::marker::Send {
fn fetch_headers(&mut self) -> Result<&[u8]>;
fn fetch_body(&mut self) -> Result<&[u8]>;
fn fetch_flags(&self) -> Flag;
- fn set_flag(&mut self, &mut Envelope, &Flag) -> Result<()>;
+ fn set_flag(&mut self, &mut Envelope, Flag) -> Result<()>;
}
/// `BackendOpGenerator` is a wrapper for a closure that returns a `BackendOp` object
diff --git a/melib/src/mailbox/backends/maildir.rs b/melib/src/mailbox/backends/maildir.rs
index f240b4d8..676584aa 100644
--- a/melib/src/mailbox/backends/maildir.rs
+++ b/melib/src/mailbox/backends/maildir.rs
@@ -123,7 +123,7 @@ impl<'a> BackendOp for MaildirOp {
flag
}
- fn set_flag(&mut self, envelope: &mut Envelope, f: &Flag) -> Result<()> {
+ fn set_flag(&mut self, envelope: &mut Envelope, f: Flag) -> Result<()> {
let path = self.path();
let path = path.to_str().unwrap(); // Assume UTF-8 validity
let idx: usize = path
@@ -132,10 +132,10 @@ impl<'a> BackendOp for MaildirOp {
+ 3;
let mut new_name: String = path[..idx].to_string();
let mut flags = self.fetch_flags();
- if !(flags & *f).is_empty() {
+ if !(flags & f).is_empty() {
return Ok(());
}
- flags.toggle(*f);
+ flags.toggle(f);
if !(flags & Flag::DRAFT).is_empty() {
new_name.push('D');
}
diff --git a/melib/src/mailbox/backends/maildir/backend.rs b/melib/src/mailbox/backends/maildir/backend.rs
index abb8f243..afb5d06f 100644
--- a/melib/src/mailbox/backends/maildir/backend.rs
+++ b/melib/src/mailbox/backends/maildir/backend.rs
@@ -342,7 +342,7 @@ impl MailBackend for MaildirType {
eprintln!("saving at {}", path.display());
let file = fs::File::create(path)?;
let mut writer = io::BufWriter::new(file);
- writer.write(&message.into_bytes())?;
+ writer.write_all(&message.into_bytes())?;
return Ok(());
}
}
diff --git a/melib/src/mailbox/email.rs b/melib/src/mailbox/email.rs
index 290b23e6..8cc16fec 100644
--- a/melib/src/mailbox/email.rs
+++ b/melib/src/mailbox/email.rs
@@ -616,22 +616,22 @@ impl Envelope {
pub fn message_id_raw(&self) -> Cow<str> {
String::from_utf8_lossy(self.message_id.raw())
}
- fn set_date(&mut self, new_val: &[u8]) -> () {
+ fn set_date(&mut self, new_val: &[u8]) {
self.date = String::from_utf8_lossy(new_val).into_owned();
}
- fn set_bcc(&mut self, new_val: Vec<Address>) -> () {
+ fn set_bcc(&mut self, new_val: Vec<Address>) {
self.bcc = new_val;
}
- fn set_cc(&mut self, new_val: Vec<Address>) -> () {
+ fn set_cc(&mut self, new_val: Vec<Address>) {
self.cc = new_val;
}
- fn set_from(&mut self, new_val: Vec<Address>) -> () {
+ fn set_from(&mut self, new_val: Vec<Address>) {
self.from = new_val;
}
- fn set_to(&mut self, new_val: Vec<Address>) -> () {
+ fn set_to(&mut self, new_val: Vec<Address>) {
self.to = new_val;
}
- fn set_in_reply_to(&mut self, new_val: &[u8]) -> () {
+ fn set_in_reply_to(&mut self, new_val: &[u8]) {
let slice = match parser::message_id(new_val).to_full_result() {
Ok(v) => v,
Err(_) => {
@@ -641,10 +641,10 @@ impl Envelope {
};
self.in_reply_to = Some(MessageID::new(new_val, slice));
}
- fn set_subject(&mut self, new_val: Vec<u8>) -> () {
+ fn set_subject(&mut self, new_val: Vec<u8>) {
self.subject = Some(new_val);
}
- fn set_message_id(&mut self, new_val: &[u8]) -> () {
+ fn set_message_id(&mut self, new_val: &[u8]) {
let slice = match parser::message_id(new_val).to_full_result() {
Ok(v) => v,
Err(_) => {
@@ -653,7 +653,7 @@ impl Envelope {
};
self.message_id = MessageID::new(new_val, slice);
}
- fn push_references(&mut self, new_val: &[u8]) -> () {
+ fn push_references(&mut self, new_val: &[u8]) {
let slice = match parser::message_id(new_val).to_full_result() {
Ok(v) => v,
Err(_) => {
@@ -685,7 +685,7 @@ impl Envelope {
}
}
}
- fn set_references(&mut self, new_val: &[u8]) -> () {
+ fn set_references(&mut self, new_val: &[u8]) {
match self.references {
Some(ref mut s) => {
s.raw = new_val.into();
@@ -713,14 +713,14 @@ impl Envelope {
pub fn thread(&self) -> usize {
self.thread
}
- pub fn set_thread(&mut self, new_val: usize) -> () {
+ pub fn set_thread(&mut self, new_val: usize) {
self.thread = new_val;
}
- pub fn set_datetime(&mut self, new_val: chrono::DateTime<chrono::FixedOffset>) -> () {
+ pub fn set_datetime(&mut self, new_val: chrono::DateTime<chrono::FixedOffset>) {
self.timestamp = new_val.timestamp() as UnixTimestamp;
}
pub fn set_flag(&mut self, f: Flag, mut operation: Box<BackendOp>) -> Result<()> {
- operation.set_flag(self, &f)?;
+ operation.set_flag(self, f)?;
self.flags |= f;
Ok(())
}
diff --git a/melib/src/mailbox/email/compose.rs b/melib/src/mailbox/email/compose.rs
index d5cea96b..e027cf7f 100644
--- a/melib/src/mailbox/email/compose.rs
+++ b/melib/src/mailbox/email/compose.rs
@@ -6,7 +6,7 @@ use std::str;
mod random;
mod mime;
-use self::mime::*;
+//use self::mime::*;
use super::parser;
diff --git a/melib/src/mailbox/email/compose/mime.rs b/melib/src/mailbox/email/compose/mime.rs
index 4563e55b..8252c34d 100644
--- a/melib/src/mailbox/email/compose/mime.rs
+++ b/melib/src/mailbox/email/compose/mime.rs
@@ -1 +1 @@
-use super::*;
+//use super::*;
diff --git a/melib/src/mailbox/email/parser.rs b/melib/src/mailbox/email/parser.rs
index e08349e8..5b0e0b75 100644
--- a/melib/src/mailbox/email/parser.rs
+++ b/melib/src/mailbox/email/parser.rs
@@ -48,7 +48,7 @@ pub trait BytesExt {
impl BytesExt for [u8] {
fn rtrim(&self) -> &Self {
if let Some(last) = self.iter().rposition(|b| !is_whitespace!(*b)) {
- &self[..last + 1]
+ &self[..=last]
} else {
&[]
}
@@ -155,7 +155,7 @@ pub fn headers_raw(input: &[u8]) -> IResult<&[u8], &[u8]> {
}
for (i, x) in input.iter().enumerate() {
if *x == b'\n' && i + 1 < input.len() && input[i + 1] == b'\n' {
- return IResult::Done(&input[(i + 1)..], &input[0..i + 1]);
+ return IResult::Done(&input[(i + 1)..], &input[0..=i]);
}
}
IResult::Error(error_code!(ErrorKind::Custom(43)))
@@ -383,14 +383,14 @@ fn addr_spec(input: &[u8]) -> IResult<&[u8], Address> {
IResult::Done(
&input[end..],
Address::Mailbox(MailboxAddress {
- raw: input[0..end + 1].into(),
+ raw: input[0..=end].into(),
display_name: StrBuilder {
offset: 0,
length: 0,
},
address_spec: StrBuilder {
offset: 0,
- length: input[0..end + 1].len(),
+ length: input[0..=end].len(),
},
}),
)
@@ -517,7 +517,7 @@ fn message_id_peek(input: &[u8]) -> IResult<&[u8], &[u8]> {
} else {
for (i, &x) in input.iter().take(input_length).enumerate().skip(1) {
if x == b'>' {
- return IResult::Done(&input[i + 1..], &input[0..i + 1]);
+ return IResult::Done(&input[i + 1..], &input[0..=i]);
}
}
IResult::Incomplete(Needed::Unknown)
diff --git a/melib/src/mailbox/thread.rs b/melib/src/mailbox/thread.rs
index 9b6baf0a..0d72d6df 100644
--- a/melib/src/mailbox/thread.rs
+++ b/melib/src/mailbox/thread.rs
@@ -512,16 +512,14 @@ impl Threads {
remove_from_parent!(thread_nodes, idx);
remove_from_parent!(thread_nodes, child);
return true; // Pruned
- } else {
- if let Some(p) = thread_nodes[idx].parent {
- let orphans = thread_nodes[idx].children.clone();
- for c in orphans {
- make!((p) parent of (c), thread_nodes);
- }
- remove_from_parent!(thread_nodes, idx);
- thread_nodes[idx].children.clear();
- return true; // Pruned
+ } else if let Some(p) = thread_nodes[idx].parent {
+ let orphans = thread_nodes[idx].children.clone();
+ for c in orphans {
+ make!((p) parent of (c), thread_nodes);
}
+ remove_from_parent!(thread_nodes, idx);
+ thread_nodes[idx].children.clear();
+ return true; // Pruned
}
}
diff --git a/ui/src/components/contacts.rs b/ui/src/components/contacts.rs
index 8c0ae1fd..8488a80f 100644
--- a/ui/src/components/contacts.rs
+++ b/ui/src/components/contacts.rs
@@ -28,10 +28,10 @@ pub use self::contact_list::*;
#[derive(Debug)]
enum ViewMode {
- ReadOnly,
+ //ReadOnly,
Read,
- Edit,
- New,
+ //Edit,
+ //New,
}
#[derive(Debug)]
@@ -69,9 +69,9 @@ impl fmt::Display for ContactManager {
impl ContactManager {
fn initialize(&mut self) {
- let (width, height) = self.content.size();
+ let (width, _) = self.content.size();
- let (x, y) = write_string_to_grid(
+ let (x, _) = write_string_to_grid(
"Contact Name ",
&mut self.content,
Color::Byte(33),
@@ -79,7 +79,7 @@ impl ContactManager {
((0, 0), (width, 0)),
false,
);
- let (x, y) = write_string_to_grid(
+ let (x, _) = write_string_to_grid(
"Last edited: ",
&mut self.content,
Color::Byte(250),
@@ -87,7 +87,7 @@ impl ContactManager {
((x, 0), (width, 0)),
false,
);
- let (x, y) = write_string_to_grid(
+ write_string_to_grid(
&self.card.last_edited(),
&mut self.content,
Color::Byte(250),
@@ -115,7 +115,7 @@ impl Component for ContactManager {
self.initialized = true;
}
clear_area(grid, area);
- let (width, height) = self.content.size();
+ let (width, _height) = self.content.size();
copy_area(grid, &self.content, area, ((0, 0), (width - 1, 0)));
let upper_left = upper_left!(area);
diff --git a/ui/src/components/mail/accounts.rs b/ui/src/components/mail/accounts.rs
index 56c71095..8fdc620b 100644
--- a/ui/src/components/mail/accounts.rs
+++ b/ui/src/components/mail/accounts.rs
@@ -19,10 +19,6 @@
* along with meli. If not, see <http://www.gnu.org/licenses/>.
*/
-mod contacts;
-
-pub use contacts::*;
-
use super::*;
use std::fmt;
diff --git a/ui/src/components/mail/accounts/contacts.rs b/ui/src/components/mail/accounts/contacts.rs
deleted file mode 100644
index 61b8cbaa..00000000
--- a/ui/src/components/mail/accounts/contacts.rs
+++ /dev/null
@@ -1,105 +0,0 @@
-/*
- * meli - ui crate.
- *
- * Copyright 2019 Manos Pitsidianakis
- *
- * This file is part of meli.
- *
- * meli is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * meli is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with meli. If not, see <http://www.gnu.org/licenses/>.
- */
-
-use super::*;
-
-#[derive(Debug)]
-pub struct ContactsPanel {
- content: CellBuffer,
- dirty: bool,
-}
-
-impl fmt::Display for ContactsPanel {
- fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
- write!(f, "contacts")
- }
-}
-
-
-impl Component for ContactsPanel {
- fn draw(&mut self, grid: &mut CellBuffer, area: Area, context: &mut Context) {
- if self.dirty {
- self.dirty = false;
- }
- clear_area(grid, area);
-
- let (width, height) = self.content.size();
- copy_area(grid, &self.content, area, ((0, 0), (width - 1, height - 1)));
- context.dirty_areas.push_back(area);
- }
- fn process_event(&mut self, _event: &mut UIEvent, _context: &mut Context) -> bool {
- false
- }
- fn is_dirty(&self) -> bool {
- self.dirty
- }
- fn set_dirty(&mut self) {
- self.dirty = true;
- }
-}
-
-impl ContactsPanel {
- pub fn new(context: &Context) -> ContactsPanel {
- let mut content = CellBuffer::new(120, 25 + context.accounts.len() * 20, Cell::default());
- write_string_to_grid(
- "Contacts",
- &mut content,
- Color::Default,
- Color::Default,
- ((2, 3), (120 - 1, 3)),
- true,
- );
-
- for (i, a) in context.accounts.iter().enumerate() {
- create_box(&mut content, ((2,5+i*10 ), (120-1, 15+i*10)));
- let (x, y) = write_string_to_grid(
- a.name(),
- &mut content,
- Color::Default,
- Color::Default,
- ((3, 5 + i*10), (120 - 2, 5 + i*10)),
- true,
- );
- write_string_to_grid(
- " ▒██▒ ",
- &mut content,
- Color::Byte(32),
- Color::Default,
- ((x, y), (120 - 2, 5 + i*10)),
- true,
- );
- write_string_to_grid(
- &a.runtime_settings.account().identity,
- &mut content,
- Color::Default,
- Color::Default,
- ((4, y + 2), (120 - 2, y + 2)),
- true,
- );
-
- }
-
- ContactsPanel {
- content,
- dirty: true,
- }
- }
-}
diff --git a/ui/src/components/mail/compose.rs b/ui/src/components/mail/compose.rs
index 3137df32..00d2493e 100644
--- a/ui/src/components/mail/compose.rs
+++ b/ui/src/components/mail/compose.rs
@@ -29,7 +29,7 @@ use std::str::FromStr;
enum Cursor {
Headers,
Body,
- Attachments,
+ //Attachments,
}
#[derive(Debug)]
@@ -71,7 +71,7 @@ impl Default for Composer {
enum ViewMode {
Discard(Uuid),
Pager,
- Selector(Selector),
+ //Selector(Selector),
Overview,
}
@@ -99,14 +99,6 @@ impl ViewMode {
false
}
}
-
- fn is_selector(&self) -> bool {
- if let ViewMode::Selector(_) = self {
- true
- } else {
- false
- }
- }
}
impl fmt::Display for Composer {
@@ -183,34 +175,7 @@ impl Composer {
}
}
- fn draw_header_table(&mut self, grid: &mut CellBuffer, area: Area) {
- let upper_left = upper_left!(area);
- let bottom_right = bottom_right!(area);
-
- let headers = self.draft.headers();
- {
- let (mut x, mut y) = upper_left;
- for &k in &["Date", "From", "To", "Cc", "Bcc", "Subject"] {
- let bg_color = Color::Default;
-
-
- let update = {
- let (x, y) = write_string_to_grid(
- k,
- grid,
- Color::Default,
- bg_color,
- ((x, y), set_y(bottom_right, y)),
- true,
- );
- let (x, y) = write_string_to_grid(
- ": ",
- grid,
- Color::Default,
- bg_color,
- ((x, y), set_y(bottom_right, y)),
- true,
- );
+ /*
let (x, y) = if k == "From" {
write_string_to_grid(
"◀ ",
@@ -240,15 +205,7 @@ impl Composer {
((x, y), set_y(bottom_right, y)),
true,
)
- } else {
- (x, y)
- }
- };
- x = get_x(upper_left);
- y = update.1 + 1;
- }
- }
- }
+ */
}
impl Component for Composer {
@@ -341,9 +298,6 @@ impl Component for Composer {
ViewMode::Overview | ViewMode::Pager => {
self.pager.draw(grid, body_area, context);
},
- ViewMode::Selector(ref mut s) => {
- s.draw(grid, body_area, context);
- },
ViewMode::Discard(_) => {
/* Let user choose whether to quit with/without saving or cancel */
let mid_x = width!(area) / 2;
@@ -421,12 +375,6 @@ impl Component for Composer {
return true;
}
},
- (ViewMode::Selector(ref mut s), _) => {
- if s.process_event(event, context) {
- self.dirty = true;
- return true;
- }
- },
_ => {}
}
if self.form.process_event(event, context) {
@@ -434,19 +382,6 @@ impl Component for Composer {
}
match event.event_type {
- UIEventType::Input(Key::Esc) if self.mode.is_selector() => {
- self.mode = ViewMode::Overview;
- return true;
- },
- UIEventType::Input(Key::Char('\n')) if self.mode.is_selector() => {
- let mut old_mode = std::mem::replace(&mut self.mode, ViewMode::Overview);
- if let ViewMode::Selector(s) = old_mode {
- eprintln!("collected {:?}", s.collect());
- } else {
- unreachable!()
- }
- return true;
- },
UIEventType::Resize => {
self.set_dirty();
},
diff --git a/ui/src/components/mail/listing/compact.rs b/ui/src/components/mail/listing/compact.rs
index e39f27d6..2af9d6e8 100644
--- a/ui/src/components/mail/listing/compact.rs
+++ b/ui/src/components/mail/listing/compact.rs
@@ -525,7 +525,7 @@ impl Component for CompactListing {
}
fn get_shortcuts(&self) -> ShortcutMap {
- let mut map = self.view.as_ref().map(|p| p.get_shortcuts()).unwrap_or(ShortcutMap::default());
+ let mut map = self.view.as_ref().map(|p| p.get_shortcuts()).unwrap_or_default();
map.insert(Key::Char('\n'), "Open thread.".into());
map.insert(Key::PageUp, "Go to previous page.".into());
diff --git a/ui/src/components/utilities.rs b/ui/src/components/utilities.rs
index cde01e22..a1a81a0a 100644
--- a/ui/src/components/utilities.rs
+++ b/ui/src/components/utilities.rs
@@ -397,7 +397,7 @@ impl Component for Pager {
}
context.dirty_areas.push_back(area);
}
- fn process_event(&mut self, event: &mut UIEvent, context: &mut Context) -> bool {
+ fn process_event(&mut self, event: &mut UIEvent, _context: &mut Context) -> bool {
match event.event_type {
UIEventType::Input(Key::Char('k')) => {
if self.cursor_pos > 0 {
@@ -937,7 +937,7 @@ impl Component for Selector {
);
context.dirty_areas.push_back(area);
}
- fn process_event(&mut self, event: &mut UIEvent, context: &mut Context) -> bool {
+ fn process_event(&mut self, event: &mut UIEvent, _context: &mut Context) -> bool {
let (width, height) = self.content.size();
match event.event_type {
UIEventType::Input(Key::Char(' ')) => {
diff --git a/ui/src/components/utilities/widgets.rs b/ui/src/components/utilities/widgets.rs
index 090885ae..2f522ca6 100644
--- a/ui/src/components/utilities/widgets.rs
+++ b/ui/src/components/utilities/widgets.rs
@@ -72,7 +72,7 @@ impl Field {
},
TextArea(_, _) => {
},
- Choice(_, cursor) => {
+ Choice(_, _cursor) => {
}
}
@@ -80,7 +80,7 @@ impl Field {
}
impl Component for Field {
- fn draw(&mut self, grid: &mut CellBuffer, area: Area, context: &mut Context) {
+ fn draw(&mut self, grid: &mut CellBuffer, area: Area, _context: &mut Context) {
write_string_to_grid(
self.as_str(),
grid,
@@ -89,7 +89,7 @@ impl Component for Field {
area,
true);
}
- fn process_event(&mut self, event: &mut UIEvent, context: &mut Context) -> bool {
+ fn process_event(&mut self, event: &mut UIEvent, _context: &mut Context) -> bool {
match event.event_type {
UIEventType::InsertInput(Key::Right) => {
match self {
@@ -294,10 +294,8 @@ impl Component for FormWidget {
context.dirty_areas.push_back(area);
}
fn process_event(&mut self, event: &mut UIEvent, context: &mut Context) -> bool {
- if self.focus == FormFocus::Buttons {
- if self.buttons.process_event(event, context) {
- return true;
- }
+ if self.focus == FormFocus::Buttons && self.buttons.process_event(event, context) {
+ return true;
}
match event.event_type {
@@ -341,7 +339,7 @@ impl Component for FormWidget {
UIEventType::ChangeMode(UIMode::Normal) if self.focus == FormFocus::TextInput => {
self.focus = FormFocus::Fields;
},
- UIEventType::InsertInput(Key::Char(k)) if self.focus == FormFocus::TextInput => {
+ UIEventType::InsertInput(Key::Char(_)) if self.focus == FormFocus::TextInput => {
let field = self.fields.get_mut(&self.layout[self.cursor]).unwrap();
field.process_event(event, context);
},
@@ -402,14 +400,13 @@ impl<T> ButtonWidget<T> where T: std::fmt::Debug + Default + Send {
impl<T> Component for ButtonWidget<T> where T: std::fmt::Debug + Default + Send {
- fn draw(&mut self, grid: &mut CellBuffer, area: Area, context: &mut Context) {
+ fn draw(&mut self, grid: &mut CellBuffer, area: Area, _context: &mut Context) {
let upper_left = upper_left!(area);
- let bottom_right = bottom_right!(area);
let mut len = 0;
for (i, k) in self.layout.iter().enumerate() {
let cur_len = k.len();
- let (x, y) = write_string_to_grid(
+ write_string_to_grid(
k.as_str(),
grid,
Color::Default,
@@ -420,7 +417,7 @@ impl<T> Component for ButtonWidget<T> where T: std::fmt::Debug + Default + Send
len += cur_len + 3;
}
}
- fn process_event(&mut self, event: &mut UIEvent, context: &mut Context) -> bool {
+ fn process_event(&mut self, event: &mut UIEvent, _context: &mut Context) -> bool {
match event.event_type {
UIEventType::Input(Key::Char('\n')) => {
self.result = Some(self.buttons.remove(&self.layout[self.cursor]).unwrap_or_default());
diff --git a/ui/src/types/keys.rs b/ui/src/types/keys.rs
index 6be97782..e3db0176 100644
--- a/ui/src/types/keys.rs
+++ b/ui/src/types/keys.rs
@@ -201,7 +201,7 @@ derive_csi_sequence!("End Bracketed Paste Mode", BracketModeEnd, "?2003l");
pub const BRACKET_PASTE_START: &[u8] = b"\x1B[200~";
pub const BRACKET_PASTE_END: &[u8] = b"\x1B[201~";
-const FIELDS: &'static [&'static str] = &[];
+const FIELDS: &[&str] = &[];
impl<'de> Deserialize<'de> for Key {