Simplistic implementation of stale-while-revalidate. See design doc at
https://docs.google.com/document/d/1DMCIMAKjyKeYiu69jlI5OsO2pGyAMb81XflYK4hxsNM/edit?usp=sharing
This implementation has known flaws:
1. Set-Cookie, Strict-Transport-Security and Public-Key-Pins headers
are lost from the responses of asynchronous revalidations.
2. Conditional requests sent from the Blink cache do not have the
stale-while-revalidate logic applied to them.
3. Support for the bandwidth reduction proxy is hacky.
It will be replaced with a better implementation if/when the concept is proven.
BUG=348877
TEST=net_unittests
Review URL: https://codereview.chromium.org/455623003
Cr-Original-Commit-Position: refs/heads/master@{#298649}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 64c07d7959386d30a0e4aa1371e2bdcd3d436476
Note that this also involved copying neterror.css/js over to
chrome/browser/resources/ssl so as to break the dependency between
blocking.html in that directory and the css/js files in
chrome/renderer/resources. That copy means that, while I'm going
through presubmit errors before uploading, I"m not fixing them all--
there are pre-existing errors in neterror.css that I don't have the
expertise to fix.
BUG=None
Review URL: https://codereview.chromium.org/422933002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@287538 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Introduced static initializers into chrome binary:
preload_supplier.cc _GLOBAL__sub_I_preload_supplier.cc+0xa
preload_supplier.cc i18n::addressinput::StringCompare::StringCompare()
preload_supplier.cc __cxa_atexit@plt [registers a dtor to run at exit]
Run ./tools/linux/dump-static-initializers.py before re-landing to
verify they're no longer present.
> Use upstream libaddressinput in Chrome.
>
> Most of the changes are mechanical switches from chromium/ to src/
> directory in third_party/libadressinput/.
>
> To simplify the switch, autofill::AddressValidator is a shim between
> Chromium and i18n::addressinput::AddressValidator. The shim behaves the
> same way as Chromium's version of libaddressinput. The goal is to
> gradually remove the shim and make Chromium work directly with
> libaddressinupt.
>
> Upstream libaddressinput does not include suggestions, which now can be
> found in third_party/libadressinput/chromium/input_suggester.{h,cc}.
>
> A follow up patch will remove Chromium's version of libaddressinput.
>
> BUG=327046
>
> Review URL: https://codereview.chromium.org/298863012TBR=rouslan@chromium.org
Review URL: https://codereview.chromium.org/388613002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@282426 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Most of the changes are mechanical switches from chromium/ to src/
directory in third_party/libadressinput/.
To simplify the switch, autofill::AddressValidator is a shim between
Chromium and i18n::addressinput::AddressValidator. The shim behaves the
same way as Chromium's version of libaddressinput. The goal is to
gradually remove the shim and make Chromium work directly with
libaddressinupt.
Upstream libaddressinput does not include suggestions, which now can be
found in third_party/libadressinput/chromium/input_suggester.{h,cc}.
A follow up patch will remove Chromium's version of libaddressinput.
BUG=327046
Review URL: https://codereview.chromium.org/298863012
git-svn-id: http://src.chromium.org/svn/trunk/src/build@282408 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This CL moves GoogleURLTracker and associated friends to the Google component.
It additionally moves strings that GoogleURLTrackerInfoBarDelegate into
components_strings.grd (via google_strings.grdp).
Dependencies of this code on google_util are temporarily punched through the
embedder, as google_util will require more time to componentize. Once
google_util is componentized, the indirection through the embedder will be
removed.
BUG=373209,373222
TBR=thakis, cbentzel
Review URL: https://codereview.chromium.org/316203003
git-svn-id: http://src.chromium.org/svn/trunk/src/build@275743 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Adds a new tab to the about:sync page to display the latest per-type
counters. These counters will eventually replace the StatusControllers
that contain much of the same information.
This includes some changes to the C++ SyncInternalsMessageHandler to
register to observe these counters as well as some new WebUI to display
them.
There is a known bug in this code. The StausCounter update logic has
not been implemented yet, so the item counts will always be zero. This
will be fixed in a future CL.
BUG=349301
Review URL: https://codereview.chromium.org/290023003
git-svn-id: http://src.chromium.org/svn/trunk/src/build@274348 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
To solve the dependency on chrome_command_ids, this CL removes the
IDC_OPTIONS_TRANSLATE_* constants and instead defines the command IDs
locally in the file, which is an approach already used at several other places in
the code.
To solve the dependency on themes, the icon ID for the translate infobar is no
longer hardcoded, but fetched from the translate client instead.
BUG=371845
TBR=estade, joaodasilva
Review URL: https://codereview.chromium.org/284313008
git-svn-id: http://src.chromium.org/svn/trunk/src/build@274252 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This CL makes a couple more changes to accomodate for the implementation
of this policy:
- moved the kManagedBookmarks pref into the bookmarks component, so that
it can be referred to from there;
- moved the strings for the managed bookmarks folder name for the same
reasons;
- updated the policy schema to support child bookmarks;
- updated the ManagedBookmarksPolicyHandler to use the schema validation
code, and added a new unit test for that.
TBR=nyquist@chromium.org
BUG=49598
Review URL: https://codereview.chromium.org/307993005
git-svn-id: http://src.chromium.org/svn/trunk/src/build@274124 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
The viewed page can now be rendered all at once, or with a single page
update, followed by additional page content sent via HTML. While more
pages are loading, a progress indicator is present.
The title for a page was added to DistilledPageProto so its accessible
during partial distillation. This was already stored in
DistilledPageData so it's just moved.
BUG=319881
Review URL: https://codereview.chromium.org/260073009
git-svn-id: http://src.chromium.org/svn/trunk/src/build@270622 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
The name should still be automatically generated.
Also, all the avatar icons are becoming squares (31x38 -> 38x38). New resources will be committed and necessary code changes have been made.
BUG=337986
TEST=When creating a new profile from anywhere except the settings. Also, verify avatar icons are still rendered correctly, whether GAIA, the placeholder or a cartoon icon.
page, the automatically assigned avatar should the grey
placeholder (silhouette).
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=263262
Review URL: https://codereview.chromium.org/212603011
git-svn-id: http://src.chromium.org/svn/trunk/src/build@265645 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Removes the --enable-autologin switch and associated settings UI. Autologin is
always enabled for Android builds. Moves the Android-specific AutoLoginPrompter
class into an android/ directory.
iOS also uses the AutoLoginInfoBarDelegate, so that class is left where it is.
BUG=347214
Review URL: https://codereview.chromium.org/235863025
git-svn-id: http://src.chromium.org/svn/trunk/src/build@264818 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Adds static initializers. See:
http://build.chromium.org/p/chromium/builders/Linux%20x64/builds/63585
# profile_avatar_icon_util.cc profiles::kNoHighResAvatar
# profile_avatar_icon_util.cc profiles::kDefaultAvatarIconResourceFileNames+0xd0
> Newly created profiles should have the grey silhouette as avatar.
> The name should still be automatically generated.
>
> Also, all the avatar icons are becoming squares (31x38 -> 38x38). New resources will be committed and necessary code changes have been made.
>
>
> BUG=337986
> TEST=When creating a new profile from anywhere except the settings. Also, verify avatar icons are still rendered correctly, whether GAIA, the placeholder or a cartoon icon.
> page, the automatically assigned avatar should the grey
> placeholder (silhouette).
>
> Review URL: https://codereview.chromium.org/212603011TBR=mlerman@chromium.org
Review URL: https://codereview.chromium.org/234583008
git-svn-id: http://src.chromium.org/svn/trunk/src/build@263284 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
The name should still be automatically generated.
Also, all the avatar icons are becoming squares (31x38 -> 38x38). New resources will be committed and necessary code changes have been made.
BUG=337986
TEST=When creating a new profile from anywhere except the settings. Also, verify avatar icons are still rendered correctly, whether GAIA, the placeholder or a cartoon icon.
page, the automatically assigned avatar should the grey
placeholder (silhouette).
Review URL: https://codereview.chromium.org/212603011
git-svn-id: http://src.chromium.org/svn/trunk/src/build@263262 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Augment the NaCl GDB mask to avoid blocking the PNaCl
translator in addition to secure shell. Make this the
default.
This has the side-effect of identifying the translator as
separate from the application in chrome's task manager,
since the "url" is changed for these helper NaCl modules
from the application manifest to something
like chrome://pnacl-translator/x86-64/pnacl-llc.nexe.
BUG= https://code.google.com/p/nativeclient/issues/detail?id=3765
Review URL: https://codereview.chromium.org/176813010
git-svn-id: http://src.chromium.org/svn/trunk/src/build@255543 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This CL removes a number of functions from the sync debugging framework
in order to prepare for some upcoming changes to sync debugging (due to
328606).
This CL removes the following functions:
- GetRootNodeDetails
- GetNodeSummaries
- GetNodeDetails
- GetChildNodeIds
It also adds the function 'getListOfKnownTypes' to help replace some old
functionality required by the 'data' tab and to fix issue 329013.
Rather than having that tab fetch a list of children of the root node,
it now asks for a list of all known data types. This is a better
solution, since it does not require sync to be fully initialized in
order to properly populate the set of checkboxes.
The most significant user of the removed functionality is the node
browser. Its javascript code has been modified in order to transition
it to relying on the getAllNodes function. Rather than fetching node
data on demand by a series of asynchronous callbacks, the tab now
fetches a list of all known sync nodes at once. This has the advantage
of providing a more consistent (though more stale) snapshot. This CL
adds a refresh button to the node browser tab in order to give users
some control over its staleness.
This change had some minor side-effects. The node browser now relies on
items' string-based IDs rather than their metahandles when determining
the nodes' hierarchy. We've also had to add a 'positionIndex' field to
the output of getAllNodes to make it easier for the node browser to sort
its entries. In part to make it easier to fetch this field, most of the
code associated with getAllNodes has been moved into the
syncable::Directory.
In addition to all these changes, this CL adds some webui tests to help
prevent regressions in about:sync functionality. For now, they only
cover the node browser. More tests will be added in future CLs.
BUG=110517,329013,328606
Review URL: https://codereview.chromium.org/134443004
git-svn-id: http://src.chromium.org/svn/trunk/src/build@245313 4ff67af0-8c30-449e-8e8b-ad334ec8d88c