mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 933083 - Refactor app requests into app-actor-front. r=ochameau
This commit is contained in:
parent
f15e8e12f9
commit
1759d033a9
@ -9,9 +9,11 @@ Cu.import("resource:///modules/devtools/gDevTools.jsm");
|
||||
const {devtools} = Cu.import("resource://gre/modules/devtools/Loader.jsm", {});
|
||||
const {require} = devtools;
|
||||
|
||||
const {ConnectionManager, Connection} = require("devtools/client/connection-manager");
|
||||
const {ConnectionManager, Connection}
|
||||
= require("devtools/client/connection-manager");
|
||||
const {getDeviceFront} = require("devtools/server/actors/device");
|
||||
const {getTargetForApp} = require("devtools/app-actor-front");
|
||||
const {getTargetForApp, launchApp, closeApp}
|
||||
= require("devtools/app-actor-front");
|
||||
const DeviceStore = require("devtools/app-manager/device-store");
|
||||
const WebappsStore = require("devtools/app-manager/webapps-store");
|
||||
const promise = require("sdk/core/promise");
|
||||
@ -123,6 +125,8 @@ let UI = {
|
||||
}
|
||||
},
|
||||
|
||||
get connected() { return !!this.listTabsResponse; },
|
||||
|
||||
setTab: function(name) {
|
||||
var tab = document.querySelector(".tab.selected");
|
||||
var panel = document.querySelector(".tabpanel.selected");
|
||||
@ -138,9 +142,9 @@ let UI = {
|
||||
},
|
||||
|
||||
screenshot: function() {
|
||||
if (!this.listTabsResponse)
|
||||
if (!this.connected) {
|
||||
return;
|
||||
|
||||
}
|
||||
let front = getDeviceFront(this.connection.client, this.listTabsResponse);
|
||||
front.screenshotToBlob().then(blob => {
|
||||
let topWindow = Services.wm.getMostRecentWindow("navigator:browser");
|
||||
@ -155,8 +159,9 @@ let UI = {
|
||||
},
|
||||
|
||||
openToolbox: function(manifest) {
|
||||
if (!this.listTabsResponse)
|
||||
if (!this.connected) {
|
||||
return;
|
||||
}
|
||||
getTargetForApp(this.connection.client,
|
||||
this.listTabsResponse.webappsActor,
|
||||
manifest).then((target) => {
|
||||
@ -171,41 +176,21 @@ let UI = {
|
||||
},
|
||||
|
||||
startApp: function(manifest) {
|
||||
let deferred = promise.defer();
|
||||
|
||||
if (!this.listTabsResponse) {
|
||||
deferred.reject();
|
||||
} else {
|
||||
let actor = this.listTabsResponse.webappsActor;
|
||||
let request = {
|
||||
to: actor,
|
||||
type: "launch",
|
||||
manifestURL: manifest,
|
||||
}
|
||||
this.connection.client.request(request, (res) => {
|
||||
deferred.resolve()
|
||||
});
|
||||
if (!this.connected) {
|
||||
return promise.reject();
|
||||
}
|
||||
return deferred.promise;
|
||||
return launchApp(this.connection.client,
|
||||
this.listTabsResponse.webappsActor,
|
||||
manifest);
|
||||
},
|
||||
|
||||
stopApp: function(manifest) {
|
||||
let deferred = promise.defer();
|
||||
|
||||
if (!this.listTabsResponse) {
|
||||
deferred.reject();
|
||||
} else {
|
||||
let actor = this.listTabsResponse.webappsActor;
|
||||
let request = {
|
||||
to: actor,
|
||||
type: "close",
|
||||
manifestURL: manifest,
|
||||
}
|
||||
this.connection.client.request(request, (res) => {
|
||||
deferred.resolve()
|
||||
});
|
||||
if (!this.connected) {
|
||||
return promise.reject();
|
||||
}
|
||||
return deferred.promise;
|
||||
return closeApp(this.connection.client,
|
||||
this.listTabsResponse.webappsActor,
|
||||
manifest);
|
||||
},
|
||||
}
|
||||
|
||||
|
@ -14,7 +14,8 @@ const {AppProjects} = require("devtools/app-manager/app-projects");
|
||||
const {AppValidator} = require("devtools/app-manager/app-validator");
|
||||
const {Services} = Cu.import("resource://gre/modules/Services.jsm");
|
||||
const {FileUtils} = Cu.import("resource://gre/modules/FileUtils.jsm");
|
||||
const {installHosted, installPackaged, getTargetForApp, reloadApp} = require("devtools/app-actor-front");
|
||||
const {installHosted, installPackaged, getTargetForApp,
|
||||
reloadApp, launchApp, closeApp} = require("devtools/app-actor-front");
|
||||
const {EventEmitter} = Cu.import("resource:///modules/devtools/shared/event-emitter.js");
|
||||
|
||||
const promise = require("sdk/core/promise");
|
||||
@ -206,6 +207,9 @@ let UI = {
|
||||
},
|
||||
|
||||
reload: function (project) {
|
||||
if (!this.connected) {
|
||||
return promise.reject();
|
||||
}
|
||||
return reloadApp(this.connection.client,
|
||||
this.listTabsResponse.webappsActor,
|
||||
this._getProjectManifestURL(project)).
|
||||
@ -253,6 +257,9 @@ let UI = {
|
||||
},
|
||||
|
||||
install: function(project) {
|
||||
if (!this.connected) {
|
||||
return promise.reject();
|
||||
}
|
||||
this.connection.log("Installing the " + project.manifest.name + " app...");
|
||||
let installPromise;
|
||||
if (project.type == "packaged") {
|
||||
@ -285,36 +292,30 @@ let UI = {
|
||||
},
|
||||
|
||||
start: function(project) {
|
||||
let deferred = promise.defer();
|
||||
let request = {
|
||||
to: this.listTabsResponse.webappsActor,
|
||||
type: "launch",
|
||||
manifestURL: this._getProjectManifestURL(project)
|
||||
};
|
||||
this.connection.client.request(request, (res) => {
|
||||
if (res.error)
|
||||
deferred.reject(res.error);
|
||||
else
|
||||
deferred.resolve(res);
|
||||
});
|
||||
return deferred.promise;
|
||||
if (!this.connected) {
|
||||
return promise.reject();
|
||||
}
|
||||
let manifestURL = this._getProjectManifestURL(project);
|
||||
return launchApp(this.connection.client,
|
||||
this.listTabsResponse.webappsActor,
|
||||
manifestURL);
|
||||
},
|
||||
|
||||
stop: function(location) {
|
||||
if (!this.connected) {
|
||||
return promise.reject();
|
||||
}
|
||||
let project = AppProjects.get(location);
|
||||
let deferred = promise.defer();
|
||||
let request = {
|
||||
to: this.listTabsResponse.webappsActor,
|
||||
type: "close",
|
||||
manifestURL: this._getProjectManifestURL(project)
|
||||
};
|
||||
this.connection.client.request(request, (res) => {
|
||||
promive.resolve(res);
|
||||
});
|
||||
return deferred.promise;
|
||||
let manifestURL = this._getProjectManifestURL(project);
|
||||
return closeApp(this.connection.client,
|
||||
this.listTabsResponse.webappsActor,
|
||||
manifestURL);
|
||||
},
|
||||
|
||||
debug: function(button, location) {
|
||||
if (!this.connected) {
|
||||
return promise.reject();
|
||||
}
|
||||
button.disabled = true;
|
||||
let project = AppProjects.get(location);
|
||||
|
||||
|
@ -274,3 +274,39 @@ function reloadApp(client, webappsActor, manifestURL) {
|
||||
return deferred.promise;
|
||||
}
|
||||
exports.reloadApp = reloadApp;
|
||||
|
||||
function launchApp(client, webappsActor, manifestURL) {
|
||||
let deferred = promise.defer();
|
||||
let request = {
|
||||
to: webappsActor,
|
||||
type: "launch",
|
||||
manifestURL: manifestURL
|
||||
};
|
||||
client.request(request, (res) => {
|
||||
if (res.error) {
|
||||
deferred.reject(res.error);
|
||||
} else {
|
||||
deferred.resolve(res);
|
||||
}
|
||||
});
|
||||
return deferred.promise;
|
||||
}
|
||||
exports.launchApp = launchApp;
|
||||
|
||||
function closeApp(client, webappsActor, manifestURL) {
|
||||
let deferred = promise.defer();
|
||||
let request = {
|
||||
to: webappsActor,
|
||||
type: "close",
|
||||
manifestURL: manifestURL
|
||||
};
|
||||
client.request(request, (res) => {
|
||||
if (res.error) {
|
||||
deferred.reject(res.error);
|
||||
} else {
|
||||
deferred.resolve(res);
|
||||
}
|
||||
});
|
||||
return deferred.promise;
|
||||
}
|
||||
exports.closeApp = closeApp;
|
||||
|
Loading…
Reference in New Issue
Block a user