1. 09 Jan, 2020 5 commits
    • Demetrios Papadopoulos's avatar
      SplitSettings: Cleanup extension APIs permissions · 619d83e2
      Demetrios Papadopoulos authored
      Some permissions are only needed by one of chrome://settings or
      chrome://os-settings but not both.
      
      Specifically, with this CL the following APIs are only accessible
      by chrome://os-settings
      
       - chrome.bluetooth
       - chrome.bluetoothPrivate
       - chrome.networkingPrivate
       - chrome.system.display
       - chrome.usersPrivate
      
      while the following only accessible by chrome://settings
      
       - chrome.autofillPrivate
       - chrome.management
       - chrome.passwordsPrivate
      
      Bug: 990177
      Change-Id: Id40dbcd1cf92eaf7227744c9b38267cc786c1476
      Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1990027Reviewed-by: default avatarDevlin <rdevlin.cronin@chromium.org>
      Commit-Queue: Demetrios Papadopoulos <dpapad@chromium.org>
      Auto-Submit: Demetrios Papadopoulos <dpapad@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#729557}
      619d83e2
    • Alex Cooper's avatar
      Add Feature for WebXrPermissionsAPI · 491f182e
      Alex Cooper authored
      Currently WebXr uses a custom consent flow. Due to changes in the spec,
      and desired expansion to other platforms, WebXr needs to switch to using
      the Permissions API instead. This change adds a flag to enable
      development of switching the consent prompt out with calls to the
      permissions api.  Note that while the spec is evolving to allow proper
      querying by sites in the renderer, this flag is intended to only gate
      switching the internals. (e.g. using the permissions API to prompt for
      user consent to initiate a WebXr session).
      
      Bug: 1033592
      Change-Id: I0eec6308f6432cbff3c60bff3e949fe3b2205926
      Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1992267
      Commit-Queue: Alexander Cooper <alcooper@chromium.org>
      Commit-Queue: Alex Moshchuk <alexmos@chromium.org>
      Auto-Submit: Alexander Cooper <alcooper@chromium.org>
      Reviewed-by: default avatarAlex Moshchuk <alexmos@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#729556}
      491f182e
    • Suzy Li's avatar
      Add pending isUVPAA requests queue in clank · f24efb58
      Suzy Li authored
      This CL resolves a crash issue when calling isUVPAA on clank twice by
      adding pending requests queue in clank.
      
      Bug: 1039822
      Change-Id: I4b380f3c045f6921291ea9264243ed53a65ee93c
      Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1990491
      Commit-Queue: Suzy Li <suzyli@google.com>
      Reviewed-by: default avatarKen Buchanan <kenrb@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#729555}
      f24efb58
    • Connie Wan's avatar
      Color tab group editor bubble icons based on native theme · 42969f1f
      Connie Wan authored
      Previously it was being colored dark/light based on the browser theme, which made the color the same as the actual group in the tab strip. But bubbles are not affected by browser themes, but rather by native themes, similar to context menus.
      
      See attached bugs for full context.
      
      Bug: 1027483, 1039998
      Change-Id: Id783f71e643b720f3c138e736db25d69a92d122b
      Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1992310Reviewed-by: default avatarCharlene Yan <cyan@chromium.org>
      Commit-Queue: Connie Wan <connily@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#729554}
      42969f1f
    • Devlin Cronin's avatar
      [Extensions] Store external uninstall info in a separate pref · 5bd3bd2b
      Devlin Cronin authored
      When a user uninstalls an externally-added (sideloaded) extension, we
      store a pref so that Chrome doesn't try to re-add the extension when it
      next sees it. Currently, this is stored as a bit in the extension's
      entry in the ExtensionPrefs (setting "state" to
      "EXTERNAL_EXTENSION_UNINSTALLED").
      
      Unfortunately, this causes a number of interesting side effects, because
      it means that, in this specific scenario, the Preferences retain the
      Extension's entry even after uninstallation. Then, when re-installation
      is attempted, some of those preferences can have an impact. In the past,
      this has also led to improper behavior around installation of an
      extension (see linked bug).
      
      Fix this by instead storing uninstalled external extension IDs in a
      separate preference entry ("extensions.external_uninstalls"). This way,
      we can fully remove the Extension's entry in preferences when it's
      uninstalled.
      
      Add migration logic to move all externally-uninstalled extensions into
      the new array, and remove their entries from prefs. Add unit tests for
      the migration logic, external uninstall being set and retained, and
      for the scenario of a user uninstalling an external extension and
      re-installing it again.
      
      Bug: 795026
      
      Change-Id: I177777ed78cf0a85ad9be4366999a80aecd495ae
      Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1982239
      Commit-Queue: Devlin <rdevlin.cronin@chromium.org>
      Reviewed-by: default avatarIstiaque Ahmed <lazyboy@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#729553}
      5bd3bd2b
  2. 08 Jan, 2020 35 commits