API should replace the following deprecated methods: -[CRWWebDelegate webController:didLoadPassKitObject:] -[CRWWebDelegate controllerForUnhandledContentAtURL] Design doc: https://docs.google.com/document/d/1rfbN4RhKWthdbjs8HhQtc1tDj3letzVub0-BOZeCR1c/edit#
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/935d96c0473aede63af754e5fdc0621858fe78b0 commit 935d96c0473aede63af754e5fdc0621858fe78b0 Author: Eugene But <eugenebut@google.com> Date: Mon Nov 06 21:44:53 2017 Added testing::kWaitForFileOperationTimeout constant. This constant will be used in download tests. Bug: 780646 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet Change-Id: Id3ad2f7533dbc151e6ef4c4746d6f8b32aec7631 Reviewed-on: https://chromium-review.googlesource.com/755416 Reviewed-by: Yuke Liao <liaoyuke@chromium.org> Commit-Queue: Eugene But <eugenebut@chromium.org> Cr-Commit-Position: refs/heads/master@{#514246} [modify] https://crrev.com/935d96c0473aede63af754e5fdc0621858fe78b0/ios/testing/wait_util.h [modify] https://crrev.com/935d96c0473aede63af754e5fdc0621858fe78b0/ios/testing/wait_util.mm
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c1e095d303702dbd94e73547627229f0f6a7d631 commit c1e095d303702dbd94e73547627229f0f6a7d631 Author: Eugene But <eugenebut@google.com> Date: Thu Nov 09 19:39:10 2017 Interfaces for //ios/web Download API. This CL adds public headers to //ios/web/public/download. Implementation files will be sent in separate CLs. Design doc: http://go/ios-web-download-api Bug: 780646 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet Change-Id: Ic5935b205bacf485b369f506fe28af86dbcfd904 Reviewed-on: https://chromium-review.googlesource.com/754013 Commit-Queue: Eugene But <eugenebut@chromium.org> Reviewed-by: Sylvain Defresne <sdefresne@chromium.org> Reviewed-by: Gregory Chatzinoff <gchatz@chromium.org> Reviewed-by: Mark Cogan <marq@chromium.org> Cr-Commit-Position: refs/heads/master@{#515246} [add] https://crrev.com/c1e095d303702dbd94e73547627229f0f6a7d631/ios/web/public/download/BUILD.gn [add] https://crrev.com/c1e095d303702dbd94e73547627229f0f6a7d631/ios/web/public/download/OWNERS [add] https://crrev.com/c1e095d303702dbd94e73547627229f0f6a7d631/ios/web/public/download/download_controller.h [add] https://crrev.com/c1e095d303702dbd94e73547627229f0f6a7d631/ios/web/public/download/download_controller_delegate.h [add] https://crrev.com/c1e095d303702dbd94e73547627229f0f6a7d631/ios/web/public/download/download_task.h [add] https://crrev.com/c1e095d303702dbd94e73547627229f0f6a7d631/ios/web/public/download/download_task_observer.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/bb33e1878bc52760206daeccc280b234fb8e97cc commit bb33e1878bc52760206daeccc280b234fb8e97cc Author: Eugene But <eugenebut@google.com> Date: Fri Nov 10 00:38:36 2017 Renamed ios/chrome/browser/ui/downloads to download. The name of the feature is "download" not downloads. Also singular name is consistent with the rest of the names. Bug: 780646 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet Change-Id: Ibe34f0088b5cbcfaa669451f053bbe8031e33c38 Reviewed-on: https://chromium-review.googlesource.com/761344 Reviewed-by: Gregory Chatzinoff <gchatz@chromium.org> Commit-Queue: Eugene But <eugenebut@chromium.org> Cr-Commit-Position: refs/heads/master@{#515369} [modify] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/app/BUILD.gn [modify] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/app/main_controller.mm [modify] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/tabs/BUILD.gn [modify] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/tabs/tab.mm [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/BUILD.gn [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/DEPS [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/download_manager_controller.h [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/download_manager_controller.mm [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/download_manager_controller_unittest.mm [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/resources/BUILD.gn [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/resources/DownloadManagerController.xib [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/resources/error_icon.imageset/Contents.json [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/resources/error_icon.imageset/error_icon.png [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/resources/error_icon.imageset/error_icon@2x.png [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/resources/error_icon.imageset/error_icon@3x.png [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/resources/file_icon_body.imageset/Contents.json [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/resources/file_icon_body.imageset/file_icon_body.png [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/resources/file_icon_body.imageset/file_icon_body@2x.png [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/resources/file_icon_body.imageset/file_icon_body@3x.png [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/resources/file_icon_fold.imageset/Contents.json [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/resources/file_icon_fold.imageset/file_icon_fold.png [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/resources/file_icon_fold.imageset/file_icon_fold@2x.png [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/resources/file_icon_fold.imageset/file_icon_fold@3x.png [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/resources/file_icon_fold_complete.imageset/Contents.json [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/resources/file_icon_fold_complete.imageset/file_icon_fold_complete.png [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/resources/file_icon_fold_complete.imageset/file_icon_fold_complete@2x.png [rename] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/browser/ui/download/resources/file_icon_fold_complete.imageset/file_icon_fold_complete@3x.png [modify] https://crrev.com/bb33e1878bc52760206daeccc280b234fb8e97cc/ios/chrome/test/BUILD.gn
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5fec6db29251b5fba4a5f8663fc6008c7fa749fd commit 5fec6db29251b5fba4a5f8663fc6008c7fa749fd Author: Eugene But <eugenebut@google.com> Date: Fri Nov 10 18:11:43 2017 Added feature flags for Download Manager and PassKit. These 2 features will be launched separately, hence 2 flags. The flags are not visible in chrome://flags yet, because the features are not usable yet. Flags will be added to chrome://flags when features are fully implemented. Bug: 780646 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet Change-Id: I327c4590a7089e17921809d214ddba190a5c0c99 Reviewed-on: https://chromium-review.googlesource.com/760720 Commit-Queue: Eugene But <eugenebut@chromium.org> Reviewed-by: Gregory Chatzinoff <gchatz@chromium.org> Cr-Commit-Position: refs/heads/master@{#515598} [modify] https://crrev.com/5fec6db29251b5fba4a5f8663fc6008c7fa749fd/ios/chrome/browser/ios_chrome_flag_descriptions.cc [modify] https://crrev.com/5fec6db29251b5fba4a5f8663fc6008c7fa749fd/ios/chrome/browser/ios_chrome_flag_descriptions.h [modify] https://crrev.com/5fec6db29251b5fba4a5f8663fc6008c7fa749fd/ios/web/features.mm [modify] https://crrev.com/5fec6db29251b5fba4a5f8663fc6008c7fa749fd/ios/web/public/features.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/052d5d9b6ca6d2178c45c7dd66d7689ead4f0cb0 commit 052d5d9b6ca6d2178c45c7dd66d7689ead4f0cb0 Author: Eugene But <eugenebut@google.com> Date: Mon Nov 13 20:03:34 2017 EarlGrey test for PassKit download. Added testPassKitParsingError test which verifies the flow where PassKit file can not be parsed. A test where PassKit UI is presented for a valid PassKit file which be added in a separate CL. Bug: 780646 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet Change-Id: I189806c8eae0d93dc2b531ef31cf2c2fc8e22561 Reviewed-on: https://chromium-review.googlesource.com/762648 Commit-Queue: Eugene But <eugenebut@chromium.org> Reviewed-by: Yuke Liao <liaoyuke@chromium.org> Cr-Commit-Position: refs/heads/master@{#516017} [modify] https://crrev.com/052d5d9b6ca6d2178c45c7dd66d7689ead4f0cb0/ios/chrome/browser/ui/download/BUILD.gn [add] https://crrev.com/052d5d9b6ca6d2178c45c7dd66d7689ead4f0cb0/ios/chrome/browser/ui/download/pass_kit_egtest.mm [modify] https://crrev.com/052d5d9b6ca6d2178c45c7dd66d7689ead4f0cb0/ios/chrome/test/earl_grey/BUILD.gn
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/56fda76ab8d52be612a2162cf6e4178969b4b619 commit 56fda76ab8d52be612a2162cf6e4178969b4b619 Author: Eugene But <eugenebut@google.com> Date: Wed Nov 15 00:11:10 2017 Updated DownloadTask usage examples. Fixed comments for task->Start function calls. Bug: 780646 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Change-Id: I9ec1e8b6ff2290a6eea11c79a3156ea4f9645de2 Reviewed-on: https://chromium-review.googlesource.com/769676 Reviewed-by: Gregory Chatzinoff <gchatz@chromium.org> Commit-Queue: Eugene But <eugenebut@chromium.org> Cr-Commit-Position: refs/heads/master@{#516514} [modify] https://crrev.com/56fda76ab8d52be612a2162cf6e4178969b4b619/ios/web/public/download/download_controller.h [modify] https://crrev.com/56fda76ab8d52be612a2162cf6e4178969b4b619/ios/web/public/download/download_controller_delegate.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/2955e4a3ec9a0951a6d8892284f30d440cbfce3f commit 2955e4a3ec9a0951a6d8892284f30d440cbfce3f Author: Eugene But <eugenebut@google.com> Date: Thu Nov 16 00:17:26 2017 EarlGrey test for PassKit download. Added testPassKitDownload test which verifies the flow where PassKit file is successfully downloaded. PKAddPassesViewController UI is rendered out of host process so EarlGrey matcher can not find PassKit Dialog UI. Instead this test relies on view controller presentation as the signal that PassKit Dialog is shown. generic.pkpass is downloaded from https://developer.apple.com as a part of WalletCompanionFiles bundle. Bug: 780646 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Change-Id: I360f97398c2f66006575de54cd136085425e409f Reviewed-on: https://chromium-review.googlesource.com/771996 Reviewed-by: Menglu Huang <huangml@chromium.org> Commit-Queue: Eugene But <eugenebut@chromium.org> Cr-Commit-Position: refs/heads/master@{#516914} [modify] https://crrev.com/2955e4a3ec9a0951a6d8892284f30d440cbfce3f/ios/chrome/browser/ui/download/BUILD.gn [modify] https://crrev.com/2955e4a3ec9a0951a6d8892284f30d440cbfce3f/ios/chrome/browser/ui/download/pass_kit_egtest.mm [modify] https://crrev.com/2955e4a3ec9a0951a6d8892284f30d440cbfce3f/ios/testing/BUILD.gn [add] https://crrev.com/2955e4a3ec9a0951a6d8892284f30d440cbfce3f/ios/testing/data/http_server_files/generic.pkpass
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/cef83520172a0820ff69e8aef4c2913913970a02 commit cef83520172a0820ff69e8aef4c2913913970a02 Author: Eugene But <eugenebut@google.com> Date: Thu Nov 16 20:47:26 2017 DownloadTaskImpl implementation for //ios/web Download API. This CL implements DownloadTask public interface. DownloadControllerImpl CL: crrev.com/c/758525 Design doc: http://go/ios-web-download-api Bug: 780646 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Change-Id: I2c508e77f3e529223499d6f2791b28011589fe90 Reviewed-on: https://chromium-review.googlesource.com/758506 Reviewed-by: Sylvain Defresne <sdefresne@chromium.org> Reviewed-by: Gregory Chatzinoff <gchatz@chromium.org> Commit-Queue: Eugene But <eugenebut@chromium.org> Cr-Commit-Position: refs/heads/master@{#517176} [modify] https://crrev.com/cef83520172a0820ff69e8aef4c2913913970a02/ios/web/BUILD.gn [add] https://crrev.com/cef83520172a0820ff69e8aef4c2913913970a02/ios/web/download/BUILD.gn [add] https://crrev.com/cef83520172a0820ff69e8aef4c2913913970a02/ios/web/download/OWNERS [add] https://crrev.com/cef83520172a0820ff69e8aef4c2913913970a02/ios/web/download/download_task_impl.h [add] https://crrev.com/cef83520172a0820ff69e8aef4c2913913970a02/ios/web/download/download_task_impl.mm [add] https://crrev.com/cef83520172a0820ff69e8aef4c2913913970a02/ios/web/download/download_task_impl_unittest.mm [modify] https://crrev.com/cef83520172a0820ff69e8aef4c2913913970a02/ios/web/test/fakes/BUILD.gn [add] https://crrev.com/cef83520172a0820ff69e8aef4c2913913970a02/ios/web/test/fakes/crw_fake_nsurl_session_task.h [add] https://crrev.com/cef83520172a0820ff69e8aef4c2913913970a02/ios/web/test/fakes/crw_fake_nsurl_session_task.mm
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/499acc806321146dc13bb215691e9f0505c95120 commit 499acc806321146dc13bb215691e9f0505c95120 Author: Yuke Liao <liaoyuke@chromium.org> Date: Thu Nov 16 23:43:18 2017 Revert "DownloadTaskImpl implementation for //ios/web Download API." This reverts commit cef83520172a0820ff69e8aef4c2913913970a02. Reason for revert: DownloadTaskImplTest.* tests fail on iOS 11 devices, both iPhone and iPad. Original change's description: > DownloadTaskImpl implementation for //ios/web Download API. > > This CL implements DownloadTask public interface. > > DownloadControllerImpl CL: crrev.com/c/758525 > Design doc: http://go/ios-web-download-api > > Bug: 780646 > Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs > Change-Id: I2c508e77f3e529223499d6f2791b28011589fe90 > Reviewed-on: https://chromium-review.googlesource.com/758506 > Reviewed-by: Sylvain Defresne <sdefresne@chromium.org> > Reviewed-by: Gregory Chatzinoff <gchatz@chromium.org> > Commit-Queue: Eugene But <eugenebut@chromium.org> > Cr-Commit-Position: refs/heads/master@{#517176} TBR=sdefresne@chromium.org,eugenebut@chromium.org,gchatz@chromium.org Change-Id: I14f0c37aa92330b0a665bf59bb665f010ee1209d No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 780646 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Reviewed-on: https://chromium-review.googlesource.com/776067 Reviewed-by: Yuke Liao <liaoyuke@chromium.org> Commit-Queue: Yuke Liao <liaoyuke@chromium.org> Cr-Commit-Position: refs/heads/master@{#517225} [modify] https://crrev.com/499acc806321146dc13bb215691e9f0505c95120/ios/web/BUILD.gn [delete] https://crrev.com/5c3c4ac899a17f8ceab3a6f5fc8090935a6e371b/ios/web/download/BUILD.gn [delete] https://crrev.com/5c3c4ac899a17f8ceab3a6f5fc8090935a6e371b/ios/web/download/OWNERS [delete] https://crrev.com/5c3c4ac899a17f8ceab3a6f5fc8090935a6e371b/ios/web/download/download_task_impl.h [delete] https://crrev.com/5c3c4ac899a17f8ceab3a6f5fc8090935a6e371b/ios/web/download/download_task_impl.mm [delete] https://crrev.com/5c3c4ac899a17f8ceab3a6f5fc8090935a6e371b/ios/web/download/download_task_impl_unittest.mm [modify] https://crrev.com/499acc806321146dc13bb215691e9f0505c95120/ios/web/test/fakes/BUILD.gn [delete] https://crrev.com/5c3c4ac899a17f8ceab3a6f5fc8090935a6e371b/ios/web/test/fakes/crw_fake_nsurl_session_task.h [delete] https://crrev.com/5c3c4ac899a17f8ceab3a6f5fc8090935a6e371b/ios/web/test/fakes/crw_fake_nsurl_session_task.mm
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/220c3a649add92e99f425ad40de45525396f0913 commit 220c3a649add92e99f425ad40de45525396f0913 Author: Eugene But <eugenebut@google.com> Date: Fri Nov 17 16:36:22 2017 Reland DownloadTaskImpl implementation for //ios/web Download API. This CL implements DownloadTask public interface. DownloadControllerImpl CL: crrev.com/c/758525 Design doc: http://go/ios-web-download-api Bug: 780646 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Change-Id: Iffea44bfb64cc945f7d899dd7181556a730394f1 Reviewed-on: https://chromium-review.googlesource.com/775889 Reviewed-by: Sylvain Defresne <sdefresne@chromium.org> Commit-Queue: Eugene But <eugenebut@chromium.org> Cr-Commit-Position: refs/heads/master@{#517424} [modify] https://crrev.com/220c3a649add92e99f425ad40de45525396f0913/ios/web/BUILD.gn [add] https://crrev.com/220c3a649add92e99f425ad40de45525396f0913/ios/web/download/BUILD.gn [add] https://crrev.com/220c3a649add92e99f425ad40de45525396f0913/ios/web/download/OWNERS [add] https://crrev.com/220c3a649add92e99f425ad40de45525396f0913/ios/web/download/download_task_impl.h [add] https://crrev.com/220c3a649add92e99f425ad40de45525396f0913/ios/web/download/download_task_impl.mm [add] https://crrev.com/220c3a649add92e99f425ad40de45525396f0913/ios/web/download/download_task_impl_unittest.mm [modify] https://crrev.com/220c3a649add92e99f425ad40de45525396f0913/ios/web/test/fakes/BUILD.gn [add] https://crrev.com/220c3a649add92e99f425ad40de45525396f0913/ios/web/test/fakes/crw_fake_nsurl_session_task.h [add] https://crrev.com/220c3a649add92e99f425ad40de45525396f0913/ios/web/test/fakes/crw_fake_nsurl_session_task.mm
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/4a7ac35f246ba09b76eb2684c38dd1f32ce53d6b commit 4a7ac35f246ba09b76eb2684c38dd1f32ce53d6b Author: Yuke Liao <liaoyuke@chromium.org> Date: Fri Nov 17 18:34:08 2017 Revert "Reland DownloadTaskImpl implementation for //ios/web Download API." This reverts commit 220c3a649add92e99f425ad40de45525396f0913. Reason for revert: DownloadTaskImplTest.* are failing again on iOS 11 devices: For example: DownloadTaskImplTest.FailureInTheBeginning: ../../ios/web/download/download_task_impl_unittest.mm:321: Failure Value of: session_task Actual: false Expected: true ../../ios/web/download/download_task_impl_unittest.mm:319: Failure Actual function call count doesn't match EXPECT_CALL(task_observer_, OnDownloadUpdated(task_.get()))... Expected: to be called once Actual: never called - unsatisfied and active unknown file: Failure Uninteresting mock function call - returning directly. Function call: OnTaskDestroyed(0x101752170) Original change's description: > Reland DownloadTaskImpl implementation for //ios/web Download API. > > This CL implements DownloadTask public interface. > > DownloadControllerImpl CL: crrev.com/c/758525 > Design doc: http://go/ios-web-download-api > > Bug: 780646 > Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs > Change-Id: Iffea44bfb64cc945f7d899dd7181556a730394f1 > Reviewed-on: https://chromium-review.googlesource.com/775889 > Reviewed-by: Sylvain Defresne <sdefresne@chromium.org> > Commit-Queue: Eugene But <eugenebut@chromium.org> > Cr-Commit-Position: refs/heads/master@{#517424} TBR=sdefresne@chromium.org,eugenebut@chromium.org Change-Id: I254a9d8856c29bbe228a2dc96838536dd23e5a35 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 780646 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Reviewed-on: https://chromium-review.googlesource.com/777063 Reviewed-by: Yuke Liao <liaoyuke@chromium.org> Commit-Queue: Yuke Liao <liaoyuke@chromium.org> Cr-Commit-Position: refs/heads/master@{#517485} [modify] https://crrev.com/4a7ac35f246ba09b76eb2684c38dd1f32ce53d6b/ios/web/BUILD.gn [delete] https://crrev.com/6fe385870629d143c8c737ac061393b8b9aa7025/ios/web/download/BUILD.gn [delete] https://crrev.com/6fe385870629d143c8c737ac061393b8b9aa7025/ios/web/download/OWNERS [delete] https://crrev.com/6fe385870629d143c8c737ac061393b8b9aa7025/ios/web/download/download_task_impl.h [delete] https://crrev.com/6fe385870629d143c8c737ac061393b8b9aa7025/ios/web/download/download_task_impl.mm [delete] https://crrev.com/6fe385870629d143c8c737ac061393b8b9aa7025/ios/web/download/download_task_impl_unittest.mm [modify] https://crrev.com/4a7ac35f246ba09b76eb2684c38dd1f32ce53d6b/ios/web/test/fakes/BUILD.gn [delete] https://crrev.com/6fe385870629d143c8c737ac061393b8b9aa7025/ios/web/test/fakes/crw_fake_nsurl_session_task.h [delete] https://crrev.com/6fe385870629d143c8c737ac061393b8b9aa7025/ios/web/test/fakes/crw_fake_nsurl_session_task.mm
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/3dd6bfed683485c39ee65a4d43839c14fb818879 commit 3dd6bfed683485c39ee65a4d43839c14fb818879 Author: Eugene But <eugenebut@google.com> Date: Mon Nov 20 21:01:47 2017 2nd reland DownloadTaskImpl implementation for //ios/web Download API. This CL implements DownloadTask public interface. DownloadControllerImpl CL: crrev.com/c/758525 Design doc: http://go/ios-web-download-api TBR=sdefresne@chromium.org Bug: 780646 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Change-Id: Ia987c2fd37460bdd7d9095b6fc49d176474aa96f Reviewed-on: https://chromium-review.googlesource.com/777708 Reviewed-by: Eugene But <eugenebut@chromium.org> Commit-Queue: Eugene But <eugenebut@chromium.org> Cr-Commit-Position: refs/heads/master@{#517925} [modify] https://crrev.com/3dd6bfed683485c39ee65a4d43839c14fb818879/ios/web/BUILD.gn [add] https://crrev.com/3dd6bfed683485c39ee65a4d43839c14fb818879/ios/web/download/BUILD.gn [add] https://crrev.com/3dd6bfed683485c39ee65a4d43839c14fb818879/ios/web/download/OWNERS [add] https://crrev.com/3dd6bfed683485c39ee65a4d43839c14fb818879/ios/web/download/download_task_impl.h [add] https://crrev.com/3dd6bfed683485c39ee65a4d43839c14fb818879/ios/web/download/download_task_impl.mm [add] https://crrev.com/3dd6bfed683485c39ee65a4d43839c14fb818879/ios/web/download/download_task_impl_unittest.mm [modify] https://crrev.com/3dd6bfed683485c39ee65a4d43839c14fb818879/ios/web/test/fakes/BUILD.gn [add] https://crrev.com/3dd6bfed683485c39ee65a4d43839c14fb818879/ios/web/test/fakes/crw_fake_nsurl_session_task.h [add] https://crrev.com/3dd6bfed683485c39ee65a4d43839c14fb818879/ios/web/test/fakes/crw_fake_nsurl_session_task.mm
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/981761325b741e28321ce6c751107e9bc1f5003c commit 981761325b741e28321ce6c751107e9bc1f5003c Author: Eugene But <eugenebut@google.com> Date: Tue Nov 21 01:23:36 2017 DownloadControllerImpl implementation for //ios/web Download API. This CL implements DownloadController public interface. DownloadTaskImpl CL: crrev.com/c/758506 Design doc: http://go/ios-web-download-api Bug: 780646 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Change-Id: I63c13a3db80b3f2fe7fac5d34b235bd9e334ee52 Reviewed-on: https://chromium-review.googlesource.com/758525 Commit-Queue: Eugene But <eugenebut@chromium.org> Reviewed-by: Gregory Chatzinoff <gchatz@chromium.org> Reviewed-by: Sylvain Defresne <sdefresne@chromium.org> Cr-Commit-Position: refs/heads/master@{#518018} [modify] https://crrev.com/981761325b741e28321ce6c751107e9bc1f5003c/ios/web/download/BUILD.gn [add] https://crrev.com/981761325b741e28321ce6c751107e9bc1f5003c/ios/web/download/download_controller_impl.h [add] https://crrev.com/981761325b741e28321ce6c751107e9bc1f5003c/ios/web/download/download_controller_impl.mm [add] https://crrev.com/981761325b741e28321ce6c751107e9bc1f5003c/ios/web/download/download_controller_impl_unittest.mm [modify] https://crrev.com/981761325b741e28321ce6c751107e9bc1f5003c/ios/web/public/download/download_controller.h [modify] https://crrev.com/981761325b741e28321ce6c751107e9bc1f5003c/ios/web/public/test/fakes/BUILD.gn [add] https://crrev.com/981761325b741e28321ce6c751107e9bc1f5003c/ios/web/public/test/fakes/fake_download_controller_delegate.h [add] https://crrev.com/981761325b741e28321ce6c751107e9bc1f5003c/ios/web/public/test/fakes/fake_download_controller_delegate.mm
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/561a25c4af8d9db9ea2ab002bc1454e0a67bbb4b commit 561a25c4af8d9db9ea2ab002bc1454e0a67bbb4b Author: Eugene But <eugenebut@google.com> Date: Tue Nov 21 19:46:48 2017 Initialize DownloadControllerImpl delegate with null. TBR=sdefresne@chromium.org Bug: 780646 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Change-Id: Ifb036c069fd34f3b7b59e613e8b1d130eb74e918 Reviewed-on: https://chromium-review.googlesource.com/782800 Commit-Queue: Eugene But <eugenebut@chromium.org> Reviewed-by: Eugene But <eugenebut@chromium.org> Cr-Commit-Position: refs/heads/master@{#518339} [modify] https://crrev.com/561a25c4af8d9db9ea2ab002bc1454e0a67bbb4b/ios/web/download/download_controller_impl.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d08f91c6044968b1472234f260a2e02ea1407e30 commit d08f91c6044968b1472234f260a2e02ea1407e30 Author: Eugene But <eugenebut@google.com> Date: Tue Nov 21 23:14:10 2017 Integrated DownloadController into CRWWebController. This CL completes ios/web Download API implementation. Integration test will be landed in a separate CL. Embedder does not set DownloadController delegate yet, so this CL does not trigger the second download. Design doc: http://go/ios-web-download-api Bug: 780646 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Change-Id: Icc9d5c5432a038237f80e7f35ddaa787dbb165fe Reviewed-on: https://chromium-review.googlesource.com/764890 Commit-Queue: Eugene But <eugenebut@chromium.org> Reviewed-by: Sylvain Defresne <sdefresne@chromium.org> Cr-Commit-Position: refs/heads/master@{#518431} [modify] https://crrev.com/d08f91c6044968b1472234f260a2e02ea1407e30/ios/web/BUILD.gn [modify] https://crrev.com/d08f91c6044968b1472234f260a2e02ea1407e30/ios/web/test/fakes/BUILD.gn [add] https://crrev.com/d08f91c6044968b1472234f260a2e02ea1407e30/ios/web/test/fakes/crw_fake_wk_navigation_response.h [add] https://crrev.com/d08f91c6044968b1472234f260a2e02ea1407e30/ios/web/test/fakes/crw_fake_wk_navigation_response.mm [modify] https://crrev.com/d08f91c6044968b1472234f260a2e02ea1407e30/ios/web/web_state/ui/BUILD.gn [modify] https://crrev.com/d08f91c6044968b1472234f260a2e02ea1407e30/ios/web/web_state/ui/crw_web_controller.mm [modify] https://crrev.com/d08f91c6044968b1472234f260a2e02ea1407e30/ios/web/web_state/ui/crw_web_controller_unittest.mm
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/edbfbe9e781882ac0f86d32ee32fe4ca4c20df55 commit edbfbe9e781882ac0f86d32ee32fe4ca4c20df55 Author: Eugene But <eugenebut@google.com> Date: Wed Nov 22 03:11:52 2017 Integration tests for public Download API Bug: 780646 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Change-Id: I73d042eb7ea3f7124e1e4cca467994f2b4d41d69 Reviewed-on: https://chromium-review.googlesource.com/726896 Commit-Queue: Eugene But <eugenebut@chromium.org> Reviewed-by: Sylvain Defresne <sdefresne@chromium.org> Cr-Commit-Position: refs/heads/master@{#518516} [modify] https://crrev.com/edbfbe9e781882ac0f86d32ee32fe4ca4c20df55/ios/web/BUILD.gn [modify] https://crrev.com/edbfbe9e781882ac0f86d32ee32fe4ca4c20df55/ios/web/download/BUILD.gn [add] https://crrev.com/edbfbe9e781882ac0f86d32ee32fe4ca4c20df55/ios/web/download/download_inttest.mm
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/a33cd4d1fac752f7879e6a9725bf14fcd2372231 commit a33cd4d1fac752f7879e6a9725bf14fcd2372231 Author: Eugene But <eugenebut@google.com> Date: Wed Nov 22 22:56:24 2017 Used WKHTTPCookieStore on UI thread. WKHTTPCookieStore crashes if used on a background thread. Bug: 780646 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Change-Id: I7c300eb26aca984f50e336b4b34fda2050a0bea5 Reviewed-on: https://chromium-review.googlesource.com/786542 Reviewed-by: Mohammad Refaat <mrefaat@chromium.org> Commit-Queue: Eugene But <eugenebut@chromium.org> Cr-Commit-Position: refs/heads/master@{#518783} [modify] https://crrev.com/a33cd4d1fac752f7879e6a9725bf14fcd2372231/ios/web/download/download_task_impl.mm
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d57837be21b0d1dd4c85042b1d08df7b5205c52e commit d57837be21b0d1dd4c85042b1d08df7b5205c52e Author: Eugene But <eugenebut@google.com> Date: Thu Nov 23 12:06:34 2017 Pass non-const WebState* to OnDownloadCreated. Embedder's OnDownloadCreated will use passed web_state to create TabHelper object. So web_state has to be non-const to create a non-const TabHelper. Bug: 780646 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Change-Id: I5b8877e6c3683148d056d2d7639cf9ef12d7ec5b Reviewed-on: https://chromium-review.googlesource.com/786319 Commit-Queue: Sylvain Defresne <sdefresne@chromium.org> Reviewed-by: Sylvain Defresne <sdefresne@chromium.org> Cr-Commit-Position: refs/heads/master@{#518897} [modify] https://crrev.com/d57837be21b0d1dd4c85042b1d08df7b5205c52e/ios/web/download/download_controller_impl.h [modify] https://crrev.com/d57837be21b0d1dd4c85042b1d08df7b5205c52e/ios/web/download/download_controller_impl.mm [modify] https://crrev.com/d57837be21b0d1dd4c85042b1d08df7b5205c52e/ios/web/public/download/download_controller.h [modify] https://crrev.com/d57837be21b0d1dd4c85042b1d08df7b5205c52e/ios/web/public/download/download_controller_delegate.h [modify] https://crrev.com/d57837be21b0d1dd4c85042b1d08df7b5205c52e/ios/web/public/test/fakes/fake_download_controller_delegate.h [modify] https://crrev.com/d57837be21b0d1dd4c85042b1d08df7b5205c52e/ios/web/public/test/fakes/fake_download_controller_delegate.mm
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/11fe3c867b39e0da871b00c145ab8344787ed64c commit 11fe3c867b39e0da871b00c145ab8344787ed64c Author: Eugene But <eugenebut@google.com> Date: Tue Nov 28 19:33:39 2017 Added feature flags for FileDownload and PassKitDownload features. This CL adds kNewPassKitDownload and kNewFileDownload flags usage to the web layer. Turning on kNewPassKitDownload flag will disable CRWPassKitDownloader and webController:didLoadPassKitObject: callback. Turning on kNewFileDownload will disable controllerForUnhandledContentAtURL: callback. Turning either of these flags on will add a logic, which discards pending item if that item is download. Both flags are turned off by default and there is no way to enable them via chrome://flags yet. This CL slightly changes the code inside WKNavigationDelegate's webView:decidePolicyForNavigationResponse:decisionHandler: as follows: - CRWPassKitDownloader download is moved behind |!allowNavigation| - allowNavigation is not set to no if MIME type is PassKit These are non functional changes because if MIME type is PassKit, then |allowNavigation| is always NO. Bug: 780646 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Change-Id: I948ae3e1f38d266eda8aa7b99900900d8c02fef3 Reviewed-on: https://chromium-review.googlesource.com/783671 Commit-Queue: Eugene But <eugenebut@chromium.org> Reviewed-by: Gregory Chatzinoff <gchatz@chromium.org> Cr-Commit-Position: refs/heads/master@{#519795} [modify] https://crrev.com/11fe3c867b39e0da871b00c145ab8344787ed64c/ios/web/web_state/crw_pass_kit_downloader.h [modify] https://crrev.com/11fe3c867b39e0da871b00c145ab8344787ed64c/ios/web/web_state/crw_pass_kit_downloader.mm [modify] https://crrev.com/11fe3c867b39e0da871b00c145ab8344787ed64c/ios/web/web_state/ui/crw_web_controller.mm
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/7c83ed409670a50e7a229988b66dc818e1d1ccbc commit 7c83ed409670a50e7a229988b66dc818e1d1ccbc Author: Eugene But <eugenebut@google.com> Date: Thu Nov 30 21:09:11 2017 Pass non-const DownloadTask* to OnDownloadUpdated. Implementors of DownloadTaskObserver::OnDownloadUpdated should be able to call RemoveObserver on a ppased task, if the download is complete. Bug: 780646 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Change-Id: I86f2058e35e9caeb09e32505ef05486f855646eb Reviewed-on: https://chromium-review.googlesource.com/798312 Reviewed-by: Gregory Chatzinoff <gchatz@chromium.org> Commit-Queue: Eugene But <eugenebut@chromium.org> Cr-Commit-Position: refs/heads/master@{#520684} [modify] https://crrev.com/7c83ed409670a50e7a229988b66dc818e1d1ccbc/ios/web/download/download_task_impl_unittest.mm [modify] https://crrev.com/7c83ed409670a50e7a229988b66dc818e1d1ccbc/ios/web/public/download/download_task_observer.h
Comment 1 by eugene...@chromium.org
, Nov 1 2017