1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 06:47:34 +00:00

LibWeb: Expose the NodeFilter's whatToShow values to C++

These are required if we want to use the NodeIterator or TreeWalker APIs
from C++, which we do for WebDriver.
This commit is contained in:
Sam Atkins 2023-01-27 13:18:04 +00:00 committed by Linus Groh
parent c43db5dae7
commit a078fad787

View file

@ -21,12 +21,26 @@ public:
WebIDL::CallbackType& callback() { return m_callback; }
// FIXME: Generate both of these enums from IDL.
enum Result {
FILTER_ACCEPT = 1,
FILTER_REJECT = 2,
FILTER_SKIP = 3,
};
enum class WhatToShow : u32 {
SHOW_ALL = 0xFFFFFFFF,
SHOW_ELEMENT = 0x1,
SHOW_ATTRIBUTE = 0x2,
SHOW_TEXT = 0x4,
SHOW_CDATA_SECTION = 0x8,
SHOW_PROCESSING_INSTRUCTION = 0x40,
SHOW_COMMENT = 0x80,
SHOW_DOCUMENT = 0x100,
SHOW_DOCUMENT_TYPE = 0x200,
SHOW_DOCUMENT_FRAGMENT = 0x400,
};
private:
NodeFilter(JS::Realm&, WebIDL::CallbackType&);
@ -35,4 +49,6 @@ private:
WebIDL::CallbackType& m_callback;
};
AK_ENUM_BITWISE_OPERATORS(NodeFilter::WhatToShow);
}