Convert /ui/views_content_client to use ARC
See https://chromium.googlesource.com/chromium/src/+/main/docs/mac/arc.md for information about this conversion. Bug: 1280317 Change-Id: I97b0a35ac43857196f234b50a98e271be15f0b50 Include-Ci-Only-Tests: true Validate-Test-Flakiness: skip Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4528777 Auto-Submit: Avi Drissman <avi@chromium.org> Commit-Queue: Scott Violet <sky@chromium.org> Reviewed-by: Scott Violet <sky@chromium.org> Cr-Commit-Position: refs/heads/main@{#1143546}
This commit is contained in:

committed by
Chromium LUCI CQ

parent
4c8a3029c4
commit
b7d725a0dc
ui/views_content_client
@ -25,6 +25,7 @@ component("views_content_client") {
|
||||
|
||||
if (is_mac) {
|
||||
sources += [ "views_content_client_main_parts_mac.mm" ]
|
||||
configs += [ "//build/config/compiler:enable_arc" ]
|
||||
}
|
||||
|
||||
defines = [ "VIEWS_CONTENT_CLIENT_IMPLEMENTATION" ]
|
||||
|
@ -9,7 +9,6 @@
|
||||
#include "base/files/file_path.h"
|
||||
#include "base/functional/bind.h"
|
||||
#include "base/functional/callback.h"
|
||||
#include "base/mac/scoped_nsobject.h"
|
||||
#include "base/path_service.h"
|
||||
#include "content/public/browser/context_factory.h"
|
||||
#include "content/public/common/content_paths.h"
|
||||
@ -20,9 +19,13 @@
|
||||
#include "ui/views_content_client/views_content_client.h"
|
||||
#include "ui/views_content_client/views_content_client_main_parts.h"
|
||||
|
||||
#if !defined(__has_feature) || !__has_feature(objc_arc)
|
||||
#error "This file requires ARC support."
|
||||
#endif
|
||||
|
||||
// A simple NSApplicationDelegate that provides a basic mainMenu and can
|
||||
// activate a task when the application has finished loading.
|
||||
@interface ViewsContentClientAppController : NSObject<NSApplicationDelegate> {
|
||||
@interface ViewsContentClientAppController : NSObject <NSApplicationDelegate> {
|
||||
@private
|
||||
base::OnceClosure _onApplicationDidFinishLaunching;
|
||||
}
|
||||
@ -52,7 +55,7 @@ class ViewsContentClientMainPartsMac : public ViewsContentClientMainParts {
|
||||
int PreMainMessageLoopRun() override;
|
||||
|
||||
private:
|
||||
base::scoped_nsobject<ViewsContentClientAppController> app_controller_;
|
||||
ViewsContentClientAppController* __strong app_controller_;
|
||||
};
|
||||
|
||||
ViewsContentClientMainPartsMac::ViewsContentClientMainPartsMac(
|
||||
@ -62,8 +65,8 @@ ViewsContentClientMainPartsMac::ViewsContentClientMainPartsMac(
|
||||
base::FilePath child_process_exe;
|
||||
base::PathService::Get(content::CHILD_PROCESS_EXE, &child_process_exe);
|
||||
|
||||
app_controller_.reset([[ViewsContentClientAppController alloc] init]);
|
||||
[[NSApplication sharedApplication] setDelegate:app_controller_];
|
||||
app_controller_ = [[ViewsContentClientAppController alloc] init];
|
||||
NSApplication.sharedApplication.delegate = app_controller_;
|
||||
}
|
||||
|
||||
int ViewsContentClientMainPartsMac::PreMainMessageLoopRun() {
|
||||
@ -86,7 +89,7 @@ int ViewsContentClientMainPartsMac::PreMainMessageLoopRun() {
|
||||
}
|
||||
|
||||
ViewsContentClientMainPartsMac::~ViewsContentClientMainPartsMac() {
|
||||
[[NSApplication sharedApplication] setDelegate:nil];
|
||||
NSApplication.sharedApplication.delegate = nil;
|
||||
}
|
||||
|
||||
} // namespace
|
||||
@ -121,13 +124,14 @@ void ViewsContentClientMainParts::PreBrowserMain() {
|
||||
[NSApp setActivationPolicy:NSApplicationActivationPolicyRegular];
|
||||
|
||||
// Create a basic mainMenu object using the executable filename.
|
||||
base::scoped_nsobject<NSMenu> mainMenu([[NSMenu alloc] initWithTitle:@""]);
|
||||
NSMenuItem* appMenuItem =
|
||||
[mainMenu addItemWithTitle:@"" action:NULL keyEquivalent:@""];
|
||||
NSMenu* mainMenu = [[NSMenu alloc] initWithTitle:@""];
|
||||
NSMenuItem* appMenuItem = [mainMenu addItemWithTitle:@""
|
||||
action:nullptr
|
||||
keyEquivalent:@""];
|
||||
[NSApp setMainMenu:mainMenu];
|
||||
|
||||
base::scoped_nsobject<NSMenu> appMenu([[NSMenu alloc] initWithTitle:@""]);
|
||||
NSString* appName = [[NSProcessInfo processInfo] processName];
|
||||
NSMenu* appMenu = [[NSMenu alloc] initWithTitle:@""];
|
||||
NSString* appName = NSProcessInfo.processInfo.processName;
|
||||
// TODO(tapted): Localize "Quit" if this is ever used for a released binary.
|
||||
// At the time of writing, ui_strings.grd has "Close" but not "Quit".
|
||||
NSString* quitTitle = [@"Quit " stringByAppendingString:appName];
|
||||
|
Reference in New Issue
Block a user