1. 03 Mar, 2020 15 commits
    • chromium-autoroll's avatar
      Roll src/third_party/freetype/src 11975fe9f6ed..6a431038c911 (1 commits) · f0c16348
      chromium-autoroll authored
      https://chromium.googlesource.com/chromium/src/third_party/freetype2.git/+log/11975fe9f6ed..6a431038c911
      
      git log 11975fe9f6ed..6a431038c911 --date=short --first-parent --format='%ad %ae %s'
      2020-03-02 moazinkhatri@gmail.com [gzip] Support `gzip' encoded header conditionally.
      
      Created with:
        gclient setdep -r src/third_party/freetype/src@6a431038c911
      
      If this roll has caused a breakage, revert this CL and stop the roller
      using the controls here:
      https://autoroll.skia.org/r/freetype-chromium
      Please CC bungeman@google.com,drott@google.com,thestig@google.com on the revert to ensure that a human
      is aware of the problem.
      
      To report a problem with the AutoRoller itself, please file a bug:
      https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
      
      Documentation for the AutoRoller is here:
      https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
      
      Cq-Include-Trybots: luci.chromium.try:linux_chromium_msan_rel_ng;luci.chromium.try:linux-blink-rel;luci.chromium.try:mac10.12-blink-rel;luci.chromium.try:mac10.13_retina-blink-rel;luci.chromium.try:win10-blink-rel;luci.chromium.try:win7-blink-rel
      Bug: None
      Tbr: bungeman@google.com,drott@google.com,thestig@google.com
      Change-Id: I6a8ed93422566b44098eb445be33a2bc3437f741
      Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2083218Reviewed-by: default avatarchromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
      Reviewed-by: default avatarBen Wagner <bungeman@chromium.org>
      Commit-Queue: Ben Wagner <bungeman@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#746177}
      f0c16348
    • Michael Sun's avatar
      CRAS: make cras_audio_handler an observer of MediaController · aa9124bf
      Michael Sun authored
      Register cras_audio_handler to be an observer of MediaController in
      order to receive update of media session playback status. Parse such
      playback status into string and call corresponding AudioClient function
      to propagate the information further to DBUS.
      
      BUG=b:147367681
      TEST=chromeos_unittests
      
      Change-Id: I122fa0d3aa5f59a5828c0075617271fcf61ede94
      Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2076061Reviewed-by: default avatarBecca Hughes <beccahughes@chromium.org>
      Reviewed-by: default avatarJenny Zhang <jennyz@chromium.org>
      Commit-Queue: Michael Sun <michaelfsun@google.com>
      Cr-Commit-Position: refs/heads/master@{#746176}
      aa9124bf
    • Kevin McNee's avatar
      Portals: Remove early return for predecessor not having a committed entry · ff995c3f
      Kevin McNee authored
      We change this early return to a DCHECK as we are guaranteed to have a
      committed navigation entry, since about:blank cannot host a portal.
      
      Bug: 914108
      Change-Id: I41f998711b6d7d2ec1163dc9ccbdb5f0edc63969
      Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2082906
      Commit-Queue: Kevin McNee <mcnee@chromium.org>
      Commit-Queue: Lucas Gadani <lfg@chromium.org>
      Auto-Submit: Kevin McNee <mcnee@chromium.org>
      Reviewed-by: default avatarLucas Gadani <lfg@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#746175}
      ff995c3f
    • Raul Tambre's avatar
      mojo: Fix map() Python 3 compatibility · 81ba7a1a
      Raul Tambre authored
      map() returns a list in Python 2. Python 3 returns an iterator.
      Wrapping in a list() results in the same behaviour on both.
      
      Traceback (most recent call last):
        File "../../mojo/public/tools/bindings/mojom_bindings_generator.py", line 569, in <module>
          sys.exit(main())
        File "../../mojo/public/tools/bindings/mojom_bindings_generator.py", line 564, in main
          return args.func(args, remaining_args)
        File "../../mojo/public/tools/bindings/mojom_bindings_generator.py", line 280, in _Generate
          processor._GenerateModule(
        File "../../mojo/public/tools/bindings/mojom_bindings_generator.py", line 225, in _GenerateModule
          AddComputedData(module)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\generator.py", line 191, in AddComputedData
          _AddInterfaceComputedData(interface)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\generator.py", line 152, in _AddInterfaceComputedData
          method.param_struct = _GetStructFromMethod(method)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\generator.py", line 172, in _GetStructFromMethod
          _AddStructComputedData(False, struct)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\generator.py", line 126, in _AddStructComputedData
          struct.packed = pack.PackedStruct(struct)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\pack.py", line 141, in __init__
          src_fields.append(PackedField(field, index, ordinal))
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\pack.py", line 86, in __init__
          self.size = self.GetSizeForKind(field.kind)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\pack.py", line 63, in GetSizeForKind
          raise Exception("Undefined type: %s. Did you forget to import the file "
      Exception: Undefined type: x:IndexId. Did you forget to import the file containing the definition?
      
      Traceback (most recent call last):
        File "../../mojo/public/tools/bindings/mojom_bindings_generator.py", line 565, in <module>
          sys.exit(main())
        File "../../mojo/public/tools/bindings/mojom_bindings_generator.py", line 560, in main
          return args.func(args, remaining_args)
        File "../../mojo/public/tools/bindings/mojom_bindings_generator.py", line 276, in _Generate
          processor._GenerateModule(
        File "../../mojo/public/tools/bindings/mojom_bindings_generator.py", line 245, in _GenerateModule
          generator.GenerateFiles(filtered_args)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\generators\mojom_cpp_generator.py", line 491, in GenerateFiles
          self.WriteWithComment(self._GenerateModuleSource(),
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\template_expander.py", line 37, in GeneratorInternal
          return ApplyTemplate(args[0], path_to_template, parameters, **kwargs)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\template_expander.py", line 31, in ApplyTemplate
          return template.render(params)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\..\..\..\..\..\..\..\third_party\jinja2\asyncsupport.py", line 76, in render
          return original_render(self, *args, **kwargs)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\..\..\..\..\..\..\..\third_party\jinja2\environment.py", line 1008, in render
          return self.environment.handle_exception(exc_info, True)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\..\..\..\..\..\..\..\third_party\jinja2\environment.py", line 780, in handle_exception
          reraise(exc_type, exc_value, tb)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\..\..\..\..\..\..\..\third_party\jinja2\_compat.py", line 37, in reraise
          raise value.with_traceback(tb)
        File "gen\mojo\public\tools\bindings\cpp_templates.zip\tmpl_443233f41d2b3f893c5bf0eb0f069e01da908ebe.py", line 89, in <module>
        File "gen\mojo\public\tools\bindings\cpp_templates.zip\tmpl_c45f6ba3b78f1db0b9ac3d8f2287ed476074b615.py", line 15, in <module>
        File "C:\Google\chromium\src\mojo\public\tools\bindings\generators\mojom_cpp_generator.py", line 521, in _DefaultValue
          expression = self._ExpressionToText(field.default, kind=field.kind)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\generators\mojom_cpp_generator.py", line 852, in _ExpressionToText
          return self._TranslateConstants(value, kind)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\generators\mojom_cpp_generator.py", line 830, in _TranslateConstants
          return self._GetNameForKind(token, flatten_nested_kind=True)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\generators\mojom_cpp_generator.py", line 530, in _GetNameForKind
          return _NameFormatter(kind, self.variant).FormatForCpp(
        File "C:\Google\chromium\src\mojo\public\tools\bindings\generators\mojom_cpp_generator.py", line 73, in FormatForCpp
          return self.Format(
        File "C:\Google\chromium\src\mojo\public\tools\bindings\generators\mojom_cpp_generator.py", line 68, in Format
          parts.extend(self._GetName(internal, flatten_nested_kind))
        File "C:\Google\chromium\src\mojo\public\tools\bindings\generators\mojom_cpp_generator.py", line 94, in _GetName
          name_parts.append(self._token.name)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\module.py", line 273, in name
          return self.field.name
      AttributeError: 'EnumField' object has no attribute 'name'
      
      Traceback (most recent call last):
        File "../../mojo/public/tools/bindings/mojom_bindings_generator.py", line 565, in <module>
          sys.exit(main())
        File "../../mojo/public/tools/bindings/mojom_bindings_generator.py", line 560, in main
          return args.func(args, remaining_args)
        File "../../mojo/public/tools/bindings/mojom_bindings_generator.py", line 276, in _Generate
          processor._GenerateModule(
        File "../../mojo/public/tools/bindings/mojom_bindings_generator.py", line 245, in _GenerateModule
          generator.GenerateFiles(filtered_args)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\generators\mojom_cpp_generator.py", line 491, in GenerateFiles
          self.WriteWithComment(self._GenerateModuleSource(),
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\template_expander.py", line 37, in GeneratorInternal
          return ApplyTemplate(args[0], path_to_template, parameters, **kwargs)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\template_expander.py", line 31, in ApplyTemplate
          return template.render(params)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\..\..\..\..\..\..\..\third_party\jinja2\asyncsupport.py", line 76, in render
          return original_render(self, *args, **kwargs)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\..\..\..\..\..\..\..\third_party\jinja2\environment.py", line 1008, in render
          return self.environment.handle_exception(exc_info, True)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\..\..\..\..\..\..\..\third_party\jinja2\environment.py", line 780, in handle_exception
          reraise(exc_type, exc_value, tb)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\..\..\..\..\..\..\..\third_party\jinja2\_compat.py", line 37, in reraise
          raise value.with_traceback(tb)
        File "gen\mojo\public\tools\bindings\cpp_templates.zip\tmpl_443233f41d2b3f893c5bf0eb0f069e01da908ebe.py", line 95, in <module>
        File "gen\mojo\public\tools\bindings\cpp_templates.zip\tmpl_cdddecaaf43ca3c14ffb4bf4ac7c495e7415ba70.py", line 2, in <module>
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\..\..\..\..\..\..\..\third_party\jinja2\environment.py", line 430, in getattr
          return getattr(obj, attribute)
      jinja2.exceptions.UndefinedError: map object has no element 0
      
      Traceback (most recent call last):
        File "../../mojo/public/tools/bindings/mojom_bindings_generator.py", line 565, in <module>
          sys.exit(main())
        File "../../mojo/public/tools/bindings/mojom_bindings_generator.py", line 560, in main
          return args.func(args, remaining_args)
        File "../../mojo/public/tools/bindings/mojom_bindings_generator.py", line 276, in _Generate
          processor._GenerateModule(
        File "../../mojo/public/tools/bindings/mojom_bindings_generator.py", line 221, in _GenerateModule
          AddComputedData(module)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\generator.py", line 187, in AddComputedData
          _AddStructComputedData(True, struct)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\generator.py", line 126, in _AddStructComputedData
          struct.packed = pack.PackedStruct(struct)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\pack.py", line 141, in __init__
          src_fields.append(PackedField(field, index, ordinal))
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\pack.py", line 86, in __init__
          self.size = self.GetSizeForKind(field.kind)
        File "C:\Google\chromium\src\mojo\public\tools\bindings\pylib\mojom\generate\pack.py", line 63, in GetSizeForKind
          raise Exception("Undefined type: %s. Did you forget to import the file "
      Exception: Undefined type: x:EnforcementLevel. Did you forget to import the file containing the definition?
      
      Bug: 941669
      Change-Id: Ia19f39d4134fb063c4407eb20a4f909f693e6f27
      Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2081812
      Auto-Submit: Raul Tambre <raul@tambre.ee>
      Commit-Queue: Ken Rockot <rockot@google.com>
      Reviewed-by: default avatarKen Rockot <rockot@google.com>
      Cr-Commit-Position: refs/heads/master@{#746174}
      81ba7a1a
    • Wenyu Fu's avatar
      Use #setChecked in RadioButtonWithDescription#setCheckedWithFocusChange · 31499c74
      Wenyu Fu authored
      RadioButtonWithDescription#setCheckedWithFocusChange is trying to
      unchecked other radio button when this current radio button is checked.
      For those flipping-to-unchecked radio buttons, we want to call
      #setChecked rather than #setCheckedWithFocusChange to cooperate focus
      changes.
      
      Bug: 1048863, 1053747
      Change-Id: Ia12f5a613594a283f5289c1516bc5e6dfeef2aae
      Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2081524Reviewed-by: default avatarTheresa  <twellington@chromium.org>
      Reviewed-by: default avatarBrandon Wylie <wylieb@chromium.org>
      Commit-Queue: Wenyu Fu <wenyufu@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#746173}
      31499c74
    • nancy's avatar
      Fix crostini context menus crash issue. · d247eaf7
      nancy authored
      BUG=1057570
      
      Change-Id: Id1575ae9ff546a3f0d3ecb7353f3f4a60fd7c82e
      Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2084031Reviewed-by: default avatarDominick Ng <dominickn@chromium.org>
      Commit-Queue: Nancy Wang <nancylingwang@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#746172}
      d247eaf7
    • Daniel McArdle's avatar
      Avoid vector::insert in base::OffsetAdjuster::MergeSequentialAdjustments · 167904e8
      Daniel McArdle authored
      This CL trades space for time in |MergeSequentialAdjustments|. By
      allocating a new |Adjustments| vector, we can avoid calling
      |std::vector::insert| in a loop, which costs roughly O(n^2) time. With
      the additional vector, we only need to call |std::vector::push_back|,
      costing roughly O(n) time in total.
      
      Bug: 1017193
      Change-Id: I7beb2c3c0b6a9cb7616a22f4a4355285fd281894
      Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2070605Reviewed-by: default avatarDaniel Cheng <dcheng@chromium.org>
      Commit-Queue: Dan McArdle <dmcardle@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#746171}
      167904e8
    • Xiaoqian Dai's avatar
      back gesture contextual nudge: small UI nits. · 39798422
      Xiaoqian Dai authored
      Bug: 1009005b
      Change-Id: I629c8f297758366383922d33e6f646d2ce2fbad2
      Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2082023Reviewed-by: default avatarXiyuan Xia <xiyuan@chromium.org>
      Commit-Queue: Xiaoqian Dai <xdai@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#746170}
      39798422
    • Raul Tambre's avatar
      mojo: Don't open concatenation files as binary · a311cf92
      Raul Tambre authored
      In Python 3 operations on files opened in binary mode have to be done with bytestrings.
      Python 2 doesn't care, so it happens to work.
      Don't open the files in binary mode, as they aren't used as such.
      
      Traceback (most recent call last):
        File "../../mojo/public/tools/bindings/concatenate_and_replace_closure_exports.py", line 73, in <module>
          main()
        File "../../mojo/public/tools/bindings/concatenate_and_replace_closure_exports.py", line 70, in main
          exit(0 if ConcatenateAndReplaceExports(args) else 1)
        File "../../mojo/public/tools/bindings/concatenate_and_replace_closure_exports.py", line 58, in ConcatenateAndReplaceExports
          FilterLine(filename, line, target)
        File "../../mojo/public/tools/bindings/concatenate_and_replace_closure_exports.py", line 30, in FilterLine
          if line.startswith("goog.require"):
      TypeError: startswith first arg must be bytes or a tuple of bytes, not str
      
      Bug: 941669
      Change-Id: Ic373069e87707eb28ca1b3bf60556f066c19c5d1
      Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2081413
      Auto-Submit: Raul Tambre <raul@tambre.ee>
      Commit-Queue: Ken Rockot <rockot@google.com>
      Reviewed-by: default avatarKen Rockot <rockot@google.com>
      Cr-Commit-Position: refs/heads/master@{#746169}
      a311cf92
    • Andrey Kosyakov's avatar
      Fix crash in ExtensionPopup::DevToolsAgentHostDetached upon extension unload · c67836e9
      Andrey Kosyakov authored
      ExtensionPopup::OnExtensionUnloaded() deletes the ExtensionHost,
      we destroy the WebContents, this leads to detaching of DevTools
      sessions which will be reported to
      ExtensionPopup::DevToolsAgentHostDetached where we access host.
      Oops.
      
      Bug: 1052057
      Change-Id: I34e03582beb61c0308ad35bc973dc5cd4e26a5b8
      Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2066506
      Commit-Queue: Andrey Kosyakov <caseq@chromium.org>
      Reviewed-by: default avatarJohannes Henkel <johannes@chromium.org>
      Reviewed-by: default avatarBret Sepulveda <bsep@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#746168}
      c67836e9
    • David Bienvenu's avatar
      Fix right click handling from left click initiated system menu · 34b06d0e
      David Bienvenu authored
      If you open app window (e.g., chrome://apps,
      right click on Youtube, check "open in window", and open it),
      then left click just to the right of "Youtube" in the title bar of the app
      window, and then right click, a second context menu gets opened.
      
      This CL makes HwndMessageHandler ignore the right click when displaying
      a system menu opened with left click.
      
      Bug: 1053460
      Change-Id: I0c32cf30995ce6e970c93d40a2e20b7b2f63d3a2
      Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2071253Reviewed-by: default avatarScott Violet <sky@chromium.org>
      Commit-Queue: David Bienvenu <davidbienvenu@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#746167}
      34b06d0e
    • Dmitry Gozman's avatar
      Revert "Remove ScriptContext::ScopedFrameDocumentLoader" · b0e76bc7
      Dmitry Gozman authored
      This reverts commit 2e28f009.
      
      Reason for revert: suspecting to cause crashes, http://crbug.com/1052107
      
      Original change's description:
      > Remove ScriptContext::ScopedFrameDocumentLoader
      > 
      > This scope is used to map Frame to just-about-to-commit DocumentLoader.
      > 
      > With https://crrev.com/706529, we now call ReadyToCommitNavigation
      > after the commit (as opposite to before the commit). Therefore,
      > WebLocalFrame::GetDocumentLoader is already the right one and we don't
      > need a scoped mapping.
      > 
      > Bug: 855189
      > Change-Id: I95621b00ee4391986f063e56f20d8d7d25b5c532
      > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2046210
      > Reviewed-by: Devlin <rdevlin.cronin@chromium.org>
      > Commit-Queue: Dmitry Gozman <dgozman@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#740198}
      
      TBR=dgozman@chromium.org,rdevlin.cronin@chromium.org
      
      # Not skipping CQ checks because original CL landed > 1 day ago.
      
      Bug: 855189
      Change-Id: I7021f96e4c6db2a41f048113b369eee7a21b07ae
      Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2083390Reviewed-by: default avatarDmitry Gozman <dgozman@chromium.org>
      Commit-Queue: Dmitry Gozman <dgozman@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#746166}
      b0e76bc7
    • Xinghui Lu's avatar
      Add sync status check for real time url lookup with token. · 8a6b25af
      Xinghui Lu authored
      FullURLLookupWithToken is enabled when:
      1 FullURLLookup is enabled.
      2 The user is syncing their browsing history.
      3 Custom passphrase is disabled.
      
      Bug: 1041912
      Change-Id: Ie477512e9cd311d7db8891cc8a0bd7daf0559293
      Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2071385
      Commit-Queue: Xinghui Lu <xinghuilu@chromium.org>
      Reviewed-by: default avatarVarun Khaneja <vakh@chromium.org>
      Reviewed-by: default avatarMarc Treib <treib@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#746165}
      8a6b25af
    • gogerald's avatar
      [StartSurface] Do not create MV tiles if not necessary · 56d1482c
      gogerald authored
      Bug: 1041047
      Change-Id: I43fafa456579ab0c760e278f8972bd82b2bc187a
      Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2078555
      Commit-Queue: Ganggui Tang <gogerald@chromium.org>
      Reviewed-by: default avatarWei-Yin Chen (陳威尹) <wychen@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#746164}
      56d1482c
    • Takashi Toyoshima's avatar
      OOR-CORS: Update fieldtrial_testing_config · 3db3ee2c
      Takashi Toyoshima authored
      Update the file to match actual parameters that was fixed
      to distribute parameters correctly.
      
      Bug: 1001450, 1056037
      Change-Id: I387be6a82e3ecc96d0c7b4a1c4975f97dde717ae
      Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2082222
      Commit-Queue: Ilya Sherman <isherman@chromium.org>
      Reviewed-by: default avatarIlya Sherman <isherman@chromium.org>
      Auto-Submit: Takashi Toyoshima <toyoshim@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#746163}
      3db3ee2c
  2. 02 Mar, 2020 25 commits