Bye bye gtk1 and xlib (part 1 of 2). b=326152 r+sr=roc
git-svn-id: svn://10.0.0.236/trunk@225306 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
@@ -51,22 +51,13 @@ DIRS += base/src
|
||||
|
||||
ifndef MINIMO
|
||||
|
||||
ifneq (,$(filter gtk gtk2 xlib ,$(MOZ_WIDGET_TOOLKIT)))
|
||||
ifneq (,$(filter gtk2 ,$(MOZ_WIDGET_TOOLKIT)))
|
||||
TOOL_DIRS += samples/unixprinting
|
||||
endif
|
||||
|
||||
# These subdirs rely on GTK libraries and header files, it is not
|
||||
# buildable on other non-GTK unix builds
|
||||
|
||||
ifdef MOZ_ENABLE_GTK
|
||||
TOOL_DIRS += samples/default/unix
|
||||
|
||||
ifdef ENABLE_TESTS
|
||||
TOOL_DIRS += samples/simple
|
||||
endif
|
||||
|
||||
endif
|
||||
|
||||
ifdef MOZ_ENABLE_GTK2
|
||||
TOOL_DIRS += samples/default/unix
|
||||
endif
|
||||
|
||||
@@ -79,12 +79,9 @@ REQUIRES = xpcom \
|
||||
locale \
|
||||
$(NULL)
|
||||
|
||||
ifneq (,$(filter gtk gtk2,$(MOZ_WIDGET_TOOLKIT)))
|
||||
ifneq (,$(filter gtk2,$(MOZ_WIDGET_TOOLKIT)))
|
||||
REQUIRES += gtkxtbin
|
||||
endif
|
||||
ifeq ($(MOZ_WIDGET_TOOLKIT),xlib)
|
||||
REQUIRES += xlibxtbin xlibrgb
|
||||
endif
|
||||
|
||||
CPPSRCS = \
|
||||
ns4xPlugin.cpp \
|
||||
@@ -160,24 +157,12 @@ ifeq ($(OS_ARCH),OS2)
|
||||
ADD_TO_DEF_FILE = cat < $(srcdir)/extradefs.os2 >> $(DEF_FILE)
|
||||
endif
|
||||
|
||||
ifdef MOZ_ENABLE_GTK
|
||||
CXXFLAGS += $(MOZ_GTK_CFLAGS)
|
||||
CFLAGS += $(MOZ_GTK_CFLAGS)
|
||||
EXTRA_DSO_LDOPTS += -lgtkxtbin -lgtksuperwin $(XLDFLAGS) $(XT_LIBS) $(MOZ_GTK_LDFLAGS)
|
||||
endif #MOZ_ENABLE_GTK
|
||||
|
||||
ifdef MOZ_ENABLE_GTK2
|
||||
CXXFLAGS += $(MOZ_GTK2_CFLAGS)
|
||||
CFLAGS += $(MOZ_GTK2_CFLAGS)
|
||||
EXTRA_DSO_LDOPTS += -lgtkxtbin $(XLDFLAGS) $(XT_LIBS) $(MOZ_GTK2_LIBS) $(XLIBS)
|
||||
endif #MOZ_ENABLE_GTK2
|
||||
|
||||
ifdef MOZ_ENABLE_XLIB
|
||||
EXTRA_DSO_LDOPTS += -lxlibxtbin -lxlibrgb $(XLDFLAGS) $(XT_LIBS) $(XLIBS)
|
||||
CXXFLAGS += $(MOZ_XLIB_CFLAGS)
|
||||
CFLAGS += $(MOZ_XLIB_CFLAGS)
|
||||
endif #MOZ_ENABLE_XLIB
|
||||
|
||||
ifdef MOZ_ENABLE_QT
|
||||
EXTRA_DSO_LDOPTS += $(MOZ_QT_LDFLAGS)
|
||||
CXXFLAGS += $(MOZ_QT_CFLAGS)
|
||||
|
||||
@@ -74,12 +74,6 @@
|
||||
#endif
|
||||
|
||||
//needed for nppdf plugin
|
||||
#ifdef MOZ_WIDGET_GTK
|
||||
#include <gdk/gdk.h>
|
||||
#include <gdk/gdkx.h>
|
||||
#include "gtkxtbin.h"
|
||||
#endif
|
||||
|
||||
#ifdef MOZ_WIDGET_GTK2
|
||||
#include <gdk/gdk.h>
|
||||
#include <gdk/gdkx.h>
|
||||
@@ -1829,8 +1823,6 @@ _getvalue(NPP npp, NPNVariable variable, void *result)
|
||||
return NPERR_NO_ERROR;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
#if defined(MOZ_WIDGET_GTK) || defined(MOZ_WIDGET_GTK2)
|
||||
// adobe nppdf calls XtGetApplicationNameAndClass(display,
|
||||
// &instance, &class) we have to init Xt toolkit before get
|
||||
// XtDisplay just call gtk_xtbin_new(w,0) once
|
||||
@@ -1941,10 +1933,6 @@ _getvalue(NPP npp, NPNVariable variable, void *result)
|
||||
}
|
||||
|
||||
case NPNVToolkit: {
|
||||
#ifdef MOZ_WIDGET_GTK
|
||||
*((NPNToolkitType*)result) = NPNVGtk12;
|
||||
#endif
|
||||
|
||||
#ifdef MOZ_WIDGET_GTK2
|
||||
*((NPNToolkitType*)result) = NPNVGtk2;
|
||||
#endif
|
||||
|
||||
@@ -59,24 +59,12 @@
|
||||
#include "nsILegacyPluginWrapperOS2.h"
|
||||
#endif
|
||||
|
||||
#ifdef MOZ_WIDGET_GTK
|
||||
#include <gdk/gdk.h>
|
||||
#include <gdk/gdkx.h>
|
||||
#include "gtkxtbin.h"
|
||||
#endif
|
||||
|
||||
#ifdef MOZ_WIDGET_GTK2
|
||||
#include <gdk/gdk.h>
|
||||
#include <gdk/gdkx.h>
|
||||
#include "gtk2xtbin.h"
|
||||
#endif
|
||||
|
||||
#ifdef MOZ_WIDGET_XLIB
|
||||
#include "xlibxtbin.h"
|
||||
#include "xlibrgb.h"
|
||||
#endif
|
||||
|
||||
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
// CID's && IID's
|
||||
static NS_DEFINE_IID(kCPluginManagerCID, NS_PLUGINMANAGER_CID); // needed for NS_TRY_SAFE_CALL
|
||||
@@ -832,13 +820,9 @@ ns4xPluginInstance::~ns4xPluginInstance(void)
|
||||
{
|
||||
PLUGIN_LOG(PLUGIN_LOG_BASIC, ("ns4xPluginInstance dtor: this=%p\n",this));
|
||||
|
||||
#if defined(MOZ_WIDGET_GTK) || defined (MOZ_WIDGET_GTK2)
|
||||
#if defined (MOZ_WIDGET_GTK2)
|
||||
if (mXtBin)
|
||||
gtk_widget_destroy(mXtBin);
|
||||
#elif defined(MOZ_WIDGET_XLIB)
|
||||
if (mXlibXtBin) {
|
||||
delete mXlibXtBin;
|
||||
}
|
||||
#endif
|
||||
|
||||
// clean the stream list if any
|
||||
@@ -863,10 +847,8 @@ NS_IMETHODIMP ns4xPluginInstance::Initialize(nsIPluginInstancePeer* peer)
|
||||
{
|
||||
PLUGIN_LOG(PLUGIN_LOG_NORMAL, ("ns4xPluginInstance::Initialize this=%p\n",this));
|
||||
|
||||
#if defined (MOZ_WIDGET_GTK) || defined (MOZ_WIDGET_GTK2)
|
||||
#if defined (MOZ_WIDGET_GTK2)
|
||||
mXtBin = nsnull;
|
||||
#elif defined(MOZ_WIDGET_XLIB)
|
||||
mXlibXtBin = nsnull;
|
||||
#endif
|
||||
return InitializePlugin(peer);
|
||||
}
|
||||
@@ -885,21 +867,6 @@ NS_IMETHODIMP ns4xPluginInstance::Start(void)
|
||||
{
|
||||
PLUGIN_LOG(PLUGIN_LOG_NORMAL, ("ns4xPluginInstance::Start this=%p\n",this));
|
||||
|
||||
#ifdef MOZ_WIDGET_XLIB
|
||||
if (mXlibXtBin == nsnull)
|
||||
mXlibXtBin = new xtbin();
|
||||
|
||||
if (mXlibXtBin == nsnull)
|
||||
return NS_ERROR_OUT_OF_MEMORY;
|
||||
|
||||
if (!mXlibXtBin->xtbin_initialized())
|
||||
mXlibXtBin->xtbin_init();
|
||||
|
||||
#ifdef NS_DEBUG
|
||||
printf("Made new XtBin: %p, %d\n", mXlibXtBin, mXlibXtBin->xtbin_initialized());
|
||||
#endif
|
||||
#endif
|
||||
|
||||
if(mStarted)
|
||||
return NS_OK;
|
||||
else
|
||||
@@ -923,16 +890,11 @@ NS_IMETHODIMP ns4xPluginInstance::Stop(void)
|
||||
}
|
||||
}
|
||||
|
||||
#if defined(MOZ_WIDGET_GTK) || defined (MOZ_WIDGET_GTK2)
|
||||
#if defined (MOZ_WIDGET_GTK2)
|
||||
if (mXtBin) {
|
||||
gtk_widget_destroy(mXtBin);
|
||||
mXtBin = 0;
|
||||
}
|
||||
#elif defined(MOZ_WIDGET_XLIB)
|
||||
if (mXlibXtBin) {
|
||||
mXlibXtBin->xtbin_destroy();
|
||||
mXlibXtBin = 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
if(!mStarted)
|
||||
@@ -1143,7 +1105,7 @@ NS_IMETHODIMP ns4xPluginInstance::Destroy(void)
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
NS_IMETHODIMP ns4xPluginInstance::SetWindow(nsPluginWindow* window)
|
||||
{
|
||||
#if defined(MOZ_WIDGET_GTK) || defined (MOZ_WIDGET_GTK2) || defined(MOZ_WIDGET_XLIB)
|
||||
#if defined (MOZ_WIDGET_GTK2)
|
||||
NPSetWindowCallbackStruct *ws;
|
||||
#endif
|
||||
|
||||
@@ -1153,7 +1115,7 @@ NS_IMETHODIMP ns4xPluginInstance::SetWindow(nsPluginWindow* window)
|
||||
|
||||
NPError error;
|
||||
|
||||
#if defined (MOZ_WIDGET_GTK) || defined (MOZ_WIDGET_GTK2)
|
||||
#if defined (MOZ_WIDGET_GTK2)
|
||||
PRBool isXembed = PR_FALSE;
|
||||
// bug 108337, flash plugin on linux doesn't like window->width <= 0
|
||||
if ((PRInt32) window->width <= 0 || (PRInt32) window->height <= 0)
|
||||
@@ -1262,69 +1224,6 @@ NS_IMETHODIMP ns4xPluginInstance::SetWindow(nsPluginWindow* window)
|
||||
gtk_xtbin_resize(mXtBin, window->width, window->height);
|
||||
}
|
||||
|
||||
#elif defined(MOZ_WIDGET_XLIB)
|
||||
|
||||
|
||||
// Allocate and fill out the ws_info data
|
||||
if (!window->ws_info) {
|
||||
#ifdef NS_DEBUG
|
||||
printf("About to create new ws_info...\n");
|
||||
#endif
|
||||
|
||||
// allocate a new NPSetWindowCallbackStruct structure at ws_info
|
||||
window->ws_info = (NPSetWindowCallbackStruct *)PR_MALLOC(sizeof(NPSetWindowCallbackStruct));
|
||||
|
||||
if (!window->ws_info)
|
||||
return NS_ERROR_OUT_OF_MEMORY;
|
||||
|
||||
ws = (NPSetWindowCallbackStruct *)window->ws_info;
|
||||
|
||||
#if 1
|
||||
/* See comment above in GTK+ port ... */
|
||||
if (mXlibXtBin) {
|
||||
delete mXlibXtBin;
|
||||
mXlibXtBin = nsnull;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (!mXlibXtBin) {
|
||||
mXlibXtBin = new xtbin();
|
||||
// Check to see if creating mXlibXtBin failed for some reason.
|
||||
// if it did, we can't go any further.
|
||||
if (!mXlibXtBin)
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
if (window->window) {
|
||||
#ifdef NS_DEBUG
|
||||
printf("About to create new xtbin of %i X %i from %08x...\n",
|
||||
window->width, window->height, window->window);
|
||||
#endif
|
||||
|
||||
mXlibXtBin->xtbin_new((Window)window->window);
|
||||
mXlibXtBin->xtbin_resize(0, 0, window->width, window->height);
|
||||
#ifdef NS_DEBUG
|
||||
printf("About to show xtbin(%p)...\n", mXlibXtBin); fflush(NULL);
|
||||
#endif
|
||||
mXlibXtBin->xtbin_realize();
|
||||
}
|
||||
|
||||
/* Set window attributes */
|
||||
XlibRgbHandle *xlibRgbHandle = xxlib_find_handle(XXLIBRGB_DEFAULT_HANDLE);
|
||||
Display *xdisplay = xxlib_rgb_get_display(xlibRgbHandle);
|
||||
|
||||
/* Fill in window info structure */
|
||||
ws->type = 0;
|
||||
ws->depth = xxlib_rgb_get_depth(xlibRgbHandle);
|
||||
ws->display = xdisplay;
|
||||
ws->visual = xxlib_rgb_get_visual(xlibRgbHandle);
|
||||
ws->colormap = xxlib_rgb_get_cmap(xlibRgbHandle);
|
||||
XFlush(ws->display);
|
||||
} // !window->ws_info
|
||||
|
||||
// And now point the NPWindow structures window
|
||||
// to the actual X window
|
||||
window->window = (nsPluginPort *)mXlibXtBin->xtbin_xtwindow();
|
||||
#endif // MOZ_WIDGET
|
||||
|
||||
if (fCallbacks->setwindow) {
|
||||
|
||||
@@ -63,10 +63,8 @@
|
||||
#endif
|
||||
#include "prlink.h" // for PRLibrary
|
||||
|
||||
#if defined (MOZ_WIDGET_GTK) || defined (MOZ_WIDGET_GTK2)
|
||||
#if defined (MOZ_WIDGET_GTK2)
|
||||
#include <gtk/gtk.h>
|
||||
#elif defined (MOZ_WIDGET_XLIB)
|
||||
#include "xlibxtbin.h"
|
||||
#endif
|
||||
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
@@ -176,14 +174,12 @@ protected:
|
||||
*/
|
||||
NPPluginFuncs* fCallbacks;
|
||||
|
||||
#if defined (MOZ_WIDGET_GTK) || defined (MOZ_WIDGET_GTK2)
|
||||
#if defined (MOZ_WIDGET_GTK2)
|
||||
/**
|
||||
* Special GtkXtBin widget that encapsulates the Xt toolkit
|
||||
* within a Gtk Application
|
||||
*/
|
||||
GtkWidget *mXtBin;
|
||||
#elif defined (MOZ_WIDGET_XLIB)
|
||||
xtbin *mXlibXtBin;
|
||||
#endif
|
||||
|
||||
/**
|
||||
|
||||
@@ -174,12 +174,10 @@
|
||||
#include "nsContentErrors.h"
|
||||
|
||||
#ifdef XP_UNIX
|
||||
#if defined(MOZ_WIDGET_GTK) || defined (MOZ_WIDGET_GTK2)
|
||||
#if defined (MOZ_WIDGET_GTK2)
|
||||
#include <gdk/gdkx.h> // for GDK_DISPLAY()
|
||||
#elif defined(MOZ_WIDGET_QT)
|
||||
#include <qwindowdefs.h> // for qt_xdisplay()
|
||||
#elif defined(MOZ_WIDGET_XLIB)
|
||||
#include "xlibrgb.h" // for xlib_rgb_get_display()
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@@ -2635,12 +2633,10 @@ NS_IMETHODIMP nsPluginHostImpl::GetValue(nsPluginManagerVariable aVariable, void
|
||||
#if defined(XP_UNIX) && !defined(XP_MACOSX) && defined(MOZ_X11)
|
||||
if (nsPluginManagerVariable_XDisplay == aVariable) {
|
||||
Display** value = NS_REINTERPRET_CAST(Display**, aValue);
|
||||
#if defined(MOZ_WIDGET_GTK) || defined (MOZ_WIDGET_GTK2)
|
||||
#if defined (MOZ_WIDGET_GTK2)
|
||||
*value = GDK_DISPLAY();
|
||||
#elif defined(MOZ_WIDGET_QT)
|
||||
*value = qt_xdisplay();
|
||||
#elif defined(MOZ_WIDGET_XLIB)
|
||||
*value = xxlib_rgb_get_display(xxlib_find_handle(XXLIBRGB_DEFAULT_HANDLE));
|
||||
#endif
|
||||
if (!(*value)) {
|
||||
return NS_ERROR_FAILURE;
|
||||
@@ -6800,7 +6796,7 @@ nsresult nsPluginStreamListenerPeer::ServeStreamAsFile(nsIRequest *request,
|
||||
if (owner) {
|
||||
nsPluginWindow *window = nsnull;
|
||||
owner->GetWindow(window);
|
||||
#if defined (MOZ_WIDGET_GTK) || defined (MOZ_WIDGET_GTK2)
|
||||
#if defined (MOZ_WIDGET_GTK2)
|
||||
// Should call GetPluginPort() here.
|
||||
// This part is copied from nsPluginInstanceOwner::GetPluginPort().
|
||||
nsCOMPtr<nsIWidget> widget;
|
||||
|
||||
@@ -83,7 +83,7 @@
|
||||
#define DEFAULT_X11_PATH ""
|
||||
#endif
|
||||
|
||||
#if defined(MOZ_WIDGET_GTK) || defined(MOZ_WIDGET_GTK2)
|
||||
#if defined(MOZ_WIDGET_GTK2)
|
||||
|
||||
#define PLUGIN_MAX_LEN_OF_TMP_ARR 512
|
||||
|
||||
@@ -248,7 +248,7 @@ static void LoadExtraSharedLibs()
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif //MOZ_WIDGET_GTK || MOZ_WIDGET_GTK2
|
||||
#endif //MOZ_WIDGET_GTK2
|
||||
|
||||
|
||||
|
||||
@@ -382,7 +382,7 @@ nsresult nsPluginFile::LoadPlugin(PRLibrary* &outLibrary)
|
||||
|
||||
libSpec.value.pathname = path.get();
|
||||
|
||||
#if defined(MOZ_WIDGET_GTK) || defined(MOZ_WIDGET_GTK2)
|
||||
#if defined(MOZ_WIDGET_GTK2)
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
// Normally, Mozilla isn't linked against libXt and libXext
|
||||
@@ -413,7 +413,7 @@ nsresult nsPluginFile::LoadPlugin(PRLibrary* &outLibrary)
|
||||
}
|
||||
#else
|
||||
pLibrary = outLibrary = PR_LoadLibraryWithFlags(libSpec, 0);
|
||||
#endif // MOZ_WIDGET_GTK || MOZ_WIDGET_GTK2
|
||||
#endif // MOZ_WIDGET_GTK2
|
||||
|
||||
#ifdef NS_DEBUG
|
||||
printf("LoadPlugin() %s returned %lx\n",
|
||||
|
||||
@@ -71,12 +71,6 @@ include $(topsrcdir)/config/rules.mk
|
||||
EXTRA_DSO_LDOPTS += $(MOZ_COMPONENT_LIBS) $(XT_LIBS) \
|
||||
$(NULL)
|
||||
|
||||
ifdef MOZ_ENABLE_GTK
|
||||
EXTRA_DSO_LDOPTS += $(MOZ_GTK_LDFLAGS)
|
||||
CXXFLAGS += $(MOZ_GTK_CFLAGS)
|
||||
CFLAGS += $(MOZ_GTK_CFLAGS)
|
||||
endif
|
||||
|
||||
ifdef MOZ_ENABLE_GTK2
|
||||
EXTRA_DSO_LDOPTS += $(MOZ_GTK2_LIBS) $(XLDFLAGS) $(XLIBS)
|
||||
CXXFLAGS += $(MOZ_GTK2_CFLAGS)
|
||||
|
||||
@@ -71,12 +71,11 @@ EXTRA_DSO_LDOPTS += \
|
||||
-L$(DIST)/lib \
|
||||
-lgtksuperwin \
|
||||
$(MOZ_COMPONENT_LIBS) \
|
||||
$(MOZ_GTK_LDFLAGS) \
|
||||
$(NULL)
|
||||
|
||||
include $(topsrcdir)/config/rules.mk
|
||||
|
||||
CXXFLAGS += $(MOZ_TOOLKIT_REGISTRY_CFLAGS) $(MOZ_GTK_CFLAGS)
|
||||
CXXFLAGS += $(MOZ_TOOLKIT_REGISTRY_CFLAGS)
|
||||
|
||||
libs::
|
||||
$(INSTALL) $(srcdir)/samples/embed-test.html $(DIST)/bin/res/samples
|
||||
|
||||
@@ -91,7 +91,7 @@ OS_LIBS += $(call EXPAND_LIBNAME, usp10)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq (,$(MOZ_ENABLE_GTK)$(MOZ_ENABLE_GTK2)$(MOZ_ENABLE_XLIB))
|
||||
ifneq (,$(MOZ_ENABLE_GTK2))
|
||||
OS_LIBS += $(XLDFLAGS) $(XT_LIBS)
|
||||
endif
|
||||
|
||||
|
||||
Reference in New Issue
Block a user