OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #import "ios/chrome/browser/ui/history/history_panel_view_controller.h" | 5 #import "ios/chrome/browser/ui/history/history_panel_view_controller.h" |
6 | 6 |
7 #include "base/ios/block_types.h" | 7 #include "base/ios/block_types.h" |
8 #include "base/ios/ios_util.h" | 8 #include "base/ios/ios_util.h" |
9 #include "base/mac/scoped_nsobject.h" | 9 #include "base/mac/scoped_nsobject.h" |
| 10 #include "base/metrics/user_metrics.h" |
| 11 #include "base/metrics/user_metrics_action.h" |
10 #include "components/strings/grit/components_strings.h" | 12 #include "components/strings/grit/components_strings.h" |
11 #import "ios/chrome/browser/ui/history/clear_browsing_bar.h" | 13 #import "ios/chrome/browser/ui/history/clear_browsing_bar.h" |
12 #import "ios/chrome/browser/ui/history/history_collection_view_controller.h" | 14 #import "ios/chrome/browser/ui/history/history_collection_view_controller.h" |
13 #import "ios/chrome/browser/ui/history/history_search_view_controller.h" | 15 #import "ios/chrome/browser/ui/history/history_search_view_controller.h" |
14 #import "ios/chrome/browser/ui/icons/chrome_icon.h" | 16 #import "ios/chrome/browser/ui/icons/chrome_icon.h" |
15 #import "ios/chrome/browser/ui/material_components/utils.h" | 17 #import "ios/chrome/browser/ui/material_components/utils.h" |
16 #import "ios/chrome/browser/ui/ntp/recent_tabs/views/panel_bar_view.h" | 18 #import "ios/chrome/browser/ui/ntp/recent_tabs/views/panel_bar_view.h" |
17 #import "ios/chrome/browser/ui/show_privacy_settings_util.h" | 19 #import "ios/chrome/browser/ui/show_privacy_settings_util.h" |
18 #import "ios/chrome/browser/ui/uikit_ui_util.h" | 20 #import "ios/chrome/browser/ui/uikit_ui_util.h" |
19 #import "ios/chrome/browser/ui/url_loader.h" | 21 #import "ios/chrome/browser/ui/url_loader.h" |
(...skipping 272 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
292 [self closeHistoryWithCompletion:nil]; | 294 [self closeHistoryWithCompletion:nil]; |
293 } | 295 } |
294 | 296 |
295 - (void)closeHistoryWithCompletion:(ProceduralBlock)completion { | 297 - (void)closeHistoryWithCompletion:(ProceduralBlock)completion { |
296 [self.presentingViewController dismissViewControllerAnimated:YES | 298 [self.presentingViewController dismissViewControllerAnimated:YES |
297 completion:completion]; | 299 completion:completion]; |
298 } | 300 } |
299 | 301 |
300 - (void)openPrivacySettings { | 302 - (void)openPrivacySettings { |
301 [self exitSearchMode]; | 303 [self exitSearchMode]; |
| 304 base::RecordAction( |
| 305 base::UserMetricsAction("HistoryPage_InitClearBrowsingData")); |
302 ShowClearBrowsingData(); | 306 ShowClearBrowsingData(); |
303 } | 307 } |
304 | 308 |
305 - (void)enterEditingMode { | 309 - (void)enterEditingMode { |
306 [_historyCollectionController setEditing:YES]; | 310 [_historyCollectionController setEditing:YES]; |
307 [_clearBrowsingBar setEditing:YES]; | 311 [_clearBrowsingBar setEditing:YES]; |
308 if (_historyCollectionController.get().searching) { | 312 if (_historyCollectionController.get().searching) { |
309 [_searchViewController setEnabled:NO]; | 313 [_searchViewController setEnabled:NO]; |
310 } | 314 } |
311 DCHECK([_historyCollectionController isEditing]); | 315 DCHECK([_historyCollectionController isEditing]); |
312 [self configureNavigationBar]; | 316 [self configureNavigationBar]; |
313 } | 317 } |
314 | 318 |
315 - (void)exitEditingMode { | 319 - (void)exitEditingMode { |
316 [_historyCollectionController setEditing:NO]; | 320 [_historyCollectionController setEditing:NO]; |
317 [_clearBrowsingBar setEditing:NO]; | 321 [_clearBrowsingBar setEditing:NO]; |
318 if (_historyCollectionController.get().searching) { | 322 if (_historyCollectionController.get().searching) { |
319 [_searchViewController setEnabled:YES]; | 323 [_searchViewController setEnabled:YES]; |
320 } | 324 } |
321 DCHECK(![_historyCollectionController isEditing]); | 325 DCHECK(![_historyCollectionController isEditing]); |
322 [self configureNavigationBar]; | 326 [self configureNavigationBar]; |
323 } | 327 } |
324 | 328 |
325 - (void)deleteSelectedItems { | 329 - (void)deleteSelectedItems { |
326 [_historyCollectionController deleteSelectedItemsFromHistory]; | 330 [_historyCollectionController deleteSelectedItemsFromHistory]; |
| 331 base::RecordAction(base::UserMetricsAction("HistoryPage_RemoveSelected")); |
327 [self exitEditingMode]; | 332 [self exitEditingMode]; |
328 } | 333 } |
329 - (void)enterSearchMode { | 334 - (void)enterSearchMode { |
330 if (!_searchViewController) { | 335 if (!_searchViewController) { |
331 _searchViewController.reset([[HistorySearchViewController alloc] init]); | 336 _searchViewController.reset([[HistorySearchViewController alloc] init]); |
332 [_searchViewController setDelegate:self]; | 337 [_searchViewController setDelegate:self]; |
333 } | 338 } |
334 | 339 |
335 UIView* searchBarView = [_searchViewController view]; | 340 UIView* searchBarView = [_searchViewController view]; |
336 [_searchViewController willMoveToParentViewController:self]; | 341 [_searchViewController willMoveToParentViewController:self]; |
337 [self.view addSubview:searchBarView]; | 342 [self.view addSubview:searchBarView]; |
338 _historyCollectionController.get().searching = YES; | 343 _historyCollectionController.get().searching = YES; |
339 [_searchViewController didMoveToParentViewController:self]; | 344 [_searchViewController didMoveToParentViewController:self]; |
| 345 base::RecordAction(base::UserMetricsAction("HistoryPage_Search")); |
340 | 346 |
341 // Constraints to make search bar cover header. | 347 // Constraints to make search bar cover header. |
342 [searchBarView setTranslatesAutoresizingMaskIntoConstraints:NO]; | 348 [searchBarView setTranslatesAutoresizingMaskIntoConstraints:NO]; |
343 MDCFlexibleHeaderView* headerView = | 349 MDCFlexibleHeaderView* headerView = |
344 _appBar.get().headerViewController.headerView; | 350 _appBar.get().headerViewController.headerView; |
345 NSArray* constraints = @[ | 351 NSArray* constraints = @[ |
346 [[searchBarView topAnchor] constraintEqualToAnchor:headerView.topAnchor], | 352 [[searchBarView topAnchor] constraintEqualToAnchor:headerView.topAnchor], |
347 [[searchBarView leadingAnchor] | 353 [[searchBarView leadingAnchor] |
348 constraintEqualToAnchor:headerView.leadingAnchor], | 354 constraintEqualToAnchor:headerView.leadingAnchor], |
349 [[searchBarView heightAnchor] | 355 [[searchBarView heightAnchor] |
(...skipping 22 matching lines...) Expand all Loading... |
372 | 378 |
373 - (void)configureClearBrowsingBar { | 379 - (void)configureClearBrowsingBar { |
374 _clearBrowsingBar.get().editing = _historyCollectionController.get().editing; | 380 _clearBrowsingBar.get().editing = _historyCollectionController.get().editing; |
375 _clearBrowsingBar.get().deleteButtonEnabled = | 381 _clearBrowsingBar.get().deleteButtonEnabled = |
376 [_historyCollectionController hasSelectedEntries]; | 382 [_historyCollectionController hasSelectedEntries]; |
377 _clearBrowsingBar.get().editButtonEnabled = | 383 _clearBrowsingBar.get().editButtonEnabled = |
378 [_historyCollectionController hasHistoryEntries]; | 384 [_historyCollectionController hasHistoryEntries]; |
379 } | 385 } |
380 | 386 |
381 @end | 387 @end |
OLD | NEW |