Use type FWL_KeyFlagMask xfa-side.

This is the (pre-existing) XFA equivalent of FWL_EventFlagMask.

Change-Id: I21c366c5efb5eccb1044d0d90ecf0b5529c99cb7
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/83954
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Tom Sepez <tsepez@chromium.org>
diff --git a/xfa/fxfa/cxfa_ffbarcode.cpp b/xfa/fxfa/cxfa_ffbarcode.cpp
index f11be2d..28d93ab 100644
--- a/xfa/fxfa/cxfa_ffbarcode.cpp
+++ b/xfa/fxfa/cxfa_ffbarcode.cpp
@@ -255,7 +255,7 @@
 }
 
 bool CXFA_FFBarcode::AcceptsFocusOnButtonDown(
-    uint32_t dwFlags,
+    FWL_KeyFlagMask dwFlags,
     const CFX_PointF& point,
     CFWL_MessageMouse::MouseCommand command) {
   auto* pBarCodeWidget = static_cast<CFWL_Barcode*>(GetNormalWidget());
diff --git a/xfa/fxfa/cxfa_ffbarcode.h b/xfa/fxfa/cxfa_ffbarcode.h
index 596806b..8bc3f09 100644
--- a/xfa/fxfa/cxfa_ffbarcode.h
+++ b/xfa/fxfa/cxfa_ffbarcode.h
@@ -105,7 +105,7 @@
                     HighlightOption highlight) override;
   void UpdateWidgetProperty() override;
   bool AcceptsFocusOnButtonDown(
-      uint32_t dwFlags,
+      FWL_KeyFlagMask dwFlags,
       const CFX_PointF& point,
       CFWL_MessageMouse::MouseCommand command) override;
 
diff --git a/xfa/fxfa/cxfa_ffcheckbutton.cpp b/xfa/fxfa/cxfa_ffcheckbutton.cpp
index bf39938..20209c3 100644
--- a/xfa/fxfa/cxfa_ffcheckbutton.cpp
+++ b/xfa/fxfa/cxfa_ffcheckbutton.cpp
@@ -252,7 +252,7 @@
   GetApp()->GetFWLWidgetMgr()->OnDrawWidget(GetNormalWidget(), pGS, mt);
 }
 
