diff options
author | Alberts Muktupāvels <alberts.muktupavels@gmail.com> | 2022-02-24 13:37:27 +0200 |
---|---|---|
committer | Alberts Muktupāvels <alberts.muktupavels@gmail.com> | 2022-02-24 13:38:32 +0200 |
commit | 2bfe06f9eac53dfe9d5e7dbdf23ee0f299979f18 (patch) | |
tree | 7b21cd2c799f996b3d0f06fadb916b09f3402dbc | |
parent | 8a72e58720113adc31834743dc7fe8bce7f0b3af (diff) | |
download | libwnck-2bfe06f9eac53dfe9d5e7dbdf23ee0f299979f18.tar.gz |
pager: use WnckHandle to get screen
-rw-r--r-- | libwnck/pager.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/libwnck/pager.c b/libwnck/pager.c index c769d62..8561546 100644 --- a/libwnck/pager.c +++ b/libwnck/pager.c @@ -61,6 +61,8 @@ struct _WnckPagerPrivate { + WnckHandle *handle; + WnckScreen *screen; int n_rows; /* really columns for vertical orientation */ @@ -284,6 +286,8 @@ wnck_pager_finalize (GObject *object) pager->priv->dnd_activate = 0; } + g_clear_object (&pager->priv->handle); + G_OBJECT_CLASS (wnck_pager_parent_class)->finalize (object); } @@ -291,12 +295,16 @@ static void _wnck_pager_set_screen (WnckPager *pager) { GdkScreen *gdkscreen; + int screen_number; if (!gtk_widget_has_screen (GTK_WIDGET (pager))) return; gdkscreen = gtk_widget_get_screen (GTK_WIDGET (pager)); - pager->priv->screen = wnck_screen_get (gdk_x11_screen_get_screen_number (gdkscreen)); + screen_number = gdk_x11_screen_get_screen_number (gdkscreen); + + pager->priv->screen = _wnck_handle_get_screen (pager->priv->handle, + screen_number); if (!wnck_pager_set_layout_hint (pager)) { @@ -2194,6 +2202,7 @@ wnck_pager_new (void) WnckPager *pager; pager = g_object_new (WNCK_TYPE_PAGER, NULL); + pager->priv->handle = g_object_ref (_wnck_get_handle ()); return GTK_WIDGET (pager); } |