Files
palemoon27/layout/style/nsDOMCSSValueList.h
roytam1 8a77b15be5 import changes from `dev' branch of rmottola/Arctic-Fox:
- Bug 1230398 - [css-align] Don't output 'unsafe' in serialization because it's the default. r=dholbert (08d36e767d)
- Bug 1234707: Make nsDOMCSSValueList::AppendCSSValue() take an already_AddRefed arg (instead of a raw pointer, usually with refcount of 0). r=heycam (739fa75d70)
- Bug 1234676 part 1: Give nsComputedDOMStyle a private typedef for mozilla::dom::CSSValue. r=heycam (6371627bf3)
- Bug 1234676 part 2: Make nsComputedDOMStyle getters return an already_AddRefed value, instead of a raw pointer with refcount of 0. r=heycam (e196aa9692)
- Bug 1234676 part 3: Remove some now-unneeded local RefPtr variables. r=heycam (b780ed3246)
- Bug 1234676 part 4: Remove now-obsolete comment. r=heycam (2d982ed55b)
- Bug 1234676 part 5: Update indentation & rewrap some nsComputedDOMStyle function-decls. rs=heycam (0b02962fac)
- Bug 1233106 part 1 - [css-align] Update align-/justify-* properties to the current CSS Align spec (adding 'normal' keyword, dropping 'auto' in some cases etc). r=dholbert (8558089c51)
- Bug 1233106 part 2 - [css-align] Updated tests due to changes to align-/justify-* properties. (c407114303)
- Bug 1118820 - Follow-up: disable the grid-repeat-auto-fill-fit-006.html reftest for now since it triggers a leak: bug 1234644. r=me (8802927b37)
- Bug 1234644 - [css-grid] Avoid calling GetROCSSValueList() when we don't need the allocated object. r=dholbert (e8b4f7295a)
- Bug 1230172. Update CSS.escape to never throw and instead replace U+0000 with U+FFFD, per recent spec change. r=dbaron (c66008388e)
- Bug 1234659: Attempt to work around randomorange in test_bug332655-2.html by using an unthemed <input> widget. rs=jfkthame (84fa36d569)
- Bug 1234535 - Avoid spurious null dereference complaint from Coverity. r=froydnj (804bdb1189)
- Bug 1235737: Soften some MOZ_CRASH statements in flexbox layout code to MOZ_ASSERT_UNREACHABLE, which they were originally intended as anyway. r=mats (0a66b12c46)
- Bug 1229932 - check that offsets to canvas fillText() are finite. r=jmuizelaar (cfa2fd240e)
- Bug 1233613 - Add crashtest. r=mt (b49c56d5df)
- Bug 1229983 - verify that paths are finite in DrawTargetSkia::Stroke/Fill to handle Canvas paths containing infs. r=jmuizelaar (79f3b8f225)
- Bug 1233632 - Moz2Dify GetBlurAndSpreadRadius(). r=dholbert. (868800f95f)
- Bug 1194856 - Load noscript.css and noframes.css from data: URLs in release builds. r=dbaron (7c009bcac2)
- Bug 1234758 - Fix errors in preference style sheet focus ring rules. r=dholbert (501f4088cc)
- Bug 1234773 - Build and parse preference style sheet as a single string. r=dholbert (82b848cb6a)
- Bug 1234773 - Followup assertion. (aa916f246b)
2023-08-23 10:40:44 +08:00

74 lines
2.0 KiB
C++

/* 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/. */
/* DOM object representing lists of values in DOM computed style */
#ifndef nsDOMCSSValueList_h___
#define nsDOMCSSValueList_h___
#include "nsIDOMCSSValueList.h"
#include "CSSValue.h"
#include "nsTArray.h"
class nsDOMCSSValueList final : public mozilla::dom::CSSValue,
public nsIDOMCSSValueList
{
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_AMBIGUOUS(nsDOMCSSValueList, mozilla::dom::CSSValue)
// nsIDOMCSSValue
NS_DECL_NSIDOMCSSVALUE
// nsDOMCSSValueList
nsDOMCSSValueList(bool aCommaDelimited, bool aReadonly);
/**
* Adds a value to this list.
*/
void AppendCSSValue(already_AddRefed<CSSValue> aValue);
virtual void GetCssText(nsString& aText, mozilla::ErrorResult& aRv)
override final;
virtual void SetCssText(const nsAString& aText,
mozilla::ErrorResult& aRv) override final;
virtual uint16_t CssValueType() const override final;
CSSValue* IndexedGetter(uint32_t aIdx, bool& aFound) const
{
aFound = aIdx <= Length();
return Item(aIdx);
}
CSSValue* Item(uint32_t aIndex) const
{
return mCSSValues.SafeElementAt(aIndex);
}
uint32_t Length() const
{
return mCSSValues.Length();
}
nsISupports* GetParentObject()
{
return nullptr;
}
virtual JSObject *WrapObject(JSContext *cx, JS::Handle<JSObject*> aGivenProto) override;
private:
~nsDOMCSSValueList();
bool mCommaDelimited; // some value lists use a comma
// as the delimiter, some just use
// spaces.
bool mReadonly; // Are we read-only?
InfallibleTArray<RefPtr<CSSValue> > mCSSValues;
};
#endif /* nsDOMCSSValueList_h___ */