Bug 1504904 - Don't use GDK_IS_WAYLAND_DISPLAY() as it's missing on Gtk+ X11 only builds, r=jhorak

Differential Revision: https://phabricator.services.mozilla.com/D11610

--HG--
extra : moz-landing-system : lando
This commit is contained in:
Martin Stransky 2018-11-12 15:25:38 +00:00
parent 50fbf54ef3
commit 582b645d9b
8 changed files with 10 additions and 19 deletions

View File

@ -100,7 +100,7 @@ DeleteWaylandGLSurface(EGLSurface surface)
{
// We're running on Wayland which means our EGLSurface may
// have attached Wayland backend data which must be released.
if (GDK_IS_WAYLAND_DISPLAY(gdk_display_get_default())) {
if (!GDK_IS_X11_DISPLAY(gdk_display_get_default())) {
auto entry = sWaylandGLSurface.Lookup(surface);
if (entry) {
delete entry.Data();
@ -970,7 +970,7 @@ FillContextAttribs(bool alpha, bool depth, bool stencil, bool bpp16,
{
out->AppendElement(LOCAL_EGL_SURFACE_TYPE);
#if defined(MOZ_WAYLAND)
if (GDK_IS_WAYLAND_DISPLAY(gdk_display_get_default())) {
if (!GDK_IS_X11_DISPLAY(gdk_display_get_default())) {
// Wayland on desktop does not support PBuffer or FBO.
// We create a dummy wl_egl_window instead.
out->AppendElement(LOCAL_EGL_WINDOW_BIT);
@ -1101,7 +1101,7 @@ GLContextEGL::CreateEGLPBufferOffscreenContext(CreateContextFlags flags,
mozilla::gfx::IntSize pbSize(size);
EGLSurface surface = nullptr;
#if defined(MOZ_WAYLAND)
if (GDK_IS_WAYLAND_DISPLAY(gdk_display_get_default())) {
if (!GDK_IS_X11_DISPLAY(gdk_display_get_default())) {
surface = GLContextEGL::CreateWaylandBufferSurface(config, pbSize);
} else
#endif

View File

@ -774,7 +774,7 @@ GLLibraryEGL::CreateDisplay(bool forceAccel, const nsCOMPtr<nsIGfxInfo>& gfxInfo
#ifdef MOZ_WAYLAND
// Some drivers doesn't support EGL_DEFAULT_DISPLAY
GdkDisplay *gdkDisplay = gdk_display_get_default();
if (GDK_IS_WAYLAND_DISPLAY(gdkDisplay)) {
if (!GDK_IS_X11_DISPLAY(gdkDisplay)) {
static auto sGdkWaylandDisplayGetWlDisplay =
(wl_display *(*)(GdkDisplay *))
dlsym(RTLD_DEFAULT, "gdk_wayland_display_get_wl_display");

View File

@ -799,7 +799,7 @@ already_AddRefed<gfx::VsyncSource>
gfxPlatformGtk::CreateHardwareVsyncSource()
{
#ifdef MOZ_WAYLAND
if (GDK_IS_WAYLAND_DISPLAY(gdk_display_get_default())) {
if (!GDK_IS_X11_DISPLAY(gdk_display_get_default())) {
RefPtr<VsyncSource> vsyncSource = new GtkVsyncSource();
VsyncSource::Display& display = vsyncSource->GetGlobalDisplay();
static_cast<GtkVsyncSource::GLXDisplay&>(display).SetupWayland();

View File

@ -4034,7 +4034,7 @@ XREMain::XRE_mainStartup(bool* aExitFlag)
SaveWordToEnv("DISPLAY", nsDependentCString(display_name));
}
#ifdef MOZ_WAYLAND
else if (GDK_IS_WAYLAND_DISPLAY(mGdkDisplay)) {
else if (!GDK_IS_X11_DISPLAY(mGdkDisplay)) {
SaveWordToEnv("WAYLAND_DISPLAY", nsDependentCString(display_name));
}
#endif

View File

@ -155,7 +155,7 @@ MakeScreen(GdkScreen* aScreen, gint aMonitorNum)
DesktopToLayoutDeviceScale contentsScale(1.0);
#ifdef MOZ_WAYLAND
GdkDisplay* gdkDisplay = gdk_display_get_default();
if (GDK_IS_WAYLAND_DISPLAY(gdkDisplay)) {
if (!GDK_IS_X11_DISPLAY(gdkDisplay)) {
contentsScale.scale = gdkScaleFactor;
}
#endif

View File

@ -215,7 +215,7 @@ moz_container_init (MozContainer *container)
container->parent_surface_committed = false;
GdkDisplay *gdk_display = gtk_widget_get_display(GTK_WIDGET(container));
if (GDK_IS_WAYLAND_DISPLAY (gdk_display)) {
if (!GDK_IS_X11_DISPLAY(gdk_display)) {
// Available as of GTK 3.8+
static auto sGdkWaylandDisplayGetWlDisplay =
(wl_display *(*)(GdkDisplay *))

View File

@ -303,12 +303,3 @@ wl_egl_window_resize(struct wl_egl_window *egl_window,
{
}
MOZ_EXPORT GType
gdk_wayland_display_get_type(void)
{
// This shouldn't be ever called.
abort();
return GDK_TYPE_X11_DISPLAY;
}

View File

@ -833,7 +833,7 @@ nsWindow::GetDesktopToDeviceScale()
{
#ifdef MOZ_WAYLAND
GdkDisplay* gdkDisplay = gdk_display_get_default();
if (GDK_IS_WAYLAND_DISPLAY(gdkDisplay)) {
if (!GDK_IS_X11_DISPLAY(gdkDisplay)) {
return DesktopToLayoutDeviceScale(GdkScaleFactor());
}
#endif
@ -853,7 +853,7 @@ nsWindow::GetDesktopToDeviceScaleByScreen()
// so the GdkScaleFactor can return wrong value which can lead to wrong popup
// placement.
// We need to use parent's window scale factor for the new one.
if (GDK_IS_WAYLAND_DISPLAY(gdkDisplay)) {
if (!GDK_IS_X11_DISPLAY(gdkDisplay)) {
nsView* view = nsView::GetViewFor(this);
if (view) {
nsView* parentView = view->GetParent();