Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(105)

Side by Side Diff: ios/chrome/browser/ui/browser_view_controller.mm

Issue 2659693004: Add context menu when long press on a reading list entry (Closed)
Patch Set: Address comments Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 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/browser_view_controller.h" 5 #import "ios/chrome/browser/ui/browser_view_controller.h"
6 6
7 #import <AssetsLibrary/AssetsLibrary.h> 7 #import <AssetsLibrary/AssetsLibrary.h>
8 #import <MobileCoreServices/MobileCoreServices.h> 8 #import <MobileCoreServices/MobileCoreServices.h>
9 #import <PassKit/PassKit.h> 9 #import <PassKit/PassKit.h>
10 #import <Photos/Photos.h> 10 #import <Photos/Photos.h>
(...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after
141 #import "ios/chrome/browser/ui/tab_switcher/tab_switcher_controller.h" 141 #import "ios/chrome/browser/ui/tab_switcher/tab_switcher_controller.h"
142 #import "ios/chrome/browser/ui/tabs/tab_strip_controller.h" 142 #import "ios/chrome/browser/ui/tabs/tab_strip_controller.h"
143 #import "ios/chrome/browser/ui/toolbar/toolbar_controller.h" 143 #import "ios/chrome/browser/ui/toolbar/toolbar_controller.h"
144 #include "ios/chrome/browser/ui/toolbar/toolbar_model_delegate_ios.h" 144 #include "ios/chrome/browser/ui/toolbar/toolbar_model_delegate_ios.h"
145 #include "ios/chrome/browser/ui/toolbar/toolbar_model_ios.h" 145 #include "ios/chrome/browser/ui/toolbar/toolbar_model_ios.h"
146 #import "ios/chrome/browser/ui/tools_menu/tools_menu_context.h" 146 #import "ios/chrome/browser/ui/tools_menu/tools_menu_context.h"
147 #import "ios/chrome/browser/ui/tools_menu/tools_menu_view_item.h" 147 #import "ios/chrome/browser/ui/tools_menu/tools_menu_view_item.h"
148 #import "ios/chrome/browser/ui/tools_menu/tools_popup_controller.h" 148 #import "ios/chrome/browser/ui/tools_menu/tools_popup_controller.h"
149 #include "ios/chrome/browser/ui/ui_util.h" 149 #include "ios/chrome/browser/ui/ui_util.h"
150 #import "ios/chrome/browser/ui/uikit_ui_util.h" 150 #import "ios/chrome/browser/ui/uikit_ui_util.h"
151 #import "ios/chrome/browser/ui/util/pasteboard_util.h"
151 #import "ios/chrome/browser/ui/voice/text_to_speech_player.h" 152 #import "ios/chrome/browser/ui/voice/text_to_speech_player.h"
152 #include "ios/chrome/browser/upgrade/upgrade_center.h" 153 #include "ios/chrome/browser/upgrade/upgrade_center.h"
153 #import "ios/chrome/browser/web/error_page_content.h" 154 #import "ios/chrome/browser/web/error_page_content.h"
154 #import "ios/chrome/browser/web/passkit_dialog_provider.h" 155 #import "ios/chrome/browser/web/passkit_dialog_provider.h"
155 #import "ios/chrome/browser/web/repost_form_tab_helper.h" 156 #import "ios/chrome/browser/web/repost_form_tab_helper.h"
156 #import "ios/chrome/browser/xcallback_parameters.h" 157 #import "ios/chrome/browser/xcallback_parameters.h"
157 #import "ios/chrome/common/material_timing.h" 158 #import "ios/chrome/common/material_timing.h"
158 #include "ios/chrome/grit/ios_chromium_strings.h" 159 #include "ios/chrome/grit/ios_chromium_strings.h"
159 #include "ios/chrome/grit/ios_strings.h" 160 #include "ios/chrome/grit/ios_strings.h"
160 #import "ios/net/request_tracker.h" 161 #import "ios/net/request_tracker.h"
(...skipping 2331 matching lines...) Expand 10 before | Expand all | Expand 10 after
2492 Record(ACTION_READ_LATER, isImage, isLink); 2493 Record(ACTION_READ_LATER, isImage, isLink);
2493 [weakSelf addToReadingListURL:link title:innerText]; 2494 [weakSelf addToReadingListURL:link title:innerText];
2494 }; 2495 };
2495 [_contextMenuCoordinator addItemWithTitle:title action:action]; 2496 [_contextMenuCoordinator addItemWithTitle:title action:action];
2496 } 2497 }
2497 } 2498 }
2498 // Copy Link. 2499 // Copy Link.
2499 title = l10n_util::GetNSStringWithFixup(IDS_IOS_CONTENT_CONTEXT_COPY); 2500 title = l10n_util::GetNSStringWithFixup(IDS_IOS_CONTENT_CONTEXT_COPY);
2500 action = ^{ 2501 action = ^{
2501 Record(ACTION_COPY_LINK_ADDRESS, isImage, isLink); 2502 Record(ACTION_COPY_LINK_ADDRESS, isImage, isLink);
2502 NSURL* url = net::NSURLWithGURL(link); 2503 StoreURLInPasteboard(link);
2503 NSDictionary* item = @{
2504 (NSString*)kUTTypeURL : url,
2505 (NSString*)kUTTypeUTF8PlainText :
2506 [[url absoluteString] dataUsingEncoding:NSUTF8StringEncoding],
2507 };
2508 [[UIPasteboard generalPasteboard] setItems:@[ item ]];
2509 }; 2504 };
2510 [_contextMenuCoordinator addItemWithTitle:title action:action]; 2505 [_contextMenuCoordinator addItemWithTitle:title action:action];
2511 } 2506 }
2512 if (isImage) { 2507 if (isImage) {
2513 web::Referrer referrer([_model currentTab].url, params.referrer_policy); 2508 web::Referrer referrer([_model currentTab].url, params.referrer_policy);
2514 // Save Image. 2509 // Save Image.
2515 if (experimental_flags::IsDownloadRenamingEnabled()) { 2510 if (experimental_flags::IsDownloadRenamingEnabled()) {
2516 title = l10n_util::GetNSStringWithFixup( 2511 title = l10n_util::GetNSStringWithFixup(
2517 IDS_IOS_CONTENT_CONTEXT_DOWNLOADIMAGE); 2512 IDS_IOS_CONTENT_CONTEXT_DOWNLOADIMAGE);
2518 } else { 2513 } else {
(...skipping 1831 matching lines...) Expand 10 before | Expand all | Expand 10 after
4350 Tab* tab = [_model currentTab]; 4345 Tab* tab = [_model currentTab];
4351 web::NavigationManager::WebLoadParams params(URL); 4346 web::NavigationManager::WebLoadParams params(URL);
4352 params.transition_type = ui::PAGE_TRANSITION_AUTO_BOOKMARK; 4347 params.transition_type = ui::PAGE_TRANSITION_AUTO_BOOKMARK;
4353 [[tab webController] loadWithParams:params]; 4348 [[tab webController] loadWithParams:params];
4354 } 4349 }
4355 4350
4356 - (void)showReadingList { 4351 - (void)showReadingList {
4357 DCHECK(reading_list::switches::IsReadingListEnabled()); 4352 DCHECK(reading_list::switches::IsReadingListEnabled());
4358 UIViewController* vc = [ReadingListViewControllerBuilder 4353 UIViewController* vc = [ReadingListViewControllerBuilder
4359 readingListViewControllerInBrowserState:self.browserState 4354 readingListViewControllerInBrowserState:self.browserState
4360 tabModel:_model]; 4355 loader:self];
4361 [self presentViewController:vc animated:YES completion:nil]; 4356 [self presentViewController:vc animated:YES completion:nil];
4362 } 4357 }
4363 4358
4364 - (void)showQRScanner { 4359 - (void)showQRScanner {
4365 _qrScannerViewController.reset( 4360 _qrScannerViewController.reset(
4366 [[QRScannerViewController alloc] initWithDelegate:_toolbarController]); 4361 [[QRScannerViewController alloc] initWithDelegate:_toolbarController]);
4367 [self presentViewController:[_qrScannerViewController 4362 [self presentViewController:[_qrScannerViewController
4368 getViewControllerToPresent] 4363 getViewControllerToPresent]
4369 animated:YES 4364 animated:YES
4370 completion:nil]; 4365 completion:nil];
(...skipping 773 matching lines...) Expand 10 before | Expand all | Expand 10 after
5144 5139
5145 - (UIView*)voiceSearchButton { 5140 - (UIView*)voiceSearchButton {
5146 return _voiceSearchButton; 5141 return _voiceSearchButton;
5147 } 5142 }
5148 5143
5149 - (id<LogoAnimationControllerOwner>)logoAnimationControllerOwner { 5144 - (id<LogoAnimationControllerOwner>)logoAnimationControllerOwner {
5150 return [self currentLogoAnimationControllerOwner]; 5145 return [self currentLogoAnimationControllerOwner];
5151 } 5146 }
5152 5147
5153 @end 5148 @end
OLDNEW
« no previous file with comments | « ios/chrome/browser/ui/BUILD.gn ('k') | ios/chrome/browser/ui/history/history_collection_view_controller.mm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698