diff --git a/atom/app/atom_content_client.cc b/atom/app/atom_content_client.cc index a3572d80ad69..cd6d36204e42 100644 --- a/atom/app/atom_content_client.cc +++ b/atom/app/atom_content_client.cc @@ -135,7 +135,7 @@ void ComputeBuiltInPlugins(std::vector* plugins) { void ConvertStringWithSeparatorToVector(std::vector* vec, const char* separator, const char* cmd_switch) { - auto command_line = base::CommandLine::ForCurrentProcess(); + auto* command_line = base::CommandLine::ForCurrentProcess(); auto string_with_separator = command_line->GetSwitchValueASCII(cmd_switch); if (!string_with_separator.empty()) *vec = base::SplitString(string_with_separator, separator, @@ -146,7 +146,7 @@ void ConvertStringWithSeparatorToVector(std::vector* vec, void AddPepperFlashFromCommandLine( std::vector* plugins) { - auto command_line = base::CommandLine::ForCurrentProcess(); + auto* command_line = base::CommandLine::ForCurrentProcess(); base::FilePath flash_path = command_line->GetSwitchValuePath(switches::kPpapiFlashPath); if (flash_path.empty()) @@ -161,7 +161,7 @@ void AddPepperFlashFromCommandLine( #if defined(WIDEVINE_CDM_AVAILABLE) && BUILDFLAG(ENABLE_LIBRARY_CDMS) void AddWidevineCdmFromCommandLine( std::vector* plugins) { - auto command_line = base::CommandLine::ForCurrentProcess(); + auto* command_line = base::CommandLine::ForCurrentProcess(); base::FilePath widevine_cdm_path = command_line->GetSwitchValuePath(switches::kWidevineCdmPath); if (widevine_cdm_path.empty()) diff --git a/atom/app/atom_content_client.h b/atom/app/atom_content_client.h index fcd26f84183b..d2ed9b78efd8 100644 --- a/atom/app/atom_content_client.h +++ b/atom/app/atom_content_client.h @@ -16,7 +16,7 @@ namespace atom { class AtomContentClient : public brightray::ContentClient { public: AtomContentClient(); - virtual ~AtomContentClient(); + ~AtomContentClient() override; protected: // content::ContentClient: diff --git a/atom/app/atom_main.cc b/atom/app/atom_main.cc index 41c11c4704b4..d6f3e0a1cfa5 100644 --- a/atom/app/atom_main.cc +++ b/atom/app/atom_main.cc @@ -39,7 +39,7 @@ namespace { #ifdef ENABLE_RUN_AS_NODE -const auto kRunAsNode = "ELECTRON_RUN_AS_NODE"; +const char kRunAsNode[] = "ELECTRON_RUN_AS_NODE"; #endif #if defined(ENABLE_RUN_AS_NODE) || defined(OS_WIN) diff --git a/atom/app/atom_main_delegate.cc b/atom/app/atom_main_delegate.cc index 0d817865b0a1..08e0776daf67 100644 --- a/atom/app/atom_main_delegate.cc +++ b/atom/app/atom_main_delegate.cc @@ -61,7 +61,7 @@ AtomMainDelegate::AtomMainDelegate() {} AtomMainDelegate::~AtomMainDelegate() {} bool AtomMainDelegate::BasicStartupComplete(int* exit_code) { - auto command_line = base::CommandLine::ForCurrentProcess(); + auto* command_line = base::CommandLine::ForCurrentProcess(); logging::LoggingSettings settings; #if defined(OS_WIN) @@ -129,7 +129,7 @@ bool AtomMainDelegate::BasicStartupComplete(int* exit_code) { void AtomMainDelegate::PreSandboxStartup() { brightray::MainDelegate::PreSandboxStartup(); - auto command_line = base::CommandLine::ForCurrentProcess(); + auto* command_line = base::CommandLine::ForCurrentProcess(); std::string process_type = command_line->GetSwitchValueASCII(::switches::kProcessType); diff --git a/atom/app/atom_main_delegate.h b/atom/app/atom_main_delegate.h index 03256bc9f935..affdea01eec2 100644 --- a/atom/app/atom_main_delegate.h +++ b/atom/app/atom_main_delegate.h @@ -15,7 +15,7 @@ namespace atom { class AtomMainDelegate : public brightray::MainDelegate { public: AtomMainDelegate(); - ~AtomMainDelegate(); + ~AtomMainDelegate() override; protected: // content::ContentMainDelegate: diff --git a/atom/app/command_line_args.cc b/atom/app/command_line_args.cc index f0576ec26d10..92c776e75742 100644 --- a/atom/app/command_line_args.cc +++ b/atom/app/command_line_args.cc @@ -17,7 +17,7 @@ bool IsUrlArg(const base::CommandLine::CharType* arg) { // the first character must be a letter for this to be a URL auto c = *arg; if (('a' <= c && c <= 'z') || ('A' <= c && c <= 'Z')) { - for (auto p = arg + 1; *p; ++p) { + for (auto* p = arg + 1; *p; ++p) { c = *p; // colon indicates that the argument starts with a URI scheme @@ -1377,7 +1377,7 @@ bool IsBlacklistedArg(const base::CommandLine::CharType* arg) { static const char* prefixes[] = {"--", "-", "/"}; int prefix_length = 0; - for (auto& prefix : prefixes) { + for (auto*& prefix : prefixes) { if (base::StartsWith(a, prefix, base::CompareCase::SENSITIVE)) { prefix_length = strlen(prefix); break; diff --git a/atom/app/uv_task_runner.h b/atom/app/uv_task_runner.h index 34d839d09b65..a01c23208cce 100644 --- a/atom/app/uv_task_runner.h +++ b/atom/app/uv_task_runner.h @@ -18,7 +18,6 @@ namespace atom { class UvTaskRunner : public base::SingleThreadTaskRunner { public: explicit UvTaskRunner(uv_loop_t* loop); - ~UvTaskRunner() override; // base::SingleThreadTaskRunner: bool PostDelayedTask(const base::Location& from_here, @@ -30,6 +29,7 @@ class UvTaskRunner : public base::SingleThreadTaskRunner { base::TimeDelta delay) override; private: + ~UvTaskRunner() override; static void OnTimeout(uv_timer_t* timer); static void OnClose(uv_handle_t* handle); diff --git a/atom/browser/api/atom_api_app.cc b/atom/browser/api/atom_api_app.cc index 07e82b3e0fb3..98fd5ba643bc 100644 --- a/atom/browser/api/atom_api_app.cc +++ b/atom/browser/api/atom_api_app.cc @@ -349,6 +349,16 @@ struct Converter { namespace atom { +ProcessMetric::ProcessMetric(int type, + base::ProcessId pid, + std::unique_ptr metrics) { + this->type = type; + this->pid = pid; + this->metrics = std::move(metrics); +} + +ProcessMetric::~ProcessMetric() = default; + namespace api { namespace { @@ -927,12 +937,12 @@ void App::DisableDomainBlockingFor3DAPIs(mate::Arguments* args) { } bool App::IsAccessibilitySupportEnabled() { - auto ax_state = content::BrowserAccessibilityState::GetInstance(); + auto* ax_state = content::BrowserAccessibilityState::GetInstance(); return ax_state->IsAccessibleBrowser(); } void App::SetAccessibilitySupportEnabled(bool enabled) { - auto ax_state = content::BrowserAccessibilityState::GetInstance(); + auto* ax_state = content::BrowserAccessibilityState::GetInstance(); if (enabled) { ax_state->OnScreenReaderDetected(); } else { @@ -1054,7 +1064,7 @@ void App::GetFileIcon(const base::FilePath& path, mate::Arguments* args) { return; } - auto icon_manager = g_browser_process->GetIconManager(); + auto* icon_manager = g_browser_process->GetIconManager(); gfx::Image* icon = icon_manager->LookupIconFromFilepath(normalized_path, icon_size); if (icon) { @@ -1132,7 +1142,7 @@ void App::EnableMixedSandbox(mate::Arguments* args) { return; } - auto command_line = base::CommandLine::ForCurrentProcess(); + auto* command_line = base::CommandLine::ForCurrentProcess(); if (command_line->HasSwitch(::switches::kNoSandbox)) { #if defined(OS_WIN) const base::CommandLine::CharType* noSandboxArg = L"--no-sandbox"; @@ -1263,7 +1273,7 @@ void App::BuildPrototype(v8::Isolate* isolate, namespace { void AppendSwitch(const std::string& switch_string, mate::Arguments* args) { - auto command_line = base::CommandLine::ForCurrentProcess(); + auto* command_line = base::CommandLine::ForCurrentProcess(); if (base::EndsWith(switch_string, "-path", base::CompareCase::INSENSITIVE_ASCII) || @@ -1301,7 +1311,7 @@ void Initialize(v8::Local exports, v8::Local context, void* priv) { v8::Isolate* isolate = context->GetIsolate(); - auto command_line = base::CommandLine::ForCurrentProcess(); + auto* command_line = base::CommandLine::ForCurrentProcess(); mate::Dictionary dict(isolate, exports); dict.Set("App", atom::api::App::GetConstructor(isolate)->GetFunction()); diff --git a/atom/browser/api/atom_api_app.h b/atom/browser/api/atom_api_app.h index 6c62152401c5..ac7c256928d6 100644 --- a/atom/browser/api/atom_api_app.h +++ b/atom/browser/api/atom_api_app.h @@ -52,11 +52,8 @@ struct ProcessMetric { ProcessMetric(int type, base::ProcessId pid, - std::unique_ptr metrics) { - this->type = type; - this->pid = pid; - this->metrics = std::move(metrics); - } + std::unique_ptr metrics); + ~ProcessMetric(); }; namespace api { diff --git a/atom/browser/api/atom_api_auto_updater.h b/atom/browser/api/atom_api_auto_updater.h index 57d217cdfdfd..d8875ae0e384 100644 --- a/atom/browser/api/atom_api_auto_updater.h +++ b/atom/browser/api/atom_api_auto_updater.h @@ -34,7 +34,7 @@ class AutoUpdater : public mate::EventEmitter, void OnError(const std::string& error) override; void OnError(const std::string& message, const int code, - const std::string& domain); + const std::string& domain) override; void OnCheckingForUpdate() override; void OnUpdateAvailable() override; void OnUpdateNotAvailable() override; diff --git a/atom/browser/api/atom_api_browser_window.cc b/atom/browser/api/atom_api_browser_window.cc index bb8247ec963c..43a3470c68b4 100644 --- a/atom/browser/api/atom_api_browser_window.cc +++ b/atom/browser/api/atom_api_browser_window.cc @@ -135,7 +135,7 @@ void BrowserWindow::DidFirstVisuallyNonEmptyPaint() { // When there is a non-empty first paint, resize the RenderWidget to force // Chromium to draw. - const auto view = web_contents()->GetRenderWidgetHostView(); + auto* const view = web_contents()->GetRenderWidgetHostView(); view->Show(); view->SetSize(window()->GetContentSize()); @@ -408,7 +408,7 @@ void BrowserWindow::BuildPrototype(v8::Isolate* isolate, // static v8::Local BrowserWindow::From(v8::Isolate* isolate, NativeWindow* native_window) { - auto existing = TrackableObject::FromWrappedClass(isolate, native_window); + auto* existing = TrackableObject::FromWrappedClass(isolate, native_window); if (existing) return existing->GetWrapper(); else diff --git a/atom/browser/api/atom_api_cookies.cc b/atom/browser/api/atom_api_cookies.cc index 7f9811db7876..248e5511dfaa 100644 --- a/atom/browser/api/atom_api_cookies.cc +++ b/atom/browser/api/atom_api_cookies.cc @@ -250,7 +250,7 @@ Cookies::~Cookies() {} void Cookies::Get(const base::DictionaryValue& filter, const GetCallback& callback) { std::unique_ptr copied(filter.CreateDeepCopy()); - auto getter = browser_context_->GetRequestContext(); + auto* getter = browser_context_->GetRequestContext(); content::BrowserThread::PostTask( BrowserThread::IO, FROM_HERE, base::BindOnce(GetCookiesOnIO, base::RetainedRef(getter), Passed(&copied), @@ -260,7 +260,7 @@ void Cookies::Get(const base::DictionaryValue& filter, void Cookies::Remove(const GURL& url, const std::string& name, const base::Closure& callback) { - auto getter = browser_context_->GetRequestContext(); + auto* getter = browser_context_->GetRequestContext(); content::BrowserThread::PostTask( BrowserThread::IO, FROM_HERE, base::BindOnce(RemoveCookieOnIOThread, base::RetainedRef(getter), url, @@ -270,7 +270,7 @@ void Cookies::Remove(const GURL& url, void Cookies::Set(const base::DictionaryValue& details, const SetCallback& callback) { std::unique_ptr copied(details.CreateDeepCopy()); - auto getter = browser_context_->GetRequestContext(); + auto* getter = browser_context_->GetRequestContext(); content::BrowserThread::PostTask( BrowserThread::IO, FROM_HERE, base::BindOnce(SetCookieOnIO, base::RetainedRef(getter), Passed(&copied), @@ -278,7 +278,7 @@ void Cookies::Set(const base::DictionaryValue& details, } void Cookies::FlushStore(const base::Closure& callback) { - auto getter = browser_context_->GetRequestContext(); + auto* getter = browser_context_->GetRequestContext(); content::BrowserThread::PostTask( BrowserThread::IO, FROM_HERE, base::BindOnce(FlushCookieStoreOnIOThread, base::RetainedRef(getter), diff --git a/atom/browser/api/atom_api_download_item.cc b/atom/browser/api/atom_api_download_item.cc index d2b86ce5d642..1b7bb8197646 100644 --- a/atom/browser/api/atom_api_download_item.cc +++ b/atom/browser/api/atom_api_download_item.cc @@ -207,7 +207,7 @@ void DownloadItem::BuildPrototype(v8::Isolate* isolate, // static mate::Handle DownloadItem::Create(v8::Isolate* isolate, content::DownloadItem* item) { - auto existing = TrackableObject::FromWrappedClass(isolate, item); + auto* existing = TrackableObject::FromWrappedClass(isolate, item); if (existing) return mate::CreateHandle(isolate, static_cast(existing)); diff --git a/atom/browser/api/atom_api_download_item.h b/atom/browser/api/atom_api_download_item.h index fbc74b1c818a..43a02805960b 100644 --- a/atom/browser/api/atom_api_download_item.h +++ b/atom/browser/api/atom_api_download_item.h @@ -50,7 +50,7 @@ class DownloadItem : public mate::TrackableObject, protected: DownloadItem(v8::Isolate* isolate, content::DownloadItem* download_item); - ~DownloadItem(); + ~DownloadItem() override; // Override content::DownloadItem::Observer methods void OnDownloadUpdated(content::DownloadItem* download) override; diff --git a/atom/browser/api/atom_api_menu_mac.h b/atom/browser/api/atom_api_menu_mac.h index fb575cfcbaec..6ba895676c54 100644 --- a/atom/browser/api/atom_api_menu_mac.h +++ b/atom/browser/api/atom_api_menu_mac.h @@ -21,6 +21,7 @@ namespace api { class MenuMac : public Menu { protected: MenuMac(v8::Isolate* isolate, v8::Local wrapper); + ~MenuMac() override; void PopupAt(TopLevelWindow* window, int x, diff --git a/atom/browser/api/atom_api_menu_mac.mm b/atom/browser/api/atom_api_menu_mac.mm index fe077e347608..c2516f4528aa 100644 --- a/atom/browser/api/atom_api_menu_mac.mm +++ b/atom/browser/api/atom_api_menu_mac.mm @@ -21,21 +21,22 @@ namespace atom { namespace api { MenuMac::MenuMac(v8::Isolate* isolate, v8::Local wrapper) - : Menu(isolate, wrapper), - weak_factory_(this) { -} + : Menu(isolate, wrapper), weak_factory_(this) {} + +MenuMac::~MenuMac() = default; void MenuMac::PopupAt(TopLevelWindow* window, - int x, int y, int positioning_item, + int x, + int y, + int positioning_item, const base::Closure& callback) { NativeWindow* native_window = window->window(); if (!native_window) return; auto popup = base::Bind(&MenuMac::PopupOnUI, weak_factory_.GetWeakPtr(), - native_window->GetWeakPtr(), - window->weak_map_id(), x, y, - positioning_item, callback); + native_window->GetWeakPtr(), window->weak_map_id(), x, + y, positioning_item, callback); BrowserThread::PostTask(BrowserThread::UI, FROM_HERE, popup); } @@ -51,9 +52,9 @@ void MenuMac::PopupOnUI(const base::WeakPtr& native_window, auto close_callback = base::Bind( &MenuMac::OnClosed, weak_factory_.GetWeakPtr(), window_id, callback); - popup_controllers_[window_id] = base::scoped_nsobject( - [[AtomMenuController alloc] initWithModel:model() - useDefaultAccelerator:NO]); + popup_controllers_[window_id] = base::scoped_nsobject([ + [AtomMenuController alloc] initWithModel:model() + useDefaultAccelerator:NO]); NSMenu* menu = [popup_controllers_[window_id] menu]; NSView* view = [nswindow contentView]; @@ -128,9 +129,9 @@ void MenuMac::OnClosed(int32_t window_id, base::Closure callback) { // static void Menu::SetApplicationMenu(Menu* base_menu) { MenuMac* menu = static_cast(base_menu); - base::scoped_nsobject menu_controller( - [[AtomMenuController alloc] initWithModel:menu->model_.get() - useDefaultAccelerator:YES]); + base::scoped_nsobject menu_controller([ + [AtomMenuController alloc] initWithModel:menu->model_.get() + useDefaultAccelerator:YES]); [NSApp setMainMenu:[menu_controller menu]]; // Ensure the menu_controller_ is destroyed after main menu is set. diff --git a/atom/browser/api/atom_api_menu_views.cc b/atom/browser/api/atom_api_menu_views.cc index 1060964a297b..677279fa676f 100644 --- a/atom/browser/api/atom_api_menu_views.cc +++ b/atom/browser/api/atom_api_menu_views.cc @@ -17,6 +17,8 @@ namespace api { MenuViews::MenuViews(v8::Isolate* isolate, v8::Local wrapper) : Menu(isolate, wrapper), weak_factory_(this) {} +MenuViews::~MenuViews() = default; + void MenuViews::PopupAt(TopLevelWindow* window, int x, int y, diff --git a/atom/browser/api/atom_api_menu_views.h b/atom/browser/api/atom_api_menu_views.h index e5b93a3cfa0b..0a34c19cef31 100644 --- a/atom/browser/api/atom_api_menu_views.h +++ b/atom/browser/api/atom_api_menu_views.h @@ -19,6 +19,7 @@ namespace api { class MenuViews : public Menu { public: MenuViews(v8::Isolate* isolate, v8::Local wrapper); + ~MenuViews() override; protected: void PopupAt(TopLevelWindow* window, diff --git a/atom/browser/api/atom_api_protocol.cc b/atom/browser/api/atom_api_protocol.cc index e66a655a77b0..5e1f991ad8dc 100644 --- a/atom/browser/api/atom_api_protocol.cc +++ b/atom/browser/api/atom_api_protocol.cc @@ -83,7 +83,7 @@ void Protocol::UnregisterProtocol(const std::string& scheme, mate::Arguments* args) { CompletionCallback callback; args->GetNext(&callback); - auto getter = browser_context_->GetRequestContext(); + auto* getter = browser_context_->GetRequestContext(); content::BrowserThread::PostTaskAndReplyWithResult( content::BrowserThread::IO, FROM_HERE, base::BindOnce(&Protocol::UnregisterProtocolInIO, @@ -95,7 +95,7 @@ void Protocol::UnregisterProtocol(const std::string& scheme, Protocol::ProtocolError Protocol::UnregisterProtocolInIO( scoped_refptr request_context_getter, const std::string& scheme) { - auto job_factory = static_cast( + auto* job_factory = static_cast( request_context_getter->job_factory()); if (!job_factory->HasProtocolHandler(scheme)) return PROTOCOL_NOT_REGISTERED; @@ -105,7 +105,7 @@ Protocol::ProtocolError Protocol::UnregisterProtocolInIO( void Protocol::IsProtocolHandled(const std::string& scheme, const BooleanCallback& callback) { - auto getter = browser_context_->GetRequestContext(); + auto* getter = browser_context_->GetRequestContext(); content::BrowserThread::PostTaskAndReplyWithResult( content::BrowserThread::IO, FROM_HERE, base::Bind(&Protocol::IsProtocolHandledInIO, base::RetainedRef(getter), @@ -124,7 +124,7 @@ void Protocol::UninterceptProtocol(const std::string& scheme, mate::Arguments* args) { CompletionCallback callback; args->GetNext(&callback); - auto getter = browser_context_->GetRequestContext(); + auto* getter = browser_context_->GetRequestContext(); content::BrowserThread::PostTaskAndReplyWithResult( content::BrowserThread::IO, FROM_HERE, base::BindOnce(&Protocol::UninterceptProtocolInIO, diff --git a/atom/browser/api/atom_api_protocol.h b/atom/browser/api/atom_api_protocol.h index 698331566ff8..72a76caf5a6b 100644 --- a/atom/browser/api/atom_api_protocol.h +++ b/atom/browser/api/atom_api_protocol.h @@ -47,7 +47,7 @@ class Protocol : public mate::TrackableObject { protected: Protocol(v8::Isolate* isolate, AtomBrowserContext* browser_context); - ~Protocol(); + ~Protocol() override; private: // Possible errors. @@ -100,7 +100,7 @@ class Protocol : public mate::TrackableObject { mate::Arguments* args) { CompletionCallback callback; args->GetNext(&callback); - auto getter = browser_context_->GetRequestContext(); + auto* getter = browser_context_->GetRequestContext(); content::BrowserThread::PostTaskAndReplyWithResult( content::BrowserThread::IO, FROM_HERE, base::BindOnce(&Protocol::RegisterProtocolInIO, @@ -113,7 +113,7 @@ class Protocol : public mate::TrackableObject { v8::Isolate* isolate, const std::string& scheme, const Handler& handler) { - auto job_factory = static_cast( + auto* job_factory = static_cast( request_context_getter->job_factory()); if (job_factory->IsHandledProtocol(scheme)) return PROTOCOL_REGISTERED; @@ -146,7 +146,7 @@ class Protocol : public mate::TrackableObject { mate::Arguments* args) { CompletionCallback callback; args->GetNext(&callback); - auto getter = browser_context_->GetRequestContext(); + auto* getter = browser_context_->GetRequestContext(); content::BrowserThread::PostTaskAndReplyWithResult( content::BrowserThread::IO, FROM_HERE, base::BindOnce(&Protocol::InterceptProtocolInIO, @@ -159,7 +159,7 @@ class Protocol : public mate::TrackableObject { v8::Isolate* isolate, const std::string& scheme, const Handler& handler) { - auto job_factory = static_cast( + auto* job_factory = static_cast( request_context_getter->job_factory()); if (!job_factory->IsHandledProtocol(scheme)) return PROTOCOL_NOT_REGISTERED; diff --git a/atom/browser/api/atom_api_session.cc b/atom/browser/api/atom_api_session.cc index e4d30dedb310..c31188521fd7 100644 --- a/atom/browser/api/atom_api_session.cc +++ b/atom/browser/api/atom_api_session.cc @@ -326,14 +326,14 @@ void DoCacheActionInIO( const scoped_refptr& context_getter, Session::CacheAction action, const net::CompletionCallback& callback) { - auto request_context = context_getter->GetURLRequestContext(); - auto http_cache = request_context->http_transaction_factory()->GetCache(); + auto* request_context = context_getter->GetURLRequestContext(); + auto* http_cache = request_context->http_transaction_factory()->GetCache(); if (!http_cache) RunCallbackInUI(callback, net::ERR_FAILED); // Call GetBackend and make the backend's ptr accessable in OnGetBackend. using BackendPtr = disk_cache::Backend*; - auto* backend_ptr = new BackendPtr(nullptr); + auto** backend_ptr = new BackendPtr(nullptr); net::CompletionCallback on_get_backend = base::Bind(&OnGetBackend, base::Owned(backend_ptr), action, callback); int rv = http_cache->GetBackend(backend_ptr, on_get_backend); @@ -344,7 +344,7 @@ void DoCacheActionInIO( void SetProxyInIO(scoped_refptr getter, const net::ProxyConfig& config, const base::Closure& callback) { - auto proxy_service = getter->GetURLRequestContext()->proxy_service(); + auto* proxy_service = getter->GetURLRequestContext()->proxy_service(); proxy_service->ResetConfigService( base::WrapUnique(new net::ProxyConfigServiceFixed(config))); // Refetches and applies the new pac script if provided. @@ -355,7 +355,7 @@ void SetProxyInIO(scoped_refptr getter, void SetCertVerifyProcInIO( const scoped_refptr& context_getter, const AtomCertVerifier::VerifyProc& proc) { - auto request_context = context_getter->GetURLRequestContext(); + auto* request_context = context_getter->GetURLRequestContext(); static_cast(request_context->cert_verifier()) ->SetVerifyProc(proc); } @@ -363,8 +363,8 @@ void SetCertVerifyProcInIO( void ClearHostResolverCacheInIO( const scoped_refptr& context_getter, const base::Closure& callback) { - auto request_context = context_getter->GetURLRequestContext(); - auto cache = request_context->host_resolver()->GetHostCache(); + auto* request_context = context_getter->GetURLRequestContext(); + auto* cache = request_context->host_resolver()->GetHostCache(); if (cache) { cache->clear(); DCHECK_EQ(0u, cache->size()); @@ -377,12 +377,12 @@ void ClearAuthCacheInIO( const scoped_refptr& context_getter, const ClearAuthCacheOptions& options, const base::Closure& callback) { - auto request_context = context_getter->GetURLRequestContext(); - auto network_session = + auto* request_context = context_getter->GetURLRequestContext(); + auto* network_session = request_context->http_transaction_factory()->GetSession(); if (network_session) { if (options.type == "password") { - auto auth_cache = network_session->http_auth_cache(); + auto* auth_cache = network_session->http_auth_cache(); if (!options.origin.is_empty()) { auth_cache->Remove( options.origin, options.realm, options.auth_scheme, @@ -391,7 +391,7 @@ void ClearAuthCacheInIO( auth_cache->ClearEntriesAddedWithin(base::TimeDelta::Max()); } } else if (options.type == "clientCertificate") { - auto client_auth_cache = network_session->ssl_client_auth_cache(); + auto* client_auth_cache = network_session->ssl_client_auth_cache(); client_auth_cache->Remove(net::HostPortPair::FromURL(options.origin)); } network_session->CloseAllConnections(); @@ -403,10 +403,10 @@ void ClearAuthCacheInIO( void AllowNTLMCredentialsForDomainsInIO( const scoped_refptr& context_getter, const std::string& domains) { - auto request_context = context_getter->GetURLRequestContext(); - auto auth_handler = request_context->http_auth_handler_factory(); + auto* request_context = context_getter->GetURLRequestContext(); + auto* auth_handler = request_context->http_auth_handler_factory(); if (auth_handler) { - auto auth_preferences = const_cast( + auto* auth_preferences = const_cast( auth_handler->http_auth_preferences()); if (auth_preferences) auth_preferences->set_server_whitelist(domains); @@ -453,7 +453,7 @@ void SetDevToolsNetworkEmulationClientIdInIO( // Clear protocol handlers in IO thread. void ClearJobFactoryInIO( scoped_refptr request_context_getter) { - auto job_factory = static_cast( + auto* job_factory = static_cast( request_context_getter->job_factory()); if (job_factory) job_factory->Clear(); @@ -492,7 +492,7 @@ Session::Session(v8::Isolate* isolate, AtomBrowserContext* browser_context) } Session::~Session() { - auto getter = browser_context_->GetRequestContext(); + auto* getter = browser_context_->GetRequestContext(); content::BrowserThread::PostTask( content::BrowserThread::IO, FROM_HERE, base::BindOnce(ClearJobFactoryInIO, base::RetainedRef(getter))); @@ -541,7 +541,7 @@ void Session::ClearStorageData(mate::Arguments* args) { args->GetNext(&options); args->GetNext(&callback); - auto storage_partition = + auto* storage_partition = content::BrowserContext::GetStoragePartition(browser_context(), nullptr); if (options.storage_types & StoragePartition::REMOVE_DATA_MASK_COOKIES) { // Reset media device id salt when cookies are cleared. @@ -555,14 +555,14 @@ void Session::ClearStorageData(mate::Arguments* args) { } void Session::FlushStorageData() { - auto storage_partition = + auto* storage_partition = content::BrowserContext::GetStoragePartition(browser_context(), nullptr); storage_partition->Flush(); } void Session::SetProxy(const net::ProxyConfig& config, const base::Closure& callback) { - auto getter = browser_context_->GetRequestContext(); + auto* getter = browser_context_->GetRequestContext(); BrowserThread::PostTask( BrowserThread::IO, FROM_HERE, base::BindOnce(&SetProxyInIO, base::RetainedRef(getter), config, @@ -631,7 +631,7 @@ void Session::SetPermissionRequestHandler(v8::Local val, args->ThrowError("Must pass null or function"); return; } - auto permission_manager = static_cast( + auto* permission_manager = static_cast( browser_context()->GetPermissionManager()); permission_manager->SetPermissionRequestHandler(handler); } @@ -725,7 +725,7 @@ void Session::CreateInterruptedDownload(const mate::Dictionary& options) { isolate(), "Must pass an offset value less than length."))); return; } - auto download_manager = + auto* download_manager = content::BrowserContext::GetDownloadManager(browser_context()); download_manager->GetDelegate()->GetNextId(base::Bind( &DownloadIdCallback, download_manager, path, url_chain, mime_type, offset, @@ -772,7 +772,7 @@ v8::Local Session::WebRequest(v8::Isolate* isolate) { // static mate::Handle Session::CreateFrom(v8::Isolate* isolate, AtomBrowserContext* browser_context) { - auto existing = TrackableObject::FromWrappedClass(isolate, browser_context); + auto* existing = TrackableObject::FromWrappedClass(isolate, browser_context); if (existing) return mate::CreateHandle(isolate, static_cast(existing)); diff --git a/atom/browser/api/atom_api_session.h b/atom/browser/api/atom_api_session.h index 1059e9856afb..4e88743c6af4 100644 --- a/atom/browser/api/atom_api_session.h +++ b/atom/browser/api/atom_api_session.h @@ -91,7 +91,7 @@ class Session : public mate::TrackableObject, protected: Session(v8::Isolate* isolate, AtomBrowserContext* browser_context); - ~Session(); + ~Session() override; // content::DownloadManager::Observer: void OnDownloadCreated(content::DownloadManager* manager, diff --git a/atom/browser/api/atom_api_url_request.cc b/atom/browser/api/atom_api_url_request.cc index d3607e7283cc..88582708c052 100644 --- a/atom/browser/api/atom_api_url_request.cc +++ b/atom/browser/api/atom_api_url_request.cc @@ -38,7 +38,7 @@ struct Converter> { *out = nullptr; return true; } - auto data = node::Buffer::Data(val); + auto* data = node::Buffer::Data(val); if (!data) { // This is an error as size is positive but data is null. return false; @@ -138,7 +138,7 @@ URLRequest::~URLRequest() { // static mate::WrappableBase* URLRequest::New(mate::Arguments* args) { - auto isolate = args->isolate(); + auto* isolate = args->isolate(); v8::Local options; args->GetNext(&options); mate::Dictionary dict(isolate, options); @@ -157,8 +157,8 @@ mate::WrappableBase* URLRequest::New(mate::Arguments* args) { // Use the default session if not specified. session = Session::FromPartition(isolate, ""); } - auto browser_context = session->browser_context(); - auto api_url_request = new URLRequest(args->isolate(), args->GetThis()); + auto* browser_context = session->browser_context(); + auto* api_url_request = new URLRequest(args->isolate(), args->GetThis()); auto atom_url_request = AtomURLRequest::Create( browser_context, method, url, redirect_policy, api_url_request); diff --git a/atom/browser/api/atom_api_web_contents.cc b/atom/browser/api/atom_api_web_contents.cc index d91d2d02df8c..69911ae1a182 100644 --- a/atom/browser/api/atom_api_web_contents.cc +++ b/atom/browser/api/atom_api_web_contents.cc @@ -275,12 +275,12 @@ namespace { content::ServiceWorkerContext* GetServiceWorkerContext( const content::WebContents* web_contents) { - auto context = web_contents->GetBrowserContext(); - auto site_instance = web_contents->GetSiteInstance(); + auto* context = web_contents->GetBrowserContext(); + auto* site_instance = web_contents->GetSiteInstance(); if (!context || !site_instance) return nullptr; - auto storage_partition = + auto* storage_partition = content::BrowserContext::GetStoragePartition(context, site_instance); if (!storage_partition) return nullptr; @@ -486,7 +486,7 @@ void WebContents::InitWithSessionAndOptions(v8::Isolate* isolate, NativeWindow* owner_window = nullptr; if (embedder_) { // New WebContents's owner_window is the embedder's owner_window. - auto relay = + auto* relay = NativeWindowRelay::FromWebContents(embedder_->web_contents()); if (relay) owner_window = relay->window.get(); @@ -675,7 +675,8 @@ content::KeyboardEventProcessingResult WebContents::PreHandleKeyboardEvent( void WebContents::EnterFullscreenModeForTab(content::WebContents* source, const GURL& origin) { - auto permission_helper = WebContentsPermissionHelper::FromWebContents(source); + auto* permission_helper = + WebContentsPermissionHelper::FromWebContents(source); auto callback = base::Bind(&WebContents::OnEnterFullscreenModeForTab, base::Unretained(this), source, origin); permission_helper->RequestFullscreenPermission(callback); @@ -754,7 +755,7 @@ void WebContents::RequestMediaAccessPermission( content::WebContents* web_contents, const content::MediaStreamRequest& request, const content::MediaResponseCallback& callback) { - auto permission_helper = + auto* permission_helper = WebContentsPermissionHelper::FromWebContents(web_contents); permission_helper->RequestMediaAccessPermission(request, callback); } @@ -762,7 +763,7 @@ void WebContents::RequestMediaAccessPermission( void WebContents::RequestToLockMouse(content::WebContents* web_contents, bool user_gesture, bool last_unlocked_by_target) { - auto permission_helper = + auto* permission_helper = WebContentsPermissionHelper::FromWebContents(web_contents); permission_helper->RequestPointerLockPermission(user_gesture); } @@ -789,7 +790,7 @@ void WebContents::BeforeUnloadFired(const base::TimeTicks& proceed_time) { } void WebContents::RenderViewCreated(content::RenderViewHost* render_view_host) { - const auto impl = content::RenderWidgetHostImpl::FromID( + auto* const impl = content::RenderWidgetHostImpl::FromID( render_view_host->GetProcess()->GetID(), render_view_host->GetRoutingID()); if (impl) @@ -807,7 +808,7 @@ void WebContents::RenderProcessGone(base::TerminationStatus status) { void WebContents::PluginCrashed(const base::FilePath& plugin_path, base::ProcessId plugin_pid) { content::WebPluginInfo info; - auto plugin_service = content::PluginService::GetInstance(); + auto* plugin_service = content::PluginService::GetInstance(); plugin_service->GetPluginInfoByPath(plugin_path, &info); Emit("plugin-crashed", info.name, info.version); } @@ -1129,7 +1130,7 @@ void WebContents::LoadURL(const GURL& url, const mate::Dictionary& options) { // Set the background color of RenderWidgetHostView. // We have to call it right after LoadURL because the RenderViewHost is only // created after loading a page. - const auto view = web_contents()->GetRenderWidgetHostView(); + auto* const view = web_contents()->GetRenderWidgetHostView(); if (view) { auto* web_preferences = WebContentsPreferences::From(web_contents()); std::string color_name; @@ -1143,8 +1144,8 @@ void WebContents::LoadURL(const GURL& url, const mate::Dictionary& options) { } void WebContents::DownloadURL(const GURL& url) { - auto browser_context = web_contents()->GetBrowserContext(); - auto download_manager = + auto* browser_context = web_contents()->GetBrowserContext(); + auto* download_manager = content::BrowserContext::GetDownloadManager(browser_context); download_manager->DownloadUrl( @@ -1223,7 +1224,7 @@ std::string WebContents::GetUserAgent() { bool WebContents::SavePage(const base::FilePath& full_file_path, const content::SavePageType& save_type, const SavePageHandler::SavePageCallback& callback) { - auto handler = new SavePageHandler(web_contents(), callback); + auto* handler = new SavePageHandler(web_contents(), callback); return handler->Handle(full_file_path, save_type); } @@ -1280,9 +1281,9 @@ void WebContents::EnableDeviceEmulation( if (type_ == REMOTE) return; - auto frame_host = web_contents()->GetMainFrame(); + auto* frame_host = web_contents()->GetMainFrame(); if (frame_host) { - auto widget_host = + auto* widget_host = frame_host ? frame_host->GetView()->GetRenderWidgetHost() : nullptr; if (!widget_host) return; @@ -1295,9 +1296,9 @@ void WebContents::DisableDeviceEmulation() { if (type_ == REMOTE) return; - auto frame_host = web_contents()->GetMainFrame(); + auto* frame_host = web_contents()->GetMainFrame(); if (frame_host) { - auto widget_host = + auto* widget_host = frame_host ? frame_host->GetView()->GetRenderWidgetHost() : nullptr; if (!widget_host) return; @@ -1343,7 +1344,7 @@ void WebContents::InspectServiceWorker() { } void WebContents::HasServiceWorker(const base::Callback& callback) { - auto context = GetServiceWorkerContext(web_contents()); + auto* context = GetServiceWorkerContext(web_contents()); if (!context) return; @@ -1358,7 +1359,7 @@ void WebContents::HasServiceWorker(const base::Callback& callback) { } }; - auto wrapped_callback = new WrappedCallback(callback); + auto* wrapped_callback = new WrappedCallback(callback); context->CheckHasServiceWorker( web_contents()->GetLastCommittedURL(), GURL::EmptyGURL(), @@ -1367,7 +1368,7 @@ void WebContents::HasServiceWorker(const base::Callback& callback) { void WebContents::UnregisterServiceWorker( const base::Callback& callback) { - auto context = GetServiceWorkerContext(web_contents()); + auto* context = GetServiceWorkerContext(web_contents()); if (!context) return; @@ -1393,7 +1394,7 @@ void WebContents::Print(mate::Arguments* args) { args->ThrowError(); return; } - auto print_view_manager_basic_ptr = + auto* print_view_manager_basic_ptr = printing::PrintViewManagerBasic::FromWebContents(web_contents()); if (args->Length() == 2) { base::Callback callback; @@ -1505,14 +1506,14 @@ void WebContents::StopFindInPage(content::StopFindAction action) { void WebContents::ShowDefinitionForSelection() { #if defined(OS_MACOSX) - const auto view = web_contents()->GetRenderWidgetHostView(); + auto* const view = web_contents()->GetRenderWidgetHostView(); if (view) view->ShowDefinitionForSelection(); #endif } void WebContents::CopyImageAt(int x, int y) { - const auto host = web_contents()->GetMainFrame(); + auto* const host = web_contents()->GetMainFrame(); if (host) host->CopyImageAt(x, y); } @@ -1544,7 +1545,7 @@ void WebContents::TabTraverse(bool reverse) { bool WebContents::SendIPCMessage(bool all_frames, const base::string16& channel, const base::ListValue& args) { - auto frame_host = web_contents()->GetMainFrame(); + auto* frame_host = web_contents()->GetMainFrame(); if (frame_host) { return frame_host->Send(new AtomFrameMsg_Message( frame_host->GetRoutingID(), all_frames, channel, args)); @@ -1554,7 +1555,7 @@ bool WebContents::SendIPCMessage(bool all_frames, void WebContents::SendInputEvent(v8::Isolate* isolate, v8::Local input_event) { - const auto view = static_cast( + auto* const view = static_cast( web_contents()->GetRenderWidgetHostView()); if (!view) return; @@ -1597,7 +1598,7 @@ void WebContents::BeginFrameSubscription(mate::Arguments* args) { return; } - const auto view = web_contents()->GetRenderWidgetHostView(); + auto* const view = web_contents()->GetRenderWidgetHostView(); if (view) { std::unique_ptr frame_subscriber( new FrameSubscriber(isolate(), view, callback, only_dirty)); @@ -1606,7 +1607,7 @@ void WebContents::BeginFrameSubscription(mate::Arguments* args) { } void WebContents::EndFrameSubscription() { - const auto view = web_contents()->GetRenderWidgetHostView(); + auto* const view = web_contents()->GetRenderWidgetHostView(); if (view) view->EndFrameSubscription(); } @@ -1659,7 +1660,7 @@ void WebContents::CapturePage(mate::Arguments* args) { return; } - const auto view = web_contents()->GetRenderWidgetHostView(); + auto* const view = web_contents()->GetRenderWidgetHostView(); if (!view) { callback.Run(gfx::Image()); return; @@ -1787,7 +1788,7 @@ void WebContents::Invalidate() { osr_rwhv->Invalidate(); #endif } else { - const auto window = owner_window(); + auto* const window = owner_window(); if (window) window->Invalidate(); } @@ -1795,7 +1796,7 @@ void WebContents::Invalidate() { gfx::Size WebContents::GetSizeForNewRenderView(content::WebContents* wc) const { if (IsOffScreen() && wc == web_contents()) { - auto relay = NativeWindowRelay::FromWebContents(web_contents()); + auto* relay = NativeWindowRelay::FromWebContents(web_contents()); if (relay) { return relay->window->GetSize(); } @@ -1877,7 +1878,7 @@ content::WebContents* WebContents::HostWebContents() { void WebContents::SetEmbedder(const WebContents* embedder) { if (embedder) { NativeWindow* owner_window = nullptr; - auto relay = NativeWindowRelay::FromWebContents(embedder->web_contents()); + auto* relay = NativeWindowRelay::FromWebContents(embedder->web_contents()); if (relay) { owner_window = relay->window.get(); } @@ -2054,7 +2055,7 @@ mate::Handle WebContents::CreateFrom( v8::Isolate* isolate, content::WebContents* web_contents) { // We have an existing WebContents object in JS. - auto existing = TrackableObject::FromWrappedClass(isolate, web_contents); + auto* existing = TrackableObject::FromWrappedClass(isolate, web_contents); if (existing) return mate::CreateHandle(isolate, static_cast(existing)); diff --git a/atom/browser/api/atom_api_web_contents.h b/atom/browser/api/atom_api_web_contents.h index 2049ae8eea46..0724e3456f4d 100644 --- a/atom/browser/api/atom_api_web_contents.h +++ b/atom/browser/api/atom_api_web_contents.h @@ -262,7 +262,7 @@ class WebContents : public mate::TrackableObject, content::WebContents* web_contents, Type type); WebContents(v8::Isolate* isolate, const mate::Dictionary& options); - ~WebContents(); + ~WebContents() override; void InitWithSessionAndOptions(v8::Isolate* isolate, content::WebContents* web_contents, diff --git a/atom/browser/api/atom_api_web_contents_mac.mm b/atom/browser/api/atom_api_web_contents_mac.mm index c60639f16131..8a53e1fd1cc9 100644 --- a/atom/browser/api/atom_api_web_contents_mac.mm +++ b/atom/browser/api/atom_api_web_contents_mac.mm @@ -11,7 +11,7 @@ namespace atom { namespace api { bool WebContents::IsFocused() const { - auto view = web_contents()->GetRenderWidgetHostView(); + auto* view = web_contents()->GetRenderWidgetHostView(); if (!view) return false; if (GetType() != BACKGROUND_PAGE) { diff --git a/atom/browser/api/atom_api_web_view_manager.cc b/atom/browser/api/atom_api_web_view_manager.cc index 74eb7ce17935..27fb2cf3fc39 100644 --- a/atom/browser/api/atom_api_web_view_manager.cc +++ b/atom/browser/api/atom_api_web_view_manager.cc @@ -23,7 +23,7 @@ void AddGuest(int guest_instance_id, content::WebContents* embedder, content::WebContents* guest_web_contents, const base::DictionaryValue& options) { - auto manager = atom::WebViewManager::GetWebViewManager(embedder); + auto* manager = atom::WebViewManager::GetWebViewManager(embedder); if (manager) manager->AddGuest(guest_instance_id, element_instance_id, embedder, guest_web_contents); @@ -38,7 +38,7 @@ void AddGuest(int guest_instance_id, } void RemoveGuest(content::WebContents* embedder, int guest_instance_id) { - auto manager = atom::WebViewManager::GetWebViewManager(embedder); + auto* manager = atom::WebViewManager::GetWebViewManager(embedder); if (manager) manager->RemoveGuest(guest_instance_id); } diff --git a/atom/browser/api/event_subscriber.cc b/atom/browser/api/event_subscriber.cc index 6ad4610d5d54..afcd8012766c 100644 --- a/atom/browser/api/event_subscriber.cc +++ b/atom/browser/api/event_subscriber.cc @@ -75,7 +75,7 @@ void EventSubscriberBase::On(const std::string& event_name) { v8::HandleScope handle_scope(isolate_); auto fn_template = g_cached_template.Get(isolate_); auto event = mate::StringToV8(isolate_, event_name); - auto js_handler_data = new JSHandlerData(isolate_, this); + auto* js_handler_data = new JSHandlerData(isolate_, this); v8::Local fn = internal::BindFunctionWith( isolate_, isolate_->GetCurrentContext(), fn_template->GetFunction(), js_handler_data->handle_.Get(isolate_), event); diff --git a/atom/browser/api/frame_subscriber.cc b/atom/browser/api/frame_subscriber.cc index 7248b29dff26..8c2ce34a8a05 100644 --- a/atom/browser/api/frame_subscriber.cc +++ b/atom/browser/api/frame_subscriber.cc @@ -27,6 +27,8 @@ FrameSubscriber::FrameSubscriber(v8::Isolate* isolate, source_id_for_copy_request_(base::UnguessableToken::Create()), weak_factory_(this) {} +FrameSubscriber::~FrameSubscriber() = default; + bool FrameSubscriber::ShouldCaptureFrame( const gfx::Rect& dirty_rect, base::TimeTicks present_time, @@ -87,8 +89,8 @@ void FrameSubscriber::OnFrameDelivered(const FrameCaptureCallback& callback, auto local_buffer = buffer.ToLocalChecked(); { - auto source = static_cast(bitmap.getPixels()); - auto target = node::Buffer::Data(local_buffer); + auto* source = static_cast(bitmap.getPixels()); + auto* target = node::Buffer::Data(local_buffer); for (int y = 0; y < bitmap.height(); ++y) { memcpy(target, source, rgb_row_size); diff --git a/atom/browser/api/frame_subscriber.h b/atom/browser/api/frame_subscriber.h index 3761f144d04b..4dbef58d9f0b 100644 --- a/atom/browser/api/frame_subscriber.h +++ b/atom/browser/api/frame_subscriber.h @@ -27,6 +27,7 @@ class FrameSubscriber : public content::RenderWidgetHostViewFrameSubscriber { content::RenderWidgetHostView* view, const FrameCaptureCallback& callback, bool only_dirty); + ~FrameSubscriber() override; bool ShouldCaptureFrame(const gfx::Rect& damage_rect, base::TimeTicks present_time, diff --git a/atom/browser/api/save_page_handler.cc b/atom/browser/api/save_page_handler.cc index 07505edbd200..cce01876f1c7 100644 --- a/atom/browser/api/save_page_handler.cc +++ b/atom/browser/api/save_page_handler.cc @@ -30,7 +30,7 @@ void SavePageHandler::OnDownloadCreated(content::DownloadManager* manager, bool SavePageHandler::Handle(const base::FilePath& full_path, const content::SavePageType& save_type) { - auto download_manager = content::BrowserContext::GetDownloadManager( + auto* download_manager = content::BrowserContext::GetDownloadManager( web_contents_->GetBrowserContext()); download_manager->AddObserver(this); // Chromium will create a 'foo_files' directory under the directory of saving diff --git a/atom/browser/api/save_page_handler.h b/atom/browser/api/save_page_handler.h index 951a9414e03f..ae34211936cb 100644 --- a/atom/browser/api/save_page_handler.h +++ b/atom/browser/api/save_page_handler.h @@ -32,7 +32,7 @@ class SavePageHandler : public content::DownloadManager::Observer, SavePageHandler(content::WebContents* web_contents, const SavePageCallback& callback); - ~SavePageHandler(); + ~SavePageHandler() override; bool Handle(const base::FilePath& full_path, const content::SavePageType& save_type); diff --git a/atom/browser/api/trackable_object.cc b/atom/browser/api/trackable_object.cc index 4b75d0ac094f..7e22aa0c1dae 100644 --- a/atom/browser/api/trackable_object.cc +++ b/atom/browser/api/trackable_object.cc @@ -54,7 +54,8 @@ void TrackableObjectBase::AttachAsUserData(base::SupportsUserData* wrapped) { int32_t TrackableObjectBase::GetIDFromWrappedClass( base::SupportsUserData* wrapped) { if (wrapped) { - auto id = static_cast(wrapped->GetUserData(kTrackedObjectKey)); + auto* id = static_cast( + wrapped->GetUserData(kTrackedObjectKey)); if (id) return *id; } diff --git a/atom/browser/atom_access_token_store.h b/atom/browser/atom_access_token_store.h index 8440e16cee9c..1107ad6a5b67 100644 --- a/atom/browser/atom_access_token_store.h +++ b/atom/browser/atom_access_token_store.h @@ -12,7 +12,6 @@ namespace atom { class AtomAccessTokenStore : public device::AccessTokenStore { public: AtomAccessTokenStore() = default; - ~AtomAccessTokenStore() = default; // device::AccessTokenStore: void LoadAccessTokens(const LoadAccessTokensCallback& callback) override {} @@ -20,6 +19,7 @@ class AtomAccessTokenStore : public device::AccessTokenStore { const base::string16& access_token) override {} private: + ~AtomAccessTokenStore() override = default; DISALLOW_COPY_AND_ASSIGN(AtomAccessTokenStore); }; diff --git a/atom/browser/atom_browser_client.cc b/atom/browser/atom_browser_client.cc index 6d193c3cffc3..0242edb7fc74 100644 --- a/atom/browser/atom_browser_client.cc +++ b/atom/browser/atom_browser_client.cc @@ -120,7 +120,7 @@ bool AtomBrowserClient::ShouldCreateNewSiteInstance( // a new SiteInstance return true; } - auto web_contents = + auto* web_contents = content::WebContents::FromRenderFrameHost(render_frame_host); if (!ChildWebContentsTracker::IsChildWebContents(web_contents)) { // Root WebContents should always create new process to make sure @@ -252,7 +252,7 @@ void AtomBrowserClient::OverrideSiteInstanceForNavigation( site_per_affinities[affinity] = candidate_instance; *new_instance = candidate_instance; // Remember the original web contents for the pending renderer process. - auto pending_process = candidate_instance->GetProcess(); + auto* pending_process = candidate_instance->GetProcess(); pending_processes_[pending_process->GetID()] = web_contents; } } else { @@ -272,7 +272,7 @@ void AtomBrowserClient::OverrideSiteInstanceForNavigation( *new_instance = candidate_instance; // Remember the original web contents for the pending renderer process. - auto pending_process = candidate_instance->GetProcess(); + auto* pending_process = candidate_instance->GetProcess(); pending_processes_[pending_process->GetID()] = web_contents; } } @@ -343,8 +343,8 @@ void AtomBrowserClient::DidCreatePpapiPlugin(content::BrowserPpapiHost* host) { void AtomBrowserClient::GetGeolocationRequestContext( base::OnceCallback)> callback) { - auto io_thread = AtomBrowserMainParts::Get()->io_thread(); - auto context = io_thread->GetRequestContext(); + auto* io_thread = AtomBrowserMainParts::Get()->io_thread(); + auto* context = io_thread->GetRequestContext(); base::ThreadTaskRunnerHandle::Get()->PostTask( FROM_HERE, base::BindOnce(std::move(callback), base::RetainedRef(context))); @@ -483,7 +483,7 @@ void AtomBrowserClient::WebNotificationAllowed( callback.Run(false, false); return; } - auto permission_helper = + auto* permission_helper = WebContentsPermissionHelper::FromWebContents(web_contents); if (!permission_helper) { callback.Run(false, false); diff --git a/atom/browser/atom_browser_client.h b/atom/browser/atom_browser_client.h index b2e7ae611447..abb592cc90ca 100644 --- a/atom/browser/atom_browser_client.h +++ b/atom/browser/atom_browser_client.h @@ -31,7 +31,7 @@ class AtomBrowserClient : public brightray::BrowserClient, public content::RenderProcessHostObserver { public: AtomBrowserClient(); - virtual ~AtomBrowserClient(); + ~AtomBrowserClient() override; using Delegate = content::ContentBrowserClient; void set_delegate(Delegate* delegate) { delegate_ = delegate; } diff --git a/atom/browser/atom_browser_context.cc b/atom/browser/atom_browser_context.cc index 78f3d1a793c7..1cc741e2f406 100644 --- a/atom/browser/atom_browser_context.cc +++ b/atom/browser/atom_browser_context.cc @@ -150,7 +150,7 @@ AtomBrowserContext::CreateURLRequestJobFactory( url::kWssScheme, base::WrapUnique(new HttpProtocolHandler(url::kWssScheme))); - auto host_resolver = + auto* host_resolver = url_request_context_getter()->GetURLRequestContext()->host_resolver(); job_factory->SetProtocolHandler( url::kFtpScheme, net::FtpProtocolHandler::Create(host_resolver)); @@ -171,7 +171,7 @@ AtomBrowserContext::CreateHttpCacheBackendFactory( content::DownloadManagerDelegate* AtomBrowserContext::GetDownloadManagerDelegate() { if (!download_manager_delegate_.get()) { - auto download_manager = content::BrowserContext::GetDownloadManager(this); + auto* download_manager = content::BrowserContext::GetDownloadManager(this); download_manager_delegate_.reset( new AtomDownloadManagerDelegate(download_manager)); } diff --git a/atom/browser/atom_browser_main_parts.h b/atom/browser/atom_browser_main_parts.h index 11b375428065..58f9821c020d 100644 --- a/atom/browser/atom_browser_main_parts.h +++ b/atom/browser/atom_browser_main_parts.h @@ -28,7 +28,7 @@ class BridgeTaskRunner; class AtomBrowserMainParts : public brightray::BrowserMainParts { public: AtomBrowserMainParts(); - virtual ~AtomBrowserMainParts(); + ~AtomBrowserMainParts() override; static AtomBrowserMainParts* Get(); diff --git a/atom/browser/atom_download_manager_delegate.cc b/atom/browser/atom_download_manager_delegate.cc index 008b1e65ac7f..e6578d695f8c 100644 --- a/atom/browser/atom_download_manager_delegate.cc +++ b/atom/browser/atom_download_manager_delegate.cc @@ -78,13 +78,13 @@ void AtomDownloadManagerDelegate::OnDownloadPathGenerated( const base::FilePath& default_path) { DCHECK_CURRENTLY_ON(content::BrowserThread::UI); - auto item = download_manager_->GetDownload(download_id); + auto* item = download_manager_->GetDownload(download_id); if (!item) return; NativeWindow* window = nullptr; content::WebContents* web_contents = item->GetWebContents(); - auto relay = + auto* relay = web_contents ? NativeWindowRelay::FromWebContents(web_contents) : nullptr; if (relay) window = relay->window.get(); diff --git a/atom/browser/atom_download_manager_delegate.h b/atom/browser/atom_download_manager_delegate.h index 54928b26a3d0..ce0400f2b948 100644 --- a/atom/browser/atom_download_manager_delegate.h +++ b/atom/browser/atom_download_manager_delegate.h @@ -22,7 +22,7 @@ class AtomDownloadManagerDelegate : public content::DownloadManagerDelegate { base::Callback; explicit AtomDownloadManagerDelegate(content::DownloadManager* manager); - virtual ~AtomDownloadManagerDelegate(); + ~AtomDownloadManagerDelegate() override; void OnDownloadPathGenerated(uint32_t download_id, const content::DownloadTargetCallback& callback, diff --git a/atom/browser/atom_javascript_dialog_manager.cc b/atom/browser/atom_javascript_dialog_manager.cc index ea3869ae9e6c..fcbf6ea75e53 100644 --- a/atom/browser/atom_javascript_dialog_manager.cc +++ b/atom/browser/atom_javascript_dialog_manager.cc @@ -28,6 +28,7 @@ constexpr int kUserWantsNoMoreDialogs = -1; AtomJavaScriptDialogManager::AtomJavaScriptDialogManager( api::WebContents* api_web_contents) : api_web_contents_(api_web_contents) {} +AtomJavaScriptDialogManager::~AtomJavaScriptDialogManager() = default; void AtomJavaScriptDialogManager::RunJavaScriptDialog( content::WebContents* web_contents, diff --git a/atom/browser/atom_javascript_dialog_manager.h b/atom/browser/atom_javascript_dialog_manager.h index 68e6fd150ab9..e3562eedfc69 100644 --- a/atom/browser/atom_javascript_dialog_manager.h +++ b/atom/browser/atom_javascript_dialog_manager.h @@ -19,6 +19,7 @@ class WebContents; class AtomJavaScriptDialogManager : public content::JavaScriptDialogManager { public: explicit AtomJavaScriptDialogManager(api::WebContents* api_web_contents); + ~AtomJavaScriptDialogManager() override; // content::JavaScriptDialogManager implementations. void RunJavaScriptDialog(content::WebContents* web_contents, diff --git a/atom/browser/atom_permission_manager.cc b/atom/browser/atom_permission_manager.cc index 4add5e9e085e..e6269a411ad3 100644 --- a/atom/browser/atom_permission_manager.cc +++ b/atom/browser/atom_permission_manager.cc @@ -76,7 +76,7 @@ void AtomPermissionManager::SetPermissionRequestHandler( if (handler.is_null() && !pending_requests_.IsEmpty()) { for (PendingRequestsMap::const_iterator iter(&pending_requests_); !iter.IsAtEnd(); iter.Advance()) { - auto request = iter.GetCurrentValue(); + auto* request = iter.GetCurrentValue(); if (!WebContentsDestroyed(request->render_process_id())) request->RunCallback(); } @@ -146,7 +146,7 @@ int AtomPermissionManager::RequestPermissionsWithDetails( return kNoPendingOperation; } - auto web_contents = + auto* web_contents = content::WebContents::FromRenderFrameHost(render_frame_host); int request_id = pending_requests_.Add(std::make_unique( render_frame_host, permissions, response_callback)); @@ -175,7 +175,7 @@ void AtomPermissionManager::OnPermissionResponse( int request_id, int permission_id, blink::mojom::PermissionStatus status) { - auto pending_request = pending_requests_.Lookup(request_id); + auto* pending_request = pending_requests_.Lookup(request_id); if (!pending_request) return; @@ -187,7 +187,7 @@ void AtomPermissionManager::OnPermissionResponse( } void AtomPermissionManager::CancelPermissionRequest(int request_id) { - auto pending_request = pending_requests_.Lookup(request_id); + auto* pending_request = pending_requests_.Lookup(request_id); if (!pending_request) return; diff --git a/atom/browser/atom_quota_permission_context.h b/atom/browser/atom_quota_permission_context.h index 378f597c75c8..93428988596b 100644 --- a/atom/browser/atom_quota_permission_context.h +++ b/atom/browser/atom_quota_permission_context.h @@ -14,7 +14,6 @@ class AtomQuotaPermissionContext : public content::QuotaPermissionContext { typedef content::QuotaPermissionContext::QuotaPermissionResponse response; AtomQuotaPermissionContext(); - virtual ~AtomQuotaPermissionContext(); // content::QuotaPermissionContext: void RequestQuotaPermission(const content::StorageQuotaParams& params, @@ -22,6 +21,8 @@ class AtomQuotaPermissionContext : public content::QuotaPermissionContext { const PermissionCallback& callback) override; private: + ~AtomQuotaPermissionContext() override; + DISALLOW_COPY_AND_ASSIGN(AtomQuotaPermissionContext); }; diff --git a/atom/browser/atom_resource_dispatcher_host_delegate.cc b/atom/browser/atom_resource_dispatcher_host_delegate.cc index 993a7734eb75..54c19036ef8a 100644 --- a/atom/browser/atom_resource_dispatcher_host_delegate.cc +++ b/atom/browser/atom_resource_dispatcher_host_delegate.cc @@ -57,7 +57,7 @@ void HandleExternalProtocolInUI( if (!web_contents) return; - auto permission_helper = + auto* permission_helper = WebContentsPermissionHelper::FromWebContents(web_contents); if (!permission_helper) return; diff --git a/atom/browser/atom_speech_recognition_manager_delegate.h b/atom/browser/atom_speech_recognition_manager_delegate.h index 011f5dde6025..10f812a99b8e 100644 --- a/atom/browser/atom_speech_recognition_manager_delegate.h +++ b/atom/browser/atom_speech_recognition_manager_delegate.h @@ -18,7 +18,7 @@ class AtomSpeechRecognitionManagerDelegate public content::SpeechRecognitionEventListener { public: AtomSpeechRecognitionManagerDelegate(); - virtual ~AtomSpeechRecognitionManagerDelegate(); + ~AtomSpeechRecognitionManagerDelegate() override; // content::SpeechRecognitionEventListener: void OnRecognitionStart(int session_id) override; diff --git a/atom/browser/atom_web_ui_controller_factory.h b/atom/browser/atom_web_ui_controller_factory.h index 41819daf8ccc..3149d600ecf6 100644 --- a/atom/browser/atom_web_ui_controller_factory.h +++ b/atom/browser/atom_web_ui_controller_factory.h @@ -16,7 +16,7 @@ class AtomWebUIControllerFactory : public content::WebUIControllerFactory { static AtomWebUIControllerFactory* GetInstance(); AtomWebUIControllerFactory(); - virtual ~AtomWebUIControllerFactory(); + ~AtomWebUIControllerFactory() override; // content::WebUIControllerFactory: content::WebUI::TypeID GetWebUIType(content::BrowserContext* browser_context, diff --git a/atom/browser/bridge_task_runner.cc b/atom/browser/bridge_task_runner.cc index 829b4a38257c..c0b3cd750d9d 100644 --- a/atom/browser/bridge_task_runner.cc +++ b/atom/browser/bridge_task_runner.cc @@ -8,8 +8,11 @@ namespace atom { +BridgeTaskRunner::BridgeTaskRunner() = default; +BridgeTaskRunner::~BridgeTaskRunner() = default; + void BridgeTaskRunner::MessageLoopIsReady() { - auto message_loop = base::MessageLoop::current(); + auto* message_loop = base::MessageLoop::current(); CHECK(message_loop); for (TaskPair& task : tasks_) { message_loop->task_runner()->PostDelayedTask( @@ -24,7 +27,7 @@ void BridgeTaskRunner::MessageLoopIsReady() { bool BridgeTaskRunner::PostDelayedTask(const base::Location& from_here, base::OnceClosure task, base::TimeDelta delay) { - auto message_loop = base::MessageLoop::current(); + auto* message_loop = base::MessageLoop::current(); if (!message_loop) { tasks_.push_back(std::make_tuple(from_here, std::move(task), delay)); return true; @@ -35,7 +38,7 @@ bool BridgeTaskRunner::PostDelayedTask(const base::Location& from_here, } bool BridgeTaskRunner::RunsTasksInCurrentSequence() const { - auto message_loop = base::MessageLoop::current(); + auto* message_loop = base::MessageLoop::current(); if (!message_loop) return true; @@ -46,7 +49,7 @@ bool BridgeTaskRunner::PostNonNestableDelayedTask( const base::Location& from_here, base::OnceClosure task, base::TimeDelta delay) { - auto message_loop = base::MessageLoop::current(); + auto* message_loop = base::MessageLoop::current(); if (!message_loop) { non_nestable_tasks_.push_back( std::make_tuple(from_here, std::move(task), delay)); diff --git a/atom/browser/bridge_task_runner.h b/atom/browser/bridge_task_runner.h index 70a3d7f5987d..7c3049b3f8c2 100644 --- a/atom/browser/bridge_task_runner.h +++ b/atom/browser/bridge_task_runner.h @@ -18,8 +18,7 @@ namespace atom { // otherwise delay the work until message loop is ready. class BridgeTaskRunner : public base::SingleThreadTaskRunner { public: - BridgeTaskRunner() {} - ~BridgeTaskRunner() override {} + BridgeTaskRunner(); // Called when message loop is ready. void MessageLoopIsReady(); @@ -36,6 +35,8 @@ class BridgeTaskRunner : public base::SingleThreadTaskRunner { private: using TaskPair = std::tuple; + ~BridgeTaskRunner() override; + std::vector tasks_; std::vector non_nestable_tasks_; diff --git a/atom/browser/browser.cc b/atom/browser/browser.cc index 3ba915f91eb3..56ebc638d38b 100644 --- a/atom/browser/browser.cc +++ b/atom/browser/browser.cc @@ -21,6 +21,11 @@ namespace atom { +Browser::LoginItemSettings::LoginItemSettings() = default; +Browser::LoginItemSettings::~LoginItemSettings() = default; +Browser::LoginItemSettings::LoginItemSettings( + const LoginItemSettings& other) = default; + Browser::Browser() : is_quiting_(false), is_exiting_(false), diff --git a/atom/browser/browser.h b/atom/browser/browser.h index a6d3baa2b3a9..87774c5bd91c 100644 --- a/atom/browser/browser.h +++ b/atom/browser/browser.h @@ -38,7 +38,7 @@ class LoginHandler; class Browser : public WindowListObserver { public: Browser(); - ~Browser(); + ~Browser() override; static Browser* Get(); @@ -100,6 +100,10 @@ class Browser : public WindowListObserver { bool opened_as_hidden = false; base::string16 path; std::vector args; + + LoginItemSettings(); + ~LoginItemSettings(); + LoginItemSettings(const LoginItemSettings&); }; void SetLoginItemSettings(LoginItemSettings settings); LoginItemSettings GetLoginItemSettings(const LoginItemSettings& options); diff --git a/atom/browser/browser_mac.mm b/atom/browser/browser_mac.mm index 8f13626b9f4d..e7960bafc82d 100644 --- a/atom/browser/browser_mac.mm +++ b/atom/browser/browser_mac.mm @@ -145,9 +145,13 @@ void Browser::SetUserActivity(const std::string& type, } std::string Browser::GetCurrentActivityType() { - NSUserActivity* userActivity = - [[AtomApplication sharedApplication] getCurrentActivity]; - return base::SysNSStringToUTF8(userActivity.activityType); + if (@available(macOS 10.10, *)) { + NSUserActivity* userActivity = + [[AtomApplication sharedApplication] getCurrentActivity]; + return base::SysNSStringToUTF8(userActivity.activityType); + } else { + return std::string(); + } } void Browser::InvalidateCurrentActivity() { @@ -256,7 +260,7 @@ std::string Browser::DockGetBadgeText() { } void Browser::DockHide() { - for (const auto& window : WindowList::GetWindows()) + for (auto* const& window : WindowList::GetWindows()) [window->GetNativeWindow() setCanHide:NO]; ProcessSerialNumber psn = { 0, kCurrentProcess }; diff --git a/atom/browser/common_web_contents_delegate.cc b/atom/browser/common_web_contents_delegate.cc index 2765c722e21c..e99a15ec360f 100644 --- a/atom/browser/common_web_contents_delegate.cc +++ b/atom/browser/common_web_contents_delegate.cc @@ -57,7 +57,7 @@ struct FileSystem { std::string RegisterFileSystem(content::WebContents* web_contents, const base::FilePath& path) { - auto isolated_context = storage::IsolatedContext::GetInstance(); + auto* isolated_context = storage::IsolatedContext::GetInstance(); std::string root_name(kRootName); std::string file_system_id = isolated_context->RegisterFileSystemForPath( storage::kFileSystemTypeNativeLocal, std::string(), path, &root_name); @@ -113,13 +113,13 @@ void AppendToFile(const base::FilePath& path, const std::string& content) { } PrefService* GetPrefService(content::WebContents* web_contents) { - auto context = web_contents->GetBrowserContext(); + auto* context = web_contents->GetBrowserContext(); return static_cast(context)->prefs(); } std::set GetAddedFileSystemPaths( content::WebContents* web_contents) { - auto pref_service = GetPrefService(web_contents); + auto* pref_service = GetPrefService(web_contents); const base::DictionaryValue* file_system_paths_value = pref_service->GetDictionary(prefs::kDevToolsFileSystemPaths); std::set result; @@ -176,7 +176,7 @@ void CommonWebContentsDelegate::SetOwnerWindow( NativeWindow* owner_window) { owner_window_ = owner_window ? owner_window->GetWeakPtr() : nullptr; auto relay = std::make_unique(owner_window_); - auto relay_key = relay->key; + auto* relay_key = relay->key; if (owner_window) { #if defined(TOOLKIT_VIEWS) autofill_popup_.reset(new AutofillPopup()); @@ -383,7 +383,7 @@ void CommonWebContentsDelegate::DevToolsAddFileSystem( std::unique_ptr file_system_value( CreateFileSystemValue(file_system)); - auto pref_service = GetPrefService(GetDevToolsWebContents()); + auto* pref_service = GetPrefService(GetDevToolsWebContents()); DictionaryPrefUpdate update(pref_service, prefs::kDevToolsFileSystemPaths); update.Get()->SetWithoutPathExpansion(path.AsUTF8Unsafe(), std::make_unique()); @@ -401,7 +401,7 @@ void CommonWebContentsDelegate::DevToolsRemoveFileSystem( storage::IsolatedContext::GetInstance()->RevokeFileSystemByPath( file_system_path); - auto pref_service = GetPrefService(GetDevToolsWebContents()); + auto* pref_service = GetPrefService(GetDevToolsWebContents()); DictionaryPrefUpdate update(pref_service, prefs::kDevToolsFileSystemPaths); update.Get()->RemoveWithoutPathExpansion(path, nullptr); diff --git a/atom/browser/common_web_contents_delegate.h b/atom/browser/common_web_contents_delegate.h index 79030ab85ac1..5c24e606a73b 100644 --- a/atom/browser/common_web_contents_delegate.h +++ b/atom/browser/common_web_contents_delegate.h @@ -33,7 +33,7 @@ class CommonWebContentsDelegate public brightray::InspectableWebContentsViewDelegate { public: CommonWebContentsDelegate(); - virtual ~CommonWebContentsDelegate(); + ~CommonWebContentsDelegate() override; // Creates a InspectableWebContents object and takes onwership of // |web_contents|. diff --git a/atom/browser/javascript_environment.cc b/atom/browser/javascript_environment.cc index cc666e72e616..c158759e2de8 100644 --- a/atom/browser/javascript_environment.cc +++ b/atom/browser/javascript_environment.cc @@ -29,6 +29,8 @@ JavascriptEnvironment::JavascriptEnvironment() context_(isolate_, v8::Context::New(isolate_)), context_scope_(v8::Local::New(isolate_, context_)) {} +JavascriptEnvironment::~JavascriptEnvironment() = default; + void JavascriptEnvironment::OnMessageLoopCreated() { isolate_holder_.AddRunMicrotasksObserver(); } @@ -38,7 +40,7 @@ void JavascriptEnvironment::OnMessageLoopDestroying() { } bool JavascriptEnvironment::Initialize() { - auto cmd = base::CommandLine::ForCurrentProcess(); + auto* cmd = base::CommandLine::ForCurrentProcess(); // --js-flags. std::string js_flags = cmd->GetSwitchValueASCII(switches::kJavaScriptFlags); diff --git a/atom/browser/javascript_environment.h b/atom/browser/javascript_environment.h index 09b22ebb838c..bf05b687f8b3 100644 --- a/atom/browser/javascript_environment.h +++ b/atom/browser/javascript_environment.h @@ -19,6 +19,7 @@ namespace atom { class JavascriptEnvironment { public: JavascriptEnvironment(); + ~JavascriptEnvironment(); void OnMessageLoopCreated(); void OnMessageLoopDestroying(); diff --git a/atom/browser/mac/atom_application.h b/atom/browser/mac/atom_application.h index 5015608d6fc6..b0a8742ee98b 100644 --- a/atom/browser/mac/atom_application.h +++ b/atom/browser/mac/atom_application.h @@ -11,7 +11,7 @@ NSUserActivityDelegate> { @private BOOL handlingSendEvent_; - base::scoped_nsobject currentActivity_; + base::scoped_nsobject currentActivity_ API_AVAILABLE(macosx(10.10)); NSCondition* handoffLock_; BOOL updateReceived_; base::Callback shouldShutdown_; @@ -27,7 +27,7 @@ // CrAppControlProtocol: - (void)setHandlingSendEvent:(BOOL)handlingSendEvent; -- (NSUserActivity*)getCurrentActivity; +- (NSUserActivity*)getCurrentActivity API_AVAILABLE(macosx(10.10)); - (void)setCurrentActivity:(NSString*)type withUserInfo:(NSDictionary*)userInfo withWebpageURL:(NSURL*)webpageURL; diff --git a/atom/browser/mac/atom_application.mm b/atom/browser/mac/atom_application.mm index a7ea338857f4..ed849fbf1740 100644 --- a/atom/browser/mac/atom_application.mm +++ b/atom/browser/mac/atom_application.mm @@ -58,13 +58,15 @@ inline void dispatch_sync_main(dispatch_block_t block) { - (void)setCurrentActivity:(NSString*)type withUserInfo:(NSDictionary*)userInfo withWebpageURL:(NSURL*)webpageURL { - currentActivity_ = base::scoped_nsobject( - [[NSUserActivity alloc] initWithActivityType:type]); - [currentActivity_ setUserInfo:userInfo]; - [currentActivity_ setWebpageURL:webpageURL]; - [currentActivity_ setDelegate:self]; - [currentActivity_ becomeCurrent]; - [currentActivity_ setNeedsSave:YES]; + if (@available(macOS 10.10, *)) { + currentActivity_ = base::scoped_nsobject( + [[NSUserActivity alloc] initWithActivityType:type]); + [currentActivity_ setUserInfo:userInfo]; + [currentActivity_ setWebpageURL:webpageURL]; + [currentActivity_ setDelegate:self]; + [currentActivity_ becomeCurrent]; + [currentActivity_ setNeedsSave:YES]; + } } - (NSUserActivity*)getCurrentActivity { @@ -90,7 +92,7 @@ inline void dispatch_sync_main(dispatch_block_t block) { [handoffLock_ unlock]; } -- (void)userActivityWillSave:(NSUserActivity *)userActivity { +- (void)userActivityWillSave:(NSUserActivity *)userActivity API_AVAILABLE(macosx(10.10)) { __block BOOL shouldWait = NO; dispatch_sync_main(^{ std::string activity_type(base::SysNSStringToUTF8(userActivity.activityType)); @@ -114,7 +116,7 @@ inline void dispatch_sync_main(dispatch_block_t block) { [userActivity setNeedsSave:YES]; } -- (void)userActivityWasContinued:(NSUserActivity *)userActivity { +- (void)userActivityWasContinued:(NSUserActivity *)userActivity API_AVAILABLE(macosx(10.10)) { dispatch_async(dispatch_get_main_queue(), ^{ std::string activity_type(base::SysNSStringToUTF8(userActivity.activityType)); std::unique_ptr user_info = @@ -165,7 +167,7 @@ inline void dispatch_sync_main(dispatch_block_t block) { } - (void)updateAccessibilityEnabled:(BOOL)enabled { - auto ax_state = content::BrowserAccessibilityState::GetInstance(); + auto* ax_state = content::BrowserAccessibilityState::GetInstance(); if (enabled) { ax_state->OnScreenReaderDetected(); diff --git a/atom/browser/mac/atom_application_delegate.mm b/atom/browser/mac/atom_application_delegate.mm index e210ad2b6a77..8a79f4de6e81 100644 --- a/atom/browser/mac/atom_application_delegate.mm +++ b/atom/browser/mac/atom_application_delegate.mm @@ -96,7 +96,8 @@ static base::mac::ScopedObjCClassSwizzler* g_swizzle_imk_input_session; - (BOOL)application:(NSApplication*)sender continueUserActivity:(NSUserActivity*)userActivity - restorationHandler:(void (^)(NSArray*restorableObjects))restorationHandler { + restorationHandler:(void (^)(NSArray*restorableObjects))restorationHandler + API_AVAILABLE(macosx(10.10)) { std::string activity_type(base::SysNSStringToUTF8(userActivity.activityType)); std::unique_ptr user_info = atom::NSDictionaryToDictionaryValue(userActivity.userInfo); diff --git a/atom/browser/mac/in_app_purchase_observer.h b/atom/browser/mac/in_app_purchase_observer.h index 351db2008ef6..845898d17a05 100644 --- a/atom/browser/mac/in_app_purchase_observer.h +++ b/atom/browser/mac/in_app_purchase_observer.h @@ -34,6 +34,10 @@ struct Transaction { std::string errorMessage = ""; std::string transactionState = ""; Payment payment; + + Transaction(); + Transaction(const Transaction&); + ~Transaction(); }; // --------------------------- Classes --------------------------- diff --git a/atom/browser/mac/in_app_purchase_observer.mm b/atom/browser/mac/in_app_purchase_observer.mm index dffaf7d23623..bcce296b1ca2 100644 --- a/atom/browser/mac/in_app_purchase_observer.mm +++ b/atom/browser/mac/in_app_purchase_observer.mm @@ -174,6 +174,10 @@ using InAppTransactionCallback = base::RepeatingCallback& productIDs, const InAppPurchaseProductsCallback& callback) { auto* iapProduct = [[InAppPurchaseProduct alloc] initWithCallback:callback]; diff --git a/atom/browser/native_browser_view_mac.mm b/atom/browser/native_browser_view_mac.mm index 86df632638ef..ed0c8892bada 100644 --- a/atom/browser/native_browser_view_mac.mm +++ b/atom/browser/native_browser_view_mac.mm @@ -25,6 +25,8 @@ const NSAutoresizingMaskOptions kDefaultAutoResizingMask = @implementation DragRegionView +@synthesize initialLocation; + - (BOOL)mouseDownCanMoveWindow { return NO; @@ -50,7 +52,9 @@ const NSAutoresizingMaskOptions kDefaultAutoResizingMask = postNotificationName:NSWindowWillMoveNotification object:self]; - [self.window performWindowDragWithEvent:event]; + if (@available(macOS 10.11, *)) { + [self.window performWindowDragWithEvent:event]; + } return; } diff --git a/atom/browser/native_window.cc b/atom/browser/native_window.cc index e3568007ca66..e1468b02a9c8 100644 --- a/atom/browser/native_window.cc +++ b/atom/browser/native_window.cc @@ -155,6 +155,10 @@ void NativeWindow::InitFromOptions(const mate::Dictionary& options) { Show(); } +bool NativeWindow::IsClosed() const { + return is_closed_; +} + void NativeWindow::SetSize(const gfx::Size& size, bool animate) { SetBounds(gfx::Rect(GetPosition(), size), animate); } @@ -505,4 +509,9 @@ void NativeWindow::NotifyWindowMessage(UINT message, } #endif +NativeWindowRelay::NativeWindowRelay(base::WeakPtr window) + : key(UserDataKey()), window(window) {} + +NativeWindowRelay::~NativeWindowRelay() = default; + } // namespace atom diff --git a/atom/browser/native_window.h b/atom/browser/native_window.h index f8729a7be5a0..e723dad5d1d4 100644 --- a/atom/browser/native_window.h +++ b/atom/browser/native_window.h @@ -63,7 +63,7 @@ class NativeWindow : public base::SupportsUserData { virtual void Close() = 0; virtual void CloseImmediately() = 0; - virtual bool IsClosed() const { return is_closed_; } + virtual bool IsClosed() const; virtual void Focus(bool focus) = 0; virtual bool IsFocused() = 0; virtual void Show() = 0; @@ -323,8 +323,8 @@ class NativeWindow : public base::SupportsUserData { class NativeWindowRelay : public content::WebContentsUserData { public: - explicit NativeWindowRelay(base::WeakPtr window) - : key(UserDataKey()), window(window) {} + explicit NativeWindowRelay(base::WeakPtr window); + ~NativeWindowRelay() override; static void* UserDataKey() { return content::WebContentsUserData::UserDataKey(); diff --git a/atom/browser/native_window_mac.h b/atom/browser/native_window_mac.h index 562e04c844e4..62ddc9784441 100644 --- a/atom/browser/native_window_mac.h +++ b/atom/browser/native_window_mac.h @@ -119,8 +119,8 @@ class NativeWindowMac : public NativeWindow { void RefreshTouchBarItem(const std::string& item_id) override; void SetEscapeTouchBarItem(const mate::PersistentDictionary& item) override; - gfx::Rect ContentBoundsToWindowBounds(const gfx::Rect& bounds) const; - gfx::Rect WindowBoundsToContentBounds(const gfx::Rect& bounds) const; + gfx::Rect ContentBoundsToWindowBounds(const gfx::Rect& bounds) const override; + gfx::Rect WindowBoundsToContentBounds(const gfx::Rect& bounds) const override; // Set the attribute of NSWindow while work around a bug of zoom button. void SetStyleMask(bool on, NSUInteger flag); diff --git a/atom/browser/native_window_mac.mm b/atom/browser/native_window_mac.mm index dfe5c2e360b9..046a349eecf8 100644 --- a/atom/browser/native_window_mac.mm +++ b/atom/browser/native_window_mac.mm @@ -314,59 +314,60 @@ bool ScopedDisableResize::disable_resize_ = false; shell_->SetResizable(true); // Hide the native toolbar before entering fullscreen, so there is no visual // artifacts. - if (base::mac::IsAtLeastOS10_10() && - shell_->title_bar_style() == atom::NativeWindowMac::HIDDEN_INSET) { - NSWindow* window = shell_->GetNativeWindow(); - [window setToolbar:nil]; + if (@available(macOS 10.10, *)) { + if (shell_->title_bar_style() == atom::NativeWindowMac::HIDDEN_INSET) { + NSWindow* window = shell_->GetNativeWindow(); + [window setToolbar:nil]; + } } } - (void)windowDidEnterFullScreen:(NSNotification*)notification { shell_->NotifyWindowEnterFullScreen(); - // For frameless window we don't show set title for normal mode since the - // titlebar is expected to be empty, but after entering fullscreen mode we - // have to set one, because title bar is visible here. - NSWindow* window = shell_->GetNativeWindow(); - if ((shell_->transparent() || !shell_->has_frame()) && - base::mac::IsAtLeastOS10_10() && - // FIXME(zcbenz): Showing titlebar for hiddenInset window is weird under + if (@available(macOS 10.10, *)) { + // For frameless window we don't show set title for normal mode since the + // titlebar is expected to be empty, but after entering fullscreen mode we + // have to set one, because title bar is visible here. + NSWindow* window = shell_->GetNativeWindow(); + if ((shell_->transparent() || !shell_->has_frame()) && + // FIXME(zcbenz): Showing titlebar for hiddenInset window is weird under + // fullscreen mode. + // Show title if fullscreen_window_title flag is set + (shell_->title_bar_style() != atom::NativeWindowMac::HIDDEN_INSET || + shell_->fullscreen_window_title())) { + [window setTitleVisibility:NSWindowTitleVisible]; + } + + // Restore the native toolbar immediately after entering fullscreen, if we do + // this before leaving fullscreen, traffic light buttons will be jumping. + if (shell_->title_bar_style() == atom::NativeWindowMac::HIDDEN_INSET) { + base::scoped_nsobject toolbar( + [[NSToolbar alloc] initWithIdentifier:@"titlebarStylingToolbar"]); + [toolbar setShowsBaselineSeparator:NO]; + [window setToolbar:toolbar]; + + // Set window style to hide the toolbar, otherwise the toolbar will show in // fullscreen mode. - // Show title if fullscreen_window_title flag is set - (shell_->title_bar_style() != atom::NativeWindowMac::HIDDEN_INSET || - shell_->fullscreen_window_title())) { - [window setTitleVisibility:NSWindowTitleVisible]; - } - - // Restore the native toolbar immediately after entering fullscreen, if we do - // this before leaving fullscreen, traffic light buttons will be jumping. - if (base::mac::IsAtLeastOS10_10() && - shell_->title_bar_style() == atom::NativeWindowMac::HIDDEN_INSET) { - base::scoped_nsobject toolbar( - [[NSToolbar alloc] initWithIdentifier:@"titlebarStylingToolbar"]); - [toolbar setShowsBaselineSeparator:NO]; - [window setToolbar:toolbar]; - - // Set window style to hide the toolbar, otherwise the toolbar will show in - // fullscreen mode. - shell_->SetStyleMask(true, NSFullSizeContentViewWindowMask); + shell_->SetStyleMask(true, NSFullSizeContentViewWindowMask); + } } } - (void)windowWillExitFullScreen:(NSNotification*)notification { - // Restore the titlebar visibility. - NSWindow* window = shell_->GetNativeWindow(); - if ((shell_->transparent() || !shell_->has_frame()) && - base::mac::IsAtLeastOS10_10() && - (shell_->title_bar_style() != atom::NativeWindowMac::HIDDEN_INSET || - shell_->fullscreen_window_title())) { - [window setTitleVisibility:NSWindowTitleHidden]; - } + if (@available(macOS 10.10, *)) { + // Restore the titlebar visibility. + NSWindow* window = shell_->GetNativeWindow(); + if ((shell_->transparent() || !shell_->has_frame()) && + (shell_->title_bar_style() != atom::NativeWindowMac::HIDDEN_INSET || + shell_->fullscreen_window_title())) { + [window setTitleVisibility:NSWindowTitleHidden]; + } - // Turn off the style for toolbar. - if (base::mac::IsAtLeastOS10_10() && - shell_->title_bar_style() == atom::NativeWindowMac::HIDDEN_INSET) { - shell_->SetStyleMask(false, NSFullSizeContentViewWindowMask); + // Turn off the style for toolbar. + if (shell_->title_bar_style() == atom::NativeWindowMac::HIDDEN_INSET) { + shell_->SetStyleMask(false, NSFullSizeContentViewWindowMask); + } } } @@ -424,6 +425,9 @@ bool ScopedDisableResize::disable_resize_ = false; @implementation AtomPreviewItem +@synthesize previewItemURL; +@synthesize previewItemTitle; + - (id)initWithURL:(NSURL*)url title:(NSString*)title { self = [super init]; if (self) { @@ -479,6 +483,13 @@ enum { @implementation AtomNSWindow +@synthesize acceptsFirstMouse; +@synthesize disableAutoHideCursor; +@synthesize disableKeyOrMainWindow; +@synthesize windowButtonsOffset; +@synthesize quickLookItem; +@synthesize vibrantView; + - (void)setShell:(atom::NativeWindowMac*)shell { shell_ = shell; } @@ -487,7 +498,8 @@ enum { enable_larger_than_screen_ = enable; } -- (void)resetTouchBar:(const std::vector&)settings { +- (void)resetTouchBar:(const std::vector&)settings + API_AVAILABLE(macosx(10.12.2)) { if (![self respondsToSelector:@selector(touchBar)]) return; atom_touch_bar_.reset([[AtomTouchBar alloc] initWithDelegate:self @@ -496,12 +508,13 @@ enum { self.touchBar = nil; } -- (void)refreshTouchBarItem:(const std::string&)item_id { +- (void)refreshTouchBarItem:(const std::string&)item_id + API_AVAILABLE(macosx(10.12.2)) { if (atom_touch_bar_ && self.touchBar) [atom_touch_bar_ refreshTouchBarItem:self.touchBar id:item_id]; } -- (NSTouchBar*)makeTouchBar { +- (NSTouchBar*)makeTouchBar API_AVAILABLE(macosx(10.12.2)) { if (atom_touch_bar_) return [atom_touch_bar_ makeTouchBar]; else @@ -509,14 +522,15 @@ enum { } - (NSTouchBarItem*)touchBar:(NSTouchBar*)touchBar - makeItemForIdentifier:(NSTouchBarItemIdentifier)identifier { + makeItemForIdentifier:(NSTouchBarItemIdentifier)identifier API_AVAILABLE(macosx(10.12.2)) { if (touchBar && atom_touch_bar_) return [atom_touch_bar_ makeItemForIdentifier:identifier]; else return nil; } -- (void)setEscapeTouchBarItem:(const mate::PersistentDictionary&)item { +- (void)setEscapeTouchBarItem:(const mate::PersistentDictionary&)item + API_AVAILABLE(macosx(10.12.2)) { if (atom_touch_bar_ && self.touchBar) [atom_touch_bar_ setEscapeTouchBarItem:item forTouchBar:self.touchBar]; } @@ -828,10 +842,11 @@ NativeWindowMac::NativeWindowMac(const mate::Dictionary& options, } NSUInteger styleMask = NSTitledWindowMask; - if (title_bar_style_ == CUSTOM_BUTTONS_ON_HOVER && - base::mac::IsAtLeastOS10_10() && - (!useStandardWindow || transparent() || !has_frame())) { - styleMask = NSFullSizeContentViewWindowMask; + if (@available(macOS 10.10, *)) { + if (title_bar_style_ == CUSTOM_BUTTONS_ON_HOVER && + (!useStandardWindow || transparent() || !has_frame())) { + styleMask = NSFullSizeContentViewWindowMask; + } } if (minimizable) { styleMask |= NSMiniaturizableWindowMask; @@ -885,7 +900,7 @@ NativeWindowMac::NativeWindowMac(const mate::Dictionary& options, [window_ setDisableKeyOrMainWindow:YES]; if (transparent() || !has_frame()) { - if (base::mac::IsAtLeastOS10_10()) { + if (@available(macOS 10.10, *)) { // Don't show title bar. [window_ setTitlebarAppearsTransparent:YES]; [window_ setTitleVisibility:NSWindowTitleHidden]; @@ -897,11 +912,11 @@ NativeWindowMac::NativeWindowMac(const mate::Dictionary& options, // Create a tab only if tabbing identifier is specified and window has // a native title bar. if (tabbingIdentifier.empty() || transparent() || !has_frame()) { - if ([window_ respondsToSelector:@selector(tabbingMode)]) { + if (@available(macOS 10.12, *)) { [window_ setTabbingMode:NSWindowTabbingModeDisallowed]; } } else { - if ([window_ respondsToSelector:@selector(tabbingIdentifier)]) { + if (@available(macOS 10.12, *)) { [window_ setTabbingIdentifier:base::SysUTF8ToNSString(tabbingIdentifier)]; } } @@ -911,14 +926,14 @@ NativeWindowMac::NativeWindowMac(const mate::Dictionary& options, // Hide the title bar background if (title_bar_style_ != NORMAL) { - if (base::mac::IsAtLeastOS10_10()) { + if (@available(macOS 10.10, *)) { [window_ setTitlebarAppearsTransparent:YES]; } } // Hide the title bar. if (title_bar_style_ == HIDDEN_INSET) { - if (base::mac::IsAtLeastOS10_10()) { + if (@available(macOS 10.10, *)) { base::scoped_nsobject toolbar( [[NSToolbar alloc] initWithIdentifier:@"titlebarStylingToolbar"]); [toolbar setShowsBaselineSeparator:NO]; @@ -1650,31 +1665,31 @@ void NativeWindowMac::SetAutoHideCursor(bool auto_hide) { } void NativeWindowMac::SelectPreviousTab() { - if ([window_ respondsToSelector:@selector(selectPreviousTab:)]) { + if (@available(macOS 10.12, *)) { [window_ selectPreviousTab:nil]; } } void NativeWindowMac::SelectNextTab() { - if ([window_ respondsToSelector:@selector(selectNextTab:)]) { + if (@available(macOS 10.12, *)) { [window_ selectNextTab:nil]; } } void NativeWindowMac::MergeAllWindows() { - if ([window_ respondsToSelector:@selector(mergeAllWindows:)]) { + if (@available(macOS 10.12, *)) { [window_ mergeAllWindows:nil]; } } void NativeWindowMac::MoveTabToNewWindow() { - if ([window_ respondsToSelector:@selector(moveTabToNewWindow:)]) { + if (@available(macOS 10.12, *)) { [window_ moveTabToNewWindow:nil]; } } void NativeWindowMac::ToggleTabBar() { - if ([window_ respondsToSelector:@selector(toggleTabBar:)]) { + if (@available(macOS 10.12, *)) { [window_ toggleTabBar:nil]; } } @@ -1683,91 +1698,91 @@ bool NativeWindowMac::AddTabbedWindow(NativeWindow* window) { if (window_.get() == window->GetNativeWindow()) { return false; } else { - if ([window_ respondsToSelector:@selector(addTabbedWindow:ordered:)]) + if (@available(macOS 10.12, *)) [window_ addTabbedWindow:window->GetNativeWindow() ordered:NSWindowAbove]; } return true; } void NativeWindowMac::SetVibrancy(const std::string& type) { - if (!base::mac::IsAtLeastOS10_10()) return; + if (@available(macOS 10.10, *)) { + NSView* vibrant_view = [window_ vibrantView]; - NSView* vibrant_view = [window_ vibrantView]; + if (type.empty()) { + if (background_color_before_vibrancy_) { + [window_ setBackgroundColor:background_color_before_vibrancy_]; + [window_ setTitlebarAppearsTransparent:transparency_before_vibrancy_]; + } + if (vibrant_view == nil) return; - if (type.empty()) { - if (background_color_before_vibrancy_) { - [window_ setBackgroundColor:background_color_before_vibrancy_]; - [window_ setTitlebarAppearsTransparent:transparency_before_vibrancy_]; + [vibrant_view removeFromSuperview]; + [window_ setVibrantView:nil]; + ui::GpuSwitchingManager::SetTransparent(transparent()); + + return; } - if (vibrant_view == nil) return; - [vibrant_view removeFromSuperview]; - [window_ setVibrantView:nil]; - ui::GpuSwitchingManager::SetTransparent(transparent()); + background_color_before_vibrancy_.reset([[window_ backgroundColor] retain]); + transparency_before_vibrancy_ = [window_ titlebarAppearsTransparent]; + ui::GpuSwitchingManager::SetTransparent(true); - return; - } - - background_color_before_vibrancy_.reset([[window_ backgroundColor] retain]); - transparency_before_vibrancy_ = [window_ titlebarAppearsTransparent]; - ui::GpuSwitchingManager::SetTransparent(true); - - if (title_bar_style_ != NORMAL) { - [window_ setTitlebarAppearsTransparent:YES]; - [window_ setBackgroundColor:[NSColor clearColor]]; - } - - NSVisualEffectView* effect_view = (NSVisualEffectView*)vibrant_view; - if (effect_view == nil) { - effect_view = [[[NSVisualEffectView alloc] - initWithFrame: [[window_ contentView] bounds]] autorelease]; - [window_ setVibrantView:(NSView*)effect_view]; - - [effect_view setAutoresizingMask:NSViewWidthSizable | NSViewHeightSizable]; - [effect_view setBlendingMode:NSVisualEffectBlendingModeBehindWindow]; - [effect_view setState:NSVisualEffectStateActive]; - [[window_ contentView] addSubview:effect_view - positioned:NSWindowBelow - relativeTo:nil]; - } - - NSVisualEffectMaterial vibrancyType = NSVisualEffectMaterialLight; - - if (type == "appearance-based") { - vibrancyType = NSVisualEffectMaterialAppearanceBased; - } else if (type == "light") { - vibrancyType = NSVisualEffectMaterialLight; - } else if (type == "dark") { - vibrancyType = NSVisualEffectMaterialDark; - } else if (type == "titlebar") { - vibrancyType = NSVisualEffectMaterialTitlebar; - } - - if (base::mac::IsAtLeastOS10_11()) { - // TODO(kevinsawicki): Use NSVisualEffectMaterial* constants directly once - // they are available in the minimum SDK version - if (type == "selection") { - // NSVisualEffectMaterialSelection - vibrancyType = static_cast(4); - } else if (type == "menu") { - // NSVisualEffectMaterialMenu - vibrancyType = static_cast(5); - } else if (type == "popover") { - // NSVisualEffectMaterialPopover - vibrancyType = static_cast(6); - } else if (type == "sidebar") { - // NSVisualEffectMaterialSidebar - vibrancyType = static_cast(7); - } else if (type == "medium-light") { - // NSVisualEffectMaterialMediumLight - vibrancyType = static_cast(8); - } else if (type == "ultra-dark") { - // NSVisualEffectMaterialUltraDark - vibrancyType = static_cast(9); + if (title_bar_style_ != NORMAL) { + [window_ setTitlebarAppearsTransparent:YES]; + [window_ setBackgroundColor:[NSColor clearColor]]; } - } - [effect_view setMaterial:vibrancyType]; + NSVisualEffectView* effect_view = (NSVisualEffectView*)vibrant_view; + if (effect_view == nil) { + effect_view = [[[NSVisualEffectView alloc] + initWithFrame: [[window_ contentView] bounds]] autorelease]; + [window_ setVibrantView:(NSView*)effect_view]; + + [effect_view setAutoresizingMask:NSViewWidthSizable | NSViewHeightSizable]; + [effect_view setBlendingMode:NSVisualEffectBlendingModeBehindWindow]; + [effect_view setState:NSVisualEffectStateActive]; + [[window_ contentView] addSubview:effect_view + positioned:NSWindowBelow + relativeTo:nil]; + } + + NSVisualEffectMaterial vibrancyType = NSVisualEffectMaterialLight; + + if (type == "appearance-based") { + vibrancyType = NSVisualEffectMaterialAppearanceBased; + } else if (type == "light") { + vibrancyType = NSVisualEffectMaterialLight; + } else if (type == "dark") { + vibrancyType = NSVisualEffectMaterialDark; + } else if (type == "titlebar") { + vibrancyType = NSVisualEffectMaterialTitlebar; + } + + if (@available(macOS 10.11, *)) { + // TODO(kevinsawicki): Use NSVisualEffectMaterial* constants directly once + // they are available in the minimum SDK version + if (type == "selection") { + // NSVisualEffectMaterialSelection + vibrancyType = static_cast(4); + } else if (type == "menu") { + // NSVisualEffectMaterialMenu + vibrancyType = static_cast(5); + } else if (type == "popover") { + // NSVisualEffectMaterialPopover + vibrancyType = static_cast(6); + } else if (type == "sidebar") { + // NSVisualEffectMaterialSidebar + vibrancyType = static_cast(7); + } else if (type == "medium-light") { + // NSVisualEffectMaterialMediumLight + vibrancyType = static_cast(8); + } else if (type == "ultra-dark") { + // NSVisualEffectMaterialUltraDark + vibrancyType = static_cast(9); + } + } + + [effect_view setMaterial:vibrancyType]; + } } void NativeWindowMac::SetTouchBar( diff --git a/atom/browser/net/asar/asar_protocol_handler.h b/atom/browser/net/asar/asar_protocol_handler.h index e0cb74d5d1bf..f431b55b7170 100644 --- a/atom/browser/net/asar/asar_protocol_handler.h +++ b/atom/browser/net/asar/asar_protocol_handler.h @@ -18,7 +18,7 @@ class AsarProtocolHandler : public net::URLRequestJobFactory::ProtocolHandler { public: explicit AsarProtocolHandler( const scoped_refptr& file_task_runner); - virtual ~AsarProtocolHandler(); + ~AsarProtocolHandler() override; // net::URLRequestJobFactory::ProtocolHandler: net::URLRequestJob* MaybeCreateJob( diff --git a/atom/browser/net/asar/url_request_asar_job.h b/atom/browser/net/asar/url_request_asar_job.h index d7c974fa488d..5a8c301283f2 100644 --- a/atom/browser/net/asar/url_request_asar_job.h +++ b/atom/browser/net/asar/url_request_asar_job.h @@ -42,7 +42,7 @@ class URLRequestAsarJob : public net::URLRequestJob { const base::FilePath& file_path); protected: - virtual ~URLRequestAsarJob(); + ~URLRequestAsarJob() override; void InitializeAsarJob(const scoped_refptr file_task_runner, std::shared_ptr archive, diff --git a/atom/browser/net/atom_cert_verifier.cc b/atom/browser/net/atom_cert_verifier.cc index d2f3c15760d2..014cac0c4dcd 100644 --- a/atom/browser/net/atom_cert_verifier.cc +++ b/atom/browser/net/atom_cert_verifier.cc @@ -19,6 +19,10 @@ using content::BrowserThread; namespace atom { +VerifyRequestParams::VerifyRequestParams() = default; +VerifyRequestParams::~VerifyRequestParams() = default; +VerifyRequestParams::VerifyRequestParams(const VerifyRequestParams&) = default; + namespace { class Response : public base::LinkNode { diff --git a/atom/browser/net/atom_cert_verifier.h b/atom/browser/net/atom_cert_verifier.h index 78a212d0eaa2..458615f3ed43 100644 --- a/atom/browser/net/atom_cert_verifier.h +++ b/atom/browser/net/atom_cert_verifier.h @@ -26,12 +26,16 @@ struct VerifyRequestParams { std::string default_result; int error_code; scoped_refptr certificate; + + VerifyRequestParams(); + VerifyRequestParams(const VerifyRequestParams&); + ~VerifyRequestParams(); }; class AtomCertVerifier : public net::CertVerifier { public: explicit AtomCertVerifier(brightray::RequireCTDelegate* ct_delegate); - virtual ~AtomCertVerifier(); + ~AtomCertVerifier() override; using VerifyProc = base::Callback; diff --git a/atom/browser/net/atom_network_delegate.cc b/atom/browser/net/atom_network_delegate.cc index 79f1f480bd42..62d6769263c8 100644 --- a/atom/browser/net/atom_network_delegate.cc +++ b/atom/browser/net/atom_network_delegate.cc @@ -197,7 +197,7 @@ void ReadFromResponseObject(const base::DictionaryValue& response, if (!response.GetString("statusLine", &status_line)) status_line = container.second; if (response.GetDictionary("responseHeaders", &dict)) { - auto headers = container.first; + auto* headers = container.first; *headers = new net::HttpResponseHeaders(""); (*headers)->ReplaceStatusLine(status_line); for (base::DictionaryValue::Iterator it(*dict); !it.IsAtEnd(); @@ -217,6 +217,20 @@ void ReadFromResponseObject(const base::DictionaryValue& response, } // namespace +AtomNetworkDelegate::SimpleListenerInfo::SimpleListenerInfo( + URLPatterns patterns_, + SimpleListener listener_) + : url_patterns(patterns_), listener(listener_) {} +AtomNetworkDelegate::SimpleListenerInfo::SimpleListenerInfo() = default; +AtomNetworkDelegate::SimpleListenerInfo::~SimpleListenerInfo() = default; + +AtomNetworkDelegate::ResponseListenerInfo::ResponseListenerInfo( + URLPatterns patterns_, + ResponseListener listener_) + : url_patterns(patterns_), listener(listener_) {} +AtomNetworkDelegate::ResponseListenerInfo::ResponseListenerInfo() = default; +AtomNetworkDelegate::ResponseListenerInfo::~ResponseListenerInfo() = default; + AtomNetworkDelegate::AtomNetworkDelegate() {} AtomNetworkDelegate::~AtomNetworkDelegate() {} diff --git a/atom/browser/net/atom_network_delegate.h b/atom/browser/net/atom_network_delegate.h index 8c6de3d4fe6d..1ee8d19dc900 100644 --- a/atom/browser/net/atom_network_delegate.h +++ b/atom/browser/net/atom_network_delegate.h @@ -51,11 +51,19 @@ class AtomNetworkDelegate : public brightray::NetworkDelegate { struct SimpleListenerInfo { URLPatterns url_patterns; SimpleListener listener; + + SimpleListenerInfo(URLPatterns, SimpleListener); + SimpleListenerInfo(); + ~SimpleListenerInfo(); }; struct ResponseListenerInfo { URLPatterns url_patterns; ResponseListener listener; + + ResponseListenerInfo(URLPatterns, ResponseListener); + ResponseListenerInfo(); + ~ResponseListenerInfo(); }; AtomNetworkDelegate(); diff --git a/atom/browser/net/atom_url_request.cc b/atom/browser/net/atom_url_request.cc index b524bf76971e..87cb6a6e8637 100644 --- a/atom/browser/net/atom_url_request.cc +++ b/atom/browser/net/atom_url_request.cc @@ -105,7 +105,7 @@ void AtomURLRequest::DoInitialize( redirect_policy_ = redirect_policy; request_context_getter_ = request_context_getter; request_context_getter_->AddObserver(this); - auto context = request_context_getter_->GetURLRequestContext(); + auto* context = request_context_getter_->GetURLRequestContext(); if (!context) { // Called after shutdown. DoCancelWithError("Cannot start a request after shutdown.", true); @@ -238,14 +238,14 @@ void AtomURLRequest::DoWriteBuffer( if (buffer) { // Handling potential empty buffers. using internal::UploadOwnedIOBufferElementReader; - auto element_reader = + auto* element_reader = UploadOwnedIOBufferElementReader::CreateWithBuffer(std::move(buffer)); upload_element_readers_.push_back( std::unique_ptr(element_reader)); } if (is_last) { - auto elements_upload_data_stream = new net::ElementsUploadDataStream( + auto* elements_upload_data_stream = new net::ElementsUploadDataStream( std::move(upload_element_readers_), 0); request_->set_upload( std::unique_ptr(elements_upload_data_stream)); diff --git a/atom/browser/net/atom_url_request_job_factory.h b/atom/browser/net/atom_url_request_job_factory.h index 97f08fa154f1..c0e26568fdea 100644 --- a/atom/browser/net/atom_url_request_job_factory.h +++ b/atom/browser/net/atom_url_request_job_factory.h @@ -21,7 +21,7 @@ const void* DisableProtocolInterceptFlagKey(); class AtomURLRequestJobFactory : public net::URLRequestJobFactory { public: AtomURLRequestJobFactory(); - virtual ~AtomURLRequestJobFactory(); + ~AtomURLRequestJobFactory() override; // Sets the ProtocolHandler for a scheme. Returns true on success, false on // failure (a ProtocolHandler already exists for |scheme|). On success, diff --git a/atom/browser/net/http_protocol_handler.h b/atom/browser/net/http_protocol_handler.h index 98085374175b..39e1ff2ad29b 100644 --- a/atom/browser/net/http_protocol_handler.h +++ b/atom/browser/net/http_protocol_handler.h @@ -14,7 +14,7 @@ namespace atom { class HttpProtocolHandler : public net::URLRequestJobFactory::ProtocolHandler { public: explicit HttpProtocolHandler(const std::string&); - virtual ~HttpProtocolHandler(); + ~HttpProtocolHandler() override; // net::URLRequestJobFactory::ProtocolHandler: net::URLRequestJob* MaybeCreateJob( diff --git a/atom/browser/net/url_request_buffer_job.cc b/atom/browser/net/url_request_buffer_job.cc index c244ca464fd1..18fd4e5e822c 100644 --- a/atom/browser/net/url_request_buffer_job.cc +++ b/atom/browser/net/url_request_buffer_job.cc @@ -31,6 +31,8 @@ URLRequestBufferJob::URLRequestBufferJob(net::URLRequest* request, : JsAsker(request, network_delegate), status_code_(net::HTTP_NOT_IMPLEMENTED) {} +URLRequestBufferJob::~URLRequestBufferJob() = default; + void URLRequestBufferJob::StartAsync(std::unique_ptr options) { const base::Value* binary = nullptr; if (options->IsType(base::Value::Type::DICTIONARY)) { diff --git a/atom/browser/net/url_request_buffer_job.h b/atom/browser/net/url_request_buffer_job.h index 356ca9347f6f..a9f72e0b2b28 100644 --- a/atom/browser/net/url_request_buffer_job.h +++ b/atom/browser/net/url_request_buffer_job.h @@ -17,6 +17,7 @@ namespace atom { class URLRequestBufferJob : public JsAsker { public: URLRequestBufferJob(net::URLRequest*, net::NetworkDelegate*); + ~URLRequestBufferJob() override; // JsAsker: void StartAsync(std::unique_ptr options) override; diff --git a/atom/browser/net/url_request_fetch_job.cc b/atom/browser/net/url_request_fetch_job.cc index fd563dcdf500..7c8583526429 100644 --- a/atom/browser/net/url_request_fetch_job.cc +++ b/atom/browser/net/url_request_fetch_job.cc @@ -83,6 +83,8 @@ URLRequestFetchJob::URLRequestFetchJob(net::URLRequest* request, pending_buffer_size_(0), write_num_bytes_(0) {} +URLRequestFetchJob::~URLRequestFetchJob() = default; + void URLRequestFetchJob::BeforeStartInUI(v8::Isolate* isolate, v8::Local value) { mate::Dictionary options; diff --git a/atom/browser/net/url_request_fetch_job.h b/atom/browser/net/url_request_fetch_job.h index d073f896d1e8..2498c54882a4 100644 --- a/atom/browser/net/url_request_fetch_job.h +++ b/atom/browser/net/url_request_fetch_job.h @@ -20,6 +20,7 @@ class URLRequestFetchJob : public JsAsker, public brightray::URLRequestContextGetter::Delegate { public: URLRequestFetchJob(net::URLRequest*, net::NetworkDelegate*); + ~URLRequestFetchJob() override; // Called by response writer. void HeadersCompleted(); diff --git a/atom/browser/net/url_request_stream_job.cc b/atom/browser/net/url_request_stream_job.cc index 9fdc4507b905..1417337295db 100644 --- a/atom/browser/net/url_request_stream_job.cc +++ b/atom/browser/net/url_request_stream_job.cc @@ -28,6 +28,8 @@ URLRequestStreamJob::URLRequestStreamJob(net::URLRequest* request, response_headers_(nullptr), weak_factory_(this) {} +URLRequestStreamJob::~URLRequestStreamJob() = default; + void URLRequestStreamJob::BeforeStartInUI(v8::Isolate* isolate, v8::Local value) { if (value->IsNull() || value->IsUndefined() || !value->IsObject()) { diff --git a/atom/browser/net/url_request_stream_job.h b/atom/browser/net/url_request_stream_job.h index 372cad7e2d5f..4043b09aea37 100644 --- a/atom/browser/net/url_request_stream_job.h +++ b/atom/browser/net/url_request_stream_job.h @@ -23,6 +23,7 @@ class URLRequestStreamJob : public JsAsker { public: URLRequestStreamJob(net::URLRequest* request, net::NetworkDelegate* network_delegate); + ~URLRequestStreamJob() override; void OnData(mate::Arguments* args); void OnEnd(mate::Arguments* args); diff --git a/atom/browser/net/url_request_string_job.cc b/atom/browser/net/url_request_string_job.cc index 1a08752e335c..82d76d2854a2 100644 --- a/atom/browser/net/url_request_string_job.cc +++ b/atom/browser/net/url_request_string_job.cc @@ -15,6 +15,8 @@ URLRequestStringJob::URLRequestStringJob(net::URLRequest* request, net::NetworkDelegate* network_delegate) : JsAsker(request, network_delegate) {} +URLRequestStringJob::~URLRequestStringJob() = default; + void URLRequestStringJob::StartAsync(std::unique_ptr options) { if (options->IsType(base::Value::Type::DICTIONARY)) { base::DictionaryValue* dict = diff --git a/atom/browser/net/url_request_string_job.h b/atom/browser/net/url_request_string_job.h index 474473cca87d..841deb254d8f 100644 --- a/atom/browser/net/url_request_string_job.h +++ b/atom/browser/net/url_request_string_job.h @@ -15,6 +15,7 @@ namespace atom { class URLRequestStringJob : public JsAsker { public: URLRequestStringJob(net::URLRequest*, net::NetworkDelegate*); + ~URLRequestStringJob() override; // JsAsker: void StartAsync(std::unique_ptr options) override; diff --git a/atom/browser/node_debugger.cc b/atom/browser/node_debugger.cc index 8ad06a0a215b..56e68e2b8b81 100644 --- a/atom/browser/node_debugger.cc +++ b/atom/browser/node_debugger.cc @@ -18,7 +18,7 @@ NodeDebugger::NodeDebugger(node::Environment* env) : env_(env) {} NodeDebugger::~NodeDebugger() {} void NodeDebugger::Start(node::MultiIsolatePlatform* platform) { - auto inspector = env_->inspector_agent(); + auto* inspector = env_->inspector_agent(); if (inspector == nullptr) return; diff --git a/atom/browser/render_process_preferences.h b/atom/browser/render_process_preferences.h index 77bf176f492c..c84a30f8450c 100644 --- a/atom/browser/render_process_preferences.h +++ b/atom/browser/render_process_preferences.h @@ -27,7 +27,7 @@ class RenderProcessPreferences : public content::NotificationObserver { // The |predicate| is used to determine whether to set preferences for a // render process. explicit RenderProcessPreferences(const Predicate& predicate); - virtual ~RenderProcessPreferences(); + ~RenderProcessPreferences() override; int AddEntry(const base::DictionaryValue& entry); void RemoveEntry(int id); diff --git a/atom/browser/ui/accelerator_util.cc b/atom/browser/ui/accelerator_util.cc index fd3072a463e5..63ea1489467c 100644 --- a/atom/browser/ui/accelerator_util.cc +++ b/atom/browser/ui/accelerator_util.cc @@ -74,7 +74,7 @@ void GenerateAcceleratorTable(AcceleratorTable* table, for (int i = 0; i < count; ++i) { atom::AtomMenuModel::ItemType type = model->GetTypeAt(i); if (type == atom::AtomMenuModel::TYPE_SUBMENU) { - auto submodel = model->GetSubmenuModelAt(i); + auto* submodel = model->GetSubmenuModelAt(i); GenerateAcceleratorTable(table, submodel); } else { ui::Accelerator accelerator; diff --git a/atom/browser/ui/atom_menu_model.cc b/atom/browser/ui/atom_menu_model.cc index e2453133adbf..83e23c42ed89 100644 --- a/atom/browser/ui/atom_menu_model.cc +++ b/atom/browser/ui/atom_menu_model.cc @@ -8,6 +8,12 @@ namespace atom { +bool AtomMenuModel::Delegate::GetAcceleratorForCommandId(int command_id, + ui::Accelerator* accelerator) const { + return GetAcceleratorForCommandIdWithParams( + command_id, false, accelerator); +} + AtomMenuModel::AtomMenuModel(Delegate* delegate) : ui::SimpleMenuModel(delegate), delegate_(delegate) {} diff --git a/atom/browser/ui/atom_menu_model.h b/atom/browser/ui/atom_menu_model.h index 90de0ef3be8a..efdd8ec9d883 100644 --- a/atom/browser/ui/atom_menu_model.h +++ b/atom/browser/ui/atom_menu_model.h @@ -16,7 +16,7 @@ class AtomMenuModel : public ui::SimpleMenuModel { public: class Delegate : public ui::SimpleMenuModel::Delegate { public: - virtual ~Delegate() {} + ~Delegate() override {} virtual bool GetAcceleratorForCommandIdWithParams( int command_id, @@ -25,11 +25,9 @@ class AtomMenuModel : public ui::SimpleMenuModel { private: // ui::SimpleMenuModel::Delegate: - bool GetAcceleratorForCommandId(int command_id, - ui::Accelerator* accelerator) const { - return GetAcceleratorForCommandIdWithParams(command_id, false, - accelerator); - } + bool GetAcceleratorForCommandId( + int command_id, + ui::Accelerator* accelerator) const override; }; class Observer { @@ -44,7 +42,7 @@ class AtomMenuModel : public ui::SimpleMenuModel { }; explicit AtomMenuModel(Delegate* delegate); - virtual ~AtomMenuModel(); + ~AtomMenuModel() override; void AddObserver(Observer* obs) { observers_.AddObserver(obs); } void RemoveObserver(Observer* obs) { observers_.RemoveObserver(obs); } diff --git a/atom/browser/ui/autofill_popup.h b/atom/browser/ui/autofill_popup.h index 8dceba590247..d0fbf08068f8 100644 --- a/atom/browser/ui/autofill_popup.h +++ b/atom/browser/ui/autofill_popup.h @@ -21,7 +21,7 @@ class AutofillPopupView; class AutofillPopup : public views::ViewObserver { public: AutofillPopup(); - ~AutofillPopup(); + ~AutofillPopup() override; void CreateView(content::RenderFrameHost* render_frame, bool offscreen, diff --git a/atom/browser/ui/certificate_trust_mac.mm b/atom/browser/ui/certificate_trust_mac.mm index aa34c7672d25..f7f07e06d1f4 100644 --- a/atom/browser/ui/certificate_trust_mac.mm +++ b/atom/browser/ui/certificate_trust_mac.mm @@ -68,7 +68,7 @@ - (void)panelDidEnd:(NSWindow*)sheet returnCode:(int)returnCode contextInfo:(void*)contextInfo { - auto cert_db = net::CertDatabase::GetInstance(); + auto* cert_db = net::CertDatabase::GetInstance(); // This forces Chromium to reload the certificate since it might be trusted // now. cert_db->NotifyObserversCertDBChanged(); @@ -86,7 +86,7 @@ void ShowCertificateTrust(atom::NativeWindow* parent_window, const scoped_refptr& cert, const std::string& message, const ShowTrustCallback& callback) { - auto sec_policy = SecPolicyCreateBasicX509(); + auto* sec_policy = SecPolicyCreateBasicX509(); auto cert_chain = net::x509_util::CreateSecCertificateArrayForX509Certificate(cert.get()); SecTrustRef trust = nullptr; diff --git a/atom/browser/ui/cocoa/atom_touch_bar.h b/atom/browser/ui/cocoa/atom_touch_bar.h index 75f894b7fb74..fd6bb0cdc449 100644 --- a/atom/browser/ui/cocoa/atom_touch_bar.h +++ b/atom/browser/ui/cocoa/atom_touch_bar.h @@ -31,16 +31,19 @@ window:(atom::NativeWindow*)window settings:(const std::vector&)settings; -- (NSTouchBar*)makeTouchBar; -- (NSTouchBar*)touchBarFromItemIdentifiers:(NSMutableArray*)items; +- (NSTouchBar*)makeTouchBar API_AVAILABLE(macosx(10.12.2)); +- (NSTouchBar*)touchBarFromItemIdentifiers:(NSMutableArray*)items + API_AVAILABLE(macosx(10.12.2)); - (NSMutableArray*)identifiersFromSettings: (const std::vector&)settings; - (void)refreshTouchBarItem:(NSTouchBar*)touchBar - id:(const std::string&)item_id; + id:(const std::string&)item_id + API_AVAILABLE(macosx(10.12.2)); - (void)addNonDefaultTouchBarItems: (const std::vector&)items; - (void)setEscapeTouchBarItem:(const mate::PersistentDictionary&)item - forTouchBar:(NSTouchBar*)touchBar; + forTouchBar:(NSTouchBar*)touchBar + API_AVAILABLE(macosx(10.12.2)); - (NSString*)idFromIdentifier:(NSString*)identifier withPrefix:(NSString*)prefix; @@ -51,35 +54,47 @@ // Selector actions - (void)buttonAction:(id)sender; -- (void)colorPickerAction:(id)sender; -- (void)sliderAction:(id)sender; +- (void)colorPickerAction:(id)sender API_AVAILABLE(macosx(10.12.2)); +- (void)sliderAction:(id)sender API_AVAILABLE(macosx(10.12.2)); // Helpers to create touch bar items -- (NSTouchBarItem*)makeItemForIdentifier:(NSTouchBarItemIdentifier)identifier; +- (NSTouchBarItem*)makeItemForIdentifier:(NSTouchBarItemIdentifier)identifier + API_AVAILABLE(macosx(10.12.2)); - (NSTouchBarItem*)makeButtonForID:(NSString*)id - withIdentifier:(NSString*)identifier; + withIdentifier:(NSString*)identifier + API_AVAILABLE(macosx(10.12.2)); - (NSTouchBarItem*)makeLabelForID:(NSString*)id - withIdentifier:(NSString*)identifier; + withIdentifier:(NSString*)identifier + API_AVAILABLE(macosx(10.12.2)); - (NSTouchBarItem*)makeColorPickerForID:(NSString*)id - withIdentifier:(NSString*)identifier; + withIdentifier:(NSString*)identifier + API_AVAILABLE(macosx(10.12.2)); - (NSTouchBarItem*)makeSliderForID:(NSString*)id - withIdentifier:(NSString*)identifier; + withIdentifier:(NSString*)identifier + API_AVAILABLE(macosx(10.12.2)); - (NSTouchBarItem*)makePopoverForID:(NSString*)id - withIdentifier:(NSString*)identifier; + withIdentifier:(NSString*)identifier + API_AVAILABLE(macosx(10.12.2)); - (NSTouchBarItem*)makeGroupForID:(NSString*)id - withIdentifier:(NSString*)identifier; + withIdentifier:(NSString*)identifier + API_AVAILABLE(macosx(10.12.2)); // Helpers to update touch bar items - (void)updateButton:(NSCustomTouchBarItem*)item - withSettings:(const mate::PersistentDictionary&)settings; + withSettings:(const mate::PersistentDictionary&)settings + API_AVAILABLE(macosx(10.12.2)); - (void)updateLabel:(NSCustomTouchBarItem*)item - withSettings:(const mate::PersistentDictionary&)settings; + withSettings:(const mate::PersistentDictionary&)settings + API_AVAILABLE(macosx(10.12.2)); - (void)updateColorPicker:(NSColorPickerTouchBarItem*)item - withSettings:(const mate::PersistentDictionary&)settings; + withSettings:(const mate::PersistentDictionary&)settings + API_AVAILABLE(macosx(10.12.2)); - (void)updateSlider:(NSSliderTouchBarItem*)item - withSettings:(const mate::PersistentDictionary&)settings; + withSettings:(const mate::PersistentDictionary&)settings + API_AVAILABLE(macosx(10.12.2)); - (void)updatePopover:(NSPopoverTouchBarItem*)item - withSettings:(const mate::PersistentDictionary&)settings; + withSettings:(const mate::PersistentDictionary&)settings + API_AVAILABLE(macosx(10.12.2)); @end diff --git a/atom/browser/ui/cocoa/atom_touch_bar.mm b/atom/browser/ui/cocoa/atom_touch_bar.mm index d5c9a0f81103..1e0ee7b69591 100644 --- a/atom/browser/ui/cocoa/atom_touch_bar.mm +++ b/atom/browser/ui/cocoa/atom_touch_bar.mm @@ -51,32 +51,34 @@ static NSString* const ImageScrubberItemIdentifier = @"scrubber.image.item"; - (NSMutableArray*)identifiersFromSettings:(const std::vector&)dicts { NSMutableArray* identifiers = [NSMutableArray array]; - for (const auto& item : dicts) { - std::string type; - std::string item_id; - if (item.Get("type", &type) && item.Get("id", &item_id)) { - NSTouchBarItemIdentifier identifier = nil; - if (type == "spacer") { - std::string size; - item.Get("size", &size); - if (size == "large") { - identifier = NSTouchBarItemIdentifierFixedSpaceLarge; - } else if (size == "flexible") { - identifier = NSTouchBarItemIdentifierFlexibleSpace; + if (@available(macOS 10.12.2, *)) { + for (const auto& item : dicts) { + std::string type; + std::string item_id; + if (item.Get("type", &type) && item.Get("id", &item_id)) { + NSTouchBarItemIdentifier identifier = nil; + if (type == "spacer") { + std::string size; + item.Get("size", &size); + if (size == "large") { + identifier = NSTouchBarItemIdentifierFixedSpaceLarge; + } else if (size == "flexible") { + identifier = NSTouchBarItemIdentifierFlexibleSpace; + } else { + identifier = NSTouchBarItemIdentifierFixedSpaceSmall; + } } else { - identifier = NSTouchBarItemIdentifierFixedSpaceSmall; + identifier = [self identifierFromID:item_id type:type]; } - } else { - identifier = [self identifierFromID:item_id type:type]; - } - if (identifier) { - settings_[item_id] = item; - [identifiers addObject:identifier]; + if (identifier) { + settings_[item_id] = item; + [identifiers addObject:identifier]; + } } } + [identifiers addObject:NSTouchBarItemIdentifierOtherItemsProxy]; } - [identifiers addObject:NSTouchBarItemIdentifierOtherItemsProxy]; return identifiers; } @@ -116,7 +118,8 @@ static NSString* const ImageScrubberItemIdentifier = @"scrubber.image.item"; - (void)refreshTouchBarItem:(NSTouchBar*)touchBar id:(NSTouchBarItemIdentifier)identifier withType:(const std::string&)item_type - withSettings:(const mate::PersistentDictionary&)settings { + withSettings:(const mate::PersistentDictionary&)settings + API_AVAILABLE(macosx(10.12.2)) { NSTouchBarItem* item = [touchBar itemForIdentifier:identifier]; if (!item) return; @@ -245,14 +248,14 @@ static NSString* const ImageScrubberItemIdentifier = @"scrubber.image.item"; details); } -- (void)scrubber:(NSScrubber*)scrubber didSelectItemAtIndex:(NSInteger)selectedIndex { +- (void)scrubber:(NSScrubber*)scrubber didSelectItemAtIndex:(NSInteger)selectedIndex API_AVAILABLE(macosx(10.12.2)) { base::DictionaryValue details; details.SetInteger("selectedIndex", selectedIndex); details.SetString("type", "select"); window_->NotifyTouchBarItemInteraction([scrubber.identifier UTF8String], details); } -- (void)scrubber:(NSScrubber*)scrubber didHighlightItemAtIndex:(NSInteger)highlightedIndex { +- (void)scrubber:(NSScrubber*)scrubber didHighlightItemAtIndex:(NSInteger)highlightedIndex API_AVAILABLE(macosx(10.12.2)) { base::DictionaryValue details; details.SetInteger("highlightedIndex", highlightedIndex); details.SetString("type", "highlight"); @@ -494,7 +497,7 @@ static NSString* const ImageScrubberItemIdentifier = @"scrubber.image.item"; } - (void)updateGroup:(NSGroupTouchBarItem*)item - withSettings:(const mate::PersistentDictionary&)settings { + withSettings:(const mate::PersistentDictionary&)settings API_AVAILABLE(macosx(10.12.2)) { mate::PersistentDictionary child; if (!settings.Get("child", &child)) return; @@ -505,7 +508,7 @@ static NSString* const ImageScrubberItemIdentifier = @"scrubber.image.item"; } - (NSTouchBarItem*)makeSegmentedControlForID:(NSString*)id - withIdentifier:(NSString*)identifier { + withIdentifier:(NSString*)identifier API_AVAILABLE(macosx(10.12.2)) { std::string s_id([id UTF8String]); if (![self hasItemWithID:s_id]) return nil; @@ -525,7 +528,7 @@ static NSString* const ImageScrubberItemIdentifier = @"scrubber.image.item"; } - (void)updateSegmentedControl:(NSCustomTouchBarItem*)item - withSettings:(const mate::PersistentDictionary&)settings { + withSettings:(const mate::PersistentDictionary&)settings API_AVAILABLE(macosx(10.12.2)) { NSSegmentedControl* control = item.view; @@ -582,7 +585,7 @@ static NSString* const ImageScrubberItemIdentifier = @"scrubber.image.item"; } - (NSTouchBarItem*)makeScrubberForID:(NSString*)id - withIdentifier:(NSString*)identifier { + withIdentifier:(NSString*)identifier API_AVAILABLE(macosx(10.12.2)) { std::string s_id([id UTF8String]); if (![self hasItemWithID:s_id]) return nil; @@ -606,7 +609,7 @@ static NSString* const ImageScrubberItemIdentifier = @"scrubber.image.item"; } - (void)updateScrubber:(NSCustomTouchBarItem*)item - withSettings:(const mate::PersistentDictionary&)settings { + withSettings:(const mate::PersistentDictionary&)settings API_AVAILABLE(macosx(10.12.2)) { NSScrubber* scrubber = item.view; bool showsArrowButtons = false; @@ -649,7 +652,7 @@ static NSString* const ImageScrubberItemIdentifier = @"scrubber.image.item"; [scrubber reloadData]; } -- (NSInteger)numberOfItemsForScrubber:(NSScrubber*)scrubber { +- (NSInteger)numberOfItemsForScrubber:(NSScrubber*)scrubber API_AVAILABLE(macosx(10.12.2)) { std::string s_id([[scrubber identifier] UTF8String]); if (![self hasItemWithID:s_id]) return 0; @@ -660,7 +663,7 @@ static NSString* const ImageScrubberItemIdentifier = @"scrubber.image.item"; } - (NSScrubberItemView*)scrubber:(NSScrubber*)scrubber - viewForItemAtIndex:(NSInteger)index { + viewForItemAtIndex:(NSInteger)index API_AVAILABLE(macosx(10.12.2)) { std::string s_id([[scrubber identifier] UTF8String]); if (![self hasItemWithID:s_id]) return nil; @@ -694,7 +697,7 @@ static NSString* const ImageScrubberItemIdentifier = @"scrubber.image.item"; } - (NSSize)scrubber:(NSScrubber *)scrubber layout:(NSScrubberFlowLayout *)layout sizeForItemAtIndex:(NSInteger)itemIndex -{ +API_AVAILABLE(macosx(10.12.2)) { NSInteger width = 50; NSInteger height = 30; NSInteger margin = 15; diff --git a/atom/browser/ui/cocoa/touch_bar_forward_declarations.h b/atom/browser/ui/cocoa/touch_bar_forward_declarations.h index 66dbed7afb15..281672c30420 100644 --- a/atom/browser/ui/cocoa/touch_bar_forward_declarations.h +++ b/atom/browser/ui/cocoa/touch_bar_forward_declarations.h @@ -259,7 +259,7 @@ static const NSTouchBarItemIdentifier NSTouchBarItemIdentifierOtherItemsProxy = @class NSTouchBarItem; @interface NSWindow (TouchBarSDK) -@property(strong, readonly) NSTouchBar* touchBar; +@property(strong, readonly) NSTouchBar* touchBar API_AVAILABLE(macosx(10.12.2)); @end #endif // MAC_OS_X_VERSION_10_12_1 diff --git a/atom/browser/ui/file_dialog.h b/atom/browser/ui/file_dialog.h index f9d9b9684985..efa50062bb82 100644 --- a/atom/browser/ui/file_dialog.h +++ b/atom/browser/ui/file_dialog.h @@ -64,6 +64,9 @@ struct DialogSettings { bool shows_tag_field = true; bool force_detached = false; bool security_scoped_bookmarks = false; + + DialogSettings(); + ~DialogSettings(); }; bool ShowOpenDialog(const DialogSettings& settings, diff --git a/atom/browser/ui/file_dialog_gtk.cc b/atom/browser/ui/file_dialog_gtk.cc index 918e02f2d9ff..c6bb5cc1cc04 100644 --- a/atom/browser/ui/file_dialog_gtk.cc +++ b/atom/browser/ui/file_dialog_gtk.cc @@ -17,6 +17,9 @@ namespace file_dialog { +DialogSettings::DialogSettings() = default; +DialogSettings::~DialogSettings() = default; + namespace { // Makes sure that .jpg also shows .JPG. diff --git a/atom/browser/ui/file_dialog_mac.mm b/atom/browser/ui/file_dialog_mac.mm index 89ecaf46ec7f..5fd394637226 100644 --- a/atom/browser/ui/file_dialog_mac.mm +++ b/atom/browser/ui/file_dialog_mac.mm @@ -27,6 +27,9 @@ @implementation PopUpButtonHandler +@synthesize savePanel; +@synthesize fileTypesList; + - (instancetype)initWithPanel:(NSSavePanel*)panel andTypesList:(NSArray*)typesList { self = [super init]; @@ -69,6 +72,9 @@ namespace file_dialog { +DialogSettings::DialogSettings() = default; +DialogSettings::~DialogSettings() = default; + namespace { void SetAllowedFileTypes(NSSavePanel* dialog, const Filters& filters) { diff --git a/atom/browser/ui/file_dialog_win.cc b/atom/browser/ui/file_dialog_win.cc index 973e22bdb4af..cd08d038fbd4 100644 --- a/atom/browser/ui/file_dialog_win.cc +++ b/atom/browser/ui/file_dialog_win.cc @@ -25,6 +25,9 @@ namespace file_dialog { +DialogSettings::DialogSettings() = default; +DialogSettings::~DialogSettings() = default; + namespace { // Distinguish directories from regular files. diff --git a/atom/browser/ui/tray_icon_cocoa.h b/atom/browser/ui/tray_icon_cocoa.h index 077657304aa7..6286344349f0 100644 --- a/atom/browser/ui/tray_icon_cocoa.h +++ b/atom/browser/ui/tray_icon_cocoa.h @@ -20,7 +20,7 @@ namespace atom { class TrayIconCocoa : public TrayIcon, public AtomMenuModel::Observer { public: TrayIconCocoa(); - virtual ~TrayIconCocoa(); + ~TrayIconCocoa() override; void SetImage(const gfx::Image& image) override; void SetPressedImage(const gfx::Image& image) override; diff --git a/atom/browser/ui/views/autofill_popup_view.cc b/atom/browser/ui/views/autofill_popup_view.cc index fc8e31ee2e36..bea0e949d87d 100644 --- a/atom/browser/ui/views/autofill_popup_view.cc +++ b/atom/browser/ui/views/autofill_popup_view.cc @@ -18,6 +18,11 @@ namespace atom { +void AutofillPopupChildView::GetAccessibleNodeData(ui::AXNodeData* node_data) { + node_data->role = ui::AX_ROLE_MENU_ITEM; + node_data->SetName(suggestion_); +} + AutofillPopupView::AutofillPopupView(AutofillPopup* popup, views::Widget* parent_widget) : popup_(popup), @@ -128,6 +133,21 @@ void AutofillPopupView::OnSuggestionsChanged() { DoUpdateBoundsAndRedrawPopup(); } +void AutofillPopupView::WriteDragDataForView(views::View*, + const gfx::Point&, + ui::OSExchangeData*) {} + +int AutofillPopupView::GetDragOperationsForView(views::View*, + const gfx::Point&) { + return ui::DragDropTypes::DRAG_NONE; +} + +bool AutofillPopupView::CanStartDragForView(views::View*, + const gfx::Point&, + const gfx::Point&) { + return false; +} + void AutofillPopupView::OnSelectedRowChanged( base::Optional previous_row_selection, base::Optional current_row_selection) { diff --git a/atom/browser/ui/views/autofill_popup_view.h b/atom/browser/ui/views/autofill_popup_view.h index 1e66ba7bc9c5..a1f4ce6a7b06 100644 --- a/atom/browser/ui/views/autofill_popup_view.h +++ b/atom/browser/ui/views/autofill_popup_view.h @@ -42,10 +42,7 @@ class AutofillPopupChildView : public views::View { ~AutofillPopupChildView() override {} // views::Views implementation - void GetAccessibleNodeData(ui::AXNodeData* node_data) override { - node_data->role = ui::AX_ROLE_MENU_ITEM; - node_data->SetName(suggestion_); - } + void GetAccessibleNodeData(ui::AXNodeData* node_data) override; base::string16 suggestion_; @@ -70,15 +67,11 @@ class AutofillPopupView : public views::WidgetDelegateView, void WriteDragDataForView(views::View*, const gfx::Point&, - ui::OSExchangeData*) override {} - int GetDragOperationsForView(views::View*, const gfx::Point&) override { - return ui::DragDropTypes::DRAG_NONE; - } + ui::OSExchangeData*) override; + int GetDragOperationsForView(views::View*, const gfx::Point&) override; bool CanStartDragForView(views::View*, const gfx::Point&, - const gfx::Point&) override { - return false; - } + const gfx::Point&) override; private: friend class AutofillPopup; diff --git a/atom/browser/web_contents_permission_helper.cc b/atom/browser/web_contents_permission_helper.cc index dee2e6c80dac..1b3d809b1e72 100644 --- a/atom/browser/web_contents_permission_helper.cc +++ b/atom/browser/web_contents_permission_helper.cc @@ -54,8 +54,8 @@ void WebContentsPermissionHelper::RequestPermission( const base::Callback& callback, bool user_gesture, const base::DictionaryValue* details) { - auto rfh = web_contents_->GetMainFrame(); - auto permission_manager = static_cast( + auto* rfh = web_contents_->GetMainFrame(); + auto* permission_manager = static_cast( web_contents_->GetBrowserContext()->GetPermissionManager()); auto origin = web_contents_->GetLastCommittedURL(); permission_manager->RequestPermissionWithDetails( diff --git a/atom/browser/web_dialog_helper.cc b/atom/browser/web_dialog_helper.cc index ffe0bd82de37..563557610bb9 100644 --- a/atom/browser/web_dialog_helper.cc +++ b/atom/browser/web_dialog_helper.cc @@ -33,7 +33,7 @@ class FileSelectHelper : public base::RefCounted, FileSelectHelper(content::RenderFrameHost* render_frame_host, const content::FileChooserParams::Mode& mode) : render_frame_host_(render_frame_host), mode_(mode) { - auto web_contents = + auto* web_contents = content::WebContents::FromRenderFrameHost(render_frame_host); content::WebContentsObserver::Observe(web_contents); } @@ -71,7 +71,7 @@ class FileSelectHelper : public base::RefCounted, } if (render_frame_host_ && !paths.empty()) { - auto browser_context = static_cast( + auto* browser_context = static_cast( render_frame_host_->GetProcess()->GetBrowserContext()); browser_context->prefs()->SetFilePath(prefs::kSelectFileLastDirectory, paths[0].DirName()); diff --git a/atom/browser/web_view_guest_delegate.cc b/atom/browser/web_view_guest_delegate.cc index 74e574f3e86c..8894c92fa32b 100644 --- a/atom/browser/web_view_guest_delegate.cc +++ b/atom/browser/web_view_guest_delegate.cc @@ -23,6 +23,9 @@ const int kDefaultHeight = 300; } // namespace +SetSizeParams::SetSizeParams() = default; +SetSizeParams::~SetSizeParams() = default; + WebViewGuestDelegate::WebViewGuestDelegate() : embedder_zoom_controller_(nullptr), guest_host_(nullptr), @@ -61,7 +64,7 @@ void WebViewGuestDelegate::SetSize(const SetSizeParams& params) { enable_auto_size &= !min_auto_size_.IsEmpty() && !max_auto_size_.IsEmpty(); - auto rvh = web_contents()->GetRenderViewHost(); + auto* rvh = web_contents()->GetRenderViewHost(); if (enable_auto_size) { // Autosize is being enabled. rvh->EnableAutoResize(min_auto_size_, max_auto_size_); @@ -120,7 +123,7 @@ void WebViewGuestDelegate::DidAttach(int guest_proxy_routing_id) { embedder_zoom_controller_ = WebContentsZoomController::FromWebContents(embedder_web_contents_); - auto zoom_controller = api_web_contents_->GetZoomController(); + auto* zoom_controller = api_web_contents_->GetZoomController(); embedder_zoom_controller_->AddObserver(this); zoom_controller->SetEmbedderZoomController(embedder_zoom_controller_); } @@ -210,8 +213,8 @@ content::WebContents* WebViewGuestDelegate::CreateNewGuestWindow( guest_params.initial_size = embedder_web_contents_->GetContainerBounds().size(); guest_params.context = embedder_web_contents_->GetNativeView(); - auto guest_contents = content::WebContents::Create(guest_params); - auto guest_contents_impl = + auto* guest_contents = content::WebContents::Create(guest_params); + auto* guest_contents_impl = static_cast(guest_contents); guest_contents_impl->GetView()->CreateViewForWidget( guest_contents->GetRenderViewHost()->GetWidget(), false); diff --git a/atom/browser/web_view_guest_delegate.h b/atom/browser/web_view_guest_delegate.h index 3425c055cc95..e9850076b074 100644 --- a/atom/browser/web_view_guest_delegate.h +++ b/atom/browser/web_view_guest_delegate.h @@ -22,8 +22,8 @@ class WebContents; // meaningful. This is because the normal size of the guestview is overridden // whenever autosizing occurs. struct SetSizeParams { - SetSizeParams() {} - ~SetSizeParams() {} + SetSizeParams(); + ~SetSizeParams(); std::unique_ptr enable_auto_size; std::unique_ptr min_size; diff --git a/atom/browser/web_view_manager.cc b/atom/browser/web_view_manager.cc index 8ac674e98687..9448f58d5138 100644 --- a/atom/browser/web_view_manager.cc +++ b/atom/browser/web_view_manager.cc @@ -74,9 +74,9 @@ bool WebViewManager::ForEachGuest(content::WebContents* embedder_web_contents, // static WebViewManager* WebViewManager::GetWebViewManager( content::WebContents* web_contents) { - auto context = web_contents->GetBrowserContext(); + auto* context = web_contents->GetBrowserContext(); if (context) { - auto manager = context->GetGuestManager(); + auto* manager = context->GetGuestManager(); return static_cast(manager); } else { return nullptr; diff --git a/atom/browser/window_list.cc b/atom/browser/window_list.cc index 72456838d83c..97561d16f38d 100644 --- a/atom/browser/window_list.cc +++ b/atom/browser/window_list.cc @@ -84,7 +84,7 @@ void WindowList::CloseAllWindows() { #if defined(OS_MACOSX) std::reverse(windows.begin(), windows.end()); #endif - for (const auto& window : windows) + for (auto* const& window : windows) if (!window->IsClosed()) window->Close(); } @@ -92,7 +92,7 @@ void WindowList::CloseAllWindows() { // static void WindowList::DestroyAllWindows() { WindowVector windows = GetInstance()->windows_; - for (const auto& window : windows) + for (auto* const& window : windows) window->CloseImmediately(); // e.g. Destroy() } diff --git a/atom/common/api/remote_callback_freer.cc b/atom/common/api/remote_callback_freer.cc index dc9a7cd2cece..3e3e68cf5ab7 100644 --- a/atom/common/api/remote_callback_freer.cc +++ b/atom/common/api/remote_callback_freer.cc @@ -35,7 +35,7 @@ void RemoteCallbackFreer::RunDestructor() { base::ASCIIToUTF16("ELECTRON_RENDERER_RELEASE_CALLBACK"); base::ListValue args; args.AppendInteger(object_id_); - auto frame_host = web_contents()->GetMainFrame(); + auto* frame_host = web_contents()->GetMainFrame(); if (frame_host) { frame_host->Send(new AtomFrameMsg_Message(frame_host->GetRoutingID(), false, channel, args)); diff --git a/atom/common/crash_reporter/crash_reporter.cc b/atom/common/crash_reporter/crash_reporter.cc index 4b116ac643f9..f804f983e59a 100644 --- a/atom/common/crash_reporter/crash_reporter.cc +++ b/atom/common/crash_reporter/crash_reporter.cc @@ -17,7 +17,7 @@ namespace crash_reporter { CrashReporter::CrashReporter() { - auto cmd = base::CommandLine::ForCurrentProcess(); + auto* cmd = base::CommandLine::ForCurrentProcess(); is_browser_ = cmd->GetSwitchValueASCII(switches::kProcessType).empty(); } @@ -102,7 +102,7 @@ CrashReporter* CrashReporter::GetInstance() { #endif void CrashReporter::StartInstance(const mate::Dictionary& options) { - auto reporter = GetInstance(); + auto* reporter = GetInstance(); if (!reporter) return; diff --git a/atom/common/crash_reporter/crash_reporter_mac.h b/atom/common/crash_reporter/crash_reporter_mac.h index bd7eda5d71e2..97c7164bb7ab 100644 --- a/atom/common/crash_reporter/crash_reporter_mac.h +++ b/atom/common/crash_reporter/crash_reporter_mac.h @@ -45,7 +45,7 @@ class CrashReporterMac : public CrashReporter { friend struct base::DefaultSingletonTraits; CrashReporterMac(); - virtual ~CrashReporterMac(); + ~CrashReporterMac() override; void SetUploadsEnabled(bool enable_uploads); void SetCrashKeyValue(const base::StringPiece& key, diff --git a/atom/common/crash_reporter/crash_reporter_mac.mm b/atom/common/crash_reporter/crash_reporter_mac.mm index 55f387756a05..a9f8f3007386 100644 --- a/atom/common/crash_reporter/crash_reporter_mac.mm +++ b/atom/common/crash_reporter/crash_reporter_mac.mm @@ -127,7 +127,7 @@ std::map CrashReporterMac::GetParameters() const { std::map ret; crashpad::SimpleStringDictionary::Iterator iter(*simple_string_dictionary_); for(;;) { - const auto entry = iter.Next(); + auto* const entry = iter.Next(); if (!entry) break; ret[entry->key] = entry->value; } diff --git a/atom/common/node_bindings.cc b/atom/common/node_bindings.cc index 0e13f512f3c2..1aa9c0dc95a5 100644 --- a/atom/common/node_bindings.cc +++ b/atom/common/node_bindings.cc @@ -114,7 +114,7 @@ std::unique_ptr StringVectorToArgArray( } base::FilePath GetResourcesPath(bool is_browser) { - auto command_line = base::CommandLine::ForCurrentProcess(); + auto* command_line = base::CommandLine::ForCurrentProcess(); base::FilePath exec_path(command_line->GetProgram()); PathService::Get(base::FILE_EXE, &exec_path); diff --git a/atom/common/node_bindings_mac.h b/atom/common/node_bindings_mac.h index 6b0082bc2276..a0f93d8755ed 100644 --- a/atom/common/node_bindings_mac.h +++ b/atom/common/node_bindings_mac.h @@ -13,7 +13,7 @@ namespace atom { class NodeBindingsMac : public NodeBindings { public: explicit NodeBindingsMac(BrowserEnvironment browser_env); - virtual ~NodeBindingsMac(); + ~NodeBindingsMac() override; void RunMessageLoop() override; diff --git a/atom/renderer/api/atom_api_spell_check_client.cc b/atom/renderer/api/atom_api_spell_check_client.cc index 1524fd797552..ddadc671ba76 100644 --- a/atom/renderer/api/atom_api_spell_check_client.cc +++ b/atom/renderer/api/atom_api_spell_check_client.cc @@ -237,6 +237,8 @@ SpellCheckClient::SpellCheckScope::SpellCheckScope( provider_(client.provider_.NewHandle()), spell_check_(client.spell_check_.NewHandle()) {} +SpellCheckClient::SpellCheckScope::~SpellCheckScope() = default; + } // namespace api } // namespace atom diff --git a/atom/renderer/api/atom_api_spell_check_client.h b/atom/renderer/api/atom_api_spell_check_client.h index 5216b455d0db..92f631d6bb64 100644 --- a/atom/renderer/api/atom_api_spell_check_client.h +++ b/atom/renderer/api/atom_api_spell_check_client.h @@ -33,7 +33,7 @@ class SpellCheckClient : public blink::WebSpellCheckPanelHostClient, bool auto_spell_correct_turned_on, v8::Isolate* isolate, v8::Local provider); - virtual ~SpellCheckClient(); + ~SpellCheckClient() override; private: class SpellcheckRequest; @@ -60,6 +60,7 @@ class SpellCheckClient : public blink::WebSpellCheckPanelHostClient, v8::Local spell_check_; explicit SpellCheckScope(const SpellCheckClient& client); + ~SpellCheckScope(); }; // Check the spelling of text. diff --git a/atom/renderer/api/atom_api_web_frame.cc b/atom/renderer/api/atom_api_web_frame.cc index 3f469ac3cf2c..d2108235b43e 100644 --- a/atom/renderer/api/atom_api_web_frame.cc +++ b/atom/renderer/api/atom_api_web_frame.cc @@ -95,7 +95,7 @@ class FrameSpellChecker : public content::RenderFrameVisitor { main_frame_ = nullptr; } bool Visit(content::RenderFrame* render_frame) override { - auto view = render_frame->GetRenderView(); + auto* view = render_frame->GetRenderView(); if (view->GetMainRenderFrame() == main_frame_ || (render_frame->IsMainFrame() && render_frame == main_frame_)) { render_frame->GetWebFrame()->SetTextCheckClient(spell_check_client_); @@ -173,7 +173,7 @@ v8::Local WebFrame::RegisterEmbedderCustomElement( void WebFrame::RegisterElementResizeCallback( int element_instance_id, const GuestViewContainer::ResizeCallback& callback) { - auto guest_view_container = GuestViewContainer::FromID(element_instance_id); + auto* guest_view_container = GuestViewContainer::FromID(element_instance_id); if (guest_view_container) guest_view_container->RegisterElementResizeCallback(callback); } diff --git a/atom/renderer/atom_autofill_agent.cc b/atom/renderer/atom_autofill_agent.cc index b07b2b6304b6..9c7fe2645ed6 100644 --- a/atom/renderer/atom_autofill_agent.cc +++ b/atom/renderer/atom_autofill_agent.cc @@ -57,6 +57,8 @@ AutofillAgent::AutofillAgent(content::RenderFrame* frame) render_frame()->GetWebFrame()->SetAutofillClient(this); } +AutofillAgent::~AutofillAgent() = default; + void AutofillAgent::OnDestruct() { delete this; } @@ -210,7 +212,7 @@ void AutofillAgent::DoFocusChangeComplete() { if (focused_node_was_last_clicked_ && was_focused_before_now_) { ShowSuggestionsOptions options; options.autofill_on_empty_values = true; - auto input_element = ToWebInputElement(&element); + auto* input_element = ToWebInputElement(&element); if (input_element) ShowSuggestions(*input_element, options); } diff --git a/atom/renderer/atom_autofill_agent.h b/atom/renderer/atom_autofill_agent.h index 5c82e37347d2..8994d8dfc97e 100644 --- a/atom/renderer/atom_autofill_agent.h +++ b/atom/renderer/atom_autofill_agent.h @@ -21,6 +21,7 @@ class AutofillAgent : public content::RenderFrameObserver, public blink::WebAutofillClient { public: explicit AutofillAgent(content::RenderFrame* frame); + ~AutofillAgent() override; // content::RenderFrameObserver: void OnDestruct() override; diff --git a/atom/renderer/atom_render_frame_observer.cc b/atom/renderer/atom_render_frame_observer.cc index cbbbc245ec2d..d80ff1e398ae 100644 --- a/atom/renderer/atom_render_frame_observer.cc +++ b/atom/renderer/atom_render_frame_observer.cc @@ -126,7 +126,7 @@ void AtomRenderFrameObserver::OnDestruct() { } void AtomRenderFrameObserver::CreateIsolatedWorldContext() { - auto frame = render_frame_->GetWebFrame(); + auto* frame = render_frame_->GetWebFrame(); // This maps to the name shown in the context combo box in the Console tab // of the dev tools. diff --git a/atom/renderer/atom_render_view_observer.h b/atom/renderer/atom_render_view_observer.h index ca9fb01288e3..097616e12369 100644 --- a/atom/renderer/atom_render_view_observer.h +++ b/atom/renderer/atom_render_view_observer.h @@ -14,7 +14,7 @@ class AtomRenderViewObserver : public content::RenderViewObserver { explicit AtomRenderViewObserver(content::RenderView* render_view); protected: - virtual ~AtomRenderViewObserver(); + ~AtomRenderViewObserver() override; private: // content::RenderViewObserver implementation. diff --git a/atom/renderer/atom_renderer_client.h b/atom/renderer/atom_renderer_client.h index db2efab4b537..a1442b72eb74 100644 --- a/atom/renderer/atom_renderer_client.h +++ b/atom/renderer/atom_renderer_client.h @@ -23,7 +23,7 @@ class NodeBindings; class AtomRendererClient : public RendererClientBase { public: AtomRendererClient(); - virtual ~AtomRendererClient(); + ~AtomRendererClient() override; // atom::RendererClientBase: void DidCreateScriptContext(v8::Handle context, diff --git a/atom/renderer/atom_sandboxed_renderer_client.cc b/atom/renderer/atom_sandboxed_renderer_client.cc index 1a5a56fdd8df..252121f18272 100644 --- a/atom/renderer/atom_sandboxed_renderer_client.cc +++ b/atom/renderer/atom_sandboxed_renderer_client.cc @@ -60,7 +60,7 @@ v8::Local GetBinding(v8::Isolate* isolate, return exports; } - auto mod = node::get_builtin_module(module_key.c_str()); + auto* mod = node::get_builtin_module(module_key.c_str()); if (!mod) { char errmsg[1024]; @@ -84,7 +84,7 @@ base::CommandLine::StringVector GetArgv() { void InitializeBindings(v8::Local binding, v8::Local context) { - auto isolate = context->GetIsolate(); + auto* isolate = context->GetIsolate(); mate::Dictionary b(isolate, binding); b.SetMethod("get", GetBinding); b.SetMethod("crash", AtomBindings::Crash); @@ -107,11 +107,11 @@ class AtomSandboxedRenderFrameObserver : public AtomRenderFrameObserver { protected: void EmitIPCEvent(blink::WebLocalFrame* frame, const base::string16& channel, - const base::ListValue& args) { + const base::ListValue& args) override { if (!frame) return; - auto isolate = blink::MainThreadIsolate(); + auto* isolate = blink::MainThreadIsolate(); v8::HandleScope handle_scope(isolate); auto context = frame->MainWorldScriptContext(); v8::Context::Scope context_scope(context); @@ -160,7 +160,7 @@ void AtomSandboxedRendererClient::DidCreateScriptContext( base::FilePath preload_script_path = command_line->GetSwitchValuePath(switches::kPreloadScript); - auto isolate = context->GetIsolate(); + auto* isolate = context->GetIsolate(); v8::HandleScope handle_scope(isolate); v8::Context::Scope context_scope(context); // Wrap the bundle into a function that receives the binding object and the @@ -191,7 +191,7 @@ void AtomSandboxedRendererClient::WillReleaseScriptContext( if (!render_frame->IsMainFrame()) return; - auto isolate = context->GetIsolate(); + auto* isolate = context->GetIsolate(); v8::HandleScope handle_scope(isolate); v8::Context::Scope context_scope(context); InvokeIpcCallback(context, "onExit", std::vector>()); @@ -201,7 +201,7 @@ void AtomSandboxedRendererClient::InvokeIpcCallback( v8::Handle context, const std::string& callback_name, std::vector> args) { - auto isolate = context->GetIsolate(); + auto* isolate = context->GetIsolate(); auto binding_key = mate::ConvertToV8(isolate, kIpcKey)->ToString(); auto private_binding_key = v8::Private::ForApi(isolate, binding_key); auto global_object = context->Global(); diff --git a/atom/renderer/atom_sandboxed_renderer_client.h b/atom/renderer/atom_sandboxed_renderer_client.h index c36fbcf62609..1ebf4429794f 100644 --- a/atom/renderer/atom_sandboxed_renderer_client.h +++ b/atom/renderer/atom_sandboxed_renderer_client.h @@ -14,7 +14,7 @@ namespace atom { class AtomSandboxedRendererClient : public RendererClientBase { public: AtomSandboxedRendererClient(); - virtual ~AtomSandboxedRendererClient(); + ~AtomSandboxedRendererClient() override; void InvokeIpcCallback(v8::Handle context, const std::string& callback_name, diff --git a/atom/renderer/renderer_client_base.h b/atom/renderer/renderer_client_base.h index 5c296342cc13..31c2f524740d 100644 --- a/atom/renderer/renderer_client_base.h +++ b/atom/renderer/renderer_client_base.h @@ -18,7 +18,7 @@ class PreferencesManager; class RendererClientBase : public content::ContentRendererClient { public: RendererClientBase(); - virtual ~RendererClientBase(); + ~RendererClientBase() override; virtual void DidCreateScriptContext(v8::Handle context, content::RenderFrame* render_frame) = 0; diff --git a/brightray/browser/browser_client.cc b/brightray/browser/browser_client.cc index f675f73218e8..ea82524810c5 100644 --- a/brightray/browser/browser_client.cc +++ b/brightray/browser/browser_client.cc @@ -58,6 +58,13 @@ BrowserClient::BrowserClient() : browser_main_parts_(nullptr) { BrowserClient::~BrowserClient() {} + +void BrowserClient::WebNotificationAllowed( + int render_process_id, + const base::Callback& callback) { + callback.Run(false, true); +} + NotificationPresenter* BrowserClient::GetNotificationPresenter() { if (!notification_presenter_) { // Create a new presenter if on OS X, Linux, or Windows 7+ diff --git a/brightray/browser/browser_client.h b/brightray/browser/browser_client.h index 88b132c42c50..5c8ecd397c7c 100644 --- a/brightray/browser/browser_client.h +++ b/brightray/browser/browser_client.h @@ -23,7 +23,7 @@ class BrowserClient : public content::ContentBrowserClient { static void SetApplicationLocale(const std::string& locale); BrowserClient(); - ~BrowserClient(); + ~BrowserClient() override; BrowserMainParts* browser_main_parts() { return browser_main_parts_; } @@ -32,9 +32,7 @@ class BrowserClient : public content::ContentBrowserClient { // Subclasses should override this to enable or disable WebNotification. virtual void WebNotificationAllowed( int render_process_id, - const base::Callback& callback) { - callback.Run(false, true); - } + const base::Callback& callback); // Subclasses that override this (e.g., to provide their own protocol // handlers) should call this implementation after doing their own work. diff --git a/brightray/browser/browser_main_parts.cc b/brightray/browser/browser_main_parts.cc index 206f7a74d18d..4006d96c9f04 100644 --- a/brightray/browser/browser_main_parts.cc +++ b/brightray/browser/browser_main_parts.cc @@ -227,7 +227,7 @@ void BrowserMainParts::PreMainMessageLoopStart() { // Initialize ui::ResourceBundle. ui::ResourceBundle::InitSharedInstanceWithLocale( "", nullptr, ui::ResourceBundle::DO_NOT_LOAD_COMMON_RESOURCES); - auto cmd_line = base::CommandLine::ForCurrentProcess(); + auto* cmd_line = base::CommandLine::ForCurrentProcess(); if (cmd_line->HasSwitch(switches::kLang)) { const std::string locale = cmd_line->GetSwitchValueASCII(switches::kLang); const base::FilePath locale_file_path = @@ -258,7 +258,7 @@ void BrowserMainParts::PreMainMessageLoopRun() { WebUIControllerFactory::GetInstance()); // --remote-debugging-port - auto command_line = base::CommandLine::ForCurrentProcess(); + auto* command_line = base::CommandLine::ForCurrentProcess(); if (command_line->HasSwitch(switches::kRemoteDebuggingPort)) DevToolsManagerDelegate::StartHttpHandler(); } diff --git a/brightray/browser/browser_main_parts.h b/brightray/browser/browser_main_parts.h index 673d50228f1d..2a31027431b9 100644 --- a/brightray/browser/browser_main_parts.h +++ b/brightray/browser/browser_main_parts.h @@ -33,7 +33,7 @@ namespace brightray { class BrowserMainParts : public content::BrowserMainParts { public: BrowserMainParts(); - ~BrowserMainParts(); + ~BrowserMainParts() override; IOThread* io_thread() const { return io_thread_.get(); } diff --git a/brightray/browser/devtools_manager_delegate.h b/brightray/browser/devtools_manager_delegate.h index 631111cc6aa1..5d75d2b00186 100644 --- a/brightray/browser/devtools_manager_delegate.h +++ b/brightray/browser/devtools_manager_delegate.h @@ -18,7 +18,7 @@ class DevToolsManagerDelegate : public content::DevToolsManagerDelegate { static void StartHttpHandler(); DevToolsManagerDelegate(); - virtual ~DevToolsManagerDelegate(); + ~DevToolsManagerDelegate() override; // DevToolsManagerDelegate implementation. void Inspect(content::DevToolsAgentHost* agent_host) override; diff --git a/brightray/browser/inspectable_web_contents.cc b/brightray/browser/inspectable_web_contents.cc index cea73a0915c6..f389f75db62f 100644 --- a/brightray/browser/inspectable_web_contents.cc +++ b/brightray/browser/inspectable_web_contents.cc @@ -6,7 +6,7 @@ namespace brightray { InspectableWebContents* InspectableWebContents::Create( const content::WebContents::CreateParams& create_params) { - auto contents = content::WebContents::Create(create_params); + auto* contents = content::WebContents::Create(create_params); return Create(contents); } diff --git a/brightray/browser/inspectable_web_contents_impl.cc b/brightray/browser/inspectable_web_contents_impl.cc index 85934f094364..73f52e5e4db6 100644 --- a/brightray/browser/inspectable_web_contents_impl.cc +++ b/brightray/browser/inspectable_web_contents_impl.cc @@ -203,10 +203,10 @@ InspectableWebContentsImpl::InspectableWebContentsImpl( delegate_(nullptr), web_contents_(web_contents), weak_factory_(this) { - auto context = + auto* context = static_cast(web_contents_->GetBrowserContext()); pref_service_ = context->prefs(); - auto bounds_dict = pref_service_->GetDictionary(kDevToolsBoundsPref); + auto* bounds_dict = pref_service_->GetDictionary(kDevToolsBoundsPref); if (bounds_dict) { DictionaryToRect(*bounds_dict, &devtools_bounds_); // Sometimes the devtools window is out of screen or has too small size. @@ -719,7 +719,7 @@ bool InspectableWebContentsImpl::ShouldCreateWebContents( void InspectableWebContentsImpl::HandleKeyboardEvent( content::WebContents* source, const content::NativeWebKeyboardEvent& event) { - auto delegate = web_contents_->GetDelegate(); + auto* delegate = web_contents_->GetDelegate(); if (delegate) delegate->HandleKeyboardEvent(source, event); } @@ -733,7 +733,7 @@ content::ColorChooser* InspectableWebContentsImpl::OpenColorChooser( content::WebContents* source, SkColor color, const std::vector& suggestions) { - auto delegate = web_contents_->GetDelegate(); + auto* delegate = web_contents_->GetDelegate(); if (delegate) return delegate->OpenColorChooser(source, color, suggestions); return nullptr; @@ -742,7 +742,7 @@ content::ColorChooser* InspectableWebContentsImpl::OpenColorChooser( void InspectableWebContentsImpl::RunFileChooser( content::RenderFrameHost* render_frame_host, const content::FileChooserParams& params) { - auto delegate = web_contents_->GetDelegate(); + auto* delegate = web_contents_->GetDelegate(); if (delegate) delegate->RunFileChooser(render_frame_host, params); } @@ -751,7 +751,7 @@ void InspectableWebContentsImpl::EnumerateDirectory( content::WebContents* source, int request_id, const base::FilePath& path) { - auto delegate = web_contents_->GetDelegate(); + auto* delegate = web_contents_->GetDelegate(); if (delegate) delegate->EnumerateDirectory(source, request_id, path); } diff --git a/brightray/browser/inspectable_web_contents_impl.h b/brightray/browser/inspectable_web_contents_impl.h index 0cd7d2b45b04..32145f281fb3 100644 --- a/brightray/browser/inspectable_web_contents_impl.h +++ b/brightray/browser/inspectable_web_contents_impl.h @@ -40,7 +40,7 @@ class InspectableWebContentsImpl static void RegisterPrefs(PrefRegistrySimple* pref_registry); explicit InspectableWebContentsImpl(content::WebContents*); - virtual ~InspectableWebContentsImpl(); + ~InspectableWebContentsImpl() override; InspectableWebContentsView* GetView() const override; content::WebContents* GetWebContents() const override; diff --git a/brightray/browser/inspectable_web_contents_view_mac.h b/brightray/browser/inspectable_web_contents_view_mac.h index 990fdf58c939..40a140c7297f 100644 --- a/brightray/browser/inspectable_web_contents_view_mac.h +++ b/brightray/browser/inspectable_web_contents_view_mac.h @@ -15,7 +15,7 @@ class InspectableWebContentsViewMac : public InspectableWebContentsView { public: explicit InspectableWebContentsViewMac( InspectableWebContentsImpl* inspectable_web_contents_impl); - virtual ~InspectableWebContentsViewMac(); + ~InspectableWebContentsViewMac() override; gfx::NativeView GetNativeView() const override; void ShowDevTools() override; diff --git a/brightray/browser/linux/libnotify_notification.cc b/brightray/browser/linux/libnotify_notification.cc index caf03e45aae6..0725ffded989 100644 --- a/brightray/browser/linux/libnotify_notification.cc +++ b/brightray/browser/linux/libnotify_notification.cc @@ -28,8 +28,8 @@ LibNotifyLoader libnotify_loader_; const std::set& GetServerCapabilities() { static std::set caps; if (caps.empty()) { - auto capabilities = libnotify_loader_.notify_get_server_caps(); - for (auto l = capabilities; l != nullptr; l = l->next) + auto* capabilities = libnotify_loader_.notify_get_server_caps(); + for (auto* l = capabilities; l != nullptr; l = l->next) caps.insert(static_cast(l->data)); g_list_free_full(capabilities, g_free); } diff --git a/brightray/browser/linux/libnotify_notification.h b/brightray/browser/linux/libnotify_notification.h index a33055180b07..db0b9f04a874 100644 --- a/brightray/browser/linux/libnotify_notification.h +++ b/brightray/browser/linux/libnotify_notification.h @@ -18,7 +18,7 @@ class LibnotifyNotification : public Notification { public: LibnotifyNotification(NotificationDelegate* delegate, NotificationPresenter* presenter); - virtual ~LibnotifyNotification(); + ~LibnotifyNotification() override; static bool Initialize(); diff --git a/brightray/browser/linux/notification_presenter_linux.h b/brightray/browser/linux/notification_presenter_linux.h index ed387624219a..1ae4b2d1cc9b 100644 --- a/brightray/browser/linux/notification_presenter_linux.h +++ b/brightray/browser/linux/notification_presenter_linux.h @@ -13,7 +13,7 @@ namespace brightray { class NotificationPresenterLinux : public NotificationPresenter { public: NotificationPresenterLinux(); - ~NotificationPresenterLinux(); + ~NotificationPresenterLinux() override; private: Notification* CreateNotificationObject( diff --git a/brightray/browser/mac/bry_inspectable_web_contents_view.mm b/brightray/browser/mac/bry_inspectable_web_contents_view.mm index db680fe40a5f..b99904029306 100644 --- a/brightray/browser/mac/bry_inspectable_web_contents_view.mm +++ b/brightray/browser/mac/bry_inspectable_web_contents_view.mm @@ -31,7 +31,7 @@ name:NSWindowDidBecomeMainNotification object:nil]; - auto contents = inspectableWebContentsView_->inspectable_web_contents()->GetWebContents(); + auto* contents = inspectableWebContentsView_->inspectable_web_contents()->GetWebContents(); auto contentsView = contents->GetNativeView(); [contentsView setAutoresizingMask:NSViewWidthSizable | NSViewHeightSizable]; [self addSubview:contentsView]; @@ -63,9 +63,9 @@ if (visible == devtools_visible_) return; - auto inspectable_web_contents = inspectableWebContentsView_->inspectable_web_contents(); - auto webContents = inspectable_web_contents->GetWebContents(); - auto devToolsWebContents = inspectable_web_contents->GetDevToolsWebContents(); + auto* inspectable_web_contents = inspectableWebContentsView_->inspectable_web_contents(); + auto* webContents = inspectable_web_contents->GetWebContents(); + auto* devToolsWebContents = inspectable_web_contents->GetDevToolsWebContents(); auto devToolsView = devToolsWebContents->GetNativeView(); if (visible && devtools_docked_) { @@ -120,8 +120,8 @@ // Switch to new state. devtools_docked_ = docked; if (!docked) { - auto inspectable_web_contents = inspectableWebContentsView_->inspectable_web_contents(); - auto devToolsWebContents = inspectable_web_contents->GetDevToolsWebContents(); + auto* inspectable_web_contents = inspectableWebContentsView_->inspectable_web_contents(); + auto* devToolsWebContents = inspectable_web_contents->GetDevToolsWebContents(); auto devToolsView = devToolsWebContents->GetNativeView(); auto styleMask = NSTitledWindowMask | NSClosableWindowMask | @@ -184,10 +184,10 @@ } - (void)viewDidBecomeFirstResponder:(NSNotification*)notification { - auto inspectable_web_contents = inspectableWebContentsView_->inspectable_web_contents(); + auto* inspectable_web_contents = inspectableWebContentsView_->inspectable_web_contents(); if (!inspectable_web_contents) return; - auto webContents = inspectable_web_contents->GetWebContents(); + auto* webContents = inspectable_web_contents->GetWebContents(); auto webContentsView = webContents->GetNativeView(); NSView* view = [notification object]; @@ -196,7 +196,7 @@ return; } - auto devToolsWebContents = inspectable_web_contents->GetDevToolsWebContents(); + auto* devToolsWebContents = inspectable_web_contents->GetDevToolsWebContents(); if (!devToolsWebContents) return; auto devToolsView = devToolsWebContents->GetNativeView(); diff --git a/brightray/browser/mac/cocoa_notification.h b/brightray/browser/mac/cocoa_notification.h index 1cdd7e33b423..066528ee490b 100644 --- a/brightray/browser/mac/cocoa_notification.h +++ b/brightray/browser/mac/cocoa_notification.h @@ -20,7 +20,7 @@ class CocoaNotification : public Notification { public: CocoaNotification(NotificationDelegate* delegate, NotificationPresenter* presenter); - ~CocoaNotification(); + ~CocoaNotification() override; // Notification: void Show(const NotificationOptions& options) override; @@ -29,7 +29,8 @@ class CocoaNotification : public Notification { void NotificationDisplayed(); void NotificationReplied(const std::string& reply); void NotificationActivated(); - void NotificationActivated(NSUserNotificationAction* action); + void NotificationActivated(NSUserNotificationAction* action) + API_AVAILABLE(macosx(10.10)); NSUserNotification* notification() const { return notification_; } diff --git a/brightray/browser/mac/cocoa_notification.mm b/brightray/browser/mac/cocoa_notification.mm index 5201baa363d2..a8241b4e242e 100644 --- a/brightray/browser/mac/cocoa_notification.mm +++ b/brightray/browser/mac/cocoa_notification.mm @@ -69,18 +69,22 @@ void CocoaNotification::Show(const NotificationOptions& options) { } else { // All of the rest are appended to the list of additional actions NSString* actionIdentifier = [NSString stringWithFormat:@"%@Action%d", identifier, i]; - NSUserNotificationAction* notificationAction = - [NSUserNotificationAction actionWithIdentifier:actionIdentifier - title:base::SysUTF16ToNSString(action.text)]; - [additionalActions addObject:notificationAction]; - additional_action_indices_.insert(std::make_pair(base::SysNSStringToUTF8(actionIdentifier), i)); + if (@available(macOS 10.10, *)) { + NSUserNotificationAction* notificationAction = + [NSUserNotificationAction actionWithIdentifier:actionIdentifier + title:base::SysUTF16ToNSString(action.text)]; + [additionalActions addObject:notificationAction]; + additional_action_indices_.insert(std::make_pair(base::SysNSStringToUTF8(actionIdentifier), i)); + } } } i++; } if ([additionalActions count] > 0 && [notification_ respondsToSelector:@selector(setAdditionalActions:)]) { - [notification_ setAdditionalActions:additionalActions]; // Requires macOS 10.10 + if (@available(macOS 10.10, *)) { + [notification_ setAdditionalActions:additionalActions]; + } } if (options.has_reply) { diff --git a/brightray/browser/mac/notification_center_delegate.mm b/brightray/browser/mac/notification_center_delegate.mm index 1cb3dc9a33d3..f1402e2401e8 100644 --- a/brightray/browser/mac/notification_center_delegate.mm +++ b/brightray/browser/mac/notification_center_delegate.mm @@ -20,14 +20,14 @@ - (void)userNotificationCenter:(NSUserNotificationCenter*)center didDeliverNotification:(NSUserNotification*)notif { - auto notification = presenter_->GetNotification(notif); + auto* notification = presenter_->GetNotification(notif); if (notification) notification->NotificationDisplayed(); } - (void)userNotificationCenter:(NSUserNotificationCenter*)center didActivateNotification:(NSUserNotification *)notif { - auto notification = presenter_->GetNotification(notif); + auto* notification = presenter_->GetNotification(notif); if (getenv("ELECTRON_DEBUG_NOTIFICATIONS")) { LOG(INFO) << "Notification activated (" << [notif.identifier UTF8String] << ")"; @@ -41,8 +41,12 @@ notification->NotificationActivated(); } else if (notif.activationType == NSUserNotificationActivationTypeReplied) { notification->NotificationReplied([notif.response.string UTF8String]); - } else if (notif.activationType == NSUserNotificationActivationTypeAdditionalActionClicked) { - notification->NotificationActivated([notif additionalActivationAction]); + } else { + if (@available(macOS 10.10, *)) { + if (notif.activationType == NSUserNotificationActivationTypeAdditionalActionClicked) { + notification->NotificationActivated([notif additionalActivationAction]); + } + } } } } diff --git a/brightray/browser/mac/notification_presenter_mac.h b/brightray/browser/mac/notification_presenter_mac.h index 0e0e42048cf9..b23e10b82f0d 100644 --- a/brightray/browser/mac/notification_presenter_mac.h +++ b/brightray/browser/mac/notification_presenter_mac.h @@ -19,7 +19,7 @@ class NotificationPresenterMac : public NotificationPresenter { CocoaNotification* GetNotification(NSUserNotification* notif); NotificationPresenterMac(); - ~NotificationPresenterMac(); + ~NotificationPresenterMac() override; private: Notification* CreateNotificationObject( diff --git a/brightray/browser/mac/notification_presenter_mac.mm b/brightray/browser/mac/notification_presenter_mac.mm index 436584ac6557..8c0af7cbd6af 100644 --- a/brightray/browser/mac/notification_presenter_mac.mm +++ b/brightray/browser/mac/notification_presenter_mac.mm @@ -17,7 +17,7 @@ NotificationPresenter* NotificationPresenter::Create() { CocoaNotification* NotificationPresenterMac::GetNotification( NSUserNotification* ns_notification) { for (Notification* notification : notifications()) { - auto native_notification = static_cast(notification); + auto* native_notification = static_cast(notification); if ([native_notification->notification().identifier isEqual:ns_notification.identifier]) return native_notification; diff --git a/brightray/browser/media/media_capture_devices_dispatcher.h b/brightray/browser/media/media_capture_devices_dispatcher.h index b0d212e5f6d6..b82a96712f69 100644 --- a/brightray/browser/media/media_capture_devices_dispatcher.h +++ b/brightray/browser/media/media_capture_devices_dispatcher.h @@ -70,7 +70,7 @@ class MediaCaptureDevicesDispatcher : public content::MediaObserver { friend struct base::DefaultSingletonTraits; MediaCaptureDevicesDispatcher(); - virtual ~MediaCaptureDevicesDispatcher(); + ~MediaCaptureDevicesDispatcher() override; // Flag used by unittests to disable device enumeration. bool is_device_enumeration_disabled_; diff --git a/brightray/browser/net_log.cc b/brightray/browser/net_log.cc index 62da3979d036..771b5451f109 100644 --- a/brightray/browser/net_log.cc +++ b/brightray/browser/net_log.cc @@ -43,7 +43,7 @@ NetLog::~NetLog() { } void NetLog::StartLogging() { - auto command_line = base::CommandLine::ForCurrentProcess(); + auto* command_line = base::CommandLine::ForCurrentProcess(); if (!command_line->HasSwitch(switches::kLogNetLog)) return; diff --git a/brightray/browser/network_delegate.cc b/brightray/browser/network_delegate.cc index 3dfb5879122e..e5c0186a7b3d 100644 --- a/brightray/browser/network_delegate.cc +++ b/brightray/browser/network_delegate.cc @@ -23,7 +23,7 @@ const char kIgnoreConnectionsLimit[] = "ignore-connections-limit"; } // namespace NetworkDelegate::NetworkDelegate() { - auto command_line = base::CommandLine::ForCurrentProcess(); + auto* command_line = base::CommandLine::ForCurrentProcess(); if (command_line->HasSwitch(kIgnoreConnectionsLimit)) { std::string value = command_line->GetSwitchValueASCII(kIgnoreConnectionsLimit); diff --git a/brightray/browser/network_delegate.h b/brightray/browser/network_delegate.h index 03e8235129c4..3c12624b27e1 100644 --- a/brightray/browser/network_delegate.h +++ b/brightray/browser/network_delegate.h @@ -15,7 +15,7 @@ namespace brightray { class NetworkDelegate : public net::NetworkDelegate { public: NetworkDelegate(); - virtual ~NetworkDelegate(); + ~NetworkDelegate() override; protected: int OnBeforeURLRequest(net::URLRequest* request, diff --git a/brightray/browser/notification.cc b/brightray/browser/notification.cc index eab24947847b..0d0fd5870a23 100644 --- a/brightray/browser/notification.cc +++ b/brightray/browser/notification.cc @@ -9,6 +9,9 @@ namespace brightray { +NotificationOptions::NotificationOptions() = default; +NotificationOptions::~NotificationOptions() = default; + Notification::Notification(NotificationDelegate* delegate, NotificationPresenter* presenter) : delegate_(delegate), presenter_(presenter), weak_factory_(this) {} diff --git a/brightray/browser/notification.h b/brightray/browser/notification.h index 1b81dda5a182..359495310d97 100644 --- a/brightray/browser/notification.h +++ b/brightray/browser/notification.h @@ -36,6 +36,9 @@ struct NotificationOptions { base::string16 sound; std::vector actions; base::string16 close_button_text; + + NotificationOptions(); + ~NotificationOptions(); }; class Notification { diff --git a/brightray/browser/platform_notification_service.cc b/brightray/browser/platform_notification_service.cc index f696345e38d5..7c58f4c2f1ff 100644 --- a/brightray/browser/platform_notification_service.cc +++ b/brightray/browser/platform_notification_service.cc @@ -105,7 +105,7 @@ void PlatformNotificationService::DisplayNotification( const content::PlatformNotificationData& notification_data, const content::NotificationResources& notification_resources, base::Closure* cancel_callback) { - auto presenter = browser_client_->GetNotificationPresenter(); + auto* presenter = browser_client_->GetNotificationPresenter(); if (!presenter) return; NotificationDelegateImpl* delegate = diff --git a/brightray/browser/url_request_context_getter.cc b/brightray/browser/url_request_context_getter.cc index 28fce67b7cfe..31219c5fa604 100644 --- a/brightray/browser/url_request_context_getter.cc +++ b/brightray/browser/url_request_context_getter.cc @@ -27,6 +27,7 @@ #include "net/cert/ct_log_verifier.h" #include "net/cert/ct_policy_enforcer.h" #include "net/cert/multi_log_ct_verifier.h" +#include "net/cookies/cookie_monster.h" #include "net/dns/mapped_host_resolver.h" #include "net/http/http_auth_filter.h" #include "net/http/http_auth_handler_factory.h" @@ -60,6 +61,11 @@ std::string URLRequestContextGetter::Delegate::GetUserAgent() { return base::EmptyString(); } +std::unique_ptr +URLRequestContextGetter::Delegate::CreateNetworkDelegate() { + return nullptr; +} + std::unique_ptr URLRequestContextGetter::Delegate::CreateURLRequestJobFactory( content::ProtocolHandlerMap* protocol_handlers) { @@ -87,7 +93,7 @@ URLRequestContextGetter::Delegate::CreateURLRequestJobFactory( net::HttpCache::BackendFactory* URLRequestContextGetter::Delegate::CreateHttpCacheBackendFactory( const base::FilePath& base_path) { - auto command_line = base::CommandLine::ForCurrentProcess(); + auto* command_line = base::CommandLine::ForCurrentProcess(); int max_size = 0; base::StringToInt(command_line->GetSwitchValueASCII(switches::kDiskCacheSize), &max_size); @@ -203,13 +209,16 @@ net::URLRequestContext* URLRequestContextGetter::GetURLRequestContext() { auto cookie_path = in_memory_ ? base::FilePath() : base_path_.Append(FILE_PATH_LITERAL("Cookies")); - auto cookie_config = content::CookieStoreConfig( - cookie_path, content::CookieStoreConfig::EPHEMERAL_SESSION_COOKIES, - nullptr); - cookie_config.cookieable_schemes = delegate_->GetCookieableSchemes(); std::unique_ptr cookie_store = - content::CreateCookieStore(cookie_config); + content::CreateCookieStore(content::CookieStoreConfig( + cookie_path, content::CookieStoreConfig::EPHEMERAL_SESSION_COOKIES, + nullptr)); storage_->set_cookie_store(std::move(cookie_store)); + + // Set custom schemes that can accept cookies. + net::CookieMonster* cookie_monster = + static_cast(url_request_context_->cookie_store()); + cookie_monster->SetCookieableSchemes(delegate_->GetCookieableSchemes()); // Cookie store will outlive notifier by order of declaration // in the header. cookie_change_sub_ = diff --git a/brightray/browser/url_request_context_getter.h b/brightray/browser/url_request_context_getter.h index 049d23548c6e..0cfd921babe5 100644 --- a/brightray/browser/url_request_context_getter.h +++ b/brightray/browser/url_request_context_getter.h @@ -48,9 +48,7 @@ class URLRequestContextGetter : public net::URLRequestContextGetter { Delegate() {} virtual ~Delegate() {} - virtual std::unique_ptr CreateNetworkDelegate() { - return nullptr; - } + virtual std::unique_ptr CreateNetworkDelegate(); virtual std::string GetUserAgent(); virtual std::unique_ptr CreateURLRequestJobFactory(content::ProtocolHandlerMap* protocol_handlers); @@ -73,7 +71,6 @@ class URLRequestContextGetter : public net::URLRequestContextGetter { scoped_refptr io_task_runner, content::ProtocolHandlerMap* protocol_handlers, content::URLRequestInterceptorScopedVector protocol_interceptors); - virtual ~URLRequestContextGetter(); // net::CookieStore::CookieChangedCallback implementation. void OnCookieChanged(const net::CanonicalCookie& cookie, @@ -90,6 +87,8 @@ class URLRequestContextGetter : public net::URLRequestContextGetter { void NotifyContextShutdownOnIO(); private: + ~URLRequestContextGetter() override; + Delegate* delegate_; NetLog* net_log_; diff --git a/brightray/browser/views/inspectable_web_contents_view_views.cc b/brightray/browser/views/inspectable_web_contents_view_views.cc index 4cac31f8c8a4..e95ffd05ee3c 100644 --- a/brightray/browser/views/inspectable_web_contents_view_views.cc +++ b/brightray/browser/views/inspectable_web_contents_view_views.cc @@ -30,7 +30,7 @@ class DevToolsWindowDelegate : public views::ClientView, if (shell->GetDelegate()) icon_ = shell->GetDelegate()->GetDevToolsWindowIcon(); } - virtual ~DevToolsWindowDelegate() {} + ~DevToolsWindowDelegate() override {} // views::WidgetDelegate: void DeleteDelegate() override { delete this; } diff --git a/brightray/browser/views/inspectable_web_contents_view_views.h b/brightray/browser/views/inspectable_web_contents_view_views.h index ebc2b90edf1d..5b1dba91363f 100644 --- a/brightray/browser/views/inspectable_web_contents_view_views.h +++ b/brightray/browser/views/inspectable_web_contents_view_views.h @@ -21,7 +21,7 @@ class InspectableWebContentsViewViews : public InspectableWebContentsView, public: explicit InspectableWebContentsViewViews( InspectableWebContentsImpl* inspectable_web_contents_impl); - ~InspectableWebContentsViewViews(); + ~InspectableWebContentsViewViews() override; // InspectableWebContentsView: views::View* GetView() override; diff --git a/brightray/browser/views/views_delegate.h b/brightray/browser/views/views_delegate.h index a0609cd3db78..cebe55398b0f 100644 --- a/brightray/browser/views/views_delegate.h +++ b/brightray/browser/views/views_delegate.h @@ -15,7 +15,7 @@ namespace brightray { class ViewsDelegate : public views::ViewsDelegate { public: ViewsDelegate(); - virtual ~ViewsDelegate(); + ~ViewsDelegate() override; protected: // views::ViewsDelegate: diff --git a/brightray/browser/web_ui_controller_factory.cc b/brightray/browser/web_ui_controller_factory.cc index 346ad985f5ef..8766891faa08 100644 --- a/brightray/browser/web_ui_controller_factory.cc +++ b/brightray/browser/web_ui_controller_factory.cc @@ -53,7 +53,7 @@ content::WebUIController* WebUIControllerFactory::CreateWebUIControllerForURL( content::WebUI* web_ui, const GURL& url) const { if (url.host() == kChromeUIDevToolsBundledHost) { - auto browser_context = web_ui->GetWebContents()->GetBrowserContext(); + auto* browser_context = web_ui->GetWebContents()->GetBrowserContext(); return new DevToolsUI(browser_context, web_ui); } return nullptr; diff --git a/brightray/browser/web_ui_controller_factory.h b/brightray/browser/web_ui_controller_factory.h index 51e53ef510ee..980acaeaf47d 100644 --- a/brightray/browser/web_ui_controller_factory.h +++ b/brightray/browser/web_ui_controller_factory.h @@ -23,7 +23,7 @@ class WebUIControllerFactory : public content::WebUIControllerFactory { static WebUIControllerFactory* GetInstance(); WebUIControllerFactory(); - virtual ~WebUIControllerFactory(); + ~WebUIControllerFactory() override; content::WebUI::TypeID GetWebUIType(content::BrowserContext* browser_context, const GURL& url) const override; diff --git a/brightray/common/content_client.h b/brightray/common/content_client.h index 44fddd8b45a5..0089ebc9d810 100644 --- a/brightray/common/content_client.h +++ b/brightray/common/content_client.h @@ -17,7 +17,7 @@ std::string GetBrightrayUserAgent(); class ContentClient : public content::ContentClient { public: ContentClient(); - ~ContentClient(); + ~ContentClient() override; private: std::string GetProduct() const override; diff --git a/brightray/common/main_delegate.h b/brightray/common/main_delegate.h index c5a294caab52..3160f9b252cf 100644 --- a/brightray/common/main_delegate.h +++ b/brightray/common/main_delegate.h @@ -30,7 +30,7 @@ void LoadCommonResources(); class MainDelegate : public content::ContentMainDelegate { public: MainDelegate(); - ~MainDelegate(); + ~MainDelegate() override; protected: // Subclasses can override this to provide their own ContentClient diff --git a/chromium_src/chrome/browser/extensions/global_shortcut_listener_mac.h b/chromium_src/chrome/browser/extensions/global_shortcut_listener_mac.h index 7cf8c74bc8b4..c64ff04a87c6 100644 --- a/chromium_src/chrome/browser/extensions/global_shortcut_listener_mac.h +++ b/chromium_src/chrome/browser/extensions/global_shortcut_listener_mac.h @@ -29,7 +29,7 @@ namespace extensions { class GlobalShortcutListenerMac : public GlobalShortcutListener { public: GlobalShortcutListenerMac(); - virtual ~GlobalShortcutListenerMac(); + ~GlobalShortcutListenerMac() override; private: typedef int KeyId; @@ -42,11 +42,11 @@ class GlobalShortcutListenerMac : public GlobalShortcutListener { bool OnMediaOrVolumeKeyEvent(int key_code); // GlobalShortcutListener implementation. - virtual void StartListening() override; - virtual void StopListening() override; - virtual bool RegisterAcceleratorImpl( + void StartListening() override; + void StopListening() override; + bool RegisterAcceleratorImpl( const ui::Accelerator& accelerator) override; - virtual void UnregisterAcceleratorImpl( + void UnregisterAcceleratorImpl( const ui::Accelerator& accelerator) override; // Mac-specific functions for registering hot keys with modifiers. diff --git a/chromium_src/chrome/browser/printing/print_view_manager_base.cc b/chromium_src/chrome/browser/printing/print_view_manager_base.cc index 6c6aaa0af620..8c150072dfba 100644 --- a/chromium_src/chrome/browser/printing/print_view_manager_base.cc +++ b/chromium_src/chrome/browser/printing/print_view_manager_base.cc @@ -368,7 +368,7 @@ void PrintViewManagerBase::DisconnectFromCurrentPrintJob() { } void PrintViewManagerBase::PrintingDone(bool success) { - auto host = web_contents()->GetRenderViewHost(); + auto* host = web_contents()->GetRenderViewHost(); if (print_job_.get()) { if (host) host->Send(new PrintMsg_PrintingDone(host->GetRoutingID(), success)); diff --git a/chromium_src/chrome/browser/printing/print_view_manager_base.h b/chromium_src/chrome/browser/printing/print_view_manager_base.h index 669889b0e308..8f20cead1aa3 100644 --- a/chromium_src/chrome/browser/printing/print_view_manager_base.h +++ b/chromium_src/chrome/browser/printing/print_view_manager_base.h @@ -34,7 +34,7 @@ class PrintQueriesQueue; class PrintViewManagerBase : public content::NotificationObserver, public content::WebContentsObserver { public: - virtual ~PrintViewManagerBase(); + ~PrintViewManagerBase() override; #if !defined(DISABLE_BASIC_PRINTING) // Prints the current document immediately. Since the rendering is @@ -70,12 +70,12 @@ class PrintViewManagerBase : public content::NotificationObserver, private: // content::NotificationObserver implementation. - virtual void Observe(int type, - const content::NotificationSource& source, - const content::NotificationDetails& details) override; + void Observe(int type, + const content::NotificationSource& source, + const content::NotificationDetails& details) override; // Cancels the print job. - virtual void NavigationStopped() override; + void NavigationStopped() override; // IPC Message handlers. void OnDidGetPrintedPagesCount(int cookie, int number_pages); diff --git a/chromium_src/chrome/browser/printing/print_view_manager_basic.h b/chromium_src/chrome/browser/printing/print_view_manager_basic.h index 553c555cc3a6..db4c60a16954 100644 --- a/chromium_src/chrome/browser/printing/print_view_manager_basic.h +++ b/chromium_src/chrome/browser/printing/print_view_manager_basic.h @@ -19,7 +19,7 @@ class PrintViewManagerBasic : public PrintViewManagerBase, public content::WebContentsUserData { public: - virtual ~PrintViewManagerBasic(); + ~PrintViewManagerBasic() override; #if defined(OS_ANDROID) // Sets the file descriptor into which the PDF will be written. diff --git a/chromium_src/chrome/browser/printing/printing_message_filter.h b/chromium_src/chrome/browser/printing/printing_message_filter.h index 9a6d3c5ec570..097010478fe0 100644 --- a/chromium_src/chrome/browser/printing/printing_message_filter.h +++ b/chromium_src/chrome/browser/printing/printing_message_filter.h @@ -41,7 +41,7 @@ class PrintingMessageFilter : public content::BrowserMessageFilter { friend class base::DeleteHelper; friend class content::BrowserThread; - virtual ~PrintingMessageFilter(); + ~PrintingMessageFilter() override; void OnDestruct() const override; diff --git a/chromium_src/chrome/browser/process_singleton_posix.cc b/chromium_src/chrome/browser/process_singleton_posix.cc index 874f97ea2e1b..3a6176765f91 100644 --- a/chromium_src/chrome/browser/process_singleton_posix.cc +++ b/chromium_src/chrome/browser/process_singleton_posix.cc @@ -321,7 +321,7 @@ bool DisplayProfileInUseError(const base::FilePath& lock_path, bool IsChromeProcess(pid_t pid) { base::FilePath other_chrome_path(base::GetProcessExecutablePath(pid)); - auto command_line = base::CommandLine::ForCurrentProcess(); + auto* command_line = base::CommandLine::ForCurrentProcess(); base::FilePath exec_path(command_line->GetProgram()); PathService::Get(base::FILE_EXE, &exec_path); diff --git a/chromium_src/chrome/browser/renderer_host/pepper/widevine_cdm_message_filter.h b/chromium_src/chrome/browser/renderer_host/pepper/widevine_cdm_message_filter.h index abd38c79a2bf..58e966a0a630 100644 --- a/chromium_src/chrome/browser/renderer_host/pepper/widevine_cdm_message_filter.h +++ b/chromium_src/chrome/browser/renderer_host/pepper/widevine_cdm_message_filter.h @@ -24,7 +24,7 @@ class WidevineCdmMessageFilter : public content::BrowserMessageFilter { friend class content::BrowserThread; friend class base::DeleteHelper; - virtual ~WidevineCdmMessageFilter(); + ~WidevineCdmMessageFilter() override; #if BUILDFLAG(ENABLE_LIBRARY_CDMS) // Returns whether any internal plugin supporting |mime_type| is registered diff --git a/chromium_src/chrome/browser/speech/tts_controller_impl.h b/chromium_src/chrome/browser/speech/tts_controller_impl.h index e11cacbe41b8..556c9febccb1 100644 --- a/chromium_src/chrome/browser/speech/tts_controller_impl.h +++ b/chromium_src/chrome/browser/speech/tts_controller_impl.h @@ -29,30 +29,30 @@ class TtsControllerImpl : public TtsController { static TtsControllerImpl* GetInstance(); // TtsController methods - virtual bool IsSpeaking() override; - virtual void SpeakOrEnqueue(Utterance* utterance) override; - virtual void Stop() override; - virtual void Pause() override; - virtual void Resume() override; - virtual void OnTtsEvent(int utterance_id, - TtsEventType event_type, - int char_index, - const std::string& error_message) override; - virtual void GetVoices(content::BrowserContext* browser_context, - std::vector* out_voices) override; - virtual void VoicesChanged() override; - virtual void AddVoicesChangedDelegate( + bool IsSpeaking() override; + void SpeakOrEnqueue(Utterance* utterance) override; + void Stop() override; + void Pause() override; + void Resume() override; + void OnTtsEvent(int utterance_id, + TtsEventType event_type, + int char_index, + const std::string& error_message) override; + void GetVoices(content::BrowserContext* browser_context, + std::vector* out_voices) override; + void VoicesChanged() override; + void AddVoicesChangedDelegate( VoicesChangedDelegate* delegate) override; - virtual void RemoveVoicesChangedDelegate( + void RemoveVoicesChangedDelegate( VoicesChangedDelegate* delegate) override; - virtual void SetTtsEngineDelegate(TtsEngineDelegate* delegate) override; - virtual TtsEngineDelegate* GetTtsEngineDelegate() override; - virtual void SetPlatformImpl(TtsPlatformImpl* platform_impl) override; - virtual int QueueSize() override; + void SetTtsEngineDelegate(TtsEngineDelegate* delegate) override; + TtsEngineDelegate* GetTtsEngineDelegate() override; + void SetPlatformImpl(TtsPlatformImpl* platform_impl) override; + int QueueSize() override; protected: TtsControllerImpl(); - virtual ~TtsControllerImpl(); + ~TtsControllerImpl() override; private: // Get the platform TTS implementation (or injected mock). diff --git a/chromium_src/chrome/browser/speech/tts_mac.mm b/chromium_src/chrome/browser/speech/tts_mac.mm index aafbd4692515..782c9d08b0ba 100644 --- a/chromium_src/chrome/browser/speech/tts_mac.mm +++ b/chromium_src/chrome/browser/speech/tts_mac.mm @@ -49,26 +49,26 @@ class TtsPlatformImplMac; class TtsPlatformImplMac : public TtsPlatformImpl { public: - virtual bool PlatformImplAvailable() override { + bool PlatformImplAvailable() override { return true; } - virtual bool Speak( + bool Speak( int utterance_id, const std::string& utterance, const std::string& lang, const VoiceData& voice, const UtteranceContinuousParameters& params) override; - virtual bool StopSpeaking() override; + bool StopSpeaking() override; - virtual void Pause() override; + void Pause() override; - virtual void Resume() override; + void Resume() override; - virtual bool IsSpeaking() override; + bool IsSpeaking() override; - virtual void GetVoices(std::vector* out_voices) override; + void GetVoices(std::vector* out_voices) override; // Called by ChromeTtsDelegate when we get a callback from the // native speech engine. @@ -82,7 +82,7 @@ class TtsPlatformImplMac : public TtsPlatformImpl { private: TtsPlatformImplMac(); - virtual ~TtsPlatformImplMac(); + ~TtsPlatformImplMac() override; base::scoped_nsobject speech_synthesizer_; base::scoped_nsobject delegate_; diff --git a/chromium_src/chrome/browser/speech/tts_message_filter.h b/chromium_src/chrome/browser/speech/tts_message_filter.h index 31e009b3fcc3..cb089d5c7d4a 100644 --- a/chromium_src/chrome/browser/speech/tts_message_filter.h +++ b/chromium_src/chrome/browser/speech/tts_message_filter.h @@ -41,7 +41,7 @@ class TtsMessageFilter : public content::BrowserMessageFilter, friend class content::BrowserThread; friend class base::DeleteHelper; - virtual ~TtsMessageFilter(); + ~TtsMessageFilter() override; void OnInitializeVoiceList(); void OnSpeak(const TtsUtteranceRequest& utterance); diff --git a/chromium_src/chrome/browser/ui/cocoa/color_chooser_mac.mm b/chromium_src/chrome/browser/ui/cocoa/color_chooser_mac.mm index 6183dd5d5bd0..c5aa67d62141 100644 --- a/chromium_src/chrome/browser/ui/cocoa/color_chooser_mac.mm +++ b/chromium_src/chrome/browser/ui/cocoa/color_chooser_mac.mm @@ -39,14 +39,14 @@ class ColorChooserMac : public content::ColorChooser { SkColor initial_color); ColorChooserMac(content::WebContents* tab, SkColor initial_color); - virtual ~ColorChooserMac(); + ~ColorChooserMac() override; // Called from ColorPanelCocoa. void DidChooseColorInColorPanel(SkColor color); void DidCloseColorPabel(); - virtual void End() override; - virtual void SetSelectedColor(SkColor color) override; + void End() override; + void SetSelectedColor(SkColor color) override; private: static ColorChooserMac* current_color_chooser_; diff --git a/chromium_src/chrome/common/tts_utterance_request.cc b/chromium_src/chrome/common/tts_utterance_request.cc index 02a69f464383..66b783cfafd1 100644 --- a/chromium_src/chrome/common/tts_utterance_request.cc +++ b/chromium_src/chrome/common/tts_utterance_request.cc @@ -11,8 +11,10 @@ TtsUtteranceRequest::~TtsUtteranceRequest() {} TtsVoice::TtsVoice() : local_service(true), is_default(false) {} +TtsVoice::TtsVoice(const TtsVoice&) = default; + TtsVoice::~TtsVoice() {} TtsUtteranceResponse::TtsUtteranceResponse() : id(0) {} -TtsUtteranceResponse::~TtsUtteranceResponse() {} \ No newline at end of file +TtsUtteranceResponse::~TtsUtteranceResponse() {} diff --git a/chromium_src/chrome/common/tts_utterance_request.h b/chromium_src/chrome/common/tts_utterance_request.h index a4b4cab68ca3..8523482ba89d 100644 --- a/chromium_src/chrome/common/tts_utterance_request.h +++ b/chromium_src/chrome/common/tts_utterance_request.h @@ -25,6 +25,7 @@ struct TtsUtteranceRequest { struct TtsVoice { TtsVoice(); + TtsVoice(const TtsVoice&); ~TtsVoice(); std::string voice_uri; diff --git a/chromium_src/chrome/renderer/printing/print_web_view_helper.h b/chromium_src/chrome/renderer/printing/print_web_view_helper.h index 94e16eaabf45..7655ef4efe5c 100644 --- a/chromium_src/chrome/renderer/printing/print_web_view_helper.h +++ b/chromium_src/chrome/renderer/printing/print_web_view_helper.h @@ -67,7 +67,7 @@ class PrintWebViewHelper public content::RenderFrameObserverTracker { public: explicit PrintWebViewHelper(content::RenderFrame* render_frame); - virtual ~PrintWebViewHelper(); + ~PrintWebViewHelper() override; void PrintNode(const blink::WebNode& node); diff --git a/chromium_src/chrome/renderer/tts_dispatcher.h b/chromium_src/chrome/renderer/tts_dispatcher.h index 2e5e6062fd1e..57928a3d2316 100644 --- a/chromium_src/chrome/renderer/tts_dispatcher.h +++ b/chromium_src/chrome/renderer/tts_dispatcher.h @@ -29,19 +29,19 @@ class TtsDispatcher : public blink::WebSpeechSynthesizer, public content::RenderThreadObserver { public: explicit TtsDispatcher(blink::WebSpeechSynthesizerClient* client); - virtual ~TtsDispatcher(); + ~TtsDispatcher() override; private: // RenderProcessObserver override. - virtual bool OnControlMessageReceived(const IPC::Message& message) override; + bool OnControlMessageReceived(const IPC::Message& message) override; // blink::WebSpeechSynthesizer implementation. - virtual void UpdateVoiceList() override; - virtual void Speak( - const blink::WebSpeechSynthesisUtterance& utterance) override; - virtual void Pause() override; - virtual void Resume() override; - virtual void Cancel() override; + void UpdateVoiceList() override; + void Speak(const blink::WebSpeechSynthesisUtterance& utterance) + override; + void Pause() override; + void Resume() override; + void Cancel() override; blink::WebSpeechSynthesisUtterance FindUtterance(int utterance_id); diff --git a/electron.gyp b/electron.gyp index 19bf70d89f41..875000cf72cb 100644 --- a/electron.gyp +++ b/electron.gyp @@ -369,6 +369,10 @@ 'xcode_settings': { # ReactiveCocoa which is used by Squirrel requires using __weak. 'CLANG_ENABLE_OBJC_WEAK': 'YES', + 'OTHER_CFLAGS': [ + '-Wunguarded-availability', + '-Wobjc-missing-property-synthesis', + ], }, }], # OS=="mac" and mas_build==0 ['OS=="mac" and mas_build==1', { diff --git a/toolchain.gypi b/toolchain.gypi index 0b4ffa3e5eb9..74d8e7508e6a 100644 --- a/toolchain.gypi +++ b/toolchain.gypi @@ -122,6 +122,43 @@ 'CLANG_CXX_LANGUAGE_STANDARD': 'c++14', # -std=c++14 }, 'target_conditions': [ + ['_target_name in ["electron", "brightray"]', { + 'conditions': [ + ['OS=="mac"', { + 'xcode_settings': { + 'OTHER_CFLAGS': [ + "-Xclang", + "-load", + "-Xclang", + "<(source_root)/<(make_clang_dir)/lib/libFindBadConstructs.dylib", + "-Xclang", + "-add-plugin", + "-Xclang", + "find-bad-constructs", + "-Xclang", + "-plugin-arg-find-bad-constructs", + "-Xclang", + "check-auto-raw-pointer", + ], + }, + }, { # OS=="mac" + 'cflags_cc': [ + "-Xclang", + "-load", + "-Xclang", + "<(source_root)/<(make_clang_dir)/lib/libFindBadConstructs.so", + "-Xclang", + "-add-plugin", + "-Xclang", + "find-bad-constructs", + "-Xclang", + "-plugin-arg-find-bad-constructs", + "-Xclang", + "check-auto-raw-pointer", + ], + }], + ], + }], ['OS=="mac" and _type in ["executable", "shared_library"]', { 'xcode_settings': { # On some machines setting CLANG_CXX_LIBRARY doesn't work for