Along with a dependent struct DirectDrawInfo. This allows nsImageRenderer.h and CanvasRenderingContext2D.h to avoid including nsLayoutUtils.h. For nsImageRenderer.h in particular, a forward declaration is not sufficient as nsImageRenderer stores SurfaceFromElementResult by value. A couple of method definitions elsewhere are moved out of line to keep things compiling without including nsLayoutUtils.h in additional headers. Differential Revision: https://phabricator.services.mozilla.com/D91684