clang format cleanup
This commit is contained in:
@@ -6,20 +6,21 @@
|
||||
#include "brave/ios/browser/api/bookmarks/importer/brave_bookmarks_importer.h"
|
||||
|
||||
#include <vector>
|
||||
#include "brave/ios/browser/api/bookmarks/importer/bookmarks_importer.h"
|
||||
#include "brave/ios/browser/api/bookmarks/importer/bookmark_html_reader.h"
|
||||
#include "brave/ios/browser/api/bookmarks/importer/imported_bookmark_entry.h"
|
||||
|
||||
#include "base/base_paths.h"
|
||||
#include "base/bind.h"
|
||||
#include "base/bind_helpers.h"
|
||||
#include "base/compiler_specific.h"
|
||||
#include "base/files/file_path.h"
|
||||
#include "base/base_paths.h"
|
||||
#include "base/mac/foundation_util.h"
|
||||
#include "base/path_service.h"
|
||||
#include "base/sequenced_task_runner.h"
|
||||
#include "base/strings/sys_string_conversions.h"
|
||||
#include "base/task/post_task.h"
|
||||
#include "base/task/thread_pool.h"
|
||||
#include "brave/ios/browser/api/bookmarks/importer/bookmark_html_reader.h"
|
||||
#include "brave/ios/browser/api/bookmarks/importer/bookmarks_importer.h"
|
||||
#include "brave/ios/browser/api/bookmarks/importer/imported_bookmark_entry.h"
|
||||
#include "ios/web/public/thread/web_task_traits.h"
|
||||
#include "ios/web/public/thread/web_thread.h"
|
||||
#import "net/base/mac/url_conversions.h"
|
||||
@@ -30,19 +31,21 @@
|
||||
#endif
|
||||
|
||||
@implementation BraveImportedBookmark
|
||||
- (instancetype)initFromChromiumImportedBookmark:(const ImportedBookmarkEntry&)entry {
|
||||
- (instancetype)initFromChromiumImportedBookmark:
|
||||
(const ImportedBookmarkEntry&)entry {
|
||||
if ((self = [super init])) {
|
||||
NSMutableArray<NSString *> *paths = [[NSMutableArray alloc] init];
|
||||
NSMutableArray<NSString*>* paths = [[NSMutableArray alloc] init];
|
||||
for (const auto& path : entry.path) {
|
||||
[paths addObject:base::SysUTF16ToNSString(path)];
|
||||
}
|
||||
|
||||
|
||||
_inToolbar = entry.in_toolbar;
|
||||
_isFolder = entry.is_folder;
|
||||
_url = net::NSURLWithGURL(entry.url);
|
||||
_path = paths;
|
||||
_title = base::SysUTF16ToNSString(entry.title);
|
||||
_creationTime = [NSDate dateWithTimeIntervalSince1970:entry.creation_time.ToDoubleT()];
|
||||
_creationTime =
|
||||
[NSDate dateWithTimeIntervalSince1970:entry.creation_time.ToDoubleT()];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
@@ -54,7 +57,8 @@
|
||||
}
|
||||
|
||||
ImportedBookmarkEntry entry;
|
||||
entry.creation_time = base::Time::FromDoubleT([self.creationTime timeIntervalSince1970]);
|
||||
entry.creation_time =
|
||||
base::Time::FromDoubleT([self.creationTime timeIntervalSince1970]);
|
||||
entry.url = net::GURLWithNSURL(self.url);
|
||||
entry.title = base::SysNSStringToUTF16(self.title);
|
||||
entry.in_toolbar = self.inToolbar;
|
||||
@@ -63,26 +67,24 @@
|
||||
}
|
||||
@end
|
||||
|
||||
@interface BraveBookmarksImporter()
|
||||
{
|
||||
@interface BraveBookmarksImporter () {
|
||||
scoped_refptr<base::SequencedTaskRunner> import_thread_;
|
||||
}
|
||||
@property (atomic) bool cancelled; // atomic
|
||||
@property(atomic) bool cancelled; // atomic
|
||||
@end
|
||||
|
||||
@implementation BraveBookmarksImporter
|
||||
- (instancetype)init {
|
||||
if ((self = [super init])) {
|
||||
self.cancelled = false;
|
||||
|
||||
// Create worker thread in which importer runs.
|
||||
// In Chromium, this is created with `base::Thread("import_thread")`
|
||||
import_thread_ = base::CreateSequencedTaskRunner(
|
||||
{base::ThreadPool(), base::MayBlock(),
|
||||
base::TaskPriority::USER_VISIBLE,
|
||||
base::TaskShutdownBehavior::BLOCK_SHUTDOWN});
|
||||
}
|
||||
return self;
|
||||
if ((self = [super init])) {
|
||||
self.cancelled = false;
|
||||
|
||||
// Create worker thread in which importer runs.
|
||||
// In Chromium, this is created with `base::Thread("import_thread")`
|
||||
import_thread_ = base::CreateSequencedTaskRunner(
|
||||
{base::ThreadPool(), base::MayBlock(), base::TaskPriority::USER_VISIBLE,
|
||||
base::TaskShutdownBehavior::BLOCK_SHUTDOWN});
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
- (void)dealloc {
|
||||
@@ -93,154 +95,154 @@
|
||||
self.cancelled = true;
|
||||
}
|
||||
|
||||
- (void)importFromFile:(NSString *)filePath
|
||||
topLevelFolderName:(NSString *)folderName
|
||||
- (void)importFromFile:(NSString*)filePath
|
||||
topLevelFolderName:(NSString*)folderName
|
||||
automaticImport:(bool)automaticImport
|
||||
withListener:(void(^)(BraveBookmarksImporterState, NSArray<BraveImportedBookmark *> * _Nullable))listener {
|
||||
|
||||
base::FilePath source_file_path =
|
||||
base::mac::NSStringToFilePath(filePath);
|
||||
|
||||
//In Chromium, this is IDS_BOOKMARK_GROUP (804)
|
||||
base::string16 top_level_folder_name =
|
||||
base::SysNSStringToUTF16(folderName);
|
||||
|
||||
withListener:
|
||||
(void (^)(BraveBookmarksImporterState,
|
||||
NSArray<BraveImportedBookmark*>* _Nullable))listener {
|
||||
base::FilePath source_file_path = base::mac::NSStringToFilePath(filePath);
|
||||
|
||||
// In Chromium, this is IDS_BOOKMARK_GROUP (804)
|
||||
base::string16 top_level_folder_name = base::SysNSStringToUTF16(folderName);
|
||||
|
||||
auto start_import = [](BraveBookmarksImporter* weak_importer,
|
||||
const base::FilePath& source_file_path,
|
||||
const base::string16& top_level_folder_name,
|
||||
bool automaticImport,
|
||||
std::function<void(BraveBookmarksImporterState, NSArray<BraveImportedBookmark *> *)> listener){
|
||||
//Import cancelled as the importer has been deallocated
|
||||
std::function<void(BraveBookmarksImporterState,
|
||||
NSArray<BraveImportedBookmark*>*)>
|
||||
listener) {
|
||||
// Import cancelled as the importer has been deallocated
|
||||
__strong BraveBookmarksImporter* importer = weak_importer;
|
||||
if (!importer) {
|
||||
listener(BraveBookmarksImporterStateStarted, nullptr);
|
||||
listener(BraveBookmarksImporterStateCancelled, nullptr);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
listener(BraveBookmarksImporterStateStarted, nullptr);
|
||||
std::vector<ImportedBookmarkEntry> bookmarks;
|
||||
bookmark_html_reader::ImportBookmarksFile(
|
||||
base::BindRepeating([](BraveBookmarksImporter* importer) -> bool {
|
||||
return [importer isImporterCancelled];
|
||||
}, base::Unretained(importer)),
|
||||
base::BindRepeating([](BraveBookmarksImporter* importer, const GURL& url) -> bool {
|
||||
return [importer canImportURL:url];
|
||||
}, base::Unretained(importer)), source_file_path,
|
||||
&bookmarks, nullptr);
|
||||
|
||||
base::BindRepeating(
|
||||
[](BraveBookmarksImporter* importer) -> bool {
|
||||
return [importer isImporterCancelled];
|
||||
},
|
||||
base::Unretained(importer)),
|
||||
base::BindRepeating(
|
||||
[](BraveBookmarksImporter* importer, const GURL& url) -> bool {
|
||||
return [importer canImportURL:url];
|
||||
},
|
||||
base::Unretained(importer)),
|
||||
source_file_path, &bookmarks, nullptr);
|
||||
|
||||
if (!bookmarks.empty() && ![importer isImporterCancelled]) {
|
||||
if (automaticImport) {
|
||||
auto complete_import = [](std::vector<ImportedBookmarkEntry> bookmarks,
|
||||
const base::string16& top_level_folder_name,
|
||||
std::function<void(BraveBookmarksImporterState, NSArray<BraveImportedBookmark *> *)> listener){
|
||||
BookmarksImporter::AddBookmarks(top_level_folder_name, bookmarks);
|
||||
listener(BraveBookmarksImporterStateAutoCompleted, nullptr);
|
||||
};
|
||||
|
||||
auto complete_import =
|
||||
[](std::vector<ImportedBookmarkEntry> bookmarks,
|
||||
const base::string16& top_level_folder_name,
|
||||
std::function<void(BraveBookmarksImporterState,
|
||||
NSArray<BraveImportedBookmark*>*)> listener) {
|
||||
BookmarksImporter::AddBookmarks(top_level_folder_name, bookmarks);
|
||||
listener(BraveBookmarksImporterStateAutoCompleted, nullptr);
|
||||
};
|
||||
|
||||
// Import into the Profile/ChromeBrowserState on the main-thread.
|
||||
base::PostTask(FROM_HERE,
|
||||
{web::WebThread::UI},
|
||||
base::BindOnce(complete_import,
|
||||
base::Passed(std::move(bookmarks)),
|
||||
top_level_folder_name,
|
||||
listener)
|
||||
);
|
||||
base::PostTask(
|
||||
FROM_HERE, {web::WebThread::UI},
|
||||
base::BindOnce(complete_import, base::Passed(std::move(bookmarks)),
|
||||
top_level_folder_name, listener));
|
||||
} else {
|
||||
listener(BraveBookmarksImporterStateCompleted, [importer convertToIOSImportedBookmarks:bookmarks]);
|
||||
listener(BraveBookmarksImporterStateCompleted,
|
||||
[importer convertToIOSImportedBookmarks:bookmarks]);
|
||||
}
|
||||
} else {
|
||||
listener(BraveBookmarksImporterStateCancelled, nullptr);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
// Run the importer on the sequenced task runner.
|
||||
__weak BraveBookmarksImporter* weakSelf = self;
|
||||
import_thread_->PostTask(FROM_HERE,
|
||||
base::BindOnce(start_import,
|
||||
weakSelf,
|
||||
source_file_path,
|
||||
top_level_folder_name,
|
||||
automaticImport,
|
||||
listener)
|
||||
);
|
||||
import_thread_->PostTask(
|
||||
FROM_HERE,
|
||||
base::BindOnce(start_import, weakSelf, source_file_path,
|
||||
top_level_folder_name, automaticImport, listener));
|
||||
}
|
||||
|
||||
- (void)importFromArray:(NSArray<BraveImportedBookmark *> *)bookmarks
|
||||
topLevelFolderName:(NSString *)folderName
|
||||
withListener:(void(^)(BraveBookmarksImporterState))listener {
|
||||
|
||||
//In Chromium, this is IDS_BOOKMARK_GROUP (804)
|
||||
base::string16 top_level_folder_name =
|
||||
base::SysNSStringToUTF16(folderName);
|
||||
|
||||
auto start_import = [](BraveBookmarksImporter* weak_importer,
|
||||
NSArray<BraveImportedBookmark *> *bookmarks,
|
||||
const base::string16& top_level_folder_name,
|
||||
std::function<void(BraveBookmarksImporterState)> listener){
|
||||
//Import cancelled as the importer has been deallocated
|
||||
__strong BraveBookmarksImporter* importer = weak_importer;
|
||||
if (!importer) {
|
||||
listener(BraveBookmarksImporterStateStarted);
|
||||
listener(BraveBookmarksImporterStateCancelled);
|
||||
return;
|
||||
}
|
||||
|
||||
listener(BraveBookmarksImporterStateStarted);
|
||||
BookmarksImporter::AddBookmarks(top_level_folder_name,
|
||||
[importer convertToChromiumImportedBookmarks:bookmarks]);
|
||||
listener(BraveBookmarksImporterStateCompleted);
|
||||
};
|
||||
|
||||
- (void)importFromArray:(NSArray<BraveImportedBookmark*>*)bookmarks
|
||||
topLevelFolderName:(NSString*)folderName
|
||||
withListener:(void (^)(BraveBookmarksImporterState))listener {
|
||||
// In Chromium, this is IDS_BOOKMARK_GROUP (804)
|
||||
base::string16 top_level_folder_name = base::SysNSStringToUTF16(folderName);
|
||||
|
||||
auto start_import =
|
||||
[](BraveBookmarksImporter* weak_importer,
|
||||
NSArray<BraveImportedBookmark*>* bookmarks,
|
||||
const base::string16& top_level_folder_name,
|
||||
std::function<void(BraveBookmarksImporterState)> listener) {
|
||||
// Import cancelled as the importer has been deallocated
|
||||
__strong BraveBookmarksImporter* importer = weak_importer;
|
||||
if (!importer) {
|
||||
listener(BraveBookmarksImporterStateStarted);
|
||||
listener(BraveBookmarksImporterStateCancelled);
|
||||
return;
|
||||
}
|
||||
|
||||
listener(BraveBookmarksImporterStateStarted);
|
||||
BookmarksImporter::AddBookmarks(
|
||||
top_level_folder_name,
|
||||
[importer convertToChromiumImportedBookmarks:bookmarks]);
|
||||
listener(BraveBookmarksImporterStateCompleted);
|
||||
};
|
||||
|
||||
// Import into the Profile/ChromeBrowserState on the main-thread.
|
||||
__weak BraveBookmarksImporter* weakSelf = self;
|
||||
base::PostTask(FROM_HERE,
|
||||
{web::WebThread::UI},
|
||||
base::BindOnce(start_import,
|
||||
weakSelf,
|
||||
bookmarks,
|
||||
top_level_folder_name,
|
||||
listener)
|
||||
);
|
||||
base::PostTask(FROM_HERE, {web::WebThread::UI},
|
||||
base::BindOnce(start_import, weakSelf, bookmarks,
|
||||
top_level_folder_name, listener));
|
||||
}
|
||||
|
||||
// MARK: - Private
|
||||
|
||||
- (bool)isImporterCancelled {
|
||||
return self.cancelled;
|
||||
return self.cancelled;
|
||||
}
|
||||
|
||||
// Returns true if |url| has a valid scheme that we allow to import. We
|
||||
// filter out the URL with a unsupported scheme.
|
||||
- (bool)canImportURL:(const GURL&)url {
|
||||
// The URL is not valid.
|
||||
if (!url.is_valid()) {
|
||||
// The URL is not valid.
|
||||
if (!url.is_valid()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// Filter out the URLs with unsupported schemes.
|
||||
const char* const kInvalidSchemes[] = {"wyciwyg", "place", "about", "chrome"};
|
||||
for (size_t i = 0; i < base::size(kInvalidSchemes); ++i) {
|
||||
if (url.SchemeIs(kInvalidSchemes[i])) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// Filter out the URLs with unsupported schemes.
|
||||
const char* const kInvalidSchemes[] = {"wyciwyg", "place", "about", "chrome"};
|
||||
for (size_t i = 0; i < base::size(kInvalidSchemes); ++i) {
|
||||
if (url.SchemeIs(kInvalidSchemes[i])) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
return true;
|
||||
}
|
||||
|
||||
// Converts an array of Chromium imported bookmarks to iOS imported bookmarks.
|
||||
- (NSArray<BraveImportedBookmark *> *)convertToIOSImportedBookmarks:(const std::vector<ImportedBookmarkEntry>&)bookmarks {
|
||||
NSMutableArray<BraveImportedBookmark *> *results = [[NSMutableArray alloc] init];
|
||||
- (NSArray<BraveImportedBookmark*>*)convertToIOSImportedBookmarks:
|
||||
(const std::vector<ImportedBookmarkEntry>&)bookmarks {
|
||||
NSMutableArray<BraveImportedBookmark*>* results =
|
||||
[[NSMutableArray alloc] init];
|
||||
for (const auto& bookmark : bookmarks) {
|
||||
BraveImportedBookmark *imported_bookmark = [[BraveImportedBookmark alloc] initFromChromiumImportedBookmark:bookmark];
|
||||
BraveImportedBookmark* imported_bookmark = [[BraveImportedBookmark alloc]
|
||||
initFromChromiumImportedBookmark:bookmark];
|
||||
[results addObject:imported_bookmark];
|
||||
}
|
||||
return results;
|
||||
}
|
||||
|
||||
// Converts an array of iOS imported bookmarks to Chromium imported bookmarks.
|
||||
- (std::vector<ImportedBookmarkEntry>)convertToChromiumImportedBookmarks:(NSArray<BraveImportedBookmark *> *)bookmarks {
|
||||
- (std::vector<ImportedBookmarkEntry>)convertToChromiumImportedBookmarks:
|
||||
(NSArray<BraveImportedBookmark*>*)bookmarks {
|
||||
std::vector<ImportedBookmarkEntry> results;
|
||||
for (BraveImportedBookmark* bookmark in bookmarks) {
|
||||
results.push_back([bookmark toChromiumImportedBookmark]);
|
||||
|
||||
@@ -4,7 +4,6 @@
|
||||
* You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
#import "brave/ios/browser/api/sync/brave_sync_api.h"
|
||||
#import "brave/ios/browser/api/sync/brave_sync_worker.h"
|
||||
|
||||
#import <CoreImage/CoreImage.h>
|
||||
#include <string>
|
||||
@@ -18,6 +17,7 @@
|
||||
#include "base/strings/sys_string_conversions.h"
|
||||
#include "brave/components/brave_sync/brave_sync_prefs.h"
|
||||
#include "brave/components/brave_sync/crypto/crypto.h"
|
||||
#import "brave/ios/browser/api/sync/brave_sync_worker.h"
|
||||
#include "components/sync/driver/profile_sync_service.h"
|
||||
#include "components/sync/driver/sync_service.h"
|
||||
#include "components/sync/driver/sync_service_observer.h"
|
||||
|
||||
Reference in New Issue
Block a user