[Xfce4-commits] <xfce4-panel:andrzejr/deskbar-pager> pager-wnck: making the code with a11y addition compilable (a11y not tested but the pager works).
Andrzej
noreply at xfce.org
Thu Dec 22 14:56:03 CET 2011
Updating branch refs/heads/andrzejr/deskbar-pager
to d00ec1dfcca044797a2988a3ac4ba672723cfcce (commit)
from 2fadf056ac10d0001e65ef0ce7222075b2c92d28 (commit)
commit d00ec1dfcca044797a2988a3ac4ba672723cfcce
Author: Andrzej <ndrwrdck at gmail.com>
Date: Thu Dec 22 22:47:45 2011 +0900
pager-wnck: making the code with a11y addition compilable (a11y not tested but the pager works).
Some previously removed pager-wnck functions are brought back (they are used in the a11y code).
Pager-wnck-workspace-accessible is tied fairly closely to wnck-workspace (from libwnck). Not sure if it will cause problems but it is one area we may have to test carefully.
plugins/pager/Makefile.am | 8 ++++
plugins/pager/pager-wnck-accessible.c | 1 +
plugins/pager/pager-wnck-accessible.h | 2 -
plugins/pager/pager-wnck-workspace-accessible.c | 1 +
plugins/pager/pager-wnck.c | 51 ++++++++++++++++++++++-
plugins/pager/pager-wnck.h | 11 +++++
6 files changed, 70 insertions(+), 4 deletions(-)
diff --git a/plugins/pager/Makefile.am b/plugins/pager/Makefile.am
index 742935e..7103e03 100644
--- a/plugins/pager/Makefile.am
+++ b/plugins/pager/Makefile.am
@@ -19,6 +19,14 @@ libpager_la_SOURCES = \
pager.h \
pager-wnck.h \
pager-wnck.c \
+ pager-wnck-accessible.h \
+ pager-wnck-accessible.c \
+ pager-wnck-accessible-factory.h \
+ pager-wnck-accessible-factory.c \
+ pager-wnck-workspace-accessible.h \
+ pager-wnck-workspace-accessible.c \
+ pager-wnck-workspace-accessible-factory.h \
+ pager-wnck-workspace-accessible-factory.c \
pager-buttons.h \
pager-buttons.c
diff --git a/plugins/pager/pager-wnck-accessible.c b/plugins/pager/pager-wnck-accessible.c
index da8e8cd..6efd7bb 100644
--- a/plugins/pager/pager-wnck-accessible.c
+++ b/plugins/pager/pager-wnck-accessible.c
@@ -25,6 +25,7 @@
#include <gtk/gtk.h>
#include <string.h>
#include <atk/atk.h>
+#include "pager.h"
#include "pager-wnck.h"
#include "pager-wnck-accessible.h"
#include "pager-wnck-accessible-factory.h"
diff --git a/plugins/pager/pager-wnck-accessible.h b/plugins/pager/pager-wnck-accessible.h
index 0aac5b9..b03ec18 100644
--- a/plugins/pager/pager-wnck-accessible.h
+++ b/plugins/pager/pager-wnck-accessible.h
@@ -23,8 +23,6 @@
#include <gtk/gtk.h>
#include <atk/atk.h>
-#include "pager-wnck.h"
-//#include "screen.h"
#ifdef __cplusplus
extern "C" {
diff --git a/plugins/pager/pager-wnck-workspace-accessible.c b/plugins/pager/pager-wnck-workspace-accessible.c
index 5823657..1de091a 100644
--- a/plugins/pager/pager-wnck-workspace-accessible.c
+++ b/plugins/pager/pager-wnck-workspace-accessible.c
@@ -22,6 +22,7 @@
#include <gtk/gtk.h>
#include <errno.h>
#include <unistd.h>
+#include "pager.h"
#include "pager-wnck.h"
#include "pager-wnck-workspace-accessible.h"
diff --git a/plugins/pager/pager-wnck.c b/plugins/pager/pager-wnck.c
index 1304a35..dbeadb6 100644
--- a/plugins/pager/pager-wnck.c
+++ b/plugins/pager/pager-wnck.c
@@ -648,8 +648,8 @@ pager_wnck_size_allocate (GtkWidget *widget,
static void
pager_wnck_get_workspace_rect (PagerWnck *pager,
- int space,
- GdkRectangle *rect)
+ int space,
+ GdkRectangle *rect)
{
int hsize, vsize;
int n_spaces;
@@ -2833,3 +2833,50 @@ pager_wnck_get_accessible (GtkWidget *widget)
}
return GTK_WIDGET_CLASS (pager_wnck_parent_class)->get_accessible (widget);
}
+
+int
+_pager_wnck_get_n_workspaces (PagerWnck *pager)
+{
+ return wnck_screen_get_workspace_count (pager->priv->screen);
+}
+
+const char*
+_pager_wnck_get_workspace_name (PagerWnck *pager,
+ int i)
+{
+ WnckWorkspace *space;
+
+ space = wnck_screen_get_workspace (pager->priv->screen, i);
+ if (space)
+ return wnck_workspace_get_name (space);
+ else
+ return NULL;
+}
+
+WnckWorkspace*
+_pager_wnck_get_active_workspace (PagerWnck *pager)
+{
+ return wnck_screen_get_active_workspace (pager->priv->screen);
+}
+
+WnckWorkspace*
+_pager_wnck_get_workspace (PagerWnck *pager,
+ int i)
+{
+ return wnck_screen_get_workspace (pager->priv->screen, i);
+}
+
+void
+_pager_wnck_activate_workspace (WnckWorkspace *wspace,
+ guint32 timestamp)
+{
+ wnck_workspace_activate (wspace, timestamp);
+}
+
+void
+_pager_wnck_get_workspace_rect (PagerWnck *pager,
+ int i,
+ GdkRectangle *rect)
+{
+ pager_wnck_get_workspace_rect (pager, i, rect);
+}
diff --git a/plugins/pager/pager-wnck.h b/plugins/pager/pager-wnck.h
index 2f5401c..3b0f0b2 100644
--- a/plugins/pager/pager-wnck.h
+++ b/plugins/pager/pager-wnck.h
@@ -99,6 +99,17 @@ void pager_wnck_set_show_all (PagerWnck *pager,
void pager_wnck_set_shadow_type (PagerWnck *pager,
GtkShadowType shadow_type);
+int _pager_wnck_get_n_workspaces (PagerWnck *pager);
+const char* _pager_wnck_get_workspace_name (PagerWnck *pager,
+ int i);
+WnckWorkspace* _pager_wnck_get_active_workspace (PagerWnck *pager);
+WnckWorkspace* _pager_wnck_get_workspace (PagerWnck *pager,
+ int i);
+void _pager_wnck_activate_workspace (WnckWorkspace *wspace,
+ guint32 timestamp);
+void _pager_wnck_get_workspace_rect (PagerWnck *pager,
+ int i,
+ GdkRectangle *rect);
G_END_DECLS
More information about the Xfce4-commits
mailing list