[Pkg-mozext-commits] [firetray] 320/399: add gtk version check + revert to gdk_window_get_toplevel()
David Prévot
taffit at alioth.debian.org
Tue Oct 29 18:24:06 UTC 2013
This is an automated email from the git hooks/post-receive script.
taffit pushed a commit to branch dfsg-clean
in repository firetray.
commit 18fb980d49439d192f4b1252d95c9557d46864d9
Author: foudfou <foudil.newbie+git at gmail.com>
Date: Mon Oct 15 13:25:28 2012 +0200
add gtk version check + revert to gdk_window_get_toplevel()
---
src/modules/FiretrayHandler.jsm | 1 +
src/modules/ctypes/linux/gdk.jsm | 1 +
src/modules/ctypes/linux/gtk.jsm | 5 +++++
src/modules/linux/FiretrayWindow.jsm | 10 +++++++++-
4 files changed, 16 insertions(+), 1 deletion(-)
diff --git a/src/modules/FiretrayHandler.jsm b/src/modules/FiretrayHandler.jsm
index d579b13..ac53029 100644
--- a/src/modules/FiretrayHandler.jsm
+++ b/src/modules/FiretrayHandler.jsm
@@ -89,6 +89,7 @@ firetray.Handler = {
VersionChange.addHook(["upgrade", "reinstall"], firetray.VersionChangeHandler.correctMailServerTypes);
VersionChange.applyHooksAndWatchUninstall();
+ firetray.Window.init();
firetray.StatusIcon.init();
firetray.Handler.showHideIcon();
log.debug('StatusIcon initialized');
diff --git a/src/modules/ctypes/linux/gdk.jsm b/src/modules/ctypes/linux/gdk.jsm
index 073df19..95febfb 100644
--- a/src/modules/ctypes/linux/gdk.jsm
+++ b/src/modules/ctypes/linux/gdk.jsm
@@ -302,6 +302,7 @@ function gdk_defines(lib) {
lib.lazy_bind("gdk_window_get_user_data", ctypes.void_t, this.GdkWindow.ptr, gobject.gpointer.ptr);
lib.lazy_bind("gdk_atom_intern", this.GdkAtom, gobject.gchar.ptr, gobject.gboolean);
lib.lazy_bind("gdk_property_change", ctypes.void_t, this.GdkWindow.ptr, this.GdkAtom, this.GdkAtom, gobject.gint, this.GdkPropMode, gobject.guchar.ptr, gobject.gint);
+ lib.lazy_bind("gdk_window_get_toplevel", this.GdkWindow.ptr, this.GdkWindow.ptr);
lib.lazy_bind("gdk_window_get_effective_toplevel", this.GdkWindow.ptr, this.GdkWindow.ptr);
lib.lazy_bind("gdk_display_get_n_screens", gobject.gint, this.GdkDisplay.ptr);
diff --git a/src/modules/ctypes/linux/gtk.jsm b/src/modules/ctypes/linux/gtk.jsm
index 0329d39..6aa3c1b 100644
--- a/src/modules/ctypes/linux/gtk.jsm
+++ b/src/modules/ctypes/linux/gtk.jsm
@@ -17,6 +17,10 @@ Cu.import("resource://firetray/ctypes/linux/gobject.jsm");
Cu.import("resource://firetray/ctypes/linux/pango.jsm");
function gtk_defines(lib) {
+ this.FIRETRAY_REQUIRED_GTK_MAJOR_VERSION = 2;
+ this.FIRETRAY_REQUIRED_GTK_MINOR_VERSION = 20;
+ this.FIRETRAY_REQUIRED_GTK_MICRO_VERSION = 0;
+
this.GTK_ICON_SIZE_MENU = 1; // enum GtkIconSize
this.GTK_WINDOW_TOPLEVEL = 0; // enum GtkWindowType
@@ -78,6 +82,7 @@ function gtk_defines(lib) {
ctypes.default_abi, gobject.gboolean,
[this.GtkWidget.ptr, gdk.GdkEventFocus.ptr, gobject.gpointer]).ptr;
+ lib.lazy_bind("gtk_check_version", gobject.gchar.ptr, gobject.guint, gobject.guint, gobject.guint);
lib.lazy_bind("gtk_icon_theme_get_default", this.GtkIconTheme.ptr);
lib.lazy_bind("gtk_icon_theme_get_for_screen", this.GtkIconTheme.ptr, gdk.GdkScreen.ptr);
diff --git a/src/modules/linux/FiretrayWindow.jsm b/src/modules/linux/FiretrayWindow.jsm
index 067af89..6028c52 100644
--- a/src/modules/linux/FiretrayWindow.jsm
+++ b/src/modules/linux/FiretrayWindow.jsm
@@ -60,6 +60,14 @@ firetray.Handler.gtkPopupMenuWindowItems = new ctypesMap(gtk.GtkImageMenuItem.pt
firetray.Window = {
init: function() {
+ let gtkVersionCheck = gtk.gtk_check_version(
+ gtk.FIRETRAY_REQUIRED_GTK_MAJOR_VERSION,
+ gtk.FIRETRAY_REQUIRED_GTK_MINOR_VERSION,
+ gtk.FIRETRAY_REQUIRED_GTK_MICRO_VERSION
+ );
+ if (!gtkVersionCheck.isNull())
+ log.error("gtk_check_version="+gtkVersionCheck.readString());
+
this.initialized = true;
},
@@ -157,7 +165,7 @@ firetray.Window = {
getGdkWindowFromNativeHandle: function(nativeHandle) {
let gdkw = new gdk.GdkWindow.ptr(ctypes.UInt64(nativeHandle)); // a new pointer to the GdkWindow
- gdkw = gdk.gdk_window_get_effective_toplevel(gdkw);
+ gdkw = gdk.gdk_window_get_toplevel(gdkw);
log.debug("gdkw="+gdkw+" *gdkw="+this.addrPointedByInHex(gdkw));
return gdkw;
},
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-mozext/firetray.git
More information about the Pkg-mozext-commits
mailing list