summaryrefslogtreecommitdiffstats
path: root/examples/websocket
diff options
context:
space:
mode:
authorLibravatar Gigas002 <24297712+Gigas002@users.noreply.github.com>2024-04-16 00:08:17 +0900
committerLibravatar GitHub <noreply@github.com>2024-04-16 00:08:17 +0900
commit0ebe0629cef37aee5c48b9409fc36618a3a3e60d (patch)
tree909d9ecf28e7c491bae3afc81928c118517fa7a9 /examples/websocket
parent13bd106fc585034a7aba17b9c17589113274aaf5 (diff)
parent105b8bd5ad6ade1f203a0d8b0b93bd06f61f621a (diff)
downloadiced-0ebe0629cef37aee5c48b9409fc36618a3a3e60d.tar.gz
iced-0ebe0629cef37aee5c48b9409fc36618a3a3e60d.tar.bz2
iced-0ebe0629cef37aee5c48b9409fc36618a3a3e60d.zip
Merge branch 'iced-rs:master' into viewer_content_fit
Diffstat (limited to 'examples/websocket')
-rw-r--r--examples/websocket/src/echo.rs23
-rw-r--r--examples/websocket/src/main.rs6
2 files changed, 18 insertions, 11 deletions
diff --git a/examples/websocket/src/echo.rs b/examples/websocket/src/echo.rs
index 281ed4bd..cd32cb66 100644
--- a/examples/websocket/src/echo.rs
+++ b/examples/websocket/src/echo.rs
@@ -2,6 +2,7 @@ pub mod server;
use iced::futures;
use iced::subscription::{self, Subscription};
+use iced::widget::text;
use futures::channel::mpsc;
use futures::sink::SinkExt;
@@ -136,16 +137,24 @@ impl Message {
pub fn disconnected() -> Self {
Message::Disconnected
}
+
+ pub fn as_str(&self) -> &str {
+ match self {
+ Message::Connected => "Connected successfully!",
+ Message::Disconnected => "Connection lost... Retrying...",
+ Message::User(message) => message.as_str(),
+ }
+ }
}
impl fmt::Display for Message {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
- match self {
- Message::Connected => write!(f, "Connected successfully!"),
- Message::Disconnected => {
- write!(f, "Connection lost... Retrying...")
- }
- Message::User(message) => write!(f, "{message}"),
- }
+ f.write_str(self.as_str())
+ }
+}
+
+impl<'a> text::IntoFragment<'a> for &'a Message {
+ fn into_fragment(self) -> text::Fragment<'a> {
+ text::Fragment::Borrowed(self.as_str())
}
}
diff --git a/examples/websocket/src/main.rs b/examples/websocket/src/main.rs
index 460d9a08..b479fe89 100644
--- a/examples/websocket/src/main.rs
+++ b/examples/websocket/src/main.rs
@@ -96,10 +96,8 @@ impl WebSocket {
.into()
} else {
scrollable(
- column(
- self.messages.iter().cloned().map(text).map(Element::from),
- )
- .spacing(10),
+ column(self.messages.iter().map(text).map(Element::from))
+ .spacing(10),
)
.id(MESSAGE_LOG.clone())
.height(Length::Fill)