Backed out changeset 6ee4fac755f4 (bug 1213517)

This commit is contained in:
Iris Hsiao 2016-07-18 15:41:11 +08:00
parent 83bf356b5d
commit 12ec456c48
2 changed files with 1 additions and 127 deletions

View File

@ -83,101 +83,6 @@ NormalizedConstraintSet::BooleanRange::BooleanRange(
}
}
NormalizedConstraintSet::StringRange::StringRange(
const dom::OwningStringOrStringSequenceOrConstrainDOMStringParameters& aOther,
bool advanced)
{
if (aOther.IsString()) {
if (advanced) {
mExact.insert(aOther.GetAsString());
} else {
mIdeal.insert(aOther.GetAsString());
}
} else if (aOther.IsStringSequence()) {
if (advanced) {
mExact.clear();
for (auto& str : aOther.GetAsStringSequence()) {
mExact.insert(str);
}
} else {
mIdeal.clear();
for (auto& str : aOther.GetAsStringSequence()) {
mIdeal.insert(str);
}
}
} else {
SetFrom(aOther.GetAsConstrainDOMStringParameters());
}
}
void
NormalizedConstraintSet::StringRange::SetFrom(
const ConstrainDOMStringParameters& aOther)
{
if (aOther.mIdeal.WasPassed()) {
mIdeal.clear();
if (aOther.mIdeal.Value().IsString()) {
mIdeal.insert(aOther.mIdeal.Value().GetAsString());
} else {
for (auto& str : aOther.mIdeal.Value().GetAsStringSequence()) {
mIdeal.insert(str);
}
}
}
if (aOther.mExact.WasPassed()) {
mExact.clear();
if (aOther.mExact.Value().IsString()) {
mExact.insert(aOther.mExact.Value().GetAsString());
} else {
for (auto& str : aOther.mExact.Value().GetAsStringSequence()) {
mIdeal.insert(str);
}
}
}
}
auto
NormalizedConstraintSet::StringRange::Clamp(const ValueType& n) const -> ValueType
{
if (!mExact.size()) {
return n;
}
ValueType result;
for (auto& entry : n) {
if (mExact.find(entry) != mExact.end()) {
result.insert(entry);
}
}
return result;
}
bool
NormalizedConstraintSet::StringRange::Intersects(const StringRange& aOther) const
{
if (!mExact.size() || !aOther.mExact.size()) {
return true;
}
for (auto& entry : aOther.mExact) {
if (mExact.find(entry) != mExact.end()) {
return true;
}
}
return false;
}
void
NormalizedConstraintSet::StringRange::Intersect(const StringRange& aOther)
{
if (!aOther.mExact.size()) {
return;
}
for (auto& entry : mExact) {
if (aOther.mExact.find(entry) == aOther.mExact.end()) {
mExact.erase(entry);
}
}
}
FlattenedConstraints::FlattenedConstraints(const dom::MediaTrackConstraints& aOther)
: NormalizedConstraintSet(aOther, false)
{

View File

@ -13,7 +13,6 @@
#include "mozilla/dom/MediaTrackSupportedConstraintsBinding.h"
#include <map>
#include <set>
namespace mozilla {
@ -79,32 +78,9 @@ struct NormalizedConstraintSet
bool advanced);
};
struct StringRange
{
typedef std::set<nsString> ValueType;
ValueType mExact, mIdeal;
StringRange(
const dom::OwningStringOrStringSequenceOrConstrainDOMStringParameters& aOther,
bool advanced);
void SetFrom(const dom::ConstrainDOMStringParameters& aOther);
ValueType Clamp(const ValueType& n) const;
ValueType Get(const ValueType& defaultValue) const {
return Clamp(mIdeal.size() ? mIdeal : defaultValue);
}
bool Intersects(const StringRange& aOther) const;
void Intersect(const StringRange& aOther);
};
// All new constraints should be added here whether they use flattening or not
// Do you need to add your constraint here? Only if your code uses flattening
LongRange mWidth, mHeight;
DoubleRange mFrameRate;
StringRange mFacingMode;
nsString mMediaSource;
long long mBrowserWindow;
bool mScrollWithPage;
StringRange mDeviceId;
LongRange mViewportOffsetX, mViewportOffsetY, mViewportWidth, mViewportHeight;
BooleanRange mEchoCancellation, mMozNoiseSuppression, mMozAutoGainControl;
@ -113,13 +89,6 @@ struct NormalizedConstraintSet
: mWidth(aOther.mWidth, advanced)
, mHeight(aOther.mHeight, advanced)
, mFrameRate(aOther.mFrameRate, advanced)
, mFacingMode(aOther.mFacingMode, advanced)
, mMediaSource(aOther.mMediaSource)
, mBrowserWindow(aOther.mBrowserWindow.WasPassed() ?
aOther.mBrowserWindow.Value() : 0)
, mScrollWithPage(aOther.mScrollWithPage.WasPassed() ?
aOther.mScrollWithPage.Value() : false)
, mDeviceId(aOther.mDeviceId, advanced)
, mViewportOffsetX(aOther.mViewportOffsetX, advanced)
, mViewportOffsetY(aOther.mViewportOffsetY, advanced)
, mViewportWidth(aOther.mViewportWidth, advanced)