Desktop PWA: Adding prototype for Run PWA on user OS login

This is part 1 of 3 of the prototype to configure PWAS to run on
OS login.

Updates for the prototype include:
- Added feature flag "Desktop PWAs run on OS login", disabled by default.
- Added Startup folder to Windows base paths and shell util.
- Added "in_startup" entry to Web App Shortcut locations.
- If feature flag is enabled, show a checkbox in the PWA install dialog.
- If checked, PWA install task creates an additional shortcut in
  Windows Startup folder by setting "in_startup" location to true.

Additional parts for the feature to come in next CLs.

Explainer: https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/master/RunOnLogin/Explainer.md
I2P: https://groups.google.com/a/chromium.org/forum/#!msg/blink-dev/T6d2zqF_jpw/76TP7Bc2DwAJ
Bug: 897302
Change-Id: I0870e5a26e94e8e60001b78c95e53da134388f0a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2026256
Commit-Queue: Carlos Frias <carlos.frias@microsoft.com>
Reviewed-by: Alexey Baskakov <loyso@chromium.org>
Reviewed-by: Greg Thompson <grt@chromium.org>
Reviewed-by: Alan Cutter <alancutter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#772460}
32 files changed
tree: e0c2d11f33e0ef2093a3260d4f48e215f3c00213
  1. android_webview/
  2. apps/
  3. ash/
  4. base/
  5. build/
  6. build_overrides/
  7. buildtools/
  8. cc/
  9. chrome/
  10. chromecast/
  11. chromeos/
  12. cloud_print/
  13. components/
  14. content/
  15. courgette/
  16. crypto/
  17. dbus/
  18. device/
  19. docs/
  20. extensions/
  21. fuchsia/
  22. gin/
  23. google_apis/
  24. google_update/
  25. gpu/
  26. headless/
  27. infra/
  28. ios/
  29. ipc/
  30. jingle/
  31. media/
  32. mojo/
  33. native_client_sdk/
  34. net/
  35. pdf/
  36. ppapi/
  37. printing/
  38. remoting/
  39. rlz/
  40. sandbox/
  41. services/
  42. skia/
  43. sql/
  44. storage/
  45. styleguide/
  46. testing/
  47. third_party/
  48. tools/
  49. ui/
  50. url/
  51. weblayer/
  52. .clang-format
  53. .clang-tidy
  54. .eslintrc.js
  55. .git-blame-ignore-revs
  56. .gitattributes
  57. .gitignore
  58. .gn
  59. .vpython
  60. .vpython3
  61. .yapfignore
  62. AUTHORS
  63. BUILD.gn
  64. CODE_OF_CONDUCT.md
  65. codereview.settings
  66. DEPS
  67. ENG_REVIEW_OWNERS
  68. LICENSE
  69. LICENSE.chromium_os
  70. OWNERS
  71. PRESUBMIT.py
  72. PRESUBMIT_test.py
  73. PRESUBMIT_test_mocks.py
  74. README.md
  75. WATCHLISTS
README.md

Logo Chromium

Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.

The project's web site is https://www.chromium.org.

Documentation in the source is rooted in docs/README.md.

Learn how to Get Around the Chromium Source Code Directory Structure .

For historical reasons, there are some small top level directories. Now the guidance is that new top level directories are for product (e.g. Chrome, Android WebView, Ash). Even if these products have multiple executables, the code should be in subdirectories of the product.