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 #include "ios/chrome/app/application_delegate/mock_tab_opener.h" | 5 #include "ios/chrome/app/application_delegate/mock_tab_opener.h" |
6 | 6 |
7 #include "base/ios/block_types.h" | 7 #include "base/ios/block_types.h" |
8 #include "base/mac/scoped_block.h" | 8 #include "base/mac/scoped_block.h" |
9 #include "ios/chrome/app/application_mode.h" | 9 #include "ios/chrome/app/application_mode.h" |
10 #include "ui/base/page_transition_types.h" | 10 #include "ui/base/page_transition_types.h" |
11 #include "url/gurl.h" | 11 #include "url/gurl.h" |
12 | 12 |
13 @interface MockTabOpener () { | 13 #if !defined(__has_feature) || !__has_feature(objc_arc) |
14 base::mac::ScopedBlock<ProceduralBlock> _completionBlock; | 14 #error "This file requires ARC support." |
15 } | 15 #endif |
16 | |
17 @end | |
18 | 16 |
19 @implementation MockTabOpener | 17 @implementation MockTabOpener |
20 | 18 |
21 @synthesize url = _url; | 19 @synthesize url = _url; |
22 @synthesize applicationMode = _applicationMode; | 20 @synthesize applicationMode = _applicationMode; |
| 21 @synthesize completionBlock = _completionBlock; |
23 | 22 |
24 - (void)dismissModalsAndOpenSelectedTabInMode:(ApplicationMode)targetMode | 23 - (void)dismissModalsAndOpenSelectedTabInMode:(ApplicationMode)targetMode |
25 withURL:(const GURL&)url | 24 withURL:(const GURL&)url |
26 transition:(ui::PageTransition)transition | 25 transition:(ui::PageTransition)transition |
27 completion:(ProceduralBlock)handler { | 26 completion:(ProceduralBlock)handler { |
28 _url = url; | 27 _url = url; |
29 _applicationMode = targetMode; | 28 _applicationMode = targetMode; |
30 _completionBlock.reset([handler copy]); | 29 _completionBlock = [handler copy]; |
31 } | 30 } |
32 | 31 |
33 - (void)resetURL { | 32 - (void)resetURL { |
34 _url = _url.EmptyGURL(); | 33 _url = _url.EmptyGURL(); |
35 } | 34 } |
36 | 35 |
37 - (void (^)())completionBlock { | |
38 return _completionBlock; | |
39 } | |
40 | |
41 - (void)openTabFromLaunchOptions:(NSDictionary*)launchOptions | 36 - (void)openTabFromLaunchOptions:(NSDictionary*)launchOptions |
42 startupInformation:(id<StartupInformation>)startupInformation | 37 startupInformation:(id<StartupInformation>)startupInformation |
43 appState:(AppState*)appState { | 38 appState:(AppState*)appState { |
44 // Stub. | 39 // Stub. |
45 } | 40 } |
46 | 41 |
47 - (BOOL)shouldOpenNTPTabOnActivationOfTabModel:(TabModel*)tabModel { | 42 - (BOOL)shouldOpenNTPTabOnActivationOfTabModel:(TabModel*)tabModel { |
48 // Stub. | 43 // Stub. |
49 return YES; | 44 return YES; |
50 } | 45 } |
51 | 46 |
52 @end | 47 @end |
OLD | NEW |