-bool CXFA_FFCheckButton::OnLButtonUp(uint32_t dwFlags,
+bool CXFA_FFCheckButton::OnLButtonUp(FWL_KeyFlagMask dwFlags,
                                      const CFX_PointF& point) {
   if (!GetNormalWidget() || !IsButtonDown())
     return false;
diff --git a/xfa/fxfa/cxfa_ffcheckbutton.h b/xfa/fxfa/cxfa_ffcheckbutton.h
index a46d706..9f8697b 100644
--- a/xfa/fxfa/cxfa_ffcheckbutton.h
+++ b/xfa/fxfa/cxfa_ffcheckbutton.h
@@ -30,7 +30,7 @@
   bool PerformLayout() override;
   bool UpdateFWLData() override;
   void UpdateWidgetProperty() override;
-  bool OnLButtonUp(uint32_t dwFlags, const CFX_PointF& point) override;
+  bool OnLButtonUp(FWL_KeyFlagMask dwFlags, const CFX_PointF& point) override;
   void OnProcessMessage(CFWL_Message* pMessage) override;
   void OnProcessEvent(CFWL_Event* pEvent) override;
   void OnDrawWidget(CFGAS_GEGraphics* pGraphics,
diff --git a/xfa/fxfa/cxfa_ffcombobox.cpp b/xfa/fxfa/cxfa_ffcombobox.cpp
index 684611f..68cef5a 100644
--- a/xfa/fxfa/cxfa_ffcombobox.cpp
+++ b/xfa/fxfa/cxfa_ffcombobox.cpp
@@ -109,7 +109,8 @@
   pComboBox->EditModifyStyleExts(dwEditStyles, 0xFFFFFFFF);
 }
 
-bool CXFA_FFComboBox::OnRButtonUp(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFComboBox::OnRButtonUp(FWL_KeyFlagMask dwFlags,
+                                  const CFX_PointF& point) {
   if (!CXFA_FFField::OnRButtonUp(dwFlags, point))
     return false;
 
diff --git a/xfa/fxfa/cxfa_ffcombobox.h b/xfa/fxfa/cxfa_ffcombobox.h
index a0dd056..06062e1 100644
--- a/xfa/fxfa/cxfa_ffcombobox.h
+++ b/xfa/fxfa/cxfa_ffcombobox.h
@@ -26,7 +26,7 @@
   CFX_RectF GetBBox(FocusOption focus) override;
   bool LoadWidget() override;
   void UpdateWidgetProperty() override;
-  bool OnRButtonUp(uint32_t dwFlags, const CFX_PointF& point) override;
+  bool OnRButtonUp(FWL_KeyFlagMask dwFlags, const CFX_PointF& point) override;
   bool OnKillFocus(CXFA_FFWidget* pNewWidget) override WARN_UNUSED_RESULT;
   bool CanUndo() override;
   bool CanRedo() override;
diff --git a/xfa/fxfa/cxfa_fffield.cpp b/xfa/fxfa/cxfa_fffield.cpp
index 60b631b..e8cc8c8 100644
--- a/xfa/fxfa/cxfa_fffield.cpp
+++ b/xfa/fxfa/cxfa_fffield.cpp
@@ -396,7 +396,7 @@
 }
 
 bool CXFA_FFField::AcceptsFocusOnButtonDown(
-    uint32_t dwFlags,
+    FWL_KeyFlagMask dwFlags,
     const CFX_PointF& point,
     CFWL_MessageMouse::MouseCommand command) {
   if (!GetNormalWidget())
@@ -409,7 +409,8 @@
   return true;
 }
 
-bool CXFA_FFField::OnLButtonDown(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFField::OnLButtonDown(FWL_KeyFlagMask dwFlags,
+                                 const CFX_PointF& point) {
   SetButtonDown(true);
   CFWL_MessageMouse msg(GetNormalWidget(),
                         CFWL_MessageMouse::MouseCommand::kLeftButtonDown,
@@ -418,7 +419,8 @@
   return true;
 }
 
-bool CXFA_FFField::OnLButtonUp(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFField::OnLButtonUp(FWL_KeyFlagMask dwFlags,
+                               const CFX_PointF& point) {
   if (!GetNormalWidget())
     return false;
   if (!IsButtonDown())
@@ -433,7 +435,8 @@
   return true;
 }
 
-bool CXFA_FFField::OnLButtonDblClk(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFField::OnLButtonDblClk(FWL_KeyFlagMask dwFlags,
+                                   const CFX_PointF& point) {
   if (!GetNormalWidget())
     return false;
 
@@ -444,7 +447,8 @@
   return true;
 }
 
-bool CXFA_FFField::OnMouseMove(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFField::OnMouseMove(FWL_KeyFlagMask dwFlags,
+                               const CFX_PointF& point) {
   if (!GetNormalWidget())
     return false;
 
@@ -455,7 +459,7 @@
   return true;
 }
 
-bool CXFA_FFField::OnMouseWheel(uint32_t dwFlags,
+bool CXFA_FFField::OnMouseWheel(FWL_KeyFlagMask dwFlags,
                                 const CFX_PointF& point,
                                 const CFX_Vector& delta) {
   if (!GetNormalWidget())
@@ -466,7 +470,8 @@
   return true;
 }
 
-bool CXFA_FFField::OnRButtonDown(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFField::OnRButtonDown(FWL_KeyFlagMask dwFlags,
+                                 const CFX_PointF& point) {
   SetButtonDown(true);
 
   CFWL_MessageMouse msg(GetNormalWidget(),
@@ -476,7 +481,8 @@
   return true;
 }
 
-bool CXFA_FFField::OnRButtonUp(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFField::OnRButtonUp(FWL_KeyFlagMask dwFlags,
+                               const CFX_PointF& point) {
   if (!GetNormalWidget())
     return false;
   if (!IsButtonDown())
@@ -490,7 +496,8 @@
   return true;
 }
 
-bool CXFA_FFField::OnRButtonDblClk(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFField::OnRButtonDblClk(FWL_KeyFlagMask dwFlags,
+                                   const CFX_PointF& point) {
   if (!GetNormalWidget())
     return false;
 
@@ -526,7 +533,8 @@
   return pNewWidget && CXFA_FFWidget::OnKillFocus(pNewWidget);
 }
 
-bool CXFA_FFField::OnKeyDown(XFA_FWL_VKEYCODE dwKeyCode, uint32_t dwFlags) {
+bool CXFA_FFField::OnKeyDown(XFA_FWL_VKEYCODE dwKeyCode,
+                             FWL_KeyFlagMask dwFlags) {
   if (!GetNormalWidget() || !GetDoc()->GetXFADoc()->IsInteractive())
     return false;
 
@@ -536,7 +544,8 @@
   return true;
 }
 
-bool CXFA_FFField::OnKeyUp(XFA_FWL_VKEYCODE dwKeyCode, uint32_t dwFlags) {
+bool CXFA_FFField::OnKeyUp(XFA_FWL_VKEYCODE dwKeyCode,
+                           FWL_KeyFlagMask dwFlags) {
   if (!GetNormalWidget() || !GetDoc()->GetXFADoc()->IsInteractive())
     return false;
 
@@ -546,7 +555,7 @@
   return true;
 }
 
-bool CXFA_FFField::OnChar(uint32_t dwChar, uint32_t dwFlags) {
+bool CXFA_FFField::OnChar(uint32_t dwChar, FWL_KeyFlagMask dwFlags) {
   if (!GetDoc()->GetXFADoc()->IsInteractive())
     return false;
   if (dwChar == pdfium::ascii::kTab)
diff --git a/xfa/fxfa/cxfa_fffield.h b/xfa/fxfa/cxfa_fffield.h
index 55ce4c6..63fdc47 100644
--- a/xfa/fxfa/cxfa_fffield.h
+++ b/xfa/fxfa/cxfa_fffield.h
@@ -35,26 +35,28 @@
   bool LoadWidget() override;
   bool PerformLayout() override;
   bool AcceptsFocusOnButtonDown(
-      uint32_t dwFlags,
+      FWL_KeyFlagMask dwFlags,
       const CFX_PointF& point,
       CFWL_MessageMouse::MouseCommand command) override;
   bool OnMouseEnter() override;
   bool OnMouseExit() override;
-  bool OnLButtonDown(uint32_t dwFlags, const CFX_PointF& point) override;
-  bool OnLButtonUp(uint32_t dwFlags, const CFX_PointF& point) override;
-  bool OnLButtonDblClk(uint32_t dwFlags, const CFX_PointF& point) override;
-  bool OnMouseMove(uint32_t dwFlags, const CFX_PointF& point) override;
-  bool OnMouseWheel(uint32_t dwFlags,
+  bool OnLButtonDown(FWL_KeyFlagMask dwFlags, const CFX_PointF& point) override;
+  bool OnLButtonUp(FWL_KeyFlagMask dwFlags, const CFX_PointF& point) override;
+  bool OnLButtonDblClk(FWL_KeyFlagMask dwFlags,
+                       const CFX_PointF& point) override;
+  bool OnMouseMove(FWL_KeyFlagMask dwFlags, const CFX_PointF& point) override;
+  bool OnMouseWheel(FWL_KeyFlagMask dwFlags,
                     const CFX_PointF& point,
                     const CFX_Vector& delta) override;
-  bool OnRButtonDown(uint32_t dwFlags, const CFX_PointF& point) override;
-  bool OnRButtonUp(uint32_t dwFlags, const CFX_PointF& point) override;
-  bool OnRButtonDblClk(uint32_t dwFlags, const CFX_PointF& point) override;
+  bool OnRButtonDown(FWL_KeyFlagMask dwFlags, const CFX_PointF& point) override;
+  bool OnRButtonUp(FWL_KeyFlagMask dwFlags, const CFX_PointF& point) override;
+  bool OnRButtonDblClk(FWL_KeyFlagMask dwFlags,
+                       const CFX_PointF& point) override;
   bool OnSetFocus(CXFA_FFWidget* pOldWidget) override WARN_UNUSED_RESULT;
   bool OnKillFocus(CXFA_FFWidget* pNewWidget) override WARN_UNUSED_RESULT;
-  bool OnKeyDown(XFA_FWL_VKEYCODE dwKeyCode, uint32_t dwFlags) override;
-  bool OnKeyUp(XFA_FWL_VKEYCODE dwKeyCode, uint32_t dwFlags) override;
-  bool OnChar(uint32_t dwChar, uint32_t dwFlags) override;
+  bool OnKeyDown(XFA_FWL_VKEYCODE dwKeyCode, FWL_KeyFlagMask dwFlags) override;
+  bool OnKeyUp(XFA_FWL_VKEYCODE dwKeyCode, FWL_KeyFlagMask dwFlags) override;
+  bool OnChar(uint32_t dwChar, FWL_KeyFlagMask dwFlags) override;
   FWL_WidgetHit HitTest(const CFX_PointF& point) override;
 
   // IFWL_WidgetDelegate:
diff --git a/xfa/fxfa/cxfa_ffimageedit.cpp b/xfa/fxfa/cxfa_ffimageedit.cpp
index 66d15b3..d794241 100644
--- a/xfa/fxfa/cxfa_ffimageedit.cpp
+++ b/xfa/fxfa/cxfa_ffimageedit.cpp
@@ -95,7 +95,7 @@
 }
 
 bool CXFA_FFImageEdit::AcceptsFocusOnButtonDown(
-    uint32_t dwFlags,
+    FWL_KeyFlagMask dwFlags,
     const CFX_PointF& point,
     CFWL_MessageMouse::MouseCommand command) {
   if (command != CFWL_MessageMouse::MouseCommand::kLeftButtonDown)
@@ -109,7 +109,7 @@
   return true;
 }
 
-bool CXFA_FFImageEdit::OnLButtonDown(uint32_t dwFlags,
+bool CXFA_FFImageEdit::OnLButtonDown(FWL_KeyFlagMask dwFlags,
                                      const CFX_PointF& point) {
   SetButtonDown(true);
   CFWL_MessageMouse msg(GetNormalWidget(),
diff --git a/xfa/fxfa/cxfa_ffimageedit.h b/xfa/fxfa/cxfa_ffimageedit.h
index 54d112b..a513e0f 100644
--- a/xfa/fxfa/cxfa_ffimageedit.h
+++ b/xfa/fxfa/cxfa_ffimageedit.h
@@ -23,10 +23,10 @@
                     HighlightOption highlight) override;
   bool LoadWidget() override;
   bool AcceptsFocusOnButtonDown(
-      uint32_t dwFlags,
+      FWL_KeyFlagMask dwFlags,
       const CFX_PointF& point,
       CFWL_MessageMouse::MouseCommand command) override;
-  bool OnLButtonDown(uint32_t dwFlags, const CFX_PointF& point) override;
+  bool OnLButtonDown(FWL_KeyFlagMask dwFlags, const CFX_PointF& point) override;
   void OnProcessMessage(CFWL_Message* pMessage) override;
   void OnProcessEvent(CFWL_Event* pEvent) override;
   void OnDrawWidget(CFGAS_GEGraphics* pGraphics,
diff --git a/xfa/fxfa/cxfa_ffsignature.cpp b/xfa/fxfa/cxfa_ffsignature.cpp
index 3e4930a..b38be4b 100644
--- a/xfa/fxfa/cxfa_ffsignature.cpp
+++ b/xfa/fxfa/cxfa_ffsignature.cpp
@@ -47,59 +47,64 @@
 }
 
 bool CXFA_FFSignature::AcceptsFocusOnButtonDown(
-    uint32_t dwFlags,
+    FWL_KeyFlagMask dwFlags,
     const CFX_PointF& point,
     CFWL_MessageMouse::MouseCommand command) {
   return false;
 }
 
-bool CXFA_FFSignature::OnLButtonDown(uint32_t dwFlags,
+bool CXFA_FFSignature::OnLButtonDown(FWL_KeyFlagMask dwFlags,
                                      const CFX_PointF& point) {
   return false;
 }
 
-bool CXFA_FFSignature::OnLButtonUp(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFSignature::OnLButtonUp(FWL_KeyFlagMask dwFlags,
+                                   const CFX_PointF& point) {
   return false;
 }
 
-bool CXFA_FFSignature::OnLButtonDblClk(uint32_t dwFlags,
+bool CXFA_FFSignature::OnLButtonDblClk(FWL_KeyFlagMask dwFlags,
                                        const CFX_PointF& point) {
   return false;
 }
 
-bool CXFA_FFSignature::OnMouseMove(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFSignature::OnMouseMove(FWL_KeyFlagMask dwFlags,
+                                   const CFX_PointF& point) {
   return false;
 }
 
-bool CXFA_FFSignature::OnMouseWheel(uint32_t dwFlags,
+bool CXFA_FFSignature::OnMouseWheel(FWL_KeyFlagMask dwFlags,
                                     const CFX_PointF& point,
                                     const CFX_Vector& delta) {
   return false;
 }
 
-bool CXFA_FFSignature::OnRButtonDown(uint32_t dwFlags,
+bool CXFA_FFSignature::OnRButtonDown(FWL_KeyFlagMask dwFlags,
                                      const CFX_PointF& point) {
   return false;
 }
 
-bool CXFA_FFSignature::OnRButtonUp(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFSignature::OnRButtonUp(FWL_KeyFlagMask dwFlags,
+                                   const CFX_PointF& point) {
   return false;
 }
 
-bool CXFA_FFSignature::OnRButtonDblClk(uint32_t dwFlags,
+bool CXFA_FFSignature::OnRButtonDblClk(FWL_KeyFlagMask dwFlags,
                                        const CFX_PointF& point) {
   return false;
 }
 
-bool CXFA_FFSignature::OnKeyDown(XFA_FWL_VKEYCODE dwKeyCode, uint32_t dwFlags) {
+bool CXFA_FFSignature::OnKeyDown(XFA_FWL_VKEYCODE dwKeyCode,
+                                 FWL_KeyFlagMask dwFlags) {
   return false;
 }
 
-bool CXFA_FFSignature::OnKeyUp(XFA_FWL_VKEYCODE dwKeyCode, uint32_t dwFlags) {
+bool CXFA_FFSignature::OnKeyUp(XFA_FWL_VKEYCODE dwKeyCode,
+                               FWL_KeyFlagMask dwFlags) {
   return false;
 }
 
-bool CXFA_FFSignature::OnChar(uint32_t nChar, uint32_t dwFlags) {
+bool CXFA_FFSignature::OnChar(uint32_t nChar, FWL_KeyFlagMask dwFlags) {
   return false;
 }
 
diff --git a/xfa/fxfa/cxfa_ffsignature.h b/xfa/fxfa/cxfa_ffsignature.h
index 2fa31fa..a2554e4 100644
--- a/xfa/fxfa/cxfa_ffsignature.h
+++ b/xfa/fxfa/cxfa_ffsignature.h
@@ -20,24 +20,26 @@
                     HighlightOption highlight) override;
   bool LoadWidget() override;
   bool AcceptsFocusOnButtonDown(
-      uint32_t dwFlags,
+      FWL_KeyFlagMask dwFlags,
       const CFX_PointF& point,
       CFWL_MessageMouse::MouseCommand command) override;
   bool OnMouseEnter() override;
   bool OnMouseExit() override;
-  bool OnLButtonDown(uint32_t dwFlags, const CFX_PointF& point) override;
-  bool OnLButtonUp(uint32_t dwFlags, const CFX_PointF& point) override;
-  bool OnLButtonDblClk(uint32_t dwFlags, const CFX_PointF& point) override;
-  bool OnMouseMove(uint32_t dwFlags, const CFX_PointF& point) override;
-  bool OnMouseWheel(uint32_t dwFlags,
+  bool OnLButtonDown(FWL_KeyFlagMask dwFlags, const CFX_PointF& point) override;
+  bool OnLButtonUp(FWL_KeyFlagMask dwFlags, const CFX_PointF& point) override;
+  bool OnLButtonDblClk(FWL_KeyFlagMask dwFlags,
+                       const CFX_PointF& point) override;
+  bool OnMouseMove(FWL_KeyFlagMask dwFlags, const CFX_PointF& point) override;
+  bool OnMouseWheel(FWL_KeyFlagMask dwFlags,
                     const CFX_PointF& point,
                     const CFX_Vector& delta) override;
-  bool OnRButtonDown(uint32_t dwFlags, const CFX_PointF& point) override;
-  bool OnRButtonUp(uint32_t dwFlags, const CFX_PointF& point) override;
-  bool OnRButtonDblClk(uint32_t dwFlags, const CFX_PointF& point) override;
-  bool OnKeyDown(XFA_FWL_VKEYCODE dwKeyCode, uint32_t dwFlags) override;
-  bool OnKeyUp(XFA_FWL_VKEYCODE dwKeyCode, uint32_t dwFlags) override;
-  bool OnChar(uint32_t dwChar, uint32_t dwFlags) override;
+  bool OnRButtonDown(FWL_KeyFlagMask dwFlags, const CFX_PointF& point) override;
+  bool OnRButtonUp(FWL_KeyFlagMask dwFlags, const CFX_PointF& point) override;
+  bool OnRButtonDblClk(FWL_KeyFlagMask dwFlags,
+                       const CFX_PointF& point) override;
+  bool OnKeyDown(XFA_FWL_VKEYCODE dwKeyCode, FWL_KeyFlagMask dwFlags) override;
+  bool OnKeyUp(XFA_FWL_VKEYCODE dwKeyCode, FWL_KeyFlagMask dwFlags) override;
+  bool OnChar(uint32_t dwChar, FWL_KeyFlagMask dwFlags) override;
   FWL_WidgetHit HitTest(const CFX_PointF& point) override;
   FormFieldType GetFormFieldType() override;
 
diff --git a/xfa/fxfa/cxfa_fftext.cpp b/xfa/fxfa/cxfa_fftext.cpp
index 2b4a856..1f51fa8 100644
--- a/xfa/fxfa/cxfa_fftext.cpp
+++ b/xfa/fxfa/cxfa_fftext.cpp
@@ -98,7 +98,7 @@
 }
 
 bool CXFA_FFText::AcceptsFocusOnButtonDown(
-    uint32_t dwFlags,
+    FWL_KeyFlagMask dwFlags,
     const CFX_PointF& point,
     CFWL_MessageMouse::MouseCommand command) {
   return command == CFWL_MessageMouse::MouseCommand::kLeftButtonDown &&
@@ -106,17 +106,20 @@
          !GetLinkURLAtPoint(point).IsEmpty();
 }
 
-bool CXFA_FFText::OnLButtonDown(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFText::OnLButtonDown(FWL_KeyFlagMask dwFlags,
+                                const CFX_PointF& point) {
   SetButtonDown(true);
   return true;
 }
 
-bool CXFA_FFText::OnMouseMove(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFText::OnMouseMove(FWL_KeyFlagMask dwFlags,
+                              const CFX_PointF& point) {
   return GetRectWithoutRotate().Contains(point) &&
          !GetLinkURLAtPoint(point).IsEmpty();
 }
 
-bool CXFA_FFText::OnLButtonUp(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFText::OnLButtonUp(FWL_KeyFlagMask dwFlags,
+                              const CFX_PointF& point) {
   if (!IsButtonDown())
     return false;
 
diff --git a/xfa/fxfa/cxfa_fftext.h b/xfa/fxfa/cxfa_fftext.h
index 373e3b8..ab895ad 100644
--- a/xfa/fxfa/cxfa_fftext.h
+++ b/xfa/fxfa/cxfa_fftext.h
@@ -16,12 +16,12 @@
 
   // CXFA_FFWidget
   bool AcceptsFocusOnButtonDown(
-      uint32_t dwFlags,
+      FWL_KeyFlagMask dwFlags,
       const CFX_PointF& point,
       CFWL_MessageMouse::MouseCommand command) override;
-  bool OnLButtonDown(uint32_t dwFlags, const CFX_PointF& point) override;
-  bool OnLButtonUp(uint32_t dwFlags, const CFX_PointF& point) override;
-  bool OnMouseMove(uint32_t dwFlags, const CFX_PointF& point) override;
+  bool OnLButtonDown(FWL_KeyFlagMask dwFlags, const CFX_PointF& point) override;
+  bool OnLButtonUp(FWL_KeyFlagMask dwFlags, const CFX_PointF& point) override;
+  bool OnMouseMove(FWL_KeyFlagMask dwFlags, const CFX_PointF& point) override;
   FWL_WidgetHit HitTest(const CFX_PointF& point) override;
   void RenderWidget(CFGAS_GEGraphics* pGS,
                     const CFX_Matrix& matrix,
diff --git a/xfa/fxfa/cxfa_fftextedit.cpp b/xfa/fxfa/cxfa_fftextedit.cpp
index 879e4b9..8ada90c 100644
--- a/xfa/fxfa/cxfa_fftextedit.cpp
+++ b/xfa/fxfa/cxfa_fftextedit.cpp
@@ -119,7 +119,7 @@
 }
 
 bool CXFA_FFTextEdit::AcceptsFocusOnButtonDown(
-    uint32_t dwFlags,
+    FWL_KeyFlagMask dwFlags,
     const CFX_PointF& point,
     CFWL_MessageMouse::MouseCommand command) {
   if (command == CFWL_MessageMouse::MouseCommand::kRightButtonDown &&
@@ -132,7 +132,8 @@
   return true;
 }
 
-bool CXFA_FFTextEdit::OnLButtonDown(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFTextEdit::OnLButtonDown(FWL_KeyFlagMask dwFlags,
+                                    const CFX_PointF& point) {
   if (!IsFocused()) {
     GetLayoutItem()->SetStatusBits(XFA_WidgetStatus_Focused);
     UpdateFWLData();
@@ -146,7 +147,8 @@
   return true;
 }
 
-bool CXFA_FFTextEdit::OnRButtonDown(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFTextEdit::OnRButtonDown(FWL_KeyFlagMask dwFlags,
+                                    const CFX_PointF& point) {
   if (!IsFocused()) {
     GetLayoutItem()->SetStatusBits(XFA_WidgetStatus_Focused);
     UpdateFWLData();
@@ -160,7 +162,8 @@
   return true;
 }
 
-bool CXFA_FFTextEdit::OnRButtonUp(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFTextEdit::OnRButtonUp(FWL_KeyFlagMask dwFlags,
+                                  const CFX_PointF& point) {
   if (!CXFA_FFField::OnRButtonUp(dwFlags, point))
     return false;
 
diff --git a/xfa/fxfa/cxfa_fftextedit.h b/xfa/fxfa/cxfa_fftextedit.h
index 69cdea9..d809ef7 100644
--- a/xfa/fxfa/cxfa_fftextedit.h
+++ b/xfa/fxfa/cxfa_fftextedit.h
@@ -30,12 +30,12 @@
   bool LoadWidget() override;
   void UpdateWidgetProperty() override;
   bool AcceptsFocusOnButtonDown(
-      uint32_t dwFlags,
+      FWL_KeyFlagMask dwFlags,
       const CFX_PointF& point,
       CFWL_MessageMouse::MouseCommand command) override;
-  bool OnLButtonDown(uint32_t dwFlags, const CFX_PointF& point) override;
-  bool OnRButtonDown(uint32_t dwFlags, const CFX_PointF& point) override;
-  bool OnRButtonUp(uint32_t dwFlags, const CFX_PointF& point) override;
+  bool OnLButtonDown(FWL_KeyFlagMask dwFlags, const CFX_PointF& point) override;
+  bool OnRButtonDown(FWL_KeyFlagMask dwFlags, const CFX_PointF& point) override;
+  bool OnRButtonUp(FWL_KeyFlagMask dwFlags, const CFX_PointF& point) override;
   bool OnSetFocus(CXFA_FFWidget* pOldWidget) override WARN_UNUSED_RESULT;
   bool OnKillFocus(CXFA_FFWidget* pNewWidget) override WARN_UNUSED_RESULT;
   void OnProcessMessage(CFWL_Message* pMessage) override;
diff --git a/xfa/fxfa/cxfa_ffwidget.cpp b/xfa/fxfa/cxfa_ffwidget.cpp
index 7687501..6e0c1cd 100644
--- a/xfa/fxfa/cxfa_ffwidget.cpp
+++ b/xfa/fxfa/cxfa_ffwidget.cpp
@@ -385,43 +385,50 @@
 }
 
 bool CXFA_FFWidget::AcceptsFocusOnButtonDown(
-    uint32_t dwFlags,
+    FWL_KeyFlagMask dwFlags,
     const CFX_PointF& point,
     CFWL_MessageMouse::MouseCommand command) {
   return false;
 }
 
-bool CXFA_FFWidget::OnLButtonDown(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFWidget::OnLButtonDown(FWL_KeyFlagMask dwFlags,
+                                  const CFX_PointF& point) {
   return false;
 }
 
-bool CXFA_FFWidget::OnLButtonUp(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFWidget::OnLButtonUp(FWL_KeyFlagMask dwFlags,
+                                const CFX_PointF& point) {
   return false;
 }
 
-bool CXFA_FFWidget::OnLButtonDblClk(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFWidget::OnLButtonDblClk(FWL_KeyFlagMask dwFlags,
+                                    const CFX_PointF& point) {
   return false;
 }
 
-bool CXFA_FFWidget::OnMouseMove(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFWidget::OnMouseMove(FWL_KeyFlagMask dwFlags,
+                                const CFX_PointF& point) {
   return false;
 }
 
-bool CXFA_FFWidget::OnMouseWheel(uint32_t dwFlags,
+bool CXFA_FFWidget::OnMouseWheel(FWL_KeyFlagMask dwFlags,
                                  const CFX_PointF& point,
                                  const CFX_Vector& delta) {
   return false;
 }
 
-bool CXFA_FFWidget::OnRButtonDown(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFWidget::OnRButtonDown(FWL_KeyFlagMask dwFlags,
+                                  const CFX_PointF& point) {
   return false;
 }
 
-bool CXFA_FFWidget::OnRButtonUp(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFWidget::OnRButtonUp(FWL_KeyFlagMask dwFlags,
+                                const CFX_PointF& point) {
   return false;
 }
 
-bool CXFA_FFWidget::OnRButtonDblClk(uint32_t dwFlags, const CFX_PointF& point) {
+bool CXFA_FFWidget::OnRButtonDblClk(FWL_KeyFlagMask dwFlags,
+                                    const CFX_PointF& point) {
   return false;
 }
 
@@ -454,15 +461,17 @@
   return true;
 }
 
-bool CXFA_FFWidget::OnKeyDown(XFA_FWL_VKEYCODE dwKeyCode, uint32_t dwFlags) {
+bool CXFA_FFWidget::OnKeyDown(XFA_FWL_VKEYCODE dwKeyCode,
+                              FWL_KeyFlagMask dwFlags) {
   return false;
 }
 
-bool CXFA_FFWidget::OnKeyUp(XFA_FWL_VKEYCODE dwKeyCode, uint32_t dwFlags) {
+bool CXFA_FFWidget::OnKeyUp(XFA_FWL_VKEYCODE dwKeyCode,
+                            FWL_KeyFlagMask dwFlags) {
   return false;
 }
 
-bool CXFA_FFWidget::OnChar(uint32_t dwChar, uint32_t dwFlags) {
+bool CXFA_FFWidget::OnChar(uint32_t dwChar, FWL_KeyFlagMask dwFlags) {
   return false;
 }
 
diff --git a/xfa/fxfa/cxfa_ffwidget.h b/xfa/fxfa/cxfa_ffwidget.h
index 66b8450..b63b03f 100644
--- a/xfa/fxfa/cxfa_ffwidget.h
+++ b/xfa/fxfa/cxfa_ffwidget.h
@@ -107,37 +107,38 @@
   virtual void UpdateWidgetProperty();
   // |command| must be LeftButtonDown or RightButtonDown.
   virtual bool AcceptsFocusOnButtonDown(
-      uint32_t dwFlags,
+      FWL_KeyFlagMask dwFlags,
       const CFX_PointF& point,
       CFWL_MessageMouse::MouseCommand command);
 
   // Caution: Returning false from an On* method may mean |this| is destroyed.
   virtual bool OnMouseEnter() WARN_UNUSED_RESULT;
   virtual bool OnMouseExit() WARN_UNUSED_RESULT;
-  virtual bool OnLButtonDown(uint32_t dwFlags,
+  virtual bool OnLButtonDown(FWL_KeyFlagMask dwFlags,
                              const CFX_PointF& point) WARN_UNUSED_RESULT;
-  virtual bool OnLButtonUp(uint32_t dwFlags,
+  virtual bool OnLButtonUp(FWL_KeyFlagMask dwFlags,
                            const CFX_PointF& point) WARN_UNUSED_RESULT;
-  virtual bool OnLButtonDblClk(uint32_t dwFlags,
+  virtual bool OnLButtonDblClk(FWL_KeyFlagMask dwFlags,
                                const CFX_PointF& point) WARN_UNUSED_RESULT;
-  virtual bool OnMouseMove(uint32_t dwFlags,
+  virtual bool OnMouseMove(FWL_KeyFlagMask dwFlags,
                            const CFX_PointF& point) WARN_UNUSED_RESULT;
-  virtual bool OnMouseWheel(uint32_t dwFlags,
+  virtual bool OnMouseWheel(FWL_KeyFlagMask dwFlags,
                             const CFX_PointF& point,
                             const CFX_Vector& delta) WARN_UNUSED_RESULT;
-  virtual bool OnRButtonDown(uint32_t dwFlags,
+  virtual bool OnRButtonDown(FWL_KeyFlagMask dwFlags,
                              const CFX_PointF& point) WARN_UNUSED_RESULT;
-  virtual bool OnRButtonUp(uint32_t dwFlags,
+  virtual bool OnRButtonUp(FWL_KeyFlagMask dwFlags,
                            const CFX_PointF& point) WARN_UNUSED_RESULT;
-  virtual bool OnRButtonDblClk(uint32_t dwFlags,
+  virtual bool OnRButtonDblClk(FWL_KeyFlagMask dwFlags,
                                const CFX_PointF& point) WARN_UNUSED_RESULT;
   virtual bool OnSetFocus(CXFA_FFWidget* pOldWidget) WARN_UNUSED_RESULT;
   virtual bool OnKillFocus(CXFA_FFWidget* pNewWidget) WARN_UNUSED_RESULT;
   virtual bool OnKeyDown(XFA_FWL_VKEYCODE dwKeyCode,
-                         uint32_t dwFlags) WARN_UNUSED_RESULT;
+                         FWL_KeyFlagMask dwFlags) WARN_UNUSED_RESULT;
   virtual bool OnKeyUp(XFA_FWL_VKEYCODE dwKeyCode,
-                       uint32_t dwFlags) WARN_UNUSED_RESULT;
-  virtual bool OnChar(uint32_t dwChar, uint32_t dwFlags) WARN_UNUSED_RESULT;
+                       FWL_KeyFlagMask dwFlags) WARN_UNUSED_RESULT;
+  virtual bool OnChar(uint32_t dwChar,
+                      FWL_KeyFlagMask dwFlags) WARN_UNUSED_RESULT;
 
   virtual FWL_WidgetHit HitTest(const CFX_PointF& point);
   virtual bool CanUndo();
diff --git a/xfa/fxfa/cxfa_ffwidgethandler.cpp b/xfa/fxfa/cxfa_ffwidgethandler.cpp
index 4144663..3ee7683 100644
--- a/xfa/fxfa/cxfa_ffwidgethandler.cpp
+++ b/xfa/fxfa/cxfa_ffwidgethandler.cpp
@@ -46,7 +46,7 @@
 }
 
 bool CXFA_FFWidgetHandler::OnLButtonDown(CXFA_FFWidget* hWidget,
-                                         uint32_t dwFlags,
+                                         FWL_KeyFlagMask dwFlags,
                                          const CFX_PointF& point) {
   m_pDocView->LockUpdate();
   bool bRet = hWidget->AcceptsFocusOnButtonDown(
@@ -65,7 +65,7 @@
 }
 
 bool CXFA_FFWidgetHandler::OnLButtonUp(CXFA_FFWidget* hWidget,
-                                       uint32_t dwFlags,
+                                       FWL_KeyFlagMask dwFlags,
                                        const CFX_PointF& point) {
   m_pDocView->LockUpdate();
   m_pDocView->m_bLayoutEvent = true;
@@ -76,26 +76,26 @@
 }
 
 bool CXFA_FFWidgetHandler::OnLButtonDblClk(CXFA_FFWidget* hWidget,
-                                           uint32_t dwFlags,
+                                           FWL_KeyFlagMask dwFlags,
                                            const CFX_PointF& point) {
   return hWidget->OnLButtonDblClk(dwFlags, hWidget->Rotate2Normal(point));
 }
 
 bool CXFA_FFWidgetHandler::OnMouseMove(CXFA_FFWidget* hWidget,
-                                       uint32_t dwFlags,
+                                       FWL_KeyFlagMask dwFlags,
                                        const CFX_PointF& point) {
   return hWidget->OnMouseMove(dwFlags, hWidget->Rotate2Normal(point));
 }
 
 bool CXFA_FFWidgetHandler::OnMouseWheel(CXFA_FFWidget* hWidget,
-                                        uint32_t dwFlags,
+                                        FWL_KeyFlagMask dwFlags,
                                         const CFX_PointF& point,
                                         const CFX_Vector& delta) {
   return hWidget->OnMouseWheel(dwFlags, hWidget->Rotate2Normal(point), delta);
 }
 
 bool CXFA_FFWidgetHandler::OnRButtonDown(CXFA_FFWidget* hWidget,
-                                         uint32_t dwFlags,
+                                         FWL_KeyFlagMask dwFlags,
                                          const CFX_PointF& point) {
   if (!hWidget->AcceptsFocusOnButtonDown(
           dwFlags, hWidget->Rotate2Normal(point),
@@ -110,20 +110,20 @@
 }
 
 bool CXFA_FFWidgetHandler::OnRButtonUp(CXFA_FFWidget* hWidget,
-                                       uint32_t dwFlags,
+                                       FWL_KeyFlagMask dwFlags,
                                        const CFX_PointF& point) {
   return hWidget->OnRButtonUp(dwFlags, hWidget->Rotate2Normal(point));
 }
 
 bool CXFA_FFWidgetHandler::OnRButtonDblClk(CXFA_FFWidget* hWidget,
-                                           uint32_t dwFlags,
+                                           FWL_KeyFlagMask dwFlags,
                                            const CFX_PointF& point) {
   return hWidget->OnRButtonDblClk(dwFlags, hWidget->Rotate2Normal(point));
 }
 
 bool CXFA_FFWidgetHandler::OnKeyDown(CXFA_FFWidget* hWidget,
                                      XFA_FWL_VKEYCODE dwKeyCode,
-                                     uint32_t dwFlags) {
+                                     FWL_KeyFlagMask dwFlags) {
   bool bRet = hWidget->OnKeyDown(dwKeyCode, dwFlags);
   m_pDocView->UpdateDocView();
   return bRet;
@@ -131,13 +131,13 @@
 
 bool CXFA_FFWidgetHandler::OnKeyUp(CXFA_FFWidget* hWidget,
                                    XFA_FWL_VKEYCODE dwKeyCode,
-                                   uint32_t dwFlags) {
+                                   FWL_KeyFlagMask dwFlags) {
   return hWidget->OnKeyUp(dwKeyCode, dwFlags);
 }
 
 bool CXFA_FFWidgetHandler::OnChar(CXFA_FFWidget* hWidget,
                                   uint32_t dwChar,
-                                  uint32_t dwFlags) {
+                                  FWL_KeyFlagMask dwFlags) {
   return hWidget->OnChar(dwChar, dwFlags);
 }
 
diff --git a/xfa/fxfa/cxfa_ffwidgethandler.h b/xfa/fxfa/cxfa_ffwidgethandler.h
index 96303a1..25cd10a 100644
--- a/xfa/fxfa/cxfa_ffwidgethandler.h
+++ b/xfa/fxfa/cxfa_ffwidgethandler.h
@@ -12,6 +12,7 @@
 #include "v8/include/cppgc/garbage-collected.h"
 #include "v8/include/cppgc/member.h"
 #include "v8/include/cppgc/visitor.h"
+#include "xfa/fwl/cfwl_message.h"
 #include "xfa/fwl/fwl_widgetdef.h"
 #include "xfa/fxfa/cxfa_eventparam.h"
 #include "xfa/fxfa/parser/cxfa_document.h"
@@ -32,29 +33,29 @@
   bool OnMouseEnter(CXFA_FFWidget* hWidget);
   bool OnMouseExit(CXFA_FFWidget* hWidget);
   bool OnLButtonDown(CXFA_FFWidget* hWidget,
-                     uint32_t dwFlags,
+                     FWL_KeyFlagMask dwFlags,
                      const CFX_PointF& point);
   bool OnLButtonUp(CXFA_FFWidget* hWidget,
-                   uint32_t dwFlags,
+                   FWL_KeyFlagMask dwFlags,
                    const CFX_PointF& point);
   bool OnLButtonDblClk(CXFA_FFWidget* hWidget,
-                       uint32_t dwFlags,
+                       FWL_KeyFlagMask dwFlags,
                        const CFX_PointF& point);
   bool OnMouseMove(CXFA_FFWidget* hWidget,
-                   uint32_t dwFlags,
+                   FWL_KeyFlagMask dwFlags,
                    const CFX_PointF& point);
   bool OnMouseWheel(CXFA_FFWidget* hWidget,
-                    uint32_t dwFlags,
+                    FWL_KeyFlagMask dwFlags,
                     const CFX_PointF& point,
                     const CFX_Vector& delta);
   bool OnRButtonDown(CXFA_FFWidget* hWidget,
-                     uint32_t dwFlags,
+                     FWL_KeyFlagMask dwFlags,
                      const CFX_PointF& point);
   bool OnRButtonUp(CXFA_FFWidget* hWidget,
-                   uint32_t dwFlags,
+                   FWL_KeyFlagMask dwFlags,
                    const CFX_PointF& point);
   bool OnRButtonDblClk(CXFA_FFWidget* hWidget,
-                       uint32_t dwFlags,
+                       FWL_KeyFlagMask dwFlags,
                        const CFX_PointF& point);
 
   WideString GetText(CXFA_FFWidget* widget);
@@ -69,11 +70,11 @@
 
   bool OnKeyDown(CXFA_FFWidget* hWidget,
                  XFA_FWL_VKEYCODE dwKeyCode,
-                 uint32_t dwFlags);
+                 FWL_KeyFlagMask dwFlags);
   bool OnKeyUp(CXFA_FFWidget* hWidget,
                XFA_FWL_VKEYCODE dwKeyCode,
-               uint32_t dwFlags);
-  bool OnChar(CXFA_FFWidget* hWidget, uint32_t dwChar, uint32_t dwFlags);
+               FWL_KeyFlagMask dwFlags);
+  bool OnChar(CXFA_FFWidget* hWidget, uint32_t dwChar, FWL_KeyFlagMask dwFlags);
   FWL_WidgetHit HitTest(CXFA_FFWidget* pWidget, const CFX_PointF& point);
   void RenderWidget(CXFA_FFWidget* hWidget,
                     CFGAS_GEGraphics* pGS,