Build base coordinator, view controller, and mediator for the tab grid.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/cee58ae0922097a9f85623f27c4bec26a71ba9c6 commit cee58ae0922097a9f85623f27c4bec26a71ba9c6 Author: Mark Cogan <marq@google.com> Date: Tue Feb 13 16:10:38 2018 [ios] Create some initial files for new tab grid. This CL creates stub files for the new tab grid's coordinator and view controller. Bug: 804496 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Change-Id: I68cc168e7c7d1d3329e4cbfb3eb03a47c9d62c9a Reviewed-on: https://chromium-review.googlesource.com/914609 Commit-Queue: Mark Cogan <marq@chromium.org> Reviewed-by: edchin <edchin@chromium.org> Cr-Commit-Position: refs/heads/master@{#536366} [modify] https://crrev.com/cee58ae0922097a9f85623f27c4bec26a71ba9c6/ios/chrome/browser/ui/main/BUILD.gn [add] https://crrev.com/cee58ae0922097a9f85623f27c4bec26a71ba9c6/ios/chrome/browser/ui/tab_grid/BUILD.gn [add] https://crrev.com/cee58ae0922097a9f85623f27c4bec26a71ba9c6/ios/chrome/browser/ui/tab_grid/OWNERS [add] https://crrev.com/cee58ae0922097a9f85623f27c4bec26a71ba9c6/ios/chrome/browser/ui/tab_grid/tab_grid_coordinator.h [add] https://crrev.com/cee58ae0922097a9f85623f27c4bec26a71ba9c6/ios/chrome/browser/ui/tab_grid/tab_grid_coordinator.mm [add] https://crrev.com/cee58ae0922097a9f85623f27c4bec26a71ba9c6/ios/chrome/browser/ui/tab_grid/tab_grid_view_controller.h [add] https://crrev.com/cee58ae0922097a9f85623f27c4bec26a71ba9c6/ios/chrome/browser/ui/tab_grid/tab_grid_view_controller.mm
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/f39767d7272ed1cf147276ba930af095442891a2 commit f39767d7272ed1cf147276ba930af095442891a2 Author: edchin <edchin@chromium.org> Date: Wed Feb 14 18:09:10 2018 [ios] Add experiment flag for Tab Grid This CL adds an experiment flag for Tab Grid, and simply uses the flag to show a blank tab grid when enabled. Bug: 804496 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Change-Id: I9d24d64c77cba8889f2c699763d610617263b9cc Reviewed-on: https://chromium-review.googlesource.com/917427 Commit-Queue: edchin <edchin@chromium.org> Reviewed-by: Mark Cogan <marq@chromium.org> Reviewed-by: edchin <edchin@chromium.org> Cr-Commit-Position: refs/heads/master@{#536751} [modify] https://crrev.com/f39767d7272ed1cf147276ba930af095442891a2/ios/chrome/app/BUILD.gn [modify] https://crrev.com/f39767d7272ed1cf147276ba930af095442891a2/ios/chrome/app/main_controller.mm [modify] https://crrev.com/f39767d7272ed1cf147276ba930af095442891a2/ios/chrome/browser/about_flags.mm [modify] https://crrev.com/f39767d7272ed1cf147276ba930af095442891a2/ios/chrome/browser/ios_chrome_flag_descriptions.cc [modify] https://crrev.com/f39767d7272ed1cf147276ba930af095442891a2/ios/chrome/browser/ios_chrome_flag_descriptions.h [modify] https://crrev.com/f39767d7272ed1cf147276ba930af095442891a2/ios/chrome/browser/ui/tab_grid/BUILD.gn [modify] https://crrev.com/f39767d7272ed1cf147276ba930af095442891a2/ios/chrome/browser/ui/tab_grid/tab_grid_view_controller.h [modify] https://crrev.com/f39767d7272ed1cf147276ba930af095442891a2/ios/chrome/browser/ui/tab_grid/tab_grid_view_controller.mm [modify] https://crrev.com/f39767d7272ed1cf147276ba930af095442891a2/ios/chrome/browser/ui/ui_feature_flags.cc [modify] https://crrev.com/f39767d7272ed1cf147276ba930af095442891a2/ios/chrome/browser/ui/ui_feature_flags.h [modify] https://crrev.com/f39767d7272ed1cf147276ba930af095442891a2/ios/chrome/browser/ui/ui_util.h [modify] https://crrev.com/f39767d7272ed1cf147276ba930af095442891a2/ios/chrome/browser/ui/ui_util.mm
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ce3464b2c520cc604939f81a92864237968faa46 commit ce3464b2c520cc604939f81a92864237968faa46 Author: edchin <edchin@chromium.org> Date: Fri Feb 16 05:25:27 2018 [ios] Basic setup of grid view controller This CL creates a simple grid view controller. It also adds an entry in showcase. Partly to avoid name collision, we name the single grid as a GridViewController. The parent tab switcher with multiple panels and other controls is called the TabGridViewController. Bug: 804496 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Change-Id: Ib5b06befc35408958b8613a776f2c93742137bc7 Reviewed-on: https://chromium-review.googlesource.com/920641 Commit-Queue: edchin <edchin@chromium.org> Reviewed-by: Mark Cogan <marq@chromium.org> Reviewed-by: edchin <edchin@chromium.org> Cr-Commit-Position: refs/heads/master@{#537213} [modify] https://crrev.com/ce3464b2c520cc604939f81a92864237968faa46/ios/chrome/browser/ui/tab_grid/BUILD.gn [add] https://crrev.com/ce3464b2c520cc604939f81a92864237968faa46/ios/chrome/browser/ui/tab_grid/grid_consumer.h [add] https://crrev.com/ce3464b2c520cc604939f81a92864237968faa46/ios/chrome/browser/ui/tab_grid/grid_view_controller.h [add] https://crrev.com/ce3464b2c520cc604939f81a92864237968faa46/ios/chrome/browser/ui/tab_grid/grid_view_controller.mm [modify] https://crrev.com/ce3464b2c520cc604939f81a92864237968faa46/ios/chrome/browser/ui/tab_grid/tab_grid_view_controller.h [modify] https://crrev.com/ce3464b2c520cc604939f81a92864237968faa46/ios/showcase/core/showcase_model.mm [modify] https://crrev.com/ce3464b2c520cc604939f81a92864237968faa46/ios/showcase/tab_grid/BUILD.gn [rename] https://crrev.com/ce3464b2c520cc604939f81a92864237968faa46/ios/showcase/tab_grid/sc_grid_coordinator.h [add] https://crrev.com/ce3464b2c520cc604939f81a92864237968faa46/ios/showcase/tab_grid/sc_grid_coordinator.mm [delete] https://crrev.com/4e890408553814249eb8788ff5bb5ef419d815f7/ios/showcase/tab_grid/sc_tab_grid_coordinator.mm
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/7fb547a7af5b4553eda59b218a5bcf2acfdb9eaa commit 7fb547a7af5b4553eda59b218a5bcf2acfdb9eaa Author: edchin <edchin@chromium.org> Date: Sat Feb 17 00:45:23 2018 [ios] Add tab grid to view controller and showcase Bug: 804496 , 804497 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Change-Id: I05b6627c4eb9ab6ae33e337631b7f1e70466730c Reviewed-on: https://chromium-review.googlesource.com/924650 Commit-Queue: edchin <edchin@chromium.org> Reviewed-by: edchin <edchin@chromium.org> Reviewed-by: Mark Cogan <marq@chromium.org> Cr-Commit-Position: refs/heads/master@{#537485} [modify] https://crrev.com/7fb547a7af5b4553eda59b218a5bcf2acfdb9eaa/ios/chrome/browser/ui/tab_grid/grid_view_controller.h [modify] https://crrev.com/7fb547a7af5b4553eda59b218a5bcf2acfdb9eaa/ios/chrome/browser/ui/tab_grid/grid_view_controller.mm [modify] https://crrev.com/7fb547a7af5b4553eda59b218a5bcf2acfdb9eaa/ios/chrome/browser/ui/tab_grid/tab_grid_view_controller.h [modify] https://crrev.com/7fb547a7af5b4553eda59b218a5bcf2acfdb9eaa/ios/chrome/browser/ui/tab_grid/tab_grid_view_controller.mm [modify] https://crrev.com/7fb547a7af5b4553eda59b218a5bcf2acfdb9eaa/ios/showcase/tab_grid/sc_tab_grid_coordinator.mm
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/84853003d469462fb7cf7dc9ab0258437788799b commit 84853003d469462fb7cf7dc9ab0258437788799b Author: edchin <edchin@chromium.org> Date: Sat Feb 17 02:29:00 2018 [ios] Beginnings of tab grid mediator Bug: 804496 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Change-Id: Ifed54179a9f9ffb5e61f270664af35a3f86c9deb Reviewed-on: https://chromium-review.googlesource.com/924532 Reviewed-by: edchin <edchin@chromium.org> Reviewed-by: Mark Cogan <marq@chromium.org> Commit-Queue: edchin <edchin@chromium.org> Cr-Commit-Position: refs/heads/master@{#537509} [modify] https://crrev.com/84853003d469462fb7cf7dc9ab0258437788799b/ios/chrome/app/main_controller.mm [modify] https://crrev.com/84853003d469462fb7cf7dc9ab0258437788799b/ios/chrome/browser/ui/tab_grid/BUILD.gn [modify] https://crrev.com/84853003d469462fb7cf7dc9ab0258437788799b/ios/chrome/browser/ui/tab_grid/tab_grid_coordinator.h [modify] https://crrev.com/84853003d469462fb7cf7dc9ab0258437788799b/ios/chrome/browser/ui/tab_grid/tab_grid_coordinator.mm [add] https://crrev.com/84853003d469462fb7cf7dc9ab0258437788799b/ios/chrome/browser/ui/tab_grid/tab_grid_mediator.h [add] https://crrev.com/84853003d469462fb7cf7dc9ab0258437788799b/ios/chrome/browser/ui/tab_grid/tab_grid_mediator.mm
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6cad8668625f8c0bd3e4d10608b383e7741c0a88 commit 6cad8668625f8c0bd3e4d10608b383e7741c0a88 Author: edchin <edchin@chromium.org> Date: Fri Feb 23 22:35:27 2018 [ios] GridViewController improvements Improves GridViewController with: - uses GridLayout, a custom layout object. - implements GridConsumer. - calls GridCommands. - enables selection and closing items. - enables image retrieval. - light and dark themes. Bug: 804496 , 804526 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Change-Id: I41ef66f3d9efbe7d4f6a6bfe97db2123c0108880 Reviewed-on: https://chromium-review.googlesource.com/933582 Commit-Queue: edchin <edchin@chromium.org> Reviewed-by: Sergio Collazos <sczs@chromium.org> Reviewed-by: edchin <edchin@chromium.org> Cr-Commit-Position: refs/heads/master@{#538927} [modify] https://crrev.com/6cad8668625f8c0bd3e4d10608b383e7741c0a88/ios/chrome/browser/ui/tab_grid/BUILD.gn [modify] https://crrev.com/6cad8668625f8c0bd3e4d10608b383e7741c0a88/ios/chrome/browser/ui/tab_grid/grid_cell.h [modify] https://crrev.com/6cad8668625f8c0bd3e4d10608b383e7741c0a88/ios/chrome/browser/ui/tab_grid/grid_cell.mm [add] https://crrev.com/6cad8668625f8c0bd3e4d10608b383e7741c0a88/ios/chrome/browser/ui/tab_grid/grid_commands.h [modify] https://crrev.com/6cad8668625f8c0bd3e4d10608b383e7741c0a88/ios/chrome/browser/ui/tab_grid/grid_consumer.h [add] https://crrev.com/6cad8668625f8c0bd3e4d10608b383e7741c0a88/ios/chrome/browser/ui/tab_grid/grid_image_data_source.h [modify] https://crrev.com/6cad8668625f8c0bd3e4d10608b383e7741c0a88/ios/chrome/browser/ui/tab_grid/grid_item.h [modify] https://crrev.com/6cad8668625f8c0bd3e4d10608b383e7741c0a88/ios/chrome/browser/ui/tab_grid/grid_item.mm [add] https://crrev.com/6cad8668625f8c0bd3e4d10608b383e7741c0a88/ios/chrome/browser/ui/tab_grid/grid_layout.h [add] https://crrev.com/6cad8668625f8c0bd3e4d10608b383e7741c0a88/ios/chrome/browser/ui/tab_grid/grid_layout.mm [modify] https://crrev.com/6cad8668625f8c0bd3e4d10608b383e7741c0a88/ios/chrome/browser/ui/tab_grid/grid_view_controller.h [modify] https://crrev.com/6cad8668625f8c0bd3e4d10608b383e7741c0a88/ios/chrome/browser/ui/tab_grid/grid_view_controller.mm [modify] https://crrev.com/6cad8668625f8c0bd3e4d10608b383e7741c0a88/ios/showcase/tab_grid/sc_grid_coordinator.mm
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6f60fb4fa01f7df5713ad4d0bbdd77801a3d3c29 commit 6f60fb4fa01f7df5713ad4d0bbdd77801a3d3c29 Author: edchin <edchin@chromium.org> Date: Wed Feb 28 01:13:53 2018 [ios] TabGridViewController improvements This CL refines the TabGridViewController to include the scroll view, incognito tabs, regular tabs, placeholder for remote tabs, top toolbar, bottom toolbar, the floating action button. Protocols are used to expose delegates, image data sources, and consumers to the outside world. Bug: 804496 , 804499 , 804497 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Change-Id: I3bc3e6b391f50a183b6b4e8103a32dbc0ee34ec1 Reviewed-on: https://chromium-review.googlesource.com/936041 Reviewed-by: Mark Cogan <marq@chromium.org> Reviewed-by: edchin <edchin@chromium.org> Commit-Queue: edchin <edchin@chromium.org> Cr-Commit-Position: refs/heads/master@{#539610} [modify] https://crrev.com/6f60fb4fa01f7df5713ad4d0bbdd77801a3d3c29/ios/chrome/browser/ui/tab_grid/BUILD.gn [modify] https://crrev.com/6f60fb4fa01f7df5713ad4d0bbdd77801a3d3c29/ios/chrome/browser/ui/tab_grid/grid_layout.mm [modify] https://crrev.com/6f60fb4fa01f7df5713ad4d0bbdd77801a3d3c29/ios/chrome/browser/ui/tab_grid/tab_grid_view_controller.h [modify] https://crrev.com/6f60fb4fa01f7df5713ad4d0bbdd77801a3d3c29/ios/chrome/browser/ui/tab_grid/tab_grid_view_controller.mm [modify] https://crrev.com/6f60fb4fa01f7df5713ad4d0bbdd77801a3d3c29/ios/showcase/tab_grid/sc_tab_grid_coordinator.mm
The NextAction date has arrived: 2018-02-28
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ede23beb15547f88ed07d4cc5861b6fd748a45da commit ede23beb15547f88ed07d4cc5861b6fd748a45da Author: edchin <edchin@chromium.org> Date: Thu Mar 01 03:59:57 2018 [ios] TabGridMediator intial implementation Bug: 804496 , 804528 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Change-Id: I993e764eabd2bde4d54ee4c42ddacced3cd316b0 Reviewed-on: https://chromium-review.googlesource.com/942230 Commit-Queue: edchin <edchin@chromium.org> Reviewed-by: edchin <edchin@chromium.org> Reviewed-by: Mark Cogan <marq@chromium.org> Cr-Commit-Position: refs/heads/master@{#540034} [modify] https://crrev.com/ede23beb15547f88ed07d4cc5861b6fd748a45da/ios/chrome/browser/ui/tab_grid/BUILD.gn [modify] https://crrev.com/ede23beb15547f88ed07d4cc5861b6fd748a45da/ios/chrome/browser/ui/tab_grid/grid_consumer.h [modify] https://crrev.com/ede23beb15547f88ed07d4cc5861b6fd748a45da/ios/chrome/browser/ui/tab_grid/grid_view_controller.mm [modify] https://crrev.com/ede23beb15547f88ed07d4cc5861b6fd748a45da/ios/chrome/browser/ui/tab_grid/tab_grid_adaptor.h [modify] https://crrev.com/ede23beb15547f88ed07d4cc5861b6fd748a45da/ios/chrome/browser/ui/tab_grid/tab_grid_adaptor.mm [modify] https://crrev.com/ede23beb15547f88ed07d4cc5861b6fd748a45da/ios/chrome/browser/ui/tab_grid/tab_grid_coordinator.mm [modify] https://crrev.com/ede23beb15547f88ed07d4cc5861b6fd748a45da/ios/chrome/browser/ui/tab_grid/tab_grid_mediator.h [modify] https://crrev.com/ede23beb15547f88ed07d4cc5861b6fd748a45da/ios/chrome/browser/ui/tab_grid/tab_grid_mediator.mm
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/b759b2037b4c3895e11c087761dd3e821f9cba42 commit b759b2037b4c3895e11c087761dd3e821f9cba42 Author: edchin <edchin@chromium.org> Date: Fri Mar 02 00:03:50 2018 [ios] TabGridMediator initial unittests Initial set of unittests tests whether the consumer protocol methods are called. Bug: 804496 Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs Change-Id: Ib252da01784d407720b7980ee4ee1378cdb13c2d Reviewed-on: https://chromium-review.googlesource.com/942696 Reviewed-by: Sergio Collazos <sczs@chromium.org> Reviewed-by: edchin <edchin@chromium.org> Commit-Queue: edchin <edchin@chromium.org> Cr-Commit-Position: refs/heads/master@{#540357} [modify] https://crrev.com/b759b2037b4c3895e11c087761dd3e821f9cba42/ios/chrome/browser/ui/tab_grid/BUILD.gn [modify] https://crrev.com/b759b2037b4c3895e11c087761dd3e821f9cba42/ios/chrome/browser/ui/tab_grid/tab_grid_mediator.h [modify] https://crrev.com/b759b2037b4c3895e11c087761dd3e821f9cba42/ios/chrome/browser/ui/tab_grid/tab_grid_mediator.mm [add] https://crrev.com/b759b2037b4c3895e11c087761dd3e821f9cba42/ios/chrome/browser/ui/tab_grid/tab_grid_mediator_unittest.mm
Created a new task for completing the polishing once we receive UX specs.
The NextAction date has arrived: 2018-03-14
Comment 1 by marq@chromium.org
, Jan 23 2018Labels: MS-Tab-Grid Pri-2
Owner: marq@chromium.org
Status: Available (was: Unconfirmed)