Bug 1786525 - Don't update untransformed anchor rect when moved by move-to-rect. r=stransky
Otherwise, it changes the move-to-rect inputs, which can change the output as well, making us move the anchor all the way to the right. You could, I guess, consider this a mutter bug of sorts, because it feels weird that you pass it an anchor that has been a `move-to-rect` output and you get another rect as an output. But also, it's kinda silly that we're doing that to begin with, so avoid it by telling the popup frame whether it's been positioned / moved by move-to-rect (and keeping the anchor in that case). The reason this works on my setup without "Large text" is just dumb luck (the front-end computes a max-height for the panel that is small enough to fit on the screen). Differential Revision: https://phabricator.services.mozilla.com/D155406
Showing
- layout/xul/nsMenuPopupFrame.cpp 13 additions, 4 deletionslayout/xul/nsMenuPopupFrame.cpp
- layout/xul/nsMenuPopupFrame.h 7 additions, 1 deletionlayout/xul/nsMenuPopupFrame.h
- layout/xul/nsXULPopupManager.cpp 3 additions, 2 deletionslayout/xul/nsXULPopupManager.cpp
- layout/xul/nsXULPopupManager.h 2 additions, 2 deletionslayout/xul/nsXULPopupManager.h
- view/nsView.cpp 4 additions, 2 deletionsview/nsView.cpp
- view/nsView.h 2 additions, 1 deletionview/nsView.h
- widget/gtk/nsWindow.cpp 1 addition, 6 deletionswidget/gtk/nsWindow.cpp
- widget/nsBaseWidget.cpp 3 additions, 2 deletionswidget/nsBaseWidget.cpp
- widget/nsBaseWidget.h 4 additions, 1 deletionwidget/nsBaseWidget.h
- widget/nsIWidgetListener.cpp 2 additions, 2 deletionswidget/nsIWidgetListener.cpp
- widget/nsIWidgetListener.h 3 additions, 1 deletionwidget/nsIWidgetListener.h
- xpfe/appshell/AppWindow.cpp 2 additions, 1 deletionxpfe/appshell/AppWindow.cpp
- xpfe/appshell/AppWindow.h 2 additions, 1 deletionxpfe/appshell/AppWindow.h
Loading
Please register or sign in to comment