Do some cleanup in CPWL_CBButton.

- Use early returns in DrawThisAppearance() to avoid some potentially
  wasted calculations.
- Don't declare a variable in an if-statement in OnLButtonDown().

Change-Id: I7b657cbb75889c60a8c662cfa8d888642b1e5d06
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/75170
Commit-Queue: Lei Zhang <thestig@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
diff --git a/fpdfsdk/pwl/cpwl_cbbutton.cpp b/fpdfsdk/pwl/cpwl_cbbutton.cpp
index e2848b2..bb4725f 100644
--- a/fpdfsdk/pwl/cpwl_cbbutton.cpp
+++ b/fpdfsdk/pwl/cpwl_cbbutton.cpp
@@ -12,14 +12,6 @@
 #include "core/fxge/cfx_pathdata.h"
 #include "core/fxge/cfx_renderdevice.h"
 
-namespace {
-
-constexpr float kComboBoxTriangleHalfLength = 3.0f;
-constexpr float kComboBoxTriangleQuarterLength =
-    kComboBoxTriangleHalfLength * 0.5;
-
-}  // namespace
-
 CPWL_CBButton::CPWL_CBButton(
     const CreateParams& cp,
     std::unique_ptr<IPWL_SystemHandler::PerWindowData> pAttachedData)
@@ -31,39 +23,45 @@
                                        const CFX_Matrix& mtUser2Device) {
   CPWL_Wnd::DrawThisAppearance(pDevice, mtUser2Device);
 
-  CFX_FloatRect rectWnd = CPWL_Wnd::GetWindowRect();
-  if (!IsVisible() || rectWnd.IsEmpty())
+  if (!IsVisible())
     return;
 
-  CFX_PointF ptCenter = GetCenterPoint();
+  CFX_FloatRect window = CPWL_Wnd::GetWindowRect();
+  if (window.IsEmpty())
+    return;
 
+  constexpr float kComboBoxTriangleLength = 6.0f;
+  constexpr float kComboBoxTriangleHalfLength = kComboBoxTriangleLength / 2;
+  constexpr float kComboBoxTriangleQuarterLength = kComboBoxTriangleLength / 4;
+  if (!IsFloatBigger(window.right - window.left, kComboBoxTriangleLength) ||
+      !IsFloatBigger(window.top - window.bottom, kComboBoxTriangleHalfLength)) {
+    return;
+  }
+
+  CFX_PointF ptCenter = GetCenterPoint();
   CFX_PointF pt1(ptCenter.x - kComboBoxTriangleHalfLength,
                  ptCenter.y + kComboBoxTriangleQuarterLength);
   CFX_PointF pt2(ptCenter.x + kComboBoxTriangleHalfLength,
                  ptCenter.y + kComboBoxTriangleQuarterLength);
   CFX_PointF pt3(ptCenter.x, ptCenter.y - kComboBoxTriangleQuarterLength);
 
-  if (IsFloatBigger(rectWnd.right - rectWnd.left,
-                    kComboBoxTriangleHalfLength * 2) &&
-      IsFloatBigger(rectWnd.top - rectWnd.bottom,
-                    kComboBoxTriangleHalfLength)) {
-    CFX_PathData path;
-    path.AppendPoint(pt1, FXPT_TYPE::MoveTo);
-    path.AppendPoint(pt2, FXPT_TYPE::LineTo);
-    path.AppendPoint(pt3, FXPT_TYPE::LineTo);
-    path.AppendPoint(pt1, FXPT_TYPE::LineTo);
+  CFX_PathData path;
+  path.AppendPoint(pt1, FXPT_TYPE::MoveTo);
+  path.AppendPoint(pt2, FXPT_TYPE::LineTo);
+  path.AppendPoint(pt3, FXPT_TYPE::LineTo);
+  path.AppendPoint(pt1, FXPT_TYPE::LineTo);
 
-    pDevice->DrawPath(&path, &mtUser2Device, nullptr,
-                      PWL_DEFAULT_BLACKCOLOR.ToFXColor(GetTransparency()), 0,
-                      CFX_FillRenderOptions::EvenOddOptions());
-  }
+  pDevice->DrawPath(&path, &mtUser2Device, nullptr,
+                    PWL_DEFAULT_BLACKCOLOR.ToFXColor(GetTransparency()), 0,
+                    CFX_FillRenderOptions::EvenOddOptions());
 }
 
 bool CPWL_CBButton::OnLButtonDown(uint32_t nFlag, const CFX_PointF& point) {
   CPWL_Wnd::OnLButtonDown(nFlag, point);
 
   SetCapture();
-  if (CPWL_Wnd* pParent = GetParentWindow())
+  CPWL_Wnd* pParent = GetParentWindow();
+  if (pParent)
     pParent->NotifyLButtonDown(this, point);
 
   return true;