forked from mirrors/gecko-dev
		
	MozReview-Commit-ID: ADe4EmPzTuc --HG-- extra : rebase_source : c3a7ee2846935291297f51cb1898ec46543a6870
		
			
				
	
	
		
			218 lines
		
	
	
	
		
			4.4 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			218 lines
		
	
	
	
		
			4.4 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
 | 
						|
/* This Source Code Form is subject to the terms of the Mozilla Public
 | 
						|
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 | 
						|
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 | 
						|
 | 
						|
#include "GfxInfo.h"
 | 
						|
#include "nsServiceManagerUtils.h"
 | 
						|
 | 
						|
namespace mozilla {
 | 
						|
namespace widget {
 | 
						|
 | 
						|
 | 
						|
#ifdef DEBUG
 | 
						|
NS_IMPL_ISUPPORTS_INHERITED(GfxInfo, GfxInfoBase, nsIGfxInfoDebug)
 | 
						|
#endif
 | 
						|
 | 
						|
GfxInfo::GfxInfo()
 | 
						|
{
 | 
						|
}
 | 
						|
 | 
						|
GfxInfo::~GfxInfo()
 | 
						|
{
 | 
						|
}
 | 
						|
 | 
						|
nsresult
 | 
						|
GfxInfo::GetD2DEnabled(bool *aEnabled)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
nsresult
 | 
						|
GfxInfo::GetDWriteEnabled(bool *aEnabled)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
NS_IMETHODIMP
 | 
						|
GfxInfo::GetDWriteVersion(nsAString & aDwriteVersion)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
NS_IMETHODIMP
 | 
						|
GfxInfo::GetCleartypeParameters(nsAString & aCleartypeParams)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
NS_IMETHODIMP
 | 
						|
GfxInfo::GetAdapterDescription(nsAString & aAdapterDescription)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
NS_IMETHODIMP
 | 
						|
GfxInfo::GetAdapterDescription2(nsAString & aAdapterDescription)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
NS_IMETHODIMP
 | 
						|
GfxInfo::GetAdapterRAM(nsAString & aAdapterRAM)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
NS_IMETHODIMP
 | 
						|
GfxInfo::GetAdapterRAM2(nsAString & aAdapterRAM)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
NS_IMETHODIMP
 | 
						|
GfxInfo::GetAdapterDriver(nsAString & aAdapterDriver)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
NS_IMETHODIMP
 | 
						|
GfxInfo::GetAdapterDriver2(nsAString & aAdapterDriver)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
NS_IMETHODIMP
 | 
						|
GfxInfo::GetAdapterDriverVersion(nsAString & aAdapterDriverVersion)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
NS_IMETHODIMP
 | 
						|
GfxInfo::GetAdapterDriverVersion2(nsAString & aAdapterDriverVersion)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
NS_IMETHODIMP
 | 
						|
GfxInfo::GetAdapterDriverDate(nsAString & aAdapterDriverDate)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
NS_IMETHODIMP
 | 
						|
GfxInfo::GetAdapterDriverDate2(nsAString & aAdapterDriverDate)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
NS_IMETHODIMP
 | 
						|
GfxInfo::GetAdapterVendorID(nsAString & aAdapterVendorID)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
NS_IMETHODIMP
 | 
						|
GfxInfo::GetAdapterVendorID2(nsAString & aAdapterVendorID)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
NS_IMETHODIMP
 | 
						|
GfxInfo::GetAdapterDeviceID(nsAString & aAdapterDeviceID)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
  return NS_OK;
 | 
						|
}
 | 
						|
 | 
						|
NS_IMETHODIMP
 | 
						|
GfxInfo::GetAdapterDeviceID2(nsAString & aAdapterDeviceID)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
NS_IMETHODIMP
 | 
						|
GfxInfo::GetAdapterSubsysID(nsAString & aAdapterSubsysID)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
NS_IMETHODIMP
 | 
						|
GfxInfo::GetAdapterSubsysID2(nsAString & aAdapterSubsysID)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
NS_IMETHODIMP
 | 
						|
GfxInfo::GetIsGPU2Active(bool* aIsGPU2Active)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
const nsTArray<GfxDriverInfo>&
 | 
						|
GfxInfo::GetGfxDriverInfo()
 | 
						|
{
 | 
						|
  if (mDriverInfo->IsEmpty()) {
 | 
						|
    APPEND_TO_DRIVER_BLOCKLIST2(OperatingSystem::Ios,
 | 
						|
      (nsAString&) GfxDriverInfo::GetDeviceVendor(VendorAll), GfxDriverInfo::allDevices,
 | 
						|
      nsIGfxInfo::FEATURE_OPENGL_LAYERS, nsIGfxInfo::FEATURE_STATUS_OK,
 | 
						|
      DRIVER_COMPARISON_IGNORED, GfxDriverInfo::allDriverVersions );
 | 
						|
  }
 | 
						|
 | 
						|
  return *mDriverInfo;
 | 
						|
}
 | 
						|
 | 
						|
nsresult
 | 
						|
GfxInfo::GetFeatureStatusImpl(int32_t aFeature,
 | 
						|
                              int32_t *aStatus,
 | 
						|
                              nsAString & aSuggestedDriverVersion,
 | 
						|
                              const nsTArray<GfxDriverInfo>& aDriverInfo,
 | 
						|
                              OperatingSystem* aOS /* = nullptr */)
 | 
						|
{
 | 
						|
  NS_ENSURE_ARG_POINTER(aStatus);
 | 
						|
  aSuggestedDriverVersion.SetIsVoid(true);
 | 
						|
  *aStatus = nsIGfxInfo::FEATURE_STATUS_UNKNOWN;
 | 
						|
  if (aOS)
 | 
						|
    *aOS = OperatingSystem::Ios;
 | 
						|
 | 
						|
  // OpenGL layers are never blacklisted on iOS.
 | 
						|
  // This early return is so we avoid potentially slow
 | 
						|
  // GLStrings initialization on startup when we initialize GL layers.
 | 
						|
  if (aFeature == nsIGfxInfo::FEATURE_OPENGL_LAYERS ||
 | 
						|
      aFeature == nsIGfxInfo::FEATURE_WEBGL_OPENGL ||
 | 
						|
      aFeature == nsIGfxInfo::FEATURE_WEBGL_MSAA) {
 | 
						|
    *aStatus = nsIGfxInfo::FEATURE_STATUS_OK;
 | 
						|
    return NS_OK;
 | 
						|
  }
 | 
						|
 | 
						|
  return GfxInfoBase::GetFeatureStatusImpl(aFeature, aStatus, aSuggestedDriverVersion, aDriverInfo, aOS);
 | 
						|
}
 | 
						|
 | 
						|
#ifdef DEBUG
 | 
						|
 | 
						|
// Implement nsIGfxInfoDebug
 | 
						|
 | 
						|
NS_IMETHODIMP GfxInfo::SpoofVendorID(const nsAString & aVendorID)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
NS_IMETHODIMP GfxInfo::SpoofDeviceID(const nsAString & aDeviceID)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
NS_IMETHODIMP GfxInfo::SpoofDriverVersion(const nsAString & aDriverVersion)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
NS_IMETHODIMP GfxInfo::SpoofOSVersion(uint32_t aVersion)
 | 
						|
{
 | 
						|
  return NS_ERROR_FAILURE;
 | 
						|
}
 | 
						|
 | 
						|
#endif
 | 
						|
 | 
						|
}
 | 
						|
}
 |