without_activation -> activate

This commit is contained in:
Kevin Sawicki 2016-02-16 15:55:37 -08:00
parent 52db43eee5
commit f5bed87199
6 changed files with 24 additions and 18 deletions

View file

@ -12,22 +12,12 @@
namespace {
bool OpenExternal(const GURL& url, mate::Arguments* args) {
bool without_activation = false;
if (args->Length() == 2) {
mate::Dictionary options;
args->GetNext(&options);
options.Get("withoutActivation", &without_activation);
}
return platform_util::OpenExternal(url, without_activation);
}
void Initialize(v8::Local<v8::Object> exports, v8::Local<v8::Value> unused,
v8::Local<v8::Context> context, void* priv) {
mate::Dictionary dict(context->GetIsolate(), exports);
dict.SetMethod("showItemInFolder", &platform_util::ShowItemInFolder);
dict.SetMethod("openItem", &platform_util::OpenItem);
dict.SetMethod("openExternal", &OpenExternal);
dict.SetMethod("_openExternal", &platform_util::OpenExternal);
dict.SetMethod("moveItemToTrash", &platform_util::MoveItemToTrash);
dict.SetMethod("beep", &platform_util::Beep);
}

View file

@ -1 +1,17 @@
module.exports = process.atomBinding('shell');
'use strict';
const bindings = process.atomBinding('shell');
exports.beep = bindings.beep;
exports.moveItemToTrash = bindings.moveItemToTrash;
exports.openItem = bindings.openItem;
exports.showItemInFolder = bindings.showItemInFolder;
exports.openExternal = (url, options) => {
var activate = true;
if (options != null && options.activate != null) {
activate = !!options.activate;
}
bindings._openExternal(url, activate);
}

View file

@ -23,7 +23,7 @@ void OpenItem(const base::FilePath& full_path);
// Open the given external protocol URL in the desktop's default manner.
// (For example, mailto: URLs in the default mail user agent.)
bool OpenExternal(const GURL& url, const bool without_activation);
bool OpenExternal(const GURL& url, bool activate);
// Move a file to trash.
bool MoveItemToTrash(const base::FilePath& full_path);

View file

@ -64,7 +64,7 @@ void OpenItem(const base::FilePath& full_path) {
XDGOpen(full_path.value());
}
bool OpenExternal(const GURL& url, const bool without_activation) {
bool OpenExternal(const GURL& url, bool activate) {
if (url.SchemeIs("mailto"))
return XDGEmail(url.spec());
else

View file

@ -119,7 +119,7 @@ void OpenItem(const base::FilePath& full_path) {
}
}
bool OpenExternal(const GURL& url, const bool without_activation) {
bool OpenExternal(const GURL& url, bool activate) {
DCHECK([NSThread isMainThread]);
NSURL* ns_url = net::NSURLWithGURL(url);
if (!ns_url) {
@ -137,8 +137,8 @@ bool OpenExternal(const GURL& url, const bool without_activation) {
CFRelease(openingApp); // NOT A BUG; LSGetApplicationForURL retains for us
NSUInteger launchOptions = NSWorkspaceLaunchDefault;
if (without_activation)
launchOptions = launchOptions | NSWorkspaceLaunchWithoutActivation;
if (!activate)
launchOptions |= NSWorkspaceLaunchWithoutActivation;
return [[NSWorkspace sharedWorkspace] openURLs: @[ns_url]
withAppBundleIdentifier: nil

View file

@ -301,7 +301,7 @@ void OpenItem(const base::FilePath& full_path) {
ui::win::OpenFileViaShell(full_path);
}
bool OpenExternal(const GURL& url, const bool without_activation) {
bool OpenExternal(const GURL& url, bool activate) {
// Quote the input scheme to be sure that the command does not have
// parameters unexpected by the external program. This url should already
// have been escaped.