mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Add an nsIGfxInfo function to query monitors. (bug 1175005 part 1, r=mattwoodrow)
This commit is contained in:
parent
e7e7541033
commit
5ebb5ec1c3
@ -1163,6 +1163,20 @@ GfxInfoBase::RemoveCollector(GfxInfoCollectorBase* collector)
|
||||
}
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
GfxInfoBase::GetMonitors(JSContext* aCx, JS::MutableHandleValue aResult)
|
||||
{
|
||||
JS::Rooted<JSObject*> array(aCx, JS_NewArrayObject(aCx, 0));
|
||||
|
||||
nsresult rv = FindMonitors(aCx, array);
|
||||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
|
||||
aResult.setObject(*array);
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
GfxInfoCollectorBase::GfxInfoCollectorBase()
|
||||
{
|
||||
GfxInfoBase::AddCollector(this);
|
||||
|
@ -54,6 +54,7 @@ public:
|
||||
NS_IMETHOD GetFeatureSuggestedDriverVersion(int32_t aFeature, nsAString & _retval) override;
|
||||
NS_IMETHOD GetWebGLParameter(const nsAString & aParam, nsAString & _retval) override;
|
||||
|
||||
NS_IMETHOD GetMonitors(JSContext* cx, JS::MutableHandleValue _retval);
|
||||
NS_IMETHOD GetFailures(uint32_t *failureCount, int32_t** indices, char ***failures) override;
|
||||
NS_IMETHOD_(void) LogFailure(const nsACString &failure) override;
|
||||
NS_IMETHOD GetInfo(JSContext*, JS::MutableHandle<JS::Value>) override;
|
||||
@ -89,6 +90,10 @@ public:
|
||||
return NS_ERROR_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
virtual nsresult FindMonitors(JSContext* cx, JS::HandleObject array) {
|
||||
return NS_ERROR_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
protected:
|
||||
|
||||
virtual ~GfxInfoBase();
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
/* NOTE: this interface is completely undesigned, not stable and likely to change */
|
||||
|
||||
[scriptable, uuid(b0cd9d34-8dba-4b1d-8126-ca21826dbf35)]
|
||||
[scriptable, uuid(47eedfa0-f7cb-445b-b5cf-a2ca83600560)]
|
||||
interface nsIGfxInfo : nsISupports
|
||||
{
|
||||
/*
|
||||
@ -54,6 +54,17 @@ interface nsIGfxInfo : nsISupports
|
||||
|
||||
readonly attribute boolean isGPU2Active;
|
||||
|
||||
/**
|
||||
* Returns an array of objects describing each monitor. Guaranteed properties
|
||||
* are "screenWidth" and "screenHeight". This is only implemented on Desktop.
|
||||
*
|
||||
* Windows additionally supplies "refreshRate" and "pseudoDisplay".
|
||||
*
|
||||
* OS X additionally supplies "scale".
|
||||
*/
|
||||
[implicit_jscontext]
|
||||
jsval getMonitors();
|
||||
|
||||
void getFailures(
|
||||
out unsigned long failureCount,
|
||||
[optional, array, size_is(failureCount)] out long indices,
|
||||
|
Loading…
Reference in New Issue
Block a user