Adding details after a flag is not found in MotionFlags

Because from_bits will return a None if we encounter a flag that we
can't find, and if we call unwrap directly we will have a crash, but the
crash message here will confuse us, so here we add some detailed
information to help us locate the problem later.

Bug: none
Test: Build

Signed-off-by: Linnan Li <lilinnan@xiaomi.corp-partner.google.com>
(cherry picked from https://partner-android-review.googlesource.com/q/commit:2d17392f625885a7a4e49bad59f5793223c73dda)
Merged-In: If3970964ef696e22dc651579a4c297f431b3e0ca
Change-Id: If3970964ef696e22dc651579a4c297f431b3e0ca
diff --git a/libs/input/rust/lib.rs b/libs/input/rust/lib.rs
index 01d9599..fb3f520 100644
--- a/libs/input/rust/lib.rs
+++ b/libs/input/rust/lib.rs
@@ -79,12 +79,20 @@
     pointer_properties: &[RustPointerProperties],
     flags: u32,
 ) -> String {
+    let motion_flags = MotionFlags::from_bits(flags);
+    if motion_flags.is_none() {
+        panic!(
+            "The conversion of flags 0x{:08x} failed, please check if some flags have not been \
+            added to MotionFlags.",
+            flags
+        );
+    }
     let result = verifier.process_movement(
         DeviceId(device_id),
         Source::from_bits(source).unwrap(),
         action,
         pointer_properties,
-        MotionFlags::from_bits(flags).unwrap(),
+        motion_flags.unwrap(),
     );
     match result {
         Ok(()) => "".to_string(),