Roll Skia from 96669c16535d to 09b14219f98e (15 revisions) (#194895)

https://skia.googlesource.com/skia.git/+log/96669c16535d..09b14219f98e

2026-10-20 jmbetancourt@google.com [skcapture] Transition Recorder and
CaptureManager to SkCaptureAsset
2026-10-20 nathanasanchez@google.com Add circles_xform GM
2026-10-20 fmalita@google.com Include SkData.h in SkPngEncoder.h
2026-10-20 wselna123@gmail.com [skparagraph] Keep unresolved glyph
diagnostics on ParagraphCache hits
2026-10-20 dbebawy@gmail.com [skparagraph] Reserve room for the hyphen
at soft hyphen line breaks
2026-10-20 robertphillips@google.com Reland "Templatize SkExecutor"
2026-10-20 thomsmit@google.com [graphite] Add GPU_TEST_UTILS debug
capture hook to StripGenerator
2026-10-20 thomsmit@google.com [viewer] Improve touch gesture zoom/pan
transitions and ImGui invalidation
2026-10-20 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll
Dawn from 4185d90b28e2 to f7b0358d0220 (6 revisions)
2026-10-20 skia-autoroll@skia-public.iam.gserviceaccount.com Roll
vulkan-deps from 3bf4faecf9a5 to 639fc6c207b1 (1 revision)
2026-10-20 yuje@google.com Respect the length parameter in
SkParse::FindNamedColor. - Construct a `std::string_view` from `(name,
len)` in `SkParse::FindNamedColor` so binary search and equality
comparison evaluate only the specified substring length rather than
reading up to the null terminator with `strcmp`. - Update
`ParseNamedColor` unit tests to pass un-truncated color name buffers
with partial lengths to verify that `len` is respected for both valid
and invalid prefix substrings.
2026-10-20 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia
Infra from 3453607cf0ba to 67f915c5c49d (10 revisions)
2026-10-20 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE
from b82a564646a2 to f71b297c59c8 (12 revisions)
2026-10-20 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn
from b8efbbd7c5b9 to 4185d90b28e2 (9 revisions)
2026-10-20 skia-autoroll@skia-public.iam.gserviceaccount.com Roll
debugger-app-base from 21501cfbf475 to 485a766127d9

If this roll has caused a breakage, revert this CL and set the roller
to dry run mode using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC bensonluk@google.com,bwils@google.com,kjlubick@google.com on
the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
diff --git a/DEPS b/DEPS
index 31600b8..7a4be54 100644
--- a/DEPS
+++ b/DEPS
@@ -15,7 +15,7 @@
   'skia_git': 'https://skia.googlesource.com',
   'llvm_git': 'https://llvm.googlesource.com',
   'dart_ai_rev': '9c96bfe5f091c9451eff5b59c9bffeb2e806b875',
-  'skia_revision': '96669c16535d7c411784e74aa8d96a292fb28848',
+  'skia_revision': '09b14219f98e0a73f6a33497e1aa8cd5924a7611',
 
   # Do not download the Emscripten SDK by default.
   # This prevents us from downloading the Emscripten toolchain for builds