mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 945573. Make nsITextControlElement::GetPlaceholderNode return Element*. r=smaug
This commit is contained in:
parent
58a7c3f5a4
commit
ecda4675ae
@ -16,10 +16,16 @@ class nsISelectionController;
|
||||
class nsFrameSelection;
|
||||
class nsTextControlFrame;
|
||||
|
||||
namespace mozilla {
|
||||
namespace dom {
|
||||
class Element;
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
// IID for the nsITextControl interface
|
||||
#define NS_ITEXTCONTROLELEMENT_IID \
|
||||
{ 0x3dd53b59, 0x9d8f, 0x40a3, \
|
||||
{ 0x81, 0xd7, 0xb3, 0x43, 0xa0, 0x51, 0xfc, 0xb5 } }
|
||||
{ 0x3df7db6d, 0xa548, 0x4e20, \
|
||||
{ 0x97, 0xfd, 0x75, 0xa3, 0x31, 0xa2, 0xf3, 0xd4 } }
|
||||
|
||||
/**
|
||||
* This interface is used for the text control frame to get the editor and
|
||||
@ -138,12 +144,12 @@ public:
|
||||
/**
|
||||
* Create the placeholder anonymous node for the text control and returns it.
|
||||
*/
|
||||
NS_IMETHOD_(nsIContent*) CreatePlaceholderNode() = 0;
|
||||
NS_IMETHOD_(mozilla::dom::Element*) CreatePlaceholderNode() = 0;
|
||||
|
||||
/**
|
||||
* Get the placeholder anonymous node for the text control.
|
||||
*/
|
||||
NS_IMETHOD_(nsIContent*) GetPlaceholderNode() = 0;
|
||||
NS_IMETHOD_(mozilla::dom::Element*) GetPlaceholderNode() = 0;
|
||||
|
||||
/**
|
||||
* Initialize the keyboard event listeners.
|
||||
|
@ -2375,7 +2375,7 @@ HTMLInputElement::GetRootEditorNode()
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP_(nsIContent*)
|
||||
NS_IMETHODIMP_(Element*)
|
||||
HTMLInputElement::CreatePlaceholderNode()
|
||||
{
|
||||
nsTextEditorState* state = GetEditorState();
|
||||
@ -2386,7 +2386,7 @@ HTMLInputElement::CreatePlaceholderNode()
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP_(nsIContent*)
|
||||
NS_IMETHODIMP_(Element*)
|
||||
HTMLInputElement::GetPlaceholderNode()
|
||||
{
|
||||
nsTextEditorState* state = GetEditorState();
|
||||
|
@ -185,8 +185,8 @@ public:
|
||||
NS_IMETHOD_(void) UnbindFromFrame(nsTextControlFrame* aFrame) MOZ_OVERRIDE;
|
||||
NS_IMETHOD CreateEditor() MOZ_OVERRIDE;
|
||||
NS_IMETHOD_(nsIContent*) GetRootEditorNode() MOZ_OVERRIDE;
|
||||
NS_IMETHOD_(nsIContent*) CreatePlaceholderNode() MOZ_OVERRIDE;
|
||||
NS_IMETHOD_(nsIContent*) GetPlaceholderNode() MOZ_OVERRIDE;
|
||||
NS_IMETHOD_(Element*) CreatePlaceholderNode() MOZ_OVERRIDE;
|
||||
NS_IMETHOD_(Element*) GetPlaceholderNode() MOZ_OVERRIDE;
|
||||
NS_IMETHOD_(void) UpdatePlaceholderVisibility(bool aNotify) MOZ_OVERRIDE;
|
||||
NS_IMETHOD_(bool) GetPlaceholderVisibility() MOZ_OVERRIDE;
|
||||
NS_IMETHOD_(void) InitializeKeyboardEventListeners() MOZ_OVERRIDE;
|
||||
|
@ -268,14 +268,14 @@ HTMLTextAreaElement::GetRootEditorNode()
|
||||
return mState.GetRootNode();
|
||||
}
|
||||
|
||||
NS_IMETHODIMP_(nsIContent*)
|
||||
NS_IMETHODIMP_(Element*)
|
||||
HTMLTextAreaElement::CreatePlaceholderNode()
|
||||
{
|
||||
NS_ENSURE_SUCCESS(mState.CreatePlaceholderNode(), nullptr);
|
||||
return mState.GetPlaceholderNode();
|
||||
}
|
||||
|
||||
NS_IMETHODIMP_(nsIContent*)
|
||||
NS_IMETHODIMP_(Element*)
|
||||
HTMLTextAreaElement::GetPlaceholderNode()
|
||||
{
|
||||
return mState.GetPlaceholderNode();
|
||||
|
@ -90,8 +90,8 @@ public:
|
||||
NS_IMETHOD_(void) UnbindFromFrame(nsTextControlFrame* aFrame) MOZ_OVERRIDE;
|
||||
NS_IMETHOD CreateEditor() MOZ_OVERRIDE;
|
||||
NS_IMETHOD_(nsIContent*) GetRootEditorNode() MOZ_OVERRIDE;
|
||||
NS_IMETHOD_(nsIContent*) CreatePlaceholderNode() MOZ_OVERRIDE;
|
||||
NS_IMETHOD_(nsIContent*) GetPlaceholderNode() MOZ_OVERRIDE;
|
||||
NS_IMETHOD_(Element*) CreatePlaceholderNode() MOZ_OVERRIDE;
|
||||
NS_IMETHOD_(Element*) GetPlaceholderNode() MOZ_OVERRIDE;
|
||||
NS_IMETHOD_(void) UpdatePlaceholderVisibility(bool aNotify) MOZ_OVERRIDE;
|
||||
NS_IMETHOD_(bool) GetPlaceholderVisibility() MOZ_OVERRIDE;
|
||||
NS_IMETHOD_(void) InitializeKeyboardEventListeners() MOZ_OVERRIDE;
|
||||
|
@ -1437,11 +1437,7 @@ nsTextControlFrame::GetPseudoElement(nsCSSPseudoElements::Type aType)
|
||||
{
|
||||
if (aType == nsCSSPseudoElements::ePseudo_mozPlaceholder) {
|
||||
nsCOMPtr<nsITextControlElement> txtCtrl = do_QueryInterface(GetContent());
|
||||
nsIContent* placeholderNode = txtCtrl->GetPlaceholderNode();
|
||||
if (placeholderNode && placeholderNode->IsElement()) {
|
||||
return placeholderNode->AsElement();
|
||||
}
|
||||
return nullptr;
|
||||
return txtCtrl->GetPlaceholderNode();
|
||||
}
|
||||
|
||||
return nsContainerFrame::GetPseudoElement(aType);
|
||||
|
Loading…
Reference in New Issue
Block a user