WebKit Bugzilla
Attachment 371836 Details for
Bug 198750
: [GTK] gdk_screen_get_monitor_geometry and gdk_screen_get_monitor_workarea are deprecated since GTK 3.22
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-198750-20190611114131.patch (text/plain), 3.60 KB, created by
Ludovico de Nittis
on 2019-06-11 02:41:32 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Ludovico de Nittis
Created:
2019-06-11 02:41:32 PDT
Size:
3.60 KB
patch
obsolete
>Subversion Revision: 246303 >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index 8ac22ea5266483e510a3f98146279ec52f13b2d4..a0f6186a075da7d2b0d1d67707fb5a4a957f45dd 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,19 @@ >+2019-06-11 Ludovico de Nittis <ludovico.denittis@collabora.com> >+ >+ [GTK] Replace gdk_screen_get_monitor_geometry and gdk_screen_get_monitor_workarea >+ https://bugs.webkit.org/show_bug.cgi?id=198750 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Since GTK 3.22 gdk_screen_get_monitor_geometry and >+ gdk_screen_get_monitor_workarea has been deprecated. >+ >+ No behavior change. >+ >+ * platform/gtk/PlatformScreenGtk.cpp: >+ (WebCore::screenRect): >+ (WebCore::screenAvailableRect): >+ > 2019-06-10 Fujii Hironori <Hironori.Fujii@sony.com> > > [WinCairo][MediaFoundation] Remove the unused video window >diff --git a/Source/WebCore/platform/gtk/PlatformScreenGtk.cpp b/Source/WebCore/platform/gtk/PlatformScreenGtk.cpp >index 1129b4bb944f6269219f71be406fc1e9365c8d33..731ca7de69b2372d7ca360a2bf0a9088711aec6c 100644 >--- a/Source/WebCore/platform/gtk/PlatformScreenGtk.cpp >+++ b/Source/WebCore/platform/gtk/PlatformScreenGtk.cpp >@@ -150,10 +150,12 @@ void setScreenDPIObserverHandler(Function<void()>&& handler, void* context) > } > } > >+#if !GTK_CHECK_VERSION(3, 22, 0) > static GdkScreen* getScreen(GtkWidget* widget) > { > return gtk_widget_has_screen(widget) ? gtk_widget_get_screen(widget) : gdk_screen_get_default(); > } >+#endif > > FloatRect screenRect(Widget* widget) > { >@@ -161,14 +163,24 @@ FloatRect screenRect(Widget* widget) > if (container) > container = getToplevel(container); > >+ GdkRectangle geometry; >+#if GTK_CHECK_VERSION(3, 22, 0) >+ GdkDisplay* display = container ? gtk_widget_get_display(container) : gdk_display_get_default(); >+ if (!display) >+ return FloatRect(); >+ >+ GdkMonitor* monitor = container ? gdk_display_get_monitor_at_window(display, gtk_widget_get_window(container)) : gdk_display_get_monitor(display, 0); >+ >+ gdk_monitor_get_geometry(monitor, &geometry); >+#else > GdkScreen* screen = container ? getScreen(container) : gdk_screen_get_default(); > if (!screen) > return FloatRect(); > > gint monitor = container ? gdk_screen_get_monitor_at_window(screen, gtk_widget_get_window(container)) : 0; > >- GdkRectangle geometry; > gdk_screen_get_monitor_geometry(screen, monitor, &geometry); >+#endif // !GTK_CHECK_VERSION(3, 22, 0) > > return FloatRect(geometry.x, geometry.y, geometry.width, geometry.height); > } >@@ -179,14 +191,24 @@ FloatRect screenAvailableRect(Widget* widget) > if (container && !gtk_widget_get_realized(container)) > return screenRect(widget); > >+ GdkRectangle workArea; >+#if GTK_CHECK_VERSION(3, 22, 0) >+ GdkDisplay* display = container ? gtk_widget_get_display(container) : gdk_display_get_default(); >+ if (!display) >+ return FloatRect(); >+ >+ GdkMonitor* monitor = container ? gdk_display_get_monitor_at_window(display, gtk_widget_get_window(container)) : gdk_display_get_monitor(display, 0); >+ >+ gdk_monitor_get_workarea(monitor, &workArea); >+#else > GdkScreen* screen = container ? getScreen(container) : gdk_screen_get_default(); > if (!screen) > return FloatRect(); > > gint monitor = container ? gdk_screen_get_monitor_at_window(screen, gtk_widget_get_window(container)) : 0; > >- GdkRectangle workArea; > gdk_screen_get_monitor_workarea(screen, monitor, &workArea); >+#endif // !GTK_CHECK_VERSION(3, 22, 0) > > return FloatRect(workArea.x, workArea.y, workArea.width, workArea.height); >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 198750
:
371835
| 371836