aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/client/dispatch.rs9
-rw-r--r--src/utils/colour.rs14
2 files changed, 23 insertions, 0 deletions
diff --git a/src/client/dispatch.rs b/src/client/dispatch.rs
index 7bc9883..b661328 100644
--- a/src/client/dispatch.rs
+++ b/src/client/dispatch.rs
@@ -510,6 +510,15 @@ fn handle_event<H: EventHandler + Send + Sync + 'static>(
});
},
DispatchEvent::Model(Event::MessageUpdate(mut event)) => {
+ let message = match CACHE.read().messages.get(&event.channel_id) {
+ Some(map) => {
+ match map.get(&event.id) {
+ Some(m) => Some(m.clone()),
+ None => None,
+ }
+ },
+ None => None,
+ };
update!(event);
let context = context(data, runner_tx, shard_id);
diff --git a/src/utils/colour.rs b/src/utils/colour.rs
index 3b31572..cac3d46 100644
--- a/src/utils/colour.rs
+++ b/src/utils/colour.rs
@@ -190,6 +190,20 @@ impl Colour {
/// [`g`]: #method.g
/// [`b`]: #method.b
pub fn tuple(&self) -> (u8, u8, u8) { (self.r(), self.g(), self.b()) }
+
+ /// Returns a hexadecimal string of this Colour.
+ ///
+ /// This is equivalent to passing the integer value through `std::fmt::UpperHex` with 0 padding
+ /// and 6 width
+ ///
+ /// # Examples
+ ///
+ /// ```rust
+ /// use serenity::utils::Colour;
+ ///
+ /// assert_eq!(Colour::new(6573123).hex(), String::from("644C43"));
+ /// ```
+ pub fn hex(&self) -> String { format!("{:06X}", self.0) }
}
impl From<i32> for Colour {