Bug 1922956 - Further clean-up widget creation code-paths. r=win-reviewers,mac-reviewers,geckoview-reviewers,mstange,rkraesig,m_kato
This is all super-hacky (see a lot of the XXXcjones comments). Simplify it... We never create widgets with a bare native parent but no nsIWidget parent. Pass nsIWidgets and deal with things correctly. There were also things that were dealing with stuff that can't happen, like top level popups, children of PuppetWidgets, or such. Instead of overriding Create(), let's just teach nsBaseWidget about non-native (headless/puppet) widgets. Remove lots of old APIs for the native window stuff that are unused and/or unimplemented. Differential Revision: https://phabricator.services.mozilla.com/D224613
This commit is contained in:
@@ -4322,13 +4322,11 @@ bool nsDocShell::FillLoadStateFromCurrentEntry(
|
||||
//*****************************************************************************
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsDocShell::InitWindow(nativeWindow aParentNativeWindow,
|
||||
nsIWidget* aParentWidget, int32_t aX, int32_t aY,
|
||||
nsDocShell::InitWindow(nsIWidget* aParentWidget, int32_t aX, int32_t aY,
|
||||
int32_t aWidth, int32_t aHeight) {
|
||||
SetParentWidget(aParentWidget);
|
||||
SetPositionAndSize(aX, aY, aWidth, aHeight, 0);
|
||||
NS_ENSURE_TRUE(Initialize(), NS_ERROR_FAILURE);
|
||||
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
@@ -4610,24 +4608,6 @@ nsDocShell::SetParentWidget(nsIWidget* aParentWidget) {
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsDocShell::GetParentNativeWindow(nativeWindow* aParentNativeWindow) {
|
||||
NS_ENSURE_ARG_POINTER(aParentNativeWindow);
|
||||
|
||||
if (mParentWidget) {
|
||||
*aParentNativeWindow = mParentWidget->GetNativeData(NS_NATIVE_WIDGET);
|
||||
} else {
|
||||
*aParentNativeWindow = nullptr;
|
||||
}
|
||||
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsDocShell::SetParentNativeWindow(nativeWindow aParentNativeWindow) {
|
||||
return NS_ERROR_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsDocShell::GetNativeHandle(nsAString& aNativeHandle) {
|
||||
// the nativeHandle should be accessed from nsIAppWindow
|
||||
|
||||
Reference in New Issue
Block a user