| Index: ios/web_view/internal/translate/criwv_translate_manager_impl.mm
|
| diff --git a/ios/web_view/internal/translate/criwv_translate_manager_impl.mm b/ios/web_view/internal/translate/criwv_translate_manager_impl.mm
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..af0920f9677c1c425d0ba44daa98e3fb92aaeb8b
|
| --- /dev/null
|
| +++ b/ios/web_view/internal/translate/criwv_translate_manager_impl.mm
|
| @@ -0,0 +1,39 @@
|
| +// Copyright 2014 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#import "ios/web_view/internal/translate/criwv_translate_manager_impl.h"
|
| +
|
| +#include "base/logging.h"
|
| +#include "components/translate/core/browser/translate_manager.h"
|
| +#include "components/translate/core/browser/translate_ui_delegate.h"
|
| +
|
| +@interface CRIWVTranslateManagerImpl () {
|
| + std::unique_ptr<translate::TranslateUIDelegate> _translateUIDelegate;
|
| +}
|
| +@end
|
| +
|
| +@implementation CRIWVTranslateManagerImpl
|
| +
|
| +- (instancetype)initWithTranslateManager:(translate::TranslateManager*)manager
|
| + sourceLanguage:(const std::string&)source
|
| + targetLanguage:(const std::string&)target {
|
| + if ((self = [super init])) {
|
| + DCHECK(manager);
|
| + _translateUIDelegate.reset(new translate::TranslateUIDelegate(
|
| + manager->GetWeakPtr(), source, target));
|
| + }
|
| + return self;
|
| +}
|
| +
|
| +#pragma mark CRIWVTranslateManager methods
|
| +
|
| +- (void)translate {
|
| + _translateUIDelegate->Translate();
|
| +}
|
| +
|
| +- (void)revertTranslation {
|
| + _translateUIDelegate->RevertTranslation();
|
| +}
|
| +
|
| +@end
|
|
|