diff --git a/clippy.toml b/clippy.toml deleted file mode 100644 index 171c603..0000000 --- a/clippy.toml +++ /dev/null @@ -1 +0,0 @@ -"clippy::style" = "deny" \ No newline at end of file diff --git a/src/components/editor/mod.rs b/src/components/editor/mod.rs index b8d3bff..dceee0c 100644 --- a/src/components/editor/mod.rs +++ b/src/components/editor/mod.rs @@ -21,47 +21,47 @@ impl EchidnaCoreEditor { // Without cloning it, for some reasons the Rust compiler complains about &this.to_imp().sourceview not being IsA this_imp.minimap.set_view(&this_imp.sourceview.clone()); - if file.is_some() { - let file = file.unwrap(); - let file_location = file - .location() - .expect("file is required to have a location"); + match file { + Some(file) => { + let file_location = file + .location() + .expect("file is required to have a location"); - this.set_property("file", &file) - .expect("Could not set the 'file' property of EchidnaCoreEditor"); + this.set_property("file", &file) + .expect("Could not set the 'file' property of EchidnaCoreEditor"); - let cancellable = gio::Cancellable::new(); - let filepath = file_location.path().expect("No filepath"); - let info = file_location - .query_info("*", gio::FileQueryInfoFlags::NONE, Some(&cancellable)) - .expect("Could not query the info for file"); + let cancellable = gio::Cancellable::new(); + let filepath = file_location.path().expect("No filepath"); + let info = file_location + .query_info("*", gio::FileQueryInfoFlags::NONE, Some(&cancellable)) + .expect("Could not query the info for file"); - let content_type = info - .content_type() - .expect(format!("It does not seem like {:?} has a type", filepath).as_str()); - { - println!( - "Opened {} and found its content type is {}.", - "file", - content_type.to_string() - ); - let buffer = this_imp.sourceview.buffer().downcast::().expect("Cannot downcast the sourceview's buffer. Maybe the sourceview's buffer is not IsA."); - let language_manager = LanguageManager::new(); - let language = language_manager.guess_language( - Some(&info.name().to_str().expect( - "Could not open the file because its name is not supported by Unicode.", - )), - None, - ); + let content_type = info + .content_type() + .expect(format!("It does not seem like {:?} has a type", filepath).as_str()); + { + println!( + "Opened {} and found its content type is {}.", + "file", + content_type.to_string() + ); + let buffer = this_imp.sourceview.buffer().downcast::().expect("Cannot downcast the sourceview's buffer. Maybe the sourceview's buffer is not IsA."); + let language_manager = LanguageManager::new(); + let language = language_manager.guess_language( + Some(&info.name().to_str().expect( + "Could not open the file because its name is not supported by Unicode.", + )), + None, + ); - match language { - Some(lang) => buffer.set_language(Some(&lang)), - None => {} - } + match language { + Some(lang) => buffer.set_language(Some(&lang)), + None => {} + } - let file_loader: FileLoader = FileLoader::new(&buffer, &file); + let file_loader: FileLoader = FileLoader::new(&buffer, &file); - file_loader.load_async( + file_loader.load_async( glib::Priority::default(), Some(&cancellable), |_, _| {}, @@ -71,7 +71,9 @@ impl EchidnaCoreEditor { } }, ); + } } + None => {} } this } diff --git a/src/components/sidebar/mod.rs b/src/components/sidebar/mod.rs index 7aa464a..a7c145b 100644 --- a/src/components/sidebar/mod.rs +++ b/src/components/sidebar/mod.rs @@ -15,3 +15,9 @@ impl EchidnaSidebar { glib::Object::new(&[]).expect("Failed to create 'EchidnaSidebar' component.") } } + +impl Default for EchidnaSidebar { + fn default() -> Self { + Self::new() + } +} diff --git a/src/components/tab_label/imp.rs b/src/components/tab_label/imp.rs index 34ca917..1765d20 100644 --- a/src/components/tab_label/imp.rs +++ b/src/components/tab_label/imp.rs @@ -36,9 +36,9 @@ impl BuildableImpl for TabLabel { fn add_child( &self, buildable: &Self::Type, - builder: >k::Builder, + _builder: >k::Builder, child: &glib::Object, - type_: Option<&str>, + _type_: Option<&str>, ) { buildable.prepend(child.downcast_ref::().unwrap()); } diff --git a/src/components/tab_label/mod.rs b/src/components/tab_label/mod.rs index 1b45623..e47b028 100644 --- a/src/components/tab_label/mod.rs +++ b/src/components/tab_label/mod.rs @@ -17,8 +17,9 @@ impl TabLabel { pub fn new>(tab_label: Option<&U>) -> Self { let this: Self = glib::Object::new(&[]).expect("Failed to create 'TabLabel' component."); - if tab_label.is_some() { - this.prepend(tab_label.unwrap()); + match tab_label { + Some(tab_label) => this.prepend(tab_label), + None => {} } this } diff --git a/src/components/window/file.rs b/src/components/window/file.rs index cef7e9f..a9e06e6 100644 --- a/src/components/window/file.rs +++ b/src/components/window/file.rs @@ -67,7 +67,7 @@ impl FileImplementedEditor for super::EchidnaWindow { notebook.prepend_closable_page( &editor_page, Some(&Label::new(Some( - &file_location + file_location .path() .expect("The file's path is missing") .file_name() diff --git a/src/lib/closeable_tab.rs b/src/lib/closeable_tab.rs index be42037..ad3f17c 100644 --- a/src/lib/closeable_tab.rs +++ b/src/lib/closeable_tab.rs @@ -4,7 +4,7 @@ use crate::components::tab_label::TabLabel; use glib::IsA; -use gtk::{prelude::*, Box, Button, Widget}; +use gtk::{prelude::*, Widget}; pub trait ClosableTabImplementedNotebook { fn prepend_closable_page, U: IsA>(