diff --git a/src/gui/views/list.rs b/src/gui/views/list.rs index 3402fc70..b263c3b6 100644 --- a/src/gui/views/list.rs +++ b/src/gui/views/list.rs @@ -7,11 +7,12 @@ use crate::core::uad_lists::{ }; use crate::core::utils::{EXPORT_FILE_NAME, NAME, export_selection, fetch_packages, open_url}; use crate::gui::style; +use crate::gui::views::settings::Settings; +use crate::gui::widgets::modal::Modal; use crate::gui::widgets::navigation_menu::ICONS; +use crate::gui::widgets::package_row::Message as PackageRowMessage; use std::path::PathBuf; -use crate::gui::views::settings::Settings; -use crate::gui::widgets::modal::Modal; use crate::gui::widgets::package_row::{Message as RowMessage, PackageRow}; use crate::gui::widgets::text; use iced::widget::scrollable::{Direction, Scrollbar}; @@ -952,6 +953,7 @@ impl List { let package = &mut self.phone_packages[i_user][i_package]; match *row_message { + PackageRowMessage::Noop => Task::none(), RowMessage::ToggleSelection(toggle) => { if package.removal == Removal::Unsafe && !settings.general.expert_mode { package.selected = false; diff --git a/src/gui/widgets/package_row.rs b/src/gui/widgets/package_row.rs index 7d43bb28..a1a93658 100644 --- a/src/gui/widgets/package_row.rs +++ b/src/gui/widgets/package_row.rs @@ -4,7 +4,7 @@ use crate::core::uad_lists::{PackageState, Removal, UadList}; use crate::gui::style; use crate::gui::views::settings::Settings; use crate::gui::widgets::text; - +use iced::widget::text_input; use iced::widget::{Space, button, checkbox, row}; use iced::{Alignment, Element, Length, Renderer, Task, alignment}; @@ -24,6 +24,7 @@ pub enum Message { PackagePressed, ActionPressed, ToggleSelection(bool), + Noop, } impl PackageRow { @@ -123,7 +124,12 @@ impl PackageRow { button( row![ selection_checkbox, - text(&self.name).width(Length::FillPortion(8)), + // Allows the package name text to be copyable + text_input("", &self.name) + .on_input(|_| Message::Noop) + .padding(0) + .size(14) + .width(Length::FillPortion(8)), action_btn.style(button_style) ] .spacing(8)