Remove several CFX_DIBBase stub methods.

Remove some useless methods from CFX_DIBBase and their callers.

Change-Id: I3c77d9859345096eaee0da75fcf85e1f9cf2e091
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/101870
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
diff --git a/core/fxge/agg/fx_agg_driver.cpp b/core/fxge/agg/fx_agg_driver.cpp
index dd44a4d..4668659 100644
--- a/core/fxge/agg/fx_agg_driver.cpp
+++ b/core/fxge/agg/fx_agg_driver.cpp
@@ -337,15 +337,8 @@
   void render(const Scanline& sl);
 
  private:
-  using CompositeSpanFunc = void (CFX_Renderer::*)(uint8_t*,
-                                                   int,
-                                                   int,
-                                                   int,
-                                                   uint8_t*,
-                                                   int,
-                                                   int,
-                                                   uint8_t*,
-                                                   uint8_t*);
+  using CompositeSpanFunc = void (
+      CFX_Renderer::*)(uint8_t*, int, int, int, uint8_t*, int, int, uint8_t*);
 
   void CompositeSpan(uint8_t* dest_scan,
                      uint8_t* backdrop_scan,
@@ -365,8 +358,7 @@
                          uint8_t* cover_scan,
                          int clip_left,
                          int clip_right,
-                         uint8_t* clip_scan,
-                         uint8_t* dest_extra_alpha_scan);
+                         uint8_t* clip_scan);
 
   void CompositeSpanGray(uint8_t* dest_scan,
                          int Bpp,
@@ -375,8 +367,7 @@
                          uint8_t* cover_scan,
                          int clip_left,
                          int clip_right,
-                         uint8_t* clip_scan,
-                         uint8_t* dest_extra_alpha_scan);
+                         uint8_t* clip_scan);
 
   void CompositeSpanARGB(uint8_t* dest_scan,
                          int Bpp,
@@ -385,8 +376,7 @@
                          uint8_t* cover_scan,
                          int clip_left,
                          int clip_right,
-                         uint8_t* clip_scan,
-                         uint8_t* dest_extra_alpha_scan);
+                         uint8_t* clip_scan);
 
   void CompositeSpanRGB(uint8_t* dest_scan,
                         int Bpp,
@@ -395,8 +385,7 @@
                         uint8_t* cover_scan,
                         int clip_left,
                         int clip_right,
-                        uint8_t* clip_scan,
-                        uint8_t* dest_extra_alpha_scan);
+                        uint8_t* clip_scan);
 
   void CompositeSpan1bppHelper(uint8_t* dest_scan,
                                int col_start,
@@ -603,8 +592,7 @@
                                      uint8_t* cover_scan,
                                      int clip_left,
                                      int clip_right,
-                                     uint8_t* clip_scan,
-                                     uint8_t* dest_extra_alpha_scan) {
+                                     uint8_t* clip_scan) {
   DCHECK(!m_bRgbByteOrder);
   int col_start = GetColStart(span_left, clip_left);
   int col_end = GetColEnd(span_left, span_len, clip_right);
@@ -620,35 +608,11 @@
                                      uint8_t* cover_scan,
                                      int clip_left,
                                      int clip_right,
-                                     uint8_t* clip_scan,
-                                     uint8_t* dest_extra_alpha_scan) {
+                                     uint8_t* clip_scan) {
   DCHECK(!m_bRgbByteOrder);
   int col_start = GetColStart(span_left, clip_left);
   int col_end = GetColEnd(span_left, span_len, clip_right);
   dest_scan += col_start;
-  if (dest_extra_alpha_scan) {
-    for (int col = col_start; col < col_end; col++) {
-      int src_alpha = m_bFullCover ? GetSrcAlpha(clip_scan, col)
-                                   : GetSourceAlpha(cover_scan, clip_scan, col);
-      if (src_alpha) {
-        if (src_alpha == 255) {
-          *dest_scan = m_Gray;
-          *dest_extra_alpha_scan = m_Alpha;
-        } else {
-          uint8_t dest_alpha = (*dest_extra_alpha_scan) + src_alpha -
-                               (*dest_extra_alpha_scan) * src_alpha / 255;
-          *dest_extra_alpha_scan++ = dest_alpha;
-          int alpha_ratio = src_alpha * 255 / dest_alpha;
-          *dest_scan = FXDIB_ALPHA_MERGE(*dest_scan, m_Gray, alpha_ratio);
-          dest_scan++;
-          continue;
-        }
-      }
-      dest_extra_alpha_scan++;
-      dest_scan++;
-    }
-    return;
-  }
   for (int col = col_start; col < col_end; col++) {
     int src_alpha = GetSourceAlpha(cover_scan, clip_scan, col);
     if (src_alpha) {
@@ -668,8 +632,7 @@
                                      uint8_t* cover_scan,
                                      int clip_left,
                                      int clip_right,
-                                     uint8_t* clip_scan,
-                                     uint8_t* dest_extra_alpha_scan) {
+                                     uint8_t* clip_scan) {
   int col_start = GetColStart(span_left, clip_left);
   int col_end = GetColEnd(span_left, span_len, clip_right);
   dest_scan += col_start * Bpp;
@@ -737,8 +700,7 @@
                                     uint8_t* cover_scan,
                                     int clip_left,
                                     int clip_right,
-                                    uint8_t* clip_scan,
-                                    uint8_t* dest_extra_alpha_scan) {
+                                    uint8_t* clip_scan) {
   int col_start = GetColStart(span_left, clip_left);
   int col_end = GetColEnd(span_left, span_len, clip_right);
   dest_scan += col_start * Bpp;
@@ -769,35 +731,6 @@
     }
     return;
   }
-  if (Bpp == 3 && dest_extra_alpha_scan) {
-    for (int col = col_start; col < col_end; col++) {
-      int src_alpha = m_bFullCover ? GetSrcAlpha(clip_scan, col)
-                                   : GetSourceAlpha(cover_scan, clip_scan, col);
-      if (src_alpha) {
-        if (src_alpha == 255) {
-          *dest_scan++ = static_cast<uint8_t>(m_Blue);
-          *dest_scan++ = static_cast<uint8_t>(m_Green);
-          *dest_scan++ = static_cast<uint8_t>(m_Red);
-          *dest_extra_alpha_scan++ = static_cast<uint8_t>(m_Alpha);
-          continue;
-        }
-        uint8_t dest_alpha = (*dest_extra_alpha_scan) + src_alpha -
-                             (*dest_extra_alpha_scan) * src_alpha / 255;
-        *dest_extra_alpha_scan++ = dest_alpha;
-        int alpha_ratio = src_alpha * 255 / dest_alpha;
-        *dest_scan = FXDIB_ALPHA_MERGE(*dest_scan, m_Blue, alpha_ratio);
-        dest_scan++;
-        *dest_scan = FXDIB_ALPHA_MERGE(*dest_scan, m_Green, alpha_ratio);
-        dest_scan++;
-        *dest_scan = FXDIB_ALPHA_MERGE(*dest_scan, m_Red, alpha_ratio);
-        dest_scan++;
-        continue;
-      }
-      dest_extra_alpha_scan++;
-      dest_scan += Bpp;
-    }
-    return;
-  }
   for (int col = col_start; col < col_end; col++) {
     int src_alpha = m_bFullCover ? GetSrcAlpha(clip_scan, col)
                                  : GetSourceAlpha(cover_scan, clip_scan, col);
@@ -861,12 +794,6 @@
 
   uint8_t* dest_scan =
       m_pDevice->GetBuffer().subspan(m_pDevice->GetPitch() * y).data();
-  uint8_t* dest_scan_extra_alpha = nullptr;
-  RetainPtr<CFX_DIBitmap> pAlphaMask = m_pDevice->GetAlphaMask();
-  if (pAlphaMask) {
-    dest_scan_extra_alpha =
-        pAlphaMask->GetBuffer().subspan(pAlphaMask->GetPitch() * y).data();
-  }
   uint8_t* backdrop_scan = nullptr;
   if (m_pBackdropDevice) {
     backdrop_scan = m_pBackdropDevice->GetBuffer()
@@ -883,13 +810,10 @@
 
     int x = span->x;
     uint8_t* dest_pos = nullptr;
-    uint8_t* dest_extra_alpha_pos = nullptr;
     uint8_t* backdrop_pos = nullptr;
     if (Bpp) {
       backdrop_pos = backdrop_scan ? backdrop_scan + x * Bpp : nullptr;
       dest_pos = dest_scan + x * Bpp;
-      dest_extra_alpha_pos =
-          dest_scan_extra_alpha ? dest_scan_extra_alpha + x : nullptr;
     } else {
       dest_pos = dest_scan + x / 8;
       backdrop_pos = backdrop_scan ? backdrop_scan + x / 8 : nullptr;
@@ -906,8 +830,7 @@
                     span->covers, m_ClipBox.left, m_ClipBox.right, clip_pos);
     } else {
       (this->*m_CompositeSpanFunc)(dest_pos, Bpp, x, span->len, span->covers,
-                                   m_ClipBox.left, m_ClipBox.right, clip_pos,
-                                   dest_extra_alpha_pos);
+                                   m_ClipBox.left, m_ClipBox.right, clip_pos);
     }
     if (--num_spans == 0)
       break;
diff --git a/core/fxge/cfx_renderdevice.cpp b/core/fxge/cfx_renderdevice.cpp
index d144ee0..10129b3 100644
--- a/core/fxge/cfx_renderdevice.cpp
+++ b/core/fxge/cfx_renderdevice.cpp
@@ -1169,8 +1169,6 @@
       return false;
   } else {
     bitmap->Clear(0);
-    if (bitmap->HasAlphaMask())
-      bitmap->GetAlphaMask()->Clear(0);
   }
   int dest_width = pixel_width;
   int a = 0;
diff --git a/core/fxge/dib/cfx_bitmapstorer.cpp b/core/fxge/dib/cfx_bitmapstorer.cpp
index ec600e9..84629a7 100644
--- a/core/fxge/dib/cfx_bitmapstorer.cpp
+++ b/core/fxge/dib/cfx_bitmapstorer.cpp
@@ -32,11 +32,6 @@
   pdfium::span<uint8_t> dest_buf = m_pBitmap->GetWritableScanline(line);
   if (!dest_buf.empty())
     fxcrt::spancpy(dest_buf, scanline);
-
-  pdfium::span<uint8_t> dest_alpha_buf =
-      m_pBitmap->GetWritableAlphaMaskScanline(line);
-  if (!dest_alpha_buf.empty())
-    fxcrt::spancpy(dest_alpha_buf, scan_extra_alpha);
 }
 
 bool CFX_BitmapStorer::SetInfo(int width,
diff --git a/core/fxge/dib/cfx_dibbase.cpp b/core/fxge/dib/cfx_dibbase.cpp
index 92e3674..36b31b6 100644
--- a/core/fxge/dib/cfx_dibbase.cpp
+++ b/core/fxge/dib/cfx_dibbase.cpp
@@ -844,22 +844,10 @@
     m_palette[i] = src_palette[i];
 }
 
-uint32_t CFX_DIBBase::GetAlphaMaskPitch() const {
-  return 0;
-}
-
 pdfium::span<const uint8_t> CFX_DIBBase::GetAlphaMaskScanline(int line) const {
   return pdfium::span<const uint8_t>();
 }
 
-pdfium::span<uint8_t> CFX_DIBBase::GetWritableAlphaMaskScanline(int line) {
-  return pdfium::span<uint8_t>();
-}
-
-pdfium::span<uint8_t> CFX_DIBBase::GetAlphaMaskBuffer() {
-  return pdfium::span<uint8_t>();
-}
-
 RetainPtr<CFX_DIBitmap> CFX_DIBBase::GetAlphaMask() {
   return nullptr;
 }
diff --git a/core/fxge/dib/cfx_dibbase.h b/core/fxge/dib/cfx_dibbase.h
index d0b067e..11c2d42 100644
--- a/core/fxge/dib/cfx_dibbase.h
+++ b/core/fxge/dib/cfx_dibbase.h
@@ -77,10 +77,7 @@
 
   // TODO(thestig): Remove these dummy methods.
   bool HasAlphaMask() const { return false; }
-  uint32_t GetAlphaMaskPitch() const;
   pdfium::span<const uint8_t> GetAlphaMaskScanline(int line) const;
-  pdfium::span<uint8_t> GetWritableAlphaMaskScanline(int line);
-  pdfium::span<uint8_t> GetAlphaMaskBuffer();
   RetainPtr<CFX_DIBitmap> GetAlphaMask();
 
   RetainPtr<CFX_DIBitmap> CloneAlphaMask() const;
diff --git a/core/fxge/dib/cfx_dibitmap.cpp b/core/fxge/dib/cfx_dibitmap.cpp
index 4b70361..6e67244 100644
--- a/core/fxge/dib/cfx_dibitmap.cpp
+++ b/core/fxge/dib/cfx_dibitmap.cpp
@@ -299,7 +299,7 @@
     if (!pSrcClone)
       return false;
   }
-  int srcOffset = pSrcBitmap->GetFormat() == FXDIB_Format::kArgb ? 3 : 0;
+  const int srcOffset = pSrcBitmap->GetFormat() == FXDIB_Format::kArgb ? 3 : 0;
   int destOffset = 0;
   if (destChannel == Channel::kAlpha) {
     if (IsMaskFormat()) {
@@ -327,21 +327,7 @@
     }
     destOffset = 2;
   }
-  if (pSrcClone->HasAlphaMask()) {
-    RetainPtr<CFX_DIBBase> pAlphaMask = pSrcClone->GetAlphaMask();
-    if (pSrcClone->GetWidth() != m_Width ||
-        pSrcClone->GetHeight() != m_Height) {
-      if (pAlphaMask) {
-        pAlphaMask = pAlphaMask->StretchTo(m_Width, m_Height,
-                                           FXDIB_ResampleOptions(), nullptr);
-        if (!pAlphaMask)
-          return false;
-      }
-    }
-    pSrcClone = std::move(pAlphaMask);
-    srcOffset = 0;
-  } else if (pSrcClone->GetWidth() != m_Width ||
-             pSrcClone->GetHeight() != m_Height) {
+  if (pSrcClone->GetWidth() != m_Width || pSrcClone->GetHeight() != m_Height) {
     RetainPtr<CFX_DIBitmap> pSrcMatched = pSrcClone->StretchTo(
         m_Width, m_Height, FXDIB_ResampleOptions(), nullptr);
     if (!pSrcMatched)
diff --git a/core/fxge/dib/cfx_imagetransformer.cpp b/core/fxge/dib/cfx_imagetransformer.cpp
index 835abe9..af4c35d 100644
--- a/core/fxge/dib/cfx_imagetransformer.cpp
+++ b/core/fxge/dib/cfx_imagetransformer.cpp
@@ -246,28 +246,12 @@
   if (!pTransformed->Create(m_result.Width(), m_result.Height(), format))
     return;
 
-  pdfium::span<const uint8_t> pSrcMaskBuf =
-      m_Storer.GetBitmap()->GetAlphaMaskBuffer();
   pTransformed->Clear(0);
-  RetainPtr<CFX_DIBitmap> pDestMask = pTransformed->GetAlphaMask();
-  if (pDestMask)
-    pDestMask->Clear(0);
 
   CFX_Matrix result2stretch(1.0f, 0.0f, 0.0f, 1.0f, m_result.left,
                             m_result.top);
   result2stretch.Concat(m_dest2stretch);
   result2stretch.Translate(-m_StretchClip.left, -m_StretchClip.top);
-  if (pSrcMaskBuf.empty() && pDestMask) {
-    pDestMask->Clear(0xff000000);
-  } else if (pDestMask) {
-    CalcData calc_data = {
-        pDestMask.Get(),
-        result2stretch,
-        pSrcMaskBuf.data(),
-        m_Storer.GetBitmap()->GetAlphaMaskPitch(),
-    };
-    CalcMask(calc_data);
-  }
 
   CalcData calc_data = {pTransformed.Get(), result2stretch,
                         m_Storer.GetBitmap()->GetBuffer().data(),
@@ -288,13 +272,6 @@
   return m_Storer.Detach();
 }
 
-void CFX_ImageTransformer::CalcMask(const CalcData& calc_data) {
-  auto func = [&calc_data](const BilinearData& data, uint8_t* dest) {
-    *dest = BilinearInterpolate(calc_data.buf, data, 1, 0);
-  };
-  DoBilinearLoop(calc_data, m_result, m_StretchClip, 1, func);
-}
-
 void CFX_ImageTransformer::CalcAlpha(const CalcData& calc_data) {
   auto func = [&calc_data](const BilinearData& data, uint8_t* dest) {
     *dest = BilinearInterpolate(calc_data.buf, data, 1, 0);
diff --git a/core/fxge/dib/cfx_imagetransformer.h b/core/fxge/dib/cfx_imagetransformer.h
index 044f035..abd60c4 100644
--- a/core/fxge/dib/cfx_imagetransformer.h
+++ b/core/fxge/dib/cfx_imagetransformer.h
@@ -60,7 +60,6 @@
   void ContinueRotate(PauseIndicatorIface* pPause);
   void ContinueOther(PauseIndicatorIface* pPause);
 
-  void CalcMask(const CalcData& calc_data);
   void CalcAlpha(const CalcData& calc_data);
   void CalcMono(const CalcData& calc_data);
   void CalcColor(const CalcData& calc_data, FXDIB_Format format, int Bpp);