mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-12-01 00:32:11 +00:00
cc94065f1b
It's only used by the GTK backend and all other users are located there as well. Further more, it's unlikely that the will ever be another X11 backend or that these classes will get reused elsewhere. So in order to keep changes to `WindowSurface` out of the common widget space, move it into `gtk`. While on it, also clean up the affected moz.build files a bit by making orders more consistent. No functional changes intended. Differential Revision: https://phabricator.services.mozilla.com/D114422
28 lines
984 B
C++
28 lines
984 B
C++
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
|
*
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
#include "WindowSurfaceX11SHM.h"
|
|
|
|
namespace mozilla::widget {
|
|
|
|
WindowSurfaceX11SHM::WindowSurfaceX11SHM(Display* aDisplay, Drawable aWindow,
|
|
Visual* aVisual, unsigned int aDepth) {
|
|
mFrontImage = new nsShmImage(aDisplay, aWindow, aVisual, aDepth);
|
|
mBackImage = new nsShmImage(aDisplay, aWindow, aVisual, aDepth);
|
|
}
|
|
|
|
already_AddRefed<gfx::DrawTarget> WindowSurfaceX11SHM::Lock(
|
|
const LayoutDeviceIntRegion& aRegion) {
|
|
mBackImage.swap(mFrontImage);
|
|
return mBackImage->CreateDrawTarget(aRegion);
|
|
}
|
|
|
|
void WindowSurfaceX11SHM::Commit(const LayoutDeviceIntRegion& aInvalidRegion) {
|
|
mBackImage->Put(aInvalidRegion);
|
|
}
|
|
|
|
} // namespace mozilla::widget
|