Correctly implement GetPartState() function
The original function doesn't seem right. Re-implement it.
Review-Url: https://codereview.chromium.org/2001203002
diff --git a/xfa/fwl/core/fwl_formimp.h b/xfa/fwl/core/fwl_formimp.h
index 9d2d394..e1da960 100644
--- a/xfa/fwl/core/fwl_formimp.h
+++ b/xfa/fwl/core/fwl_formimp.h
@@ -47,8 +47,14 @@
bDisabled ? m_dwState |= FWL_SYSBUTTONSTATE_Disabled
: m_dwState &= ~FWL_SYSBUTTONSTATE_Disabled;
}
- int32_t GetPartState() {
- return (IsDisabled() ? CFWL_PartState_Disabled : (m_dwState + 1));
+ uint32_t GetPartState() {
+ if (IsDisabled())
+ return CFWL_PartState_Disabled;
+ if (m_dwState & FWL_SYSBUTTONSTATE_Pressed)
+ return CFWL_PartState_Pressed;
+ if (m_dwState & FWL_SYSBUTTONSTATE_Hover)
+ return CFWL_PartState_Hovered;
+ return CFWL_PartState_Normal;
}
CFX_RectF m_rtBtn;