Remove `Clone` bound from `Button` and `Details`

Marshall Bowers created

Change summary

crates/ui2/src/elements/button.rs  | 4 ++--
crates/ui2/src/elements/details.rs | 6 +++---
2 files changed, 5 insertions(+), 5 deletions(-)

Detailed changes

crates/ui2/src/elements/button.rs 🔗

@@ -34,7 +34,7 @@ impl<S: 'static + Send + Sync> Default for ButtonHandlers<S> {
 }
 
 #[derive(Element)]
-pub struct Button<S: 'static + Send + Sync + Clone> {
+pub struct Button<S: 'static + Send + Sync> {
     state_type: PhantomData<S>,
     label: SharedString,
     variant: ButtonVariant,
@@ -45,7 +45,7 @@ pub struct Button<S: 'static + Send + Sync + Clone> {
     handlers: ButtonHandlers<S>,
 }
 
-impl<S: 'static + Send + Sync + Clone> Button<S> {
+impl<S: 'static + Send + Sync> Button<S> {
     pub fn new(label: impl Into<SharedString>) -> Self {
         Self {
             state_type: PhantomData,

crates/ui2/src/elements/details.rs 🔗

@@ -2,14 +2,14 @@ use std::marker::PhantomData;
 
 use crate::prelude::*;
 
-#[derive(Element, Clone)]
-pub struct Details<S: 'static + Send + Sync + Clone> {
+#[derive(Element)]
+pub struct Details<S: 'static + Send + Sync> {
     state_type: PhantomData<S>,
     text: &'static str,
     meta: Option<&'static str>,
 }
 
-impl<S: 'static + Send + Sync + Clone> Details<S> {
+impl<S: 'static + Send + Sync> Details<S> {
     pub fn new(text: &'static str) -> Self {
         Self {
             state_type: PhantomData,