mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-10 10:18:38 +09:00
Issue #2022 - Part 2 - Add Ventura version detection. Also add Monterey and Ventura to the graphics driver blocklist.
This commit is contained in:
parent
069b11c14c
commit
70727d0a0b
5 changed files with 63 additions and 8 deletions
|
|
@ -49,6 +49,23 @@ enum class OperatingSystem {
|
|||
Windows8_1,
|
||||
Windows10,
|
||||
Linux,
|
||||
OSX,
|
||||
OSX10_5,
|
||||
OSX10_6,
|
||||
OSX10_7,
|
||||
OSX10_8,
|
||||
OSX10_9,
|
||||
OSX10_10,
|
||||
OSX10_11,
|
||||
OSX10_12,
|
||||
OSX10_13,
|
||||
OSX10_14,
|
||||
OSX10_15,
|
||||
OSX10_16,
|
||||
OSX11_0,
|
||||
OSX12_0,
|
||||
OSX13_0,
|
||||
Ios
|
||||
};
|
||||
|
||||
enum VersionComparisonOp {
|
||||
|
|
|
|||
|
|
@ -264,6 +264,34 @@ BlacklistOSToOperatingSystem(const nsAString& os)
|
|||
return OperatingSystem::Windows10;
|
||||
else if (os.EqualsLiteral("Linux"))
|
||||
return OperatingSystem::Linux;
|
||||
else if (os.EqualsLiteral("Darwin 9"))
|
||||
return OperatingSystem::OSX10_5;
|
||||
else if (os.EqualsLiteral("Darwin 10"))
|
||||
return OperatingSystem::OSX10_6;
|
||||
else if (os.EqualsLiteral("Darwin 11"))
|
||||
return OperatingSystem::OSX10_7;
|
||||
else if (os.EqualsLiteral("Darwin 12"))
|
||||
return OperatingSystem::OSX10_8;
|
||||
else if (os.EqualsLiteral("Darwin 13"))
|
||||
return OperatingSystem::OSX10_9;
|
||||
else if (os.EqualsLiteral("Darwin 14"))
|
||||
return OperatingSystem::OSX10_10;
|
||||
else if (os.EqualsLiteral("Darwin 15"))
|
||||
return OperatingSystem::OSX10_11;
|
||||
else if (os.EqualsLiteral("Darwin 16"))
|
||||
return OperatingSystem::OSX10_12;
|
||||
else if (os.EqualsLiteral("Darwin 17"))
|
||||
return OperatingSystem::OSX10_13;
|
||||
else if (os.EqualsLiteral("Darwin 18"))
|
||||
return OperatingSystem::OSX10_14;
|
||||
else if (os.EqualsLiteral("Darwin 19"))
|
||||
return OperatingSystem::OSX10_15;
|
||||
else if (os.EqualsLiteral("Darwin 20"))
|
||||
return OperatingSystem::OSX11_0;
|
||||
else if (os.EqualsLiteral("Darwin 21"))
|
||||
return OperatingSystem::OSX12_0;
|
||||
else if (os.EqualsLiteral("Darwin 22"))
|
||||
return OperatingSystem::OSX13_0;
|
||||
// For historical reasons, "All" in blocklist means "All Windows"
|
||||
else if (os.EqualsLiteral("All"))
|
||||
return OperatingSystem::Windows;
|
||||
|
|
|
|||
|
|
@ -63,12 +63,12 @@ OSXVersionToOperatingSystem(uint32_t aOSXVersion) {
|
|||
}
|
||||
break;
|
||||
case 11:
|
||||
switch (nsCocoaFeatures::ExtractMinorVersion(aOSXVersion)) {
|
||||
case 0:
|
||||
return OperatingSystem::OSX11_0;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return OperatingSystem::OSX11_0;
|
||||
case 12:
|
||||
return OperatingSystem::OSX12_0;
|
||||
case 13:
|
||||
return OperatingSystem::OSX13_0;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -26,6 +26,7 @@ public:
|
|||
static bool OnCatalinaOrLater();
|
||||
static bool OnBigSurOrLater();
|
||||
static bool OnMontereyOrLater();
|
||||
static bool OnVenturaOrLater();
|
||||
|
||||
static bool IsAtLeastVersion(int32_t aMajor, int32_t aMinor, int32_t aBugFix=0);
|
||||
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@
|
|||
#define MACOS_VERSION_10_16_HEX 0x000A1000
|
||||
#define MACOS_VERSION_11_0_HEX 0x000B0000
|
||||
#define MACOS_VERSION_12_0_HEX 0x000C0000
|
||||
#define MACOS_VERSION_13_0_HEX 0x000D0000
|
||||
|
||||
#include "nsCocoaFeatures.h"
|
||||
#include "nsCocoaUtils.h"
|
||||
|
|
@ -212,7 +213,8 @@ nsCocoaFeatures::OnBigSurOrLater()
|
|||
(macOSVersion() >= MACOS_VERSION_11_0_HEX));
|
||||
}
|
||||
|
||||
/* static */ bool nsCocoaFeatures::OnMontereyOrLater()
|
||||
/* static */ bool
|
||||
nsCocoaFeatures::OnMontereyOrLater()
|
||||
{
|
||||
// Monterey pretends to be 10.16 and is indistinguishable from Big Sur.
|
||||
// In practice, this means that an Intel build can return false
|
||||
|
|
@ -221,6 +223,12 @@ nsCocoaFeatures::OnBigSurOrLater()
|
|||
return (macOSVersion() >= MACOS_VERSION_12_0_HEX);
|
||||
}
|
||||
|
||||
/* static */ bool
|
||||
nsCocoaFeatures::OnVenturaOrLater()
|
||||
{
|
||||
return (macOSVersion() >= MACOS_VERSION_13_0_HEX);
|
||||
}
|
||||
|
||||
/* static */ bool
|
||||
nsCocoaFeatures::IsAtLeastVersion(int32_t aMajor, int32_t aMinor, int32_t aBugFix)
|
||||
{
|
||||
|
|
@ -234,7 +242,8 @@ nsCocoaFeatures::IsAtLeastVersion(int32_t aMajor, int32_t aMinor, int32_t aBugFi
|
|||
* for this purpose. Note: using this in a sandboxed process requires allowing
|
||||
* the sysctl in the sandbox policy.
|
||||
*/
|
||||
/* static */ bool nsCocoaFeatures::ProcessIsRosettaTranslated()
|
||||
/* static */ bool
|
||||
nsCocoaFeatures::ProcessIsRosettaTranslated()
|
||||
{
|
||||
int ret = 0;
|
||||
size_t size = sizeof(ret);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue