Repository.mk | 7 bin/distro-install-file-lists | 3 config_host.mk.in | 1 configure.ac | 19 cui/Library_cui.mk | 6 cui/UIConfig_cui.mk | 1 cui/source/dialogs/winpluginlib.cxx | 196 --- cui/source/inc/cuires.hrc | 1 cui/source/options/optinet2.cxx | 196 --- cui/source/options/optinet2.hxx | 21 cui/source/options/treeopt.cxx | 29 cui/source/options/treeopt.src | 1 cui/uiconfig/ui/optbrowserpage.ui | 42 distro-configs/OxygenOfficeLinux.conf | 1 extensions/Executable_nsplugin.mk | 69 - extensions/Library_npsoplugin.mk | 104 - extensions/Module_extensions.mk | 16 extensions/StaticLibrary_npsoenv.mk | 17 extensions/WinResTarget_npsoplugin.mk | 21 extensions/source/nsplugin/source/npshell.cxx | 930 ----------------- extensions/source/nsplugin/source/npshell.hxx | 99 - extensions/source/nsplugin/source/ns_debug.hxx | 44 extensions/source/nsplugin/source/nsp_func.hxx | 103 - extensions/source/nsplugin/source/nsp_windows.cxx | 59 - extensions/source/nsplugin/source/nsp_windows.hxx | 51 extensions/source/nsplugin/source/nsplugin_oo.rc | 158 -- extensions/source/nsplugin/source/so_closelistener.cxx | 48 extensions/source/nsplugin/source/so_closelistener.hxx | 56 - extensions/source/nsplugin/source/so_env.cxx | 507 --------- extensions/source/nsplugin/source/so_env.hxx | 95 - extensions/source/nsplugin/source/so_instance.cxx | 441 -------- extensions/source/nsplugin/source/so_instance.hxx | 114 -- extensions/source/nsplugin/source/so_main.cxx | 494 --------- extensions/source/nsplugin/source/so_msg.hxx | 61 - external/Module_external.mk | 1 external/np_sdk/Makefile | 7 external/np_sdk/Module_np_sdk.mk | 23 external/np_sdk/StaticLibrary_nputils.mk | 33 external/np_sdk/npsdk/README | 2 external/np_sdk/npsdk/npunix.c | 507 --------- external/np_sdk/npsdk/npwin.cxx | 359 ------ external/np_sdk/npsdk/plugin.h | 44 scp2/InstallModule_ooo.mk | 1 scp2/source/ooo/common_brand.scp | 10 scp2/source/ooo/file_ooo.scp | 13 scp2/source/ooo/module_hidden_ooo.scp | 1 46 files changed, 3 insertions(+), 5009 deletions(-)
New commits: commit d968c28287c8ffbaf6fd6da3a5d872adc8e354b4 Author: Stephan Bergmann <sberg...@redhat.com> Date: Tue Sep 9 15:19:05 2014 +0200 fdo#45071: Remove ENABLE_NPAPI_INTO_BROWSER left-overs ...from previous commit Change-Id: I945faa6215f971ce817c6450fe0786da0696091f diff --git a/bin/distro-install-file-lists b/bin/distro-install-file-lists index 87c2a09..167d514 100755 --- a/bin/distro-install-file-lists +++ b/bin/distro-install-file-lists @@ -332,7 +332,6 @@ if test "z$OOO_VENDOR" != "zDebian" ; then program/configimport.bin \ program/javaldx \ program/msfontextract \ - program/nsplugin \ program/oosplash.bin \ program/pagein \ program/pagein-calc \ @@ -495,7 +494,7 @@ else fi && ( cd pkg/libreoffice-common/$d find -maxdepth 1 \ - -regex '\./\(.*\.so.*\|.*\.bin\|pagein\|nsplugin\|tdefilepicker\|kdefilepicker\|msfontextract\|.*\.rdb\|javaldx\|uri-encode\)' \ + -regex '\./\(.*\.so.*\|.*\.bin\|pagein\|tdefilepicker\|kdefilepicker\|msfontextract\|.*\.rdb\|javaldx\|uri-encode\)' \ -exec mv {} $DESTDIR/pkg/libreoffice-core/$d \; ); \ done diff --git a/cui/Library_cui.mk b/cui/Library_cui.mk index 90958b3..60808ef 100644 --- a/cui/Library_cui.mk +++ b/cui/Library_cui.mk @@ -199,10 +199,4 @@ $(eval $(call gb_Library_add_exception_objects,cui,\ cui/source/uno/services \ )) -ifeq ($(OS),WNT) -$(eval $(call gb_Library_add_exception_objects,cui,\ - cui/source/dialogs/winpluginlib \ -)) -endif - # vim: set noet sw=4 ts=4: diff --git a/cui/UIConfig_cui.mk b/cui/UIConfig_cui.mk index c806bfc..70438d4 100644 --- a/cui/UIConfig_cui.mk +++ b/cui/UIConfig_cui.mk @@ -116,7 +116,6 @@ $(eval $(call gb_UIConfig_add_uifiles,cui,\ cui/uiconfig/ui/optappearancepage \ cui/uiconfig/ui/optasianpage \ cui/uiconfig/ui/optbasicidepage \ - cui/uiconfig/ui/optbrowserpage \ cui/uiconfig/ui/optctlpage \ cui/uiconfig/ui/optchartcolorspage \ cui/uiconfig/ui/optemailpage \ diff --git a/cui/source/dialogs/winpluginlib.cxx b/cui/source/dialogs/winpluginlib.cxx deleted file mode 100644 index 46c4af2..0000000 --- a/cui/source/dialogs/winpluginlib.cxx +++ /dev/null @@ -1,196 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#if defined _MSC_VER -#pragma warning(push, 1) -#endif -#undef WB_LEFT -#undef WB_RIGHT -#include <windows.h> -#if defined _MSC_VER -#pragma warning(pop) -#endif -#include <winreg.h> -#include <shlwapi.h> -#include <stdio.h> - -#define SO_PATH_SIZE 4096 - -extern "C" { -int lc_isInstalled(const char* realFilePath) -{ - HKEY hLibreOffice; - char sSoPath[SO_PATH_SIZE]; - char sPluginPath[SO_PATH_SIZE]; - - LONG ret; - ret = RegOpenKeyEx(HKEY_LOCAL_MACHINE, "SOFTWARE\\MozillaPlugins\\@sun.com/npsopluginmi;version=1.0", 0, KEY_READ, &hLibreOffice); - if(ret != ERROR_SUCCESS){ - ret = RegOpenKeyEx(HKEY_CURRENT_USER, "SOFTWARE\\MozillaPlugins\\@sun.com/npsopluginmi;version=1.0", 0, KEY_READ, &hLibreOffice); - if(ret != ERROR_SUCCESS){ - return -1; - } - } - - if((realFilePath == NULL) || (strlen(realFilePath) == 0) || (strlen(realFilePath) >= SO_PATH_SIZE)) - ret = -1; - else{ - sprintf(sSoPath,"%s", realFilePath); - ret = 0; - } - - // GetCurrentDirectory return the char number of the string - if(ret == 0){ - DWORD dType = REG_SZ; - DWORD dSize = SO_PATH_SIZE; - ret = RegQueryValueEx (hLibreOffice, "Path", NULL, &dType , (LPBYTE) sPluginPath, &dSize); - if(ret == ERROR_SUCCESS){ - if(strcmp(sPluginPath, sSoPath) == 0) - ret = 0; - else - ret = 1; - } - else - ret = -1; - } - else - ret = -1; - RegCloseKey(hLibreOffice); - return ret; -} - -int lc_uninstallPlugin(const char*) -{ - HKEY hKeySoftware; - HKEY hMozillaPlugins; - HKEY hStarOffice; - - LONG ret; - ret = RegOpenKeyEx(HKEY_LOCAL_MACHINE, "SOFTWARE", 0, KEY_READ|KEY_WRITE, &hKeySoftware); - if(ret != ERROR_SUCCESS){ - ret = RegOpenKeyEx(HKEY_CURRENT_USER, "SOFTWARE", 0, KEY_READ|KEY_WRITE, &hKeySoftware); - if(ret != ERROR_SUCCESS){ - return -1; - } - } - ret = RegOpenKeyEx(hKeySoftware, "MozillaPlugins", 0, KEY_READ|KEY_WRITE, &hMozillaPlugins); - if(ret != ERROR_SUCCESS){ - RegCloseKey(hKeySoftware); - if( ret == ERROR_FILE_NOT_FOUND) - return 0; - else - return -1; - } - - ret = RegOpenKeyEx(hMozillaPlugins, "@sun.com/npsopluginmi;version=1.0", 0, KEY_READ|KEY_WRITE, &hStarOffice); - if(ret != ERROR_SUCCESS){ - RegCloseKey(hKeySoftware); - RegCloseKey(hMozillaPlugins); - if( ret == ERROR_FILE_NOT_FOUND) - return 0; - else - return -1; - } - RegCloseKey(hStarOffice); - ret = SHDeleteKey(hMozillaPlugins, "@sun.com/npsopluginmi;version=1.0"); - if(ret != ERROR_SUCCESS){ - ret = -1; - } - RegFlushKey(hMozillaPlugins); - RegCloseKey(hMozillaPlugins); - RegCloseKey(hKeySoftware); - return ret; -} - -int lc_installPlugin(const char* realFilePath) -{ - HKEY hKeySoftware; - HKEY hMozillaPlugins; - HKEY hStarOffice; - char sSoPath[SO_PATH_SIZE]; - DWORD sState; - - LONG ret; - ret = RegOpenKeyEx(HKEY_LOCAL_MACHINE, "SOFTWARE", 0, KEY_READ|KEY_WRITE, &hKeySoftware); - if(ret != ERROR_SUCCESS){ - ret = RegOpenKeyEx(HKEY_CURRENT_USER, "SOFTWARE", 0, KEY_READ|KEY_WRITE, &hKeySoftware); - if(ret != ERROR_SUCCESS){ - return -1; - } - } - ret = RegOpenKeyEx(hKeySoftware, "MozillaPlugins", 0, KEY_READ|KEY_WRITE, &hMozillaPlugins); - if(ret != ERROR_SUCCESS){ - RegCreateKeyEx(hKeySoftware, - "MozillaPlugins", - 0, - NULL, - REG_OPTION_NON_VOLATILE, - KEY_READ|KEY_WRITE, - NULL, - &hMozillaPlugins, - &sState); - } - - ret = RegCreateKeyEx(hMozillaPlugins, - "@sun.com/npsopluginmi;version=1.0", - 0, - NULL, - REG_OPTION_NON_VOLATILE, - KEY_READ|KEY_WRITE, - NULL, - &hStarOffice, - &sState); - if(ret != ERROR_SUCCESS){ - RegCloseKey(hKeySoftware); - RegCloseKey(hMozillaPlugins); - return -1; - } - - RegFlushKey(hStarOffice); - RegFlushKey(hMozillaPlugins); - - if((realFilePath == NULL) || (strlen(realFilePath) == 0) || (strlen(realFilePath) >= SO_PATH_SIZE)) - ret = -1; - else{ - sprintf(sSoPath,"%s", realFilePath); - ret = 0; - } - - // GetCurrentDirectory return the char number of the string - if(ret == 0){ - ret = RegSetValueEx( hStarOffice, "Path", 0, REG_SZ, (LPBYTE) sSoPath, strlen(sSoPath) + 1); - if(ret == ERROR_SUCCESS) - ret = 0; - else - ret = -1; - } - else - ret = -1; - RegFlushKey(hStarOffice); - RegFlushKey(hMozillaPlugins); - RegCloseKey(hStarOffice); - RegCloseKey(hMozillaPlugins); - RegCloseKey(hKeySoftware); - RegFlushKey(HKEY_LOCAL_MACHINE); - - return ret; -} -} - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/cui/source/options/optinet2.cxx b/cui/source/options/optinet2.cxx index 4909b89..760d1ce 100644 --- a/cui/source/options/optinet2.cxx +++ b/cui/source/options/optinet2.cxx @@ -913,202 +913,6 @@ void SvxSecurityTabPage::Reset( const SfxItemSet* ) { } -MozPluginTabPage::MozPluginTabPage(Window* pParent, const SfxItemSet& rSet) - : SfxTabPage(pParent, "OptBrowserPage", "cui/ui/optbrowserpage.ui", &rSet) -{ - get(m_pWBasicCodeCB, "display"); -} - -MozPluginTabPage::~MozPluginTabPage() -{ -} - -SfxTabPage* MozPluginTabPage::Create( Window* pParent, - const SfxItemSet* rAttrSet ) -{ - return new MozPluginTabPage( pParent, *rAttrSet ); -} - -bool MozPluginTabPage::FillItemSet( SfxItemSet* ) -{ - bool hasInstall = isInstalled(); - bool hasChecked = m_pWBasicCodeCB->IsChecked(); - if(hasInstall && (!hasChecked)){ - //try to uninstall - uninstallPlugin(); - } - else if((!hasInstall) && hasChecked){ - //try to install - installPlugin(); - } - else{ - // do nothing - } - return true; -} - -void MozPluginTabPage::Reset( const SfxItemSet* ) -{ - m_pWBasicCodeCB->Check( isInstalled()); - m_pWBasicCodeCB->SaveValue(); -} - -#ifdef WNT -extern "C" { - int lc_isInstalled(const char* realFilePath); - int lc_installPlugin(const char* realFilePath); - int lc_uninstallPlugin(const char* realFilePath); -} -#endif - -#define NPP_PATH_MAX 2048 -inline bool getDllURL(OString * path) -{ - OSL_ASSERT(path != NULL); - OUString dirPath/*dllPath, */; - if (osl_getExecutableFile(&dirPath.pData) != osl_Process_E_None) { - return false; - } - dirPath = dirPath.copy(0, dirPath.lastIndexOf('/')); - OUString sysDirPath; - osl::FileBase::getSystemPathFromFileURL(dirPath, sysDirPath); - *path = OUStringToOString(sysDirPath, RTL_TEXTENCODING_ASCII_US); - return true; -} - -bool MozPluginTabPage::isInstalled() -{ -#ifdef UNIX - // get the real file referred by .so lnk file - char lnkReferFilePath[NPP_PATH_MAX] = {0}; - char* pHome = getpwuid(getuid())->pw_dir; - OString lnkFilePath(OString(pHome) + OString("/.mozilla/plugins/libnpsoplugin" SAL_DLLEXTENSION)); - - struct stat sBuf; - if (0 > lstat(lnkFilePath.getStr(), &sBuf)) - return false; - if (!S_ISLNK(sBuf.st_mode)) - return false; - if (0 >= readlink(lnkFilePath.getStr(), lnkReferFilePath, NPP_PATH_MAX)) - return false; - // If the link is relative, then we regard it as non-standard - if (lnkReferFilePath[0] != '/') - return false; - - // get the real file path - char realFilePath[NPP_PATH_MAX] = {0}; - OString tempString; - if (!getDllURL(&tempString)) { - return false; - } - strncpy(realFilePath, tempString.getStr(), NPP_PATH_MAX - 1); - strcat(realFilePath, "/libnpsoplugin" SAL_DLLEXTENSION); - - if (0 != strcmp(lnkReferFilePath, realFilePath)) - return false; - return true; -#endif -#ifdef WNT - // get the value from registry - sal_Bool ret = true; - OString tempString; - char realFilePath[NPP_PATH_MAX] = {0}; - if (!getDllURL(&tempString)){ - return false; - } - strncpy(realFilePath, tempString.getStr(), NPP_PATH_MAX); - if(! lc_isInstalled(realFilePath)) - ret =true; - else - ret = false; - return ret; -#endif -} - -bool MozPluginTabPage::installPlugin() -{ -#ifdef UNIX - // get the real file referred by .so lnk file - char* pHome = getpwuid(getuid())->pw_dir; - if(!pHome) - { - return false; - } - OString lnkFilePath(OString(pHome) + OString("/.mozilla/plugins/libnpsoplugin" SAL_DLLEXTENSION)); - (void)remove(lnkFilePath.getStr()); - - // create the dirs if necessary - struct stat buf; - char tmpDir[NPP_PATH_MAX] = {0}; - snprintf(tmpDir, NPP_PATH_MAX, "%s/.mozilla", pHome); - if (0 > stat(lnkFilePath.getStr(), &buf)) - { - if(mkdir(tmpDir, 0755)) - { - return false; - } - strcat(tmpDir, "/plugins"); - if(mkdir(tmpDir, 0755)) - { - return false; - } - } - - // get the real file path - char realFilePath[NPP_PATH_MAX] = {0}; - OString tempString; - if (!getDllURL(&tempString)) { - return false; - } - strncpy(realFilePath, tempString.getStr(), NPP_PATH_MAX - 1); - strcat(realFilePath, "/libnpsoplugin" SAL_DLLEXTENSION); - - // create the link - if (0 != symlink(realFilePath, lnkFilePath.getStr())) - return false; - return true; -#endif -#ifdef WNT - OString tempString; - char realFilePath[NPP_PATH_MAX] = {0}; - if (!getDllURL(&tempString)) { - return false; - } - strncpy(realFilePath, tempString.getStr(), NPP_PATH_MAX); - if( !lc_installPlugin(realFilePath)) - return true; - else - return false; -#endif -} - -bool MozPluginTabPage::uninstallPlugin() -{ -#ifdef UNIX - // get the real file referred by .so lnk file - char* pHome = getpwuid(getuid())->pw_dir; - OString lnkFilePath(OString(pHome) + OString("/.mozilla/plugins/libnpsoplugin" SAL_DLLEXTENSION)); - - if(0 > remove(lnkFilePath.getStr())) - return false; - return true; -#endif -#ifdef WNT - OString tempString; - char realFilePath[NPP_PATH_MAX] = {0}; - if (!getDllURL(&tempString)) { - return false; - } - strncpy(realFilePath, tempString.getStr(), NPP_PATH_MAX); - if(!lc_uninstallPlugin(realFilePath)) - return true; - else - return false; -#endif -} - -/* -------------------------------------------------------------------------*/ - class MailerProgramCfg_Impl : public utl::ConfigItem { friend class SvxEMailTabPage; diff --git a/cui/source/options/optinet2.hxx b/cui/source/options/optinet2.hxx index 4aa3cde..4182f76 100644 --- a/cui/source/options/optinet2.hxx +++ b/cui/source/options/optinet2.hxx @@ -177,27 +177,6 @@ public: virtual void Reset( const SfxItemSet* rSet ) SAL_OVERRIDE; }; -class MozPluginTabPage : public SfxTabPage -{ - CheckBox* m_pWBasicCodeCB; - - bool isInstalled(void); - bool installPlugin(void); - bool uninstallPlugin(void); - - MozPluginTabPage( Window* pParent, const SfxItemSet& rSet ); - virtual ~MozPluginTabPage(); - -public: - - static SfxTabPage* Create( Window* pParent, - const SfxItemSet* rAttrSet ); - - virtual bool FillItemSet( SfxItemSet* rSet ) SAL_OVERRIDE; - virtual void Reset( const SfxItemSet* rSet ) SAL_OVERRIDE; - -}; - struct SvxEMailTabPage_Impl; class SvxEMailTabPage : public SfxTabPage { diff --git a/cui/uiconfig/ui/optbrowserpage.ui b/cui/uiconfig/ui/optbrowserpage.ui deleted file mode 100644 index 279b387..0000000 --- a/cui/uiconfig/ui/optbrowserpage.ui +++ /dev/null @@ -1,42 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkFrame" id="OptBrowserPage"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="hexpand">True</property> - <property name="border_width">6</property> - <property name="label_xalign">0</property> - <property name="shadow_type">none</property> - <child> - <object class="GtkAlignment" id="alignment1"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="top_padding">6</property> - <property name="left_padding">12</property> - <child> - <object class="GtkCheckButton" id="display"> - <property name="label" translatable="yes">_Display documents in browser</property> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="valign">start</property> - <property name="use_underline">True</property> - <property name="xalign">0</property> - <property name="draw_indicator">True</property> - </object> - </child> - </object> - </child> - <child type="label"> - <object class="GtkLabel" id="label1"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="label" translatable="yes">Browser Plug-in</property> - <attributes> - <attribute name="weight" value="bold"/> - </attributes> - </object> - </child> - </object> -</interface> diff --git a/distro-configs/OxygenOfficeLinux.conf b/distro-configs/OxygenOfficeLinux.conf index d2f7326..44241cc 100644 --- a/distro-configs/OxygenOfficeLinux.conf +++ b/distro-configs/OxygenOfficeLinux.conf @@ -68,4 +68,3 @@ --enable-ccache --enable-crashdump --enable-cairo-canvas ---enable-nsplugin diff --git a/extensions/Executable_nsplugin.mk b/extensions/Executable_nsplugin.mk deleted file mode 100644 index 1e9ced1..0000000 --- a/extensions/Executable_nsplugin.mk +++ /dev/null @@ -1,69 +0,0 @@ -# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- -# -# -# This file is part of the LibreOffice project. -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. -# -# - -$(eval $(call gb_Executable_Executable,nsplugin)) - -$(eval $(call gb_Executable_use_external,nsplugin,boost_headers)) - -$(eval $(call gb_Executable_use_sdk_api,nsplugin)) - -$(eval $(call gb_Executable_add_exception_objects,nsplugin,\ - extensions/source/nsplugin/source/so_closelistener \ - extensions/source/nsplugin/source/so_instance \ - extensions/source/nsplugin/source/so_main \ -)) - -$(eval $(call gb_Executable_use_static_libraries,nsplugin,\ - npsoenv \ -)) - -$(eval $(call gb_Executable_add_libs,nsplugin,\ - $(if $(filter $(OS),LINUX), \ - -ldl \ - ) \ - $(if $(filter $(OS),SOLARIS), \ - -lnsl \ - -lsocket \ - ) \ -)) - -$(eval $(call gb_Executable_use_libraries,nsplugin,\ - comphelper \ - cppu \ - cppuhelper \ - sal \ -)) - -ifeq ($(OS),WNT) -$(eval $(call gb_Executable_add_exception_objects,nsplugin,\ - extensions/source/nsplugin/source/nsp_windows \ -)) - -$(eval $(call gb_Executable_use_static_libraries,nsplugin,\ - ooopathutils \ -)) - -$(eval $(call gb_Executable_use_system_win32_libs,nsplugin,\ - advapi32 \ - comdlg32 \ - gdi32 \ - kernel32 \ - ole32 \ - oleaut32 \ - shell32 \ - user32 \ - uuid \ - winspool \ - ws2_32 \ -)) -endif # WNT - -# vim:set noet sw=4 ts=4: diff --git a/extensions/Library_npsoplugin.mk b/extensions/Library_npsoplugin.mk deleted file mode 100644 index 9178a9d..0000000 --- a/extensions/Library_npsoplugin.mk +++ /dev/null @@ -1,104 +0,0 @@ -# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- -# -# -# This file is part of the LibreOffice project. -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. -# -# - -$(eval $(call gb_Library_Library,npsoplugin)) - -$(eval $(call gb_Library_use_externals,npsoplugin,\ - boost_headers \ - npapi_headers \ -)) - -$(eval $(call gb_Library_use_static_libraries,npsoplugin,\ - npsoenv \ - nputils \ -)) - -ifneq ($(OS),WNT) - -ifeq ($(filter ANDROID DRAGONFLY FREEBSD NETBSD OPENBSD MACOSX,$(OS)),) -$(eval $(call gb_Library_add_libs,npsoplugin,\ - -ldl \ -)) -endif - -$(eval $(call gb_Library_use_external,npsoplugin,gtk)) - -$(eval $(call gb_Library_add_defs,npsoplugin,\ - -DMOZ_X11 \ -)) - -ifeq ($(HAVE_NON_CONST_NPP_GETMIMEDESCRIPTION),TRUE) -$(eval $(call gb_Library_add_defs,npsoplugin,\ - -DHAVE_NON_CONST_NPP_GETMIMEDESCRIPTION=1 \ -)) -endif - -ifeq ($(filter-out LINUX FREEBSD NETBSD OPENBSD DRAGONFLY,$(OS)),) -$(eval $(call gb_Library_add_defs,npsoplugin,\ - -DNP_LINUX \ -)) -endif - -else ifeq ($(OS),WNT) - -$(eval $(call gb_Library_use_static_libraries,npsoplugin,\ - ooopathutils \ -)) - -$(eval $(call gb_Library_use_system_win32_libs,npsoplugin,\ - advapi32 \ - comdlg32 \ - gdi32 \ - kernel32 \ - ole32 \ - oleaut32 \ - shell32 \ - user32 \ - uuid \ - winspool \ - ws2_32 \ -)) - -$(eval $(call gb_Library_add_defs,npsoplugin,\ - -DENGLISH \ -)) - -ifeq ($(COM),MSC) -$(eval $(call gb_Library_add_ldflags,npsoplugin,\ - /EXPORT:NPP_GetMIMEDescription \ - /EXPORT:NPP_Initialize \ - /EXPORT:NPP_Shutdown \ - /EXPORT:NPP_New \ - /EXPORT:NPP_Destroy \ - /EXPORT:NPP_SetWindow \ - /EXPORT:NPP_NewStream \ - /EXPORT:NPP_WriteReady \ - /EXPORT:NPP_Write \ - /EXPORT:NPP_DestroyStream \ - /EXPORT:NPP_StreamAsFile \ - /EXPORT:NPP_URLNotify \ - /EXPORT:NPP_Print \ - /EXPORT:NP_GetEntryPoints \ - /EXPORT:NP_Initialize \ - /EXPORT:NP_Shutdown \ - /EXPORT:NP_GetMIMEDescription \ -)) -endif - -$(eval $(call gb_Library_set_nativeres,npsoplugin,npsoplugin/npsoplugin)) - -endif - -$(eval $(call gb_Library_add_exception_objects,npsoplugin,\ - extensions/source/nsplugin/source/npshell \ -)) - -# vim:set shiftwidth=4 softtabstop=4 noexpandtab: diff --git a/extensions/StaticLibrary_npsoenv.mk b/extensions/StaticLibrary_npsoenv.mk deleted file mode 100644 index 7019ff0..0000000 --- a/extensions/StaticLibrary_npsoenv.mk +++ /dev/null @@ -1,17 +0,0 @@ -# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- -# -# -# This file is part of the LibreOffice project. -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. -# - -$(eval $(call gb_StaticLibrary_StaticLibrary,npsoenv)) - -$(eval $(call gb_StaticLibrary_add_exception_objects,npsoenv,\ - extensions/source/nsplugin/source/so_env \ -)) - -# vim:set noet sw=4 ts=4: diff --git a/extensions/WinResTarget_npsoplugin.mk b/extensions/WinResTarget_npsoplugin.mk deleted file mode 100644 index 81e442c..0000000 --- a/extensions/WinResTarget_npsoplugin.mk +++ /dev/null @@ -1,21 +0,0 @@ -# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- -# -# -# This file is part of the LibreOffice project. -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. -# -# - -$(eval $(call gb_WinResTarget_WinResTarget,npsoplugin/npsoplugin)) - -$(eval $(call gb_WinResTarget_add_defs,npsoplugin/npsoplugin,\ - -DVERVARIANT=$(LIBO_VERSION_PATCH) \ - -DRES_APP_VENDOR="$(OOO_VENDOR)" \ -)) - -$(eval $(call gb_WinResTarget_set_rcfile,npsoplugin/npsoplugin,extensions/source/nsplugin/source/nsplugin_oo)) - -# vim:set noet sw=4 ts=4: diff --git a/external/Module_external.mk b/external/Module_external.mk index 2592bca..c95ea20 100644 --- a/external/Module_external.mk +++ b/external/Module_external.mk @@ -20,7 +20,6 @@ endif $(eval $(call gb_Module_add_moduledirs,external,\ accessories \ libxmlsec \ - np_sdk \ $(call gb_Helper_optional,ABW,libabw) \ $(call gb_Helper_optional,APACHE_COMMONS,apache-commons) \ $(call gb_Helper_optional,APR,apr) \ diff --git a/external/np_sdk/Makefile b/external/np_sdk/Makefile deleted file mode 100644 index e4968cf..0000000 --- a/external/np_sdk/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- - -module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST)))) - -include $(module_directory)/../../solenv/gbuild/partial_build.mk - -# vim: set noet sw=4 ts=4: diff --git a/external/np_sdk/Module_np_sdk.mk b/external/np_sdk/Module_np_sdk.mk deleted file mode 100644 index 46602b0..0000000 --- a/external/np_sdk/Module_np_sdk.mk +++ /dev/null @@ -1,13 +0,0 @@ -# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- -# -# -# This file is part of the LibreOffice project. -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. -# - -$(eval $(call gb_Module_Module,np_sdk)) - -# vim: set noet sw=4 ts=4: diff --git a/external/np_sdk/StaticLibrary_nputils.mk b/external/np_sdk/StaticLibrary_nputils.mk deleted file mode 100644 index bbbd66d..0000000 --- a/external/np_sdk/StaticLibrary_nputils.mk +++ /dev/null @@ -1,33 +0,0 @@ -# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- -# -# -# This file is part of the LibreOffice project. -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. -# - -$(eval $(call gb_StaticLibrary_StaticLibrary,nputils)) - -$(eval $(call gb_StaticLibrary_use_externals,nputils,\ - npapi_headers \ -)) - -ifeq ($(OS),MACOSX) -$(eval $(call gb_StaticLibrary_add_defs,nputils,\ - -DNO_X11 \ -)) -endif - -ifeq ($(OS),WNT) -$(eval $(call gb_StaticLibrary_add_exception_objects,nputils,\ - external/np_sdk/npsdk/npwin \ -)) -else -$(eval $(call gb_StaticLibrary_add_cobjects,nputils,\ - external/np_sdk/npsdk/npunix \ -)) -endif - -# vim: set noet sw=4 ts=4: diff --git a/external/np_sdk/npsdk/README b/external/np_sdk/npsdk/README index 9c05653..e83fe38 100644 --- a/external/np_sdk/npsdk/README +++ b/external/np_sdk/npsdk/README @@ -1,2 +1,2 @@ -This folder contains Mozilla headers and source-files related to plugin development. The original version of the files were taken from Mozilla1.0 tarball. +This folder contains Mozilla headers related to plugin development. The original version of the files were taken from Mozilla1.0 tarball. diff --git a/external/np_sdk/npsdk/npunix.c b/external/np_sdk/npsdk/npunix.c deleted file mode 100644 index e6b9702..0000000 --- a/external/np_sdk/npsdk/npunix.c +++ /dev/null @@ -1,507 +0,0 @@ -/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- - * - * ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is mozilla.org code. - * - * The Initial Developer of the Original Code is - * Netscape Communications Corporation. - * Portions created by the Initial Developer are Copyright (C) 1998 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Stephen Mak <s...@sun.com> - * - * Alternatively, the contents of this file may be used under the terms of - * either of the GNU General Public License Version 2 or later (the "GPL"), - * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -/* - * npunix.c - * - * Netscape Client Plugin API - * - Wrapper function to interface with the Netscape Navigator - * - * dp Suresh <d...@netscape.com> - * - *---------------------------------------------------------------------- - * PLUGIN DEVELOPERS: - * YOU WILL NOT NEED TO EDIT THIS FILE. - *---------------------------------------------------------------------- - */ - -#include <sal/types.h> - -#define XP_UNIX 1 - -#include <stdio.h> -#include "npapi.h" -#include "npupp.h" -#include "plugin.h" - -/* - * Define PLUGIN_TRACE to have the wrapper functions print - * messages to stderr whenever they are called. - */ - -#ifdef PLUGIN_TRACE -#include <stdio.h> -#define PLUGINDEBUGSTR(msg) fprintf(stderr, "%s\n", msg) -#else -#define PLUGINDEBUGSTR(msg) -#endif - - -/*********************************************************************** - * - * Globals - * - ***********************************************************************/ - -static NPNetscapeFuncs gNetscapeFuncs; /* Netscape Function table */ - - -/*********************************************************************** - * - * Wrapper functions : plugin calling Netscape Navigator - * - * These functions let the plugin developer just call the APIs - * as documented and defined in npapi.h, without needing to know - * about the function table and call macros in npupp.h. - * - ***********************************************************************/ - -void -NPN_Version(int* plugin_major, int* plugin_minor, - int* netscape_major, int* netscape_minor) -{ - *plugin_major = NP_VERSION_MAJOR; - *plugin_minor = NP_VERSION_MINOR; - - /* Major version is in high byte */ - *netscape_major = gNetscapeFuncs.version >> 8; - /* Minor version is in low byte */ - *netscape_minor = gNetscapeFuncs.version & 0xFF; -} - -NPError -NPN_GetValue(NPP instance, NPNVariable variable, void *r_value) -{ - return CallNPN_GetValueProc(gNetscapeFuncs.getvalue, - instance, variable, r_value); -} - -NPError -NPN_SetValue(NPP instance, NPPVariable variable, void *value) -{ - return CallNPN_SetValueProc(gNetscapeFuncs.setvalue, - instance, variable, value); -} - -NPError -NPN_GetURL(NPP instance, const char* url, const char* window) -{ - return CallNPN_GetURLProc(gNetscapeFuncs.geturl, instance, url, window); -} - -NPError -NPN_GetURLNotify(NPP instance, const char* url, const char* window, void* notifyData) -{ - return CallNPN_GetURLNotifyProc(gNetscapeFuncs.geturlnotify, instance, url, window, notifyData); -} - -NPError -NPN_PostURL(NPP instance, const char* url, const char* window, - uint32_t len, const char* buf, NPBool file) -{ - return CallNPN_PostURLProc(gNetscapeFuncs.posturl, instance, - url, window, len, buf, file); -} - -NPError -NPN_PostURLNotify(NPP instance, const char* url, const char* window, uint32_t len, - const char* buf, NPBool file, void* notifyData) -{ - return CallNPN_PostURLNotifyProc(gNetscapeFuncs.posturlnotify, - instance, url, window, len, buf, file, notifyData); -} - -NPError -NPN_RequestRead(NPStream* stream, NPByteRange* rangeList) -{ - return CallNPN_RequestReadProc(gNetscapeFuncs.requestread, - stream, rangeList); -} - -NPError -NPN_NewStream(NPP instance, NPMIMEType type, const char *window, - NPStream** stream_ptr) -{ - return CallNPN_NewStreamProc(gNetscapeFuncs.newstream, instance, - type, window, stream_ptr); -} - -int32_t -NPN_Write(NPP instance, NPStream* stream, int32_t len, void* buffer) -{ - return CallNPN_WriteProc(gNetscapeFuncs.write, instance, - stream, len, buffer); -} - -NPError -NPN_DestroyStream(NPP instance, NPStream* stream, NPError reason) -{ - return CallNPN_DestroyStreamProc(gNetscapeFuncs.destroystream, - instance, stream, reason); -} - -void -NPN_Status(NPP instance, const char* message) -{ - CallNPN_StatusProc(gNetscapeFuncs.status, instance, message); -} - -const char* -NPN_UserAgent(NPP instance) -{ - return CallNPN_UserAgentProc(gNetscapeFuncs.uagent, instance); -} - -void* -NPN_MemAlloc(uint32_t size) -{ - return CallNPN_MemAllocProc(gNetscapeFuncs.memalloc, size); -} - -void NPN_MemFree(void* ptr) -{ - CallNPN_MemFreeProc(gNetscapeFuncs.memfree, ptr); -} - -uint32_t NPN_MemFlush(uint32_t size) -{ - return CallNPN_MemFlushProc(gNetscapeFuncs.memflush, size); -} - -void NPN_ReloadPlugins(NPBool reloadPages) -{ - CallNPN_ReloadPluginsProc(gNetscapeFuncs.reloadplugins, reloadPages); -} - -#ifdef OJI -JRIEnv* NPN_GetJavaEnv() -{ - return CallNPN_GetJavaEnvProc(gNetscapeFuncs.getJavaEnv); -} - -jref NPN_GetJavaPeer(NPP instance) -{ - return CallNPN_GetJavaPeerProc(gNetscapeFuncs.getJavaPeer, - instance); -} -#endif - -void -NPN_InvalidateRect(NPP instance, NPRect *invalidRect) -{ - CallNPN_InvalidateRectProc(gNetscapeFuncs.invalidaterect, instance, - invalidRect); -} - -void -NPN_InvalidateRegion(NPP instance, NPRegion invalidRegion) -{ - CallNPN_InvalidateRegionProc(gNetscapeFuncs.invalidateregion, instance, - invalidRegion); -} - -void -NPN_ForceRedraw(NPP instance) -{ - CallNPN_ForceRedrawProc(gNetscapeFuncs.forceredraw, instance); -} - -/*********************************************************************** - * - * Wrapper functions : Netscape Navigator -> plugin - * - * These functions let the plugin developer just create the APIs - * as documented and defined in npapi.h, without needing to - * install those functions in the function table or worry about - * setting up globals for 68K plugins. - * - ***********************************************************************/ - -NPError -Private_New(NPMIMEType pluginType, NPP instance, uint16_t mode, - int16_t argc, char* argn[], char* argv[], NPSavedData* saved) -{ - NPError ret; - PLUGINDEBUGSTR("New"); - ret = NPP_New(pluginType, instance, mode, argc, argn, argv, saved); - return ret; -} - -NPError -Private_Destroy(NPP instance, NPSavedData** save) -{ - PLUGINDEBUGSTR("Destroy"); - return NPP_Destroy(instance, save); -} - -NPError -Private_SetWindow(NPP instance, NPWindow* window) -{ - NPError err; - PLUGINDEBUGSTR("SetWindow"); - err = NPP_SetWindow(instance, window); - return err; -} - -NPError -Private_NewStream(NPP instance, NPMIMEType type, NPStream* stream, - NPBool seekable, uint16_t* stype) -{ - NPError err; - PLUGINDEBUGSTR("NewStream"); - err = NPP_NewStream(instance, type, stream, seekable, stype); - return err; -} - -int32_t -Private_WriteReady(NPP instance, NPStream* stream) -{ - unsigned int result; - PLUGINDEBUGSTR("WriteReady"); - result = NPP_WriteReady(instance, stream); - return result; -} - -int32_t -Private_Write(NPP instance, NPStream* stream, int32_t offset, int32_t len, - void* buffer) -{ - unsigned int result; - PLUGINDEBUGSTR("Write"); - result = NPP_Write(instance, stream, offset, len, buffer); - return result; -} - -void -Private_StreamAsFile(NPP instance, NPStream* stream, const char* fname) -{ - PLUGINDEBUGSTR("StreamAsFile"); - NPP_StreamAsFile(instance, stream, fname); -} - - -NPError -Private_DestroyStream(NPP instance, NPStream* stream, NPError reason) -{ - NPError err; - PLUGINDEBUGSTR("DestroyStream"); - err = NPP_DestroyStream(instance, stream, reason); - return err; -} - -void -Private_URLNotify(NPP instance, const char* url, - NPReason reason, void* notifyData) - -{ - PLUGINDEBUGSTR("URLNotify"); - NPP_URLNotify(instance, url, reason, notifyData); -} - - - -void -Private_Print(NPP instance, NPPrint* platformPrint) -{ - PLUGINDEBUGSTR("Print"); - NPP_Print(instance, platformPrint); -} - -#ifdef OJI -JRIGlobalRef -Private_GetJavaClass(void) -{ - jref clazz = NPP_GetJavaClass(); - if (clazz) { - JRIEnv* env = NPN_GetJavaEnv(); - return JRI_NewGlobalRef(env, clazz); - } - return NULL; -} -#endif - -/*********************************************************************** - * - * These functions are located automagically by netscape. - * - ***********************************************************************/ - -/* - * NP_GetMIMEDescription - * - Netscape needs to know about this symbol - * - Netscape uses the return value to identify when an object instance - * of this plugin should be created. - */ -SAL_DLLPUBLIC_EXPORT char * -NP_GetMIMEDescription(void) -{ - return (char *)NPP_GetMIMEDescription(); -} - -/* - * NP_GetValue [optional] - * - Netscape needs to know about this symbol. - * - Interfaces with plugin to get values for predefined variables - * that the navigator needs. - */ -SAL_DLLPUBLIC_EXPORT NPError -NP_GetValue(void* future, NPPVariable variable, void *value) -{ - return NPP_GetValue(future, variable, value); -} - -/* - * NP_Initialize - * - Netscape needs to know about this symbol. - * - It calls this function after looking up its symbol before it - * is about to create the first ever object of this kind. - * - * PARAMETERS - * nsTable - The netscape function table. If developers just use these - * wrappers, they dont need to worry about all these function - * tables. - * RETURN - * pluginFuncs - * - This functions needs to fill the plugin function table - * pluginFuncs and return it. Netscape Navigator plugin - * library will use this function table to call the plugin. - * - */ -SAL_DLLPUBLIC_EXPORT NPError -NP_Initialize(NPNetscapeFuncs* nsTable, NPPluginFuncs* pluginFuncs) -{ - NPError err = NPERR_NO_ERROR; - - PLUGINDEBUGSTR("NP_Initialize"); - - /* validate input parameters */ - - if ((nsTable == NULL) || (pluginFuncs == NULL)) - err = NPERR_INVALID_FUNCTABLE_ERROR; - - /* - * Check the major version passed in Netscape's function table. - * We won't load if the major version is newer than what we expect. - * Also check that the function tables passed in are big enough for - * all the functions we need (they could be bigger, if Netscape added - * new APIs, but that's OK with us -- we'll just ignore them). - * - */ - - if (err == NPERR_NO_ERROR) { - if ((nsTable->version >> 8) > NP_VERSION_MAJOR) - err = NPERR_INCOMPATIBLE_VERSION_ERROR; - if (nsTable->size < sizeof(NPNetscapeFuncs)) - err = NPERR_INVALID_FUNCTABLE_ERROR; - if (pluginFuncs->size < sizeof(NPPluginFuncs)) - err = NPERR_INVALID_FUNCTABLE_ERROR; - } - - - if (err == NPERR_NO_ERROR) { - /* - * Copy all the fields of Netscape function table into our - * copy so we can call back into Netscape later. Note that - * we need to copy the fields one by one, rather than assigning - * the whole structure, because the Netscape function table - * could actually be bigger than what we expect. - */ - gNetscapeFuncs.version = nsTable->version; - gNetscapeFuncs.size = nsTable->size; - gNetscapeFuncs.posturl = nsTable->posturl; - gNetscapeFuncs.geturl = nsTable->geturl; - gNetscapeFuncs.geturlnotify = nsTable->geturlnotify; - gNetscapeFuncs.requestread = nsTable->requestread; - gNetscapeFuncs.newstream = nsTable->newstream; - gNetscapeFuncs.write = nsTable->write; - gNetscapeFuncs.destroystream = nsTable->destroystream; - gNetscapeFuncs.status = nsTable->status; - gNetscapeFuncs.uagent = nsTable->uagent; - gNetscapeFuncs.memalloc = nsTable->memalloc; - gNetscapeFuncs.memfree = nsTable->memfree; - gNetscapeFuncs.memflush = nsTable->memflush; - gNetscapeFuncs.reloadplugins = nsTable->reloadplugins; -#ifdef OJI - gNetscapeFuncs.getJavaEnv = nsTable->getJavaEnv; - gNetscapeFuncs.getJavaPeer = nsTable->getJavaPeer; -#endif - gNetscapeFuncs.getvalue = nsTable->getvalue; - - /* - * Set up the plugin function table that Netscape will use to - * call us. Netscape needs to know about our version and size - * and have a UniversalProcPointer for every function we - * implement. - */ - pluginFuncs->version = (NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR; - pluginFuncs->size = sizeof(NPPluginFuncs); - pluginFuncs->newp = NewNPP_NewProc(Private_New); - pluginFuncs->destroy = NewNPP_DestroyProc(Private_Destroy); - pluginFuncs->setwindow = NewNPP_SetWindowProc(Private_SetWindow); - pluginFuncs->newstream = NewNPP_NewStreamProc(Private_NewStream); - pluginFuncs->destroystream = NewNPP_DestroyStreamProc(Private_DestroyStream); - pluginFuncs->asfile = NewNPP_StreamAsFileProc(Private_StreamAsFile); - pluginFuncs->writeready = NewNPP_WriteReadyProc(Private_WriteReady); - pluginFuncs->write = NewNPP_WriteProc(Private_Write); - pluginFuncs->print = NewNPP_PrintProc(Private_Print); - pluginFuncs->urlnotify = NewNPP_URLNotifyProc(Private_URLNotify); - pluginFuncs->event = NULL; -#ifdef OJI - pluginFuncs->javaClass = Private_GetJavaClass(); -#endif - - err = NPP_Initialize(); - } - - return err; -} - -/* - * NP_Shutdown [optional] - * - Netscape needs to know about this symbol. - * - It calls this function after looking up its symbol after - * the last object of this kind has been destroyed. - * - */ -SAL_DLLPUBLIC_EXPORT void -NP_Shutdown(void) -{ - PLUGINDEBUGSTR("NP_Shutdown"); - NPP_Shutdown(); -} diff --git a/external/np_sdk/npsdk/npwin.cxx b/external/np_sdk/npsdk/npwin.cxx deleted file mode 100644 index bbabd97..0000000 --- a/external/np_sdk/npsdk/npwin.cxx +++ /dev/null @@ -1,359 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: NPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Netscape Public License - * Version 1.1 (the "License"); you may not use this file except in - * compliance with the License. You may obtain a copy of the License at - * http://www.mozilla.org/NPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Mozilla Communicator client code. - * - * The Initial Developer of the Original Code is - * Netscape Communications Corporation. - * Portions created by the Initial Developer are Copyright (C) 1998 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the NPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the NPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "npapi.h" -#include "npupp.h" -#include "plugin.h" - -//\\// DEFINE -#define NP_EXPORT - -//\\// GLOBAL DATA -NPNetscapeFuncs* g_pNavigatorFuncs = 0; - -extern "C" -{ -#ifdef OJI -JRIGlobalRef Private_GetJavaClass(void); - -//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\. -////\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//. -// Private_GetJavaClass (global function) -// -// Given a Java class reference (thru NPP_GetJavaClass) inform JRT -// of this class existence -// -JRIGlobalRef -Private_GetJavaClass(void) -{ - jref clazz = NPP_GetJavaClass(); - if (clazz) { - JRIEnv* env = NPN_GetJavaEnv(); - return JRI_NewGlobalRef(env, clazz); - } - return NULL; -} -#endif /* OJI */ - -//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\. -////\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//. -// PLUGIN DLL entry points -// -// These are the Windows specific DLL entry points. They must be exoprted -// - -// we need these to be global since we have to fill one of its field -// with a data (class) which requires knowlwdge of the navigator -// jump-table. This jump table is known at Initialize time (NP_Initialize) -// which is called after NP_GetEntryPoint -static NPPluginFuncs* g_pluginFuncs; - -//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\. -////\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//. -// NP_GetEntryPoints -// -// fills in the func table used by Navigator to call entry points in -// plugin DLL. Note that these entry points ensure that DS is loaded -// by using the NP_LOADDS macro, when compiling for Win16 -// -NPError WINAPI NP_EXPORT -NP_GetEntryPoints(NPPluginFuncs* pFuncs) -{ - // trap a NULL ptr - if(pFuncs == NULL) - return NPERR_INVALID_FUNCTABLE_ERROR; - - // if the plugin's function table is smaller than the plugin expects, - // then they are incompatible, and should return an error - - pFuncs->version = (NP_VERSION_MAJOR << 8) | NP_VERSION_MINOR; - pFuncs->newp = NPP_New; - pFuncs->destroy = NPP_Destroy; - pFuncs->setwindow = NPP_SetWindow; - pFuncs->newstream = NPP_NewStream; - pFuncs->destroystream = NPP_DestroyStream; - pFuncs->asfile = NPP_StreamAsFile; - pFuncs->writeready = NPP_WriteReady; - pFuncs->write = NPP_Write; - pFuncs->print = NPP_Print; - pFuncs->event = 0; /// reserved - - g_pluginFuncs = pFuncs; - - return NPERR_NO_ERROR; -} - -//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\. -////\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//. -// NP_Initialize -// -// called immediately after the plugin DLL is loaded -// -NPError WINAPI NP_EXPORT -NP_Initialize(NPNetscapeFuncs* pFuncs) -{ - // trap a NULL ptr - if(pFuncs == NULL) - return NPERR_INVALID_FUNCTABLE_ERROR; - - g_pNavigatorFuncs = pFuncs; // save it for future reference - - // if the plugin's major ver level is lower than the Navigator's, - // then they are incompatible, and should return an error - if(HIBYTE(pFuncs->version) > NP_VERSION_MAJOR) - return NPERR_INCOMPATIBLE_VERSION_ERROR; - - // We have to defer these assignments until g_pNavigatorFuncs is set - int navMinorVers = g_pNavigatorFuncs->version & 0xFF; - - if( navMinorVers >= NPVERS_HAS_NOTIFICATION ) { - g_pluginFuncs->urlnotify = NPP_URLNotify; - } - -#ifdef OJI - if( navMinorVers >= NPVERS_HAS_LIVECONNECT ) { - g_pluginFuncs->javaClass = Private_GetJavaClass(); - } -#endif - - return NPP_Initialize(); -} - -//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\. -////\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//. -// NP_Shutdown -// -// called immediately before the plugin DLL is unloaded. -// This functio shuold check for some ref count on the dll to see if it is -// unloadable or it needs to stay in memory. -// -void WINAPI NP_EXPORT -NP_Shutdown() -{ - NPP_Shutdown(); - g_pNavigatorFuncs = NULL; -} - -char * NP_GetMIMEDescription() -{ - return (char *)NPP_GetMIMEDescription(); -} - -// END - PLUGIN DLL entry points -////\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//. -//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\. - -/* NAVIGATOR Entry points */ - -/* These entry points expect to be called from within the plugin. The - noteworthy assumption is that DS has already been set to point to the - plugin's DLL data segment. Don't call these functions from outside - the plugin without ensuring DS is set to the DLLs data segment first, - typically using the NP_LOADDS macro -*/ - -/* returns the major/minor version numbers of the Plugin API for the plugin - and the Navigator -*/ -void NPN_Version(int* plugin_major, int* plugin_minor, int* netscape_major, int* netscape_minor) -{ - *plugin_major = NP_VERSION_MAJOR; - *plugin_minor = NP_VERSION_MINOR; - *netscape_major = HIBYTE(g_pNavigatorFuncs->version); - *netscape_minor = LOBYTE(g_pNavigatorFuncs->version); -} - -NPError NPN_GetValue(NPP instance, NPNVariable variable, void *result) -{ - return g_pNavigatorFuncs->getvalue(instance, variable, result); -} - - -/* causes the specified URL to be fetched and streamed in -*/ -NPError NPN_GetURLNotify(NPP instance, const char *url, const char *target, void* notifyData) - -{ - int navMinorVers = g_pNavigatorFuncs->version & 0xFF; - NPError err; - if( navMinorVers >= NPVERS_HAS_NOTIFICATION ) { - err = g_pNavigatorFuncs->geturlnotify(instance, url, target, notifyData); - } - else { - err = NPERR_INCOMPATIBLE_VERSION_ERROR; - } - return err; -} - - -NPError NPN_GetURL(NPP instance, const char *url, const char *target) -{ - return g_pNavigatorFuncs->geturl(instance, url, target); -} - -NPError NPN_PostURLNotify(NPP instance, const char* url, const char* window, uint32_t len, const char* buf, NPBool file, void* notifyData) -{ - int navMinorVers = g_pNavigatorFuncs->version & 0xFF; - NPError err; - if( navMinorVers >= NPVERS_HAS_NOTIFICATION ) { - err = g_pNavigatorFuncs->posturlnotify(instance, url, window, len, buf, file, notifyData); - } - else { - err = NPERR_INCOMPATIBLE_VERSION_ERROR; - } - return err; -} - - -NPError NPN_PostURL(NPP instance, const char* url, const char* window, uint32_t len, const char* buf, NPBool file) -{ - return g_pNavigatorFuncs->posturl(instance, url, window, len, buf, file); -} - -/* Requests that a number of bytes be provided on a stream. Typically - this would be used if a stream was in "pull" mode. An optional - position can be provided for streams which are seekable. -*/ -NPError NPN_RequestRead(NPStream* stream, NPByteRange* rangeList) -{ - return g_pNavigatorFuncs->requestread(stream, rangeList); -} - -/* Creates a new stream of data from the plug-in to be interpreted - by Netscape in the current window. -*/ -NPError NPN_NewStream(NPP instance, NPMIMEType type, - const char* target, NPStream** stream) -{ - int navMinorVersion = g_pNavigatorFuncs->version & 0xFF; - NPError err; - - if( navMinorVersion >= NPVERS_HAS_STREAMOUTPUT ) { - err = g_pNavigatorFuncs->newstream(instance, type, target, stream); - } - else { - err = NPERR_INCOMPATIBLE_VERSION_ERROR; - } - return err; -} - -/* Provides len bytes of data. -*/ -int32_t NPN_Write(NPP instance, NPStream *stream, - int32_t len, void *buffer) -{ - int navMinorVersion = g_pNavigatorFuncs->version & 0xFF; - int32_t result; - - if( navMinorVersion >= NPVERS_HAS_STREAMOUTPUT ) { - result = g_pNavigatorFuncs->write(instance, stream, len, buffer); - } - else { - result = -1; - } - return result; -} - -/* Closes a stream object. -reason indicates why the stream was closed. -*/ -NPError NPN_DestroyStream(NPP instance, NPStream* stream, NPError reason) -{ - int navMinorVersion = g_pNavigatorFuncs->version & 0xFF; - NPError err; - - if( navMinorVersion >= NPVERS_HAS_STREAMOUTPUT ) { - err = g_pNavigatorFuncs->destroystream(instance, stream, reason); - } - else { - err = NPERR_INCOMPATIBLE_VERSION_ERROR; - } - return err; -} - -/* Provides a text status message in the Netscape client user interface -*/ -void NPN_Status(NPP instance, const char *message) -{ - g_pNavigatorFuncs->status(instance, message); -} - -/* returns the user agent string of Navigator, which contains version info -*/ -const char* NPN_UserAgent(NPP instance) -{ - return g_pNavigatorFuncs->uagent(instance); -} - -/* allocates memory from the Navigator's memory space. Necessary so that - saved instance data may be freed by Navigator when exiting. -*/ - - -void* NPN_MemAlloc(uint32_t size) -{ - return g_pNavigatorFuncs->memalloc(size); -} - -/* reciprocal of MemAlloc() above -*/ -void NPN_MemFree(void* ptr) -{ - g_pNavigatorFuncs->memfree(ptr); -} - -#ifdef OJI -/* private function to Netscape. do not use! -*/ -void NPN_ReloadPlugins(NPBool reloadPages) -{ - g_pNavigatorFuncs->reloadplugins(reloadPages); -} - -JRIEnv* NPN_GetJavaEnv(void) -{ - return g_pNavigatorFuncs->getJavaEnv(); -} - -jref NPN_GetJavaPeer(NPP instance) -{ - return g_pNavigatorFuncs->getJavaPeer(instance); -} -#endif -} //end of extern "C" - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/external/np_sdk/npsdk/plugin.h b/external/np_sdk/npsdk/plugin.h deleted file mode 100644 index 6f7913b..0000000 --- a/external/np_sdk/npsdk/plugin.h +++ /dev/null @@ -1,44 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#ifndef INCLUDED_NP_SDK_MOZSRC_PLUGIN_H -#define INCLUDED_NP_SDK_MOZSRC_PLUGIN_H - -#include "npapi.h" - -/* OpenOffice.org/LibreOffice modified the implementations of NP_Initialize and - NP_Shutdown in external/np_sdk/npsdk/ to call NPP_Initialize and NPP_Shutdown, resp., - defined in extensions/source/nsplugin/source/npshell.cxx: -*/ - -#if defined __cplusplus -extern "C" { -#endif - -NPError NPP_Initialize(void); - -void NPP_Shutdown(void); - -#if defined __cplusplus -} -#endif - -#endif - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/scp2/source/ooo/common_brand.scp b/scp2/source/ooo/common_brand.scp index 76922e2..f5fabc6 100644 --- a/scp2/source/ooo/common_brand.scp +++ b/scp2/source/ooo/common_brand.scp @@ -72,7 +72,6 @@ Module gid_Module_Root_Brand gid_Brand_File_Lib_Msvcp80, gid_Brand_File_Lib_Msvcm80, gid_Brand_File_Msvcm80crt_Manifest, - gid_Brand_File_Lib_Npsoplugin, gid_Brand_File_Share_Registry_O5oo_Xcd, gid_Brand_File_Script_Unopkg, gid_Brand_File_Share_Xdg_Base, diff --git a/scp2/source/ooo/module_hidden_ooo.scp b/scp2/source/ooo/module_hidden_ooo.scp index 9bab7b4..7658e51 100644 --- a/scp2/source/ooo/module_hidden_ooo.scp +++ b/scp2/source/ooo/module_hidden_ooo.scp @@ -88,7 +88,6 @@ Module gid_Module_Root_Files_2 gid_File_Script_Gengal, gid_File_Bin_Uri_Encode, gid_File_Bin_UIPreviewer, - gid_File_Exe_Nsplugin, gid_File_Txt_Pagein_Common, gid_File_Txt_Pagein_Calc, gid_File_Txt_Pagein_Draw, commit 496bc3cd6c037360632c33471c4622a095cdcadd Author: Bryan Quigley <gqu...@gmail.com> Date: Mon Aug 4 17:31:23 2014 -0400 fdo#45071 Remove Libreoffice browser plugin This removes ENABLE_NPAPI_INTO_BROWSER while it should keep ENABLE_NPAPI_FROM_BROWSER (embed flash in LO) intact. Signed-off-by: Stephan Bergmann <sberg...@redhat.com> Conflicts: extensions/source/nsplugin/source/npshell.cxx Change-Id: I80a9159a75653c74423d8fdc7c188568d3188e04 diff --git a/Repository.mk b/Repository.mk index 7ed4be5..707a0c1 100644 --- a/Repository.mk +++ b/Repository.mk @@ -88,7 +88,6 @@ $(eval $(call gb_Helper_register_executables_for_install,OOO,ooo, \ $(eval $(call gb_Helper_register_executables,OOO, \ $(call gb_Helper_optional,CRASHREP,crashrep) \ gnome-open-url.bin \ - $(if $(ENABLE_NPAPI_INTO_BROWSER),nsplugin) \ $(if $(filter-out ANDROID IOS MACOSX WNT,$(OS)),oosplash) \ $(if $(ENABLE_NPAPI_FROM_BROWSER),pluginapp.bin) \ soffice_bin \ @@ -145,12 +144,6 @@ $(eval $(call gb_Helper_register_libraries,OOOLIBS, \ endif -ifeq ($(ENABLE_NPAPI_INTO_BROWSER),TRUE) -$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \ - npsoplugin \ -)) -endif - ifeq ($(OS),MACOSX) $(eval $(call gb_Helper_register_libraries,PLAINLIBS_NONE, \ diff --git a/config_host.mk.in b/config_host.mk.in index 1d8efeb..c3aa2e4 100644 --- a/config_host.mk.in +++ b/config_host.mk.in @@ -154,7 +154,6 @@ export ENABLE_MACOSX_SANDBOX=@ENABLE_MACOSX_SANDBOX@ export ENABLE_MEDIAWIKI=@ENABLE_MEDIAWIKI@ export ENABLE_MARIADBC=@ENABLE_MARIADBC@ export ENABLE_NPAPI_FROM_BROWSER=@ENABLE_NPAPI_FROM_BROWSER@ -export ENABLE_NPAPI_INTO_BROWSER=@ENABLE_NPAPI_INTO_BROWSER@ export ENABLE_ONLINE_UPDATE=@ENABLE_ONLINE_UPDATE@ export ENABLE_OOENV=@ENABLE_OOENV@ export ENABLE_OPENGL=@ENABLE_OPENGL@ diff --git a/configure.ac b/configure.ac index 2fc22bc..b7d2fe0 100644 --- a/configure.ac +++ b/configure.ac @@ -1889,7 +1889,6 @@ AC_ARG_WITH(system-liblangtag, AC_ARG_WITH(system-npapi-headers, AS_HELP_STRING([--with-system-npapi-headers], [Use NPAPI headers provided by system instead of bundled ones. Used in - extensions/source/nsplugin (ENABLE_NPAPI_INTO_BROWSER=TRUE) and extensions/source/plugin (ENABLE_NPAPI_FROM_BROWSER=TRUE)]),, [with_system_npapi_headers="$with_system_headers"] ) @@ -8964,8 +8963,7 @@ if test "$with_system_npapi_headers" = "yes"; then NPAPI_HEADERS_CFLAGS=$(printf '%s' "$NPAPI_HEADERS_CFLAGS" | sed -e "s/-I/${ISYSTEM?}/g") else AC_MSG_RESULT([internal]) - dnl ...but will not be built/used unless ENABLE_NPAPI_FROM_BROWSER or - dnl ENABLE_NPAPI_INTO_BROWSER is TRUE + dnl ...but will not be built/used unless ENABLE_NPAPI_FROM_BROWSER SYSTEM_NPAPI_HEADERS= fi AC_SUBST(NPAPI_HEADERS_CFLAGS) @@ -9205,21 +9203,6 @@ else fi AC_SUBST(ENABLE_NPAPI_FROM_BROWSER) -dnl =================================================================== -dnl Check for NPAPI interface to plug LibreOffice into browser windows -dnl =================================================================== -AC_MSG_CHECKING([whether to plug LibreOffice into browser windows]) -if test "$enable_mpl_subset" != yes -a \( "$_os" = WINNT -o "$_os" != Android -a "$_os" != Darwin -a "$_os" != iOS -a \ - "$enable_headless" != yes -a "$enable_gtk" != no \) -then - AC_MSG_RESULT([yes]) - ENABLE_NPAPI_INTO_BROWSER=TRUE -else - AC_MSG_RESULT([no]) - ENABLE_NPAPI_INTO_BROWSER= -fi -AC_SUBST(ENABLE_NPAPI_INTO_BROWSER) - AC_MSG_CHECKING([whether to use X11]) dnl *************************************** dnl testing for X libraries and includes... diff --git a/cui/source/inc/cuires.hrc b/cui/source/inc/cuires.hrc index 85a1ea3..c85b294 100644 --- a/cui/source/inc/cuires.hrc +++ b/cui/source/inc/cuires.hrc @@ -114,7 +114,6 @@ #define RID_SVXPAGE_INET_SECURITY (RID_SVX_START + 200) #define RID_SVXPAGE_INET_PROXY (RID_SVX_START + 157) #define RID_SVXPAGE_INET_MAIL (RID_SVX_START + 155) -#define RID_SVXPAGE_INET_MOZPLUGIN (RID_SVX_START + 2161) #define RID_OFAPAGE_HTMLOPT (RID_OFA_START + 100) #define OFA_TP_LANGUAGES (RID_OFA_START + 205) #define OFA_TP_MISC (RID_OFA_START + 200) diff --git a/cui/source/options/treeopt.cxx b/cui/source/options/treeopt.cxx index 292a5ee..6776974 100644 --- a/cui/source/options/treeopt.cxx +++ b/cui/source/options/treeopt.cxx @@ -317,7 +317,6 @@ SfxTabPage* CreateGeneralTabPage( sal_uInt16 nId, Window* pParent, const SfxItem case SID_SB_DBREGISTEROPTIONS: fnCreate = &::svx::DbRegistrationOptionsPage::Create; break; case RID_SVXPAGE_ACCESSIBILITYCONFIG: fnCreate = &SvxAccessibilityOptionsTabPage::Create; break; case RID_SVXPAGE_OPTIONS_CTL: fnCreate = &SvxCTLOptionsPage::Create ; break; - case RID_SVXPAGE_INET_MOZPLUGIN: fnCreate = &MozPluginTabPage::Create; break; case RID_SVXPAGE_OPTIONS_JAVA: fnCreate = &SvxJavaOptionsPage::Create ; break; case RID_SVXPAGE_ONLINEUPDATE: fnCreate = &SvxOnlineUpdateTabPage::Create; break; case RID_OPTPAGE_CHART_DEFCOLORS: fnCreate = &SvxDefaultColorOptPage::Create; break; @@ -365,7 +364,6 @@ static OptionsMapping_Impl const OptionsMap_Impl[] = { "Internet", NULL, SID_INET_DLG }, { "Internet", "Proxy", RID_SVXPAGE_INET_PROXY }, { "Internet", "Email", RID_SVXPAGE_INET_MAIL }, - { "Internet", "MozillaPlugin", RID_SVXPAGE_INET_MOZPLUGIN }, { "LoadSave", NULL, SID_FILTER_DLG }, { "LoadSave", "General", RID_SFXPAGE_SAVE }, { "LoadSave", "VBAProperties", SID_OPTFILTER_MSOFFICE }, @@ -1766,33 +1764,6 @@ void OfaTreeOptionsDialog::Initialize( const Reference< XFrame >& _xFrame ) if ( nPageId == RID_SVXPAGE_INET_MAIL ) continue; #endif -#if defined MACOSX - // Disable Mozilla Plug-in tab-page on Mac - if ( nPageId == RID_SVXPAGE_INET_MOZPLUGIN ) - continue; -#endif -#ifdef LINUX - // Disable Mozilla Plug-in tab-page on Linux if we find a - // globally installed plugin - if ( nPageId == RID_SVXPAGE_INET_MOZPLUGIN ) { - struct stat sb; - char *p; - bool bHaveSystemWidePlugin = false; - char mozpaths[]="/usr/lib/mozilla/plugins/libnpsoplugin.so:/usr/lib/firefox/plugins/libnpsoplugin.so:/usr/lib/mozilla-firefox/plugins/libnpsoplugin.so:/usr/lib/iceweasel/plugins/libnpsoplugin.so:/usr/lib/iceape/plugins/libnpsoplugin.so:/usr/lib/browser-plugins/libnpsoplugin.so:/usr/lib64/browser-plugins/libnpsoplugin.so"; - - p = strtok(mozpaths, ":"); - while (p != NULL) { - if (stat(p, &sb) != -1) { - bHaveSystemWidePlugin = true; - break; - } - p = strtok(NULL, ":"); - } - - if (bHaveSystemWidePlugin == true) - continue; - } -#endif AddTabPage( nPageId, rInetArray.GetString(i), nGroup ); } } diff --git a/cui/source/options/treeopt.src b/cui/source/options/treeopt.src index 6df8d82..54be930 100644 --- a/cui/source/options/treeopt.src +++ b/cui/source/options/treeopt.src @@ -64,7 +64,6 @@ Resource RID_OFADLG_OPTIONS_TREE_PAGES < "Internet" ; 0; > ; < "Proxy" ; RID_SVXPAGE_INET_PROXY; > ; < "E-mail" ; RID_SVXPAGE_INET_MAIL; > ; - < "Browser Plug-in" ; RID_SVXPAGE_INET_MOZPLUGIN; > ; }; }; StringArray SID_SW_EDITOPTIONS diff --git a/extensions/Module_extensions.mk b/extensions/Module_extensions.mk index de1fa1b..fa527f5 100644 --- a/extensions/Module_extensions.mk +++ b/extensions/Module_extensions.mk @@ -111,22 +111,6 @@ endif endif # ENABLE_NPAPI_FROM_BROWSER=TRUE -ifeq ($(ENABLE_NPAPI_INTO_BROWSER),TRUE) - -$(eval $(call gb_Module_add_targets,extensions,\ - Executable_nsplugin \ - Library_npsoplugin \ - StaticLibrary_npsoenv \ -)) - -ifeq ($(OS),WNT) -$(eval $(call gb_Module_add_targets,extensions,\ - WinResTarget_npsoplugin \ -)) -endif - -endif # ENABLE_NPAPI_INTO_BROWSER=TRUE - ifeq ($(OS),MACOSX) $(eval $(call gb_Module_add_targets,extensions,\ Library_OOoSpotlightImporter \ diff --git a/extensions/source/nsplugin/source/npshell.cxx b/extensions/source/nsplugin/source/npshell.cxx deleted file mode 100644 index 84aff99..0000000 --- a/extensions/source/nsplugin/source/npshell.cxx +++ /dev/null @@ -1,930 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/************************************************************************* - * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * Copyright 2000, 2010 Oracle and/or its affiliates. - * - * OpenOffice.org - a multi-platform office productivity suite - * - * This file is part of OpenOffice.org. - * - * OpenOffice.org is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License version 3 - * only, as published by the Free Software Foundation. - * - * OpenOffice.org is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License version 3 for more details - * (a copy is included in the LICENSE file that accompanied this code). - * - * You should have received a copy of the GNU Lesser General Public License - * version 3 along with OpenOffice.org. If not, see - * <http://www.openoffice.org/license.html> - * for a copy of the LGPLv3 License. - * - ************************************************************************/ - -#ifdef UNIX - -#define XP_UNIX 1 - -#include <strings.h> -#include <arpa/inet.h> -#include <netinet/in.h> -#include <sys/types.h> -#include <sys/socket.h> -#include <sys/stat.h> -#include <sys/wait.h> -#include <unistd.h> -#include <fcntl.h> - -#endif //end of UNIX - -#ifdef WNT - -#ifdef _MSC_VER -#pragma warning (push,1) -#pragma warning (disable:4668) -#endif - -#include <windows.h> -#include <direct.h> -#include <stdlib.h> -#include <io.h> -#include <sys/types.h> -#include <fcntl.h> - -#ifdef _MSC_VER -#pragma warning (pop) -#endif - -#include "tools/pathutils.hxx" - -#endif //end of WNT - - -#include <stdio.h> - -#include <string.h> -#include <errno.h> -#include "boost/scoped_array.hpp" - -#include "npapi.h" -#include "npshell.hxx" -#include "so_env.hxx" -#include "so_msg.hxx" -#include "ns_debug.hxx" - - -#include "nsp_func.hxx" - -#include "npsdk/plugin.h" - -#include <comphelper/documentconstants.hxx> - -#ifdef _MSC_VER -#define NP_DLLPUBLIC -#else -#define NP_DLLPUBLIC SAL_DLLPUBLIC_EXPORT -#endif - -#if defined WNT -static SECURITY_ATTRIBUTES NSP_pipe_access = { - sizeof (SECURITY_ATTRIBUTES), NULL, TRUE }; -#define NSP_Inherited_Pipe(fd) \ - (!CreatePipe(&fd[0], &fd[1], &NSP_pipe_access, 1024 * 10)) -#else -#define NSP_Inherited_Pipe(fp) pipe(fd) -#endif - -/*********************************************************************** - * - * Implementations of plugin API functions - * - ***********************************************************************/ - -static NSP_Mute_Obj send_lock = NSP_New_Mute_Obj(); -static NSP_PIPE_FD write_fd = (NSP_PIPE_FD)-1; - - -long int NSP_WriteToPipe(NSP_PIPE_FD fp, void* buf, unsigned long int len) -{ - unsigned long int len_unix = 0, len_wnt = 0; - - len_unix = NSP_Write_Pipe(fp, buf, len, &len_wnt); -#ifdef UNIX - (void)len_wnt; - return len_unix; -#endif //end of UNIX -#ifdef WNT - (void)len_unix; - return len_wnt; -#endif //end of WNT - -} - -#ifdef UNIX -static pid_t nChildPID = 0; -#endif - -#if defined WNT - -#define MY_LENGTH(s) (sizeof (s) / sizeof *(s) - 1) -#define MY_STRING(s) (s), MY_LENGTH(s) - -namespace { - -bool extendEnvironment(boost::scoped_array< WCHAR > * environment) { - WCHAR path[MAX_PATH]; - int len = MultiByteToWideChar( - CP_ACP, MB_PRECOMPOSED, findInstallDir(), -1, path, MAX_PATH); - //TODO: conversion errors - if (len == 0 || - (tools::buildPath(path, path, path + len - 1, MY_STRING(L"\\ure-link")) - == NULL)) - { - return false; - } - WCHAR * pathEnd = tools::resolveLink(path); - if (pathEnd == NULL) { - return false; - } - pathEnd = tools::buildPath(path, path, pathEnd, MY_STRING(L"\\bin")); - if (pathEnd == NULL) { - return false; - } - WCHAR const * env = GetEnvironmentStringsW(); - if (env == NULL) { - return false; - } - WCHAR const * p = env; - WCHAR const * p1 = NULL; - while (*p != L'\0') { - size_t n = wcslen(p); - if (p1 == NULL && n >= MY_LENGTH(L"PATH=") && - (p[0] == L'P' || p[0] == L'p') && - (p[1] == L'A' || p[1] == L'a') && - (p[2] == L'T' || p[2] == L't') && - (p[3] == L'H' || p[3] == L'h') && p[4] == L'=') - { - p1 = p + MY_LENGTH(L"PATH="); - //TODO: check whether the path is already present in PATH (at the - // beginning of PATH?) - } - p += n + 1; - } - ++p; - if (p1 == NULL) { - environment->reset( - new WCHAR[MY_LENGTH(L"PATH=") + (pathEnd - path) + 1 + (p - env)]); - //TODO: overflow - memcpy(environment->get(), MY_STRING(L"PATH=") * sizeof (WCHAR)); - memcpy( - environment->get() + MY_LENGTH(L"PATH="), path, - ((pathEnd - path) + 1) * sizeof (WCHAR)); - memcpy( - environment->get() + MY_LENGTH(L"PATH=") + (pathEnd - path) + 1, - env, (p - env) * sizeof (WCHAR)); - } else { - environment->reset( - new WCHAR[(p - env) + (pathEnd - path) + MY_LENGTH(L";")]); - //TODO: overflow - memcpy(environment->get(), env, (p1 - env) * sizeof (WCHAR)); - memcpy( - environment->get() + (p1 - env), path, - (pathEnd - path) * sizeof (WCHAR)); - environment->get()[(p1 - env) + (pathEnd - path)] = L';'; - memcpy( - environment->get() + (p1 - env) + (pathEnd - path) + 1, p1, - (p - p1) * sizeof (WCHAR)); - } - return true; -} - -} -#endif - -// start nspluin executable in child process, and use pipe to talk with it -int do_init_pipe() -{ - debug_fprintf(NSP_LOG_APPEND, "enter do_init_pipe 1\n"); - NSP_PIPE_FD fd[2]; - - if( 0 != NSP_Inherited_Pipe(fd) ) - return NPERR_GENERIC_ERROR; - - write_fd = fd[1]; // write fd -#ifdef UNIX - // the parent process will wait for the child process in NPP_Shutdown code - nChildPID = fork(); - - if( ! nChildPID ) // child process -#endif //end of UNIX - { -#ifdef UNIX - char s_read_fd[16] = {0}; - char s_write_fd[16] = {0}; - sprintf(s_read_fd, "%d", fd[0]); - sprintf(s_write_fd, "%d", fd[1]); - char const * progdir = findProgramDir(); - boost::scoped_array< char > exepath( - new char[strlen(progdir) + RTL_CONSTASCII_LENGTH("/nsplugin") + 1]); - sprintf(exepath.get(), "%s/nsplugin", progdir); - boost::scoped_array< char > inifilepath( - new char[ - RTL_CONSTASCII_LENGTH( - "-env:INIFILENAME=vnd.sun.star.pathname:") + - strlen(progdir) + RTL_CONSTASCII_LENGTH("/redirectrc") + 1]); - //TODO: overflow - sprintf( - inifilepath.get(), - "-env:INIFILENAME=vnd.sun.star.pathname:%s/redirectrc", progdir); - execl( - exepath.get(), exepath.get(), s_read_fd, s_write_fd, - inifilepath.get(), progdir, NULL); - _exit(255); -#endif //end of UNIX -#ifdef WNT - WCHAR s_read_fd[16] = {0}; - WCHAR s_write_fd[16] = {0}; - wsprintfW(s_read_fd, L"%d", fd[0]); - wsprintfW(s_write_fd, L"%d", fd[1]); - boost::scoped_array< WCHAR > env; - if (!extendEnvironment(&env)) { - return NPERR_GENERIC_ERROR; - } - WCHAR path[MAX_PATH]; - int pathLen = MultiByteToWideChar( - CP_ACP, MB_PRECOMPOSED, findProgramDir(), -1, path, MAX_PATH); - //TODO: conversion errors - if (pathLen == 0) { - return NPERR_GENERIC_ERROR; - } - WCHAR exe[MAX_PATH]; - WCHAR * exeEnd = tools::buildPath( - exe, path, path + pathLen - 1, MY_STRING(L"\\nsplugin.exe")); - if (exeEnd == NULL) { - return NPERR_GENERIC_ERROR; - } - WCHAR ini[MAX_PATH]; - WCHAR * iniEnd = tools::buildPath( - ini, path, path + pathLen - 1, MY_STRING(L"\\redirect.ini")); - if (iniEnd == NULL) { - return NPERR_GENERIC_ERROR; - } - size_t len = MY_LENGTH(L"\"") + (exeEnd - exe) + MY_LENGTH(L"\" ") + - wcslen(s_read_fd) + MY_LENGTH(L" ") + wcslen(s_write_fd) + - MY_LENGTH(L" \"-env:INIFILENAME=vnd.sun.star.pathname:") + - (iniEnd - ini) + MY_LENGTH(L"\"") + 1; //TODO: overflow - boost::scoped_array< WCHAR > args(new WCHAR[len]); - _snwprintf( - args.get(), len, - L"\"%s\" %s %s \"-env:INIFILENAME=vnd.sun.star.pathname:%s\"", exe, - s_read_fd, s_write_fd, ini); - STARTUPINFOW NSP_StarInfo; - memset((void*) &NSP_StarInfo, 0, sizeof(STARTUPINFOW)); - NSP_StarInfo.cb = sizeof(STARTUPINFOW); - PROCESS_INFORMATION NSP_ProcessInfo; - memset((void*)&NSP_ProcessInfo, 0, sizeof(PROCESS_INFORMATION)); - if(!CreateProcessW( - exe, args.get(), NULL, NULL, TRUE, - CREATE_NO_WINDOW | CREATE_UNICODE_ENVIRONMENT, env.get(), path, - &NSP_StarInfo, &NSP_ProcessInfo)) - { - DWORD Err = GetLastError(); - (void)Err; - } -#endif //end of WNT - } - NSP_Close_Pipe(fd[0]); - return NPERR_NO_ERROR; -} - -bool sendMsg( PLUGIN_MSG* pMsg, size_t len, int iEnsure) -{ - NSP_Lock_Mute_Obj(send_lock); - size_t len_w = 0; - - debug_fprintf(NSP_LOG_APPEND, "try to send message type:%d; len: %d\n", pMsg->msg_id, len); - /* - debug_fprintf(NSP_LOG_APPEND, "NSPlugin Message: msg_id:%d; instance_id:%d; - wnd_id:%d;wnd_x:%d;wnd_y:%d;wnd_w:%d;wnd_h:%d; url:%s\n", - pMsg->msg_id, pMsg->instance_id, pMsg->wnd_id, - pMsg->wnd_x, pMsg->wnd_y, pMsg->wnd_w, pMsg->wnd_h, pMsg->url);*/ - len_w = NSP_WriteToPipe(write_fd, (void*) pMsg, len); - if (len_w != len){ - if(errno == EPIPE) // If pipe breaks, then init pipe again and resend the msg - { - if(iEnsure){ - debug_fprintf(NSP_LOG_APPEND, "send message error, plugin exec need to be restart\n"); - NSP_Close_Pipe(write_fd); - do_init_pipe(); - len_w = NSP_WriteToPipe(write_fd, (void*) pMsg, len); - } - } - else if(errno == EINTR) // If interrupted by signal, then continue to send - { - long new_len; - debug_fprintf(NSP_LOG_APPEND, "send message error, send intrrupted by singal, resend again\n"); - new_len = NSP_WriteToPipe(write_fd, (char*)pMsg+len_w, len-len_w); - len_w = len_w + new_len; - } - else // else return error - { - debug_fprintf(NSP_LOG_APPEND, "send message error :%s.\n", strerror(errno)); - len_w = 0; - } - } - NSP_Unlock_Mute_Obj(send_lock); - debug_fprintf(NSP_LOG_APPEND, "send message success!\n"); - return len_w == len; -} - -extern "C" -{ -char* pMimeTypes = const_cast< char* >( "application/msword:doc:MS Word 97-2003 document;" -"application/msword:dot:MS Word 97-2003 document template;" -"application/vnd.openxmlformats-officedocument.wordprocessingml.document:docx:MS Word document;" -"application/vnd.ms-word.document.macroenabled.12:docm:MS Word document with macros;" -"application/vnd.openxmlformats-officedocument.wordprocessingml.template:dotx:MS Word document template;" -"application/vnd.ms-word.template.macroenabled.12:dotm:MS Word document template with macros;" -"application/rtf:rtf:Rich Text Format;" -"application/vnd.ms-excel:xls:MS Excel 97-2003 spreadsheet;" -"application/vnd.ms-excel:xlt:MS Excel 97-2003 spreadsheet template;" -"application/vnd.ms-excel:xla:MS Excel 97-2003 spreadsheet;" -"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet:xlsx:MS Excel spreadsheet;" -"application/vnd.ms-excel.sheet.macroenabled.12:xlsm:MS Excel spreadsheet with macros;" -"application/vnd.openxmlformats-officedocument.spreadsheetml.template:xltx:MS Excel spreadsheet template;" -"application/vnd.ms-excel.template.macroenabled.12:xltm:MS Excel spreadsheet template with macros;" -"application/vnd.ms-powerpoint:ppt:MS PowerPoint 97-2003 presentation;" -"application/vnd.openxmlformats-officedocument.presentationml.presentation:pptx:MS PowerPoint presentation;" -"application/vnd.ms-powerpoint.presentation.macroenabled.12:pptm:MS PowerPoint presentation with macros;" -"application/vnd.openxmlformats-officedocument.presentationml.template:potx:MS PowerPoint presentation template;" -"application/vnd.ms-powerpoint.template.macroenabled.12:potm:MS PowerPoint presentation template with macros;" -MIMETYPE_VND_SUN_XML_CALC_ASCII ":sxc:StarOffice 6.0/7 Spreadsheet;" -MIMETYPE_VND_SUN_XML_CALC_TEMPLATE_ASCII":stc:StarOffice 6.0/7 Spreadsheet Template;" -MIMETYPE_VND_SUN_XML_DRAW_ASCII ":sxd:StarOffice 6.0/7 Drawing;" -MIMETYPE_VND_SUN_XML_DRAW_TEMPLATE_ASCII ":std:StarOffice 6.0/7 Drawing Template;" -MIMETYPE_VND_SUN_XML_IMPRESS_ASCII ":sxi:StarOffice 6.0/7 Presentation;" -MIMETYPE_VND_SUN_XML_IMPRESS_TEMPLATE_ASCII ":sti:StarOffice 6.0/7 Presentation Template;" -MIMETYPE_VND_SUN_XML_MATH_ASCII ":sxm:StarOffice 6.0/7 Formula;" -MIMETYPE_VND_SUN_XML_WRITER_ASCII ":sxw:StarOffice 6.0/7 Text Document;" -MIMETYPE_VND_SUN_XML_WRITER_GLOBAL_ASCII ":sxg:StarOffice 6.0/7 Master Document;" -MIMETYPE_VND_SUN_XML_WRITER_TEMPLATE_ASCII ":stw:StarOffice 6.0/7 Text Document Template;" -MIMETYPE_OASIS_OPENDOCUMENT_TEXT_ASCII ":odt:OpenDocument Text;" -MIMETYPE_OASIS_OPENDOCUMENT_TEXT_ASCII "-flat-xml:fodt:OpenDocument Text Flat XML;" -MIMETYPE_OASIS_OPENDOCUMENT_TEXT_TEMPLATE_ASCII ":ott:OpenDocument Text Template;" -MIMETYPE_OASIS_OPENDOCUMENT_TEXT_GLOBAL_ASCII ":odm:OpenDocument Master Document;" -MIMETYPE_OASIS_OPENDOCUMENT_TEXT_WEB_ASCII ":oth:HTML Document Template;" -MIMETYPE_OASIS_OPENDOCUMENT_SPREADSHEET_ASCII ":ods:OpenDocument Spreadsheet;" -MIMETYPE_OASIS_OPENDOCUMENT_SPREADSHEET_ASCII "-flat-xml:fods:OpenDocument Spreadsheet Flat XML;" -MIMETYPE_OASIS_OPENDOCUMENT_SPREADSHEET_TEMPLATE_ASCII ":ots:OpenDocument Spreadsheet Template;" -MIMETYPE_OASIS_OPENDOCUMENT_DRAWING_ASCII ":odg:OpenDocument Drawing;" -MIMETYPE_OASIS_OPENDOCUMENT_DRAWING_ASCII "-flat-xml:fodg:OpenDocument Drawing Flat XML;" -MIMETYPE_OASIS_OPENDOCUMENT_DRAWING_TEMPLATE_ASCII ":otg:OpenDocument Drawing Template;" -MIMETYPE_OASIS_OPENDOCUMENT_PRESENTATION_ASCII ":odp:OpenDocument Presentation;" -MIMETYPE_OASIS_OPENDOCUMENT_PRESENTATION_ASCII "-flat-xml:fodp:OpenDocument Presentation Flat XML;" -MIMETYPE_OASIS_OPENDOCUMENT_PRESENTATION_TEMPLATE_ASCII ":otp:OpenDocument Presentation Template;" -MIMETYPE_OASIS_OPENDOCUMENT_FORMULA_ASCII ":odf:OpenDocument Formula;" ); - -NP_DLLPUBLIC -#ifndef HAVE_NON_CONST_NPP_GETMIMEDESCRIPTION -const -#endif -char* -NPP_GetMIMEDescription(void) -{ - debug_fprintf(NSP_LOG_APPEND, "print by Netscape Plugin, NPP_GetMIMEDescription:%s.\n", pMimeTypes); - return(pMimeTypes); -} - -#ifdef UNIX -NP_DLLPUBLIC NPError -NPP_GetValue(NPP /*instance*/, NPPVariable variable, void *value) -{ - NPError err = NPERR_NO_ERROR; - - switch (variable) { - case NPPVpluginNameString: - // add here, for dynamic productname - *((char **)value) = NSP_getPluginName(); - break; - case NPPVpluginDescriptionString: - // add here, for dynamic product description - *((char **)value) = NSP_getPluginDesc(); - break; - default: - err = NPERR_GENERIC_ERROR; - } - debug_fprintf(NSP_LOG_APPEND, "print by Netscape Plugin, NPP_GetValue return %d.\n", err); - return err; -} - - -NPMIMEType -dupMimeType(NPMIMEType type) -{ - NPMIMEType mimetype = (NPMIMEType) NPN_MemAlloc(strlen(type)+1); - strcpy(mimetype, type); - return(mimetype); -} -#endif // end of UNIX - -NPError -NPP_Initialize(void) -{ - debug_fprintf(NSP_LOG_NEW, "NS Plugin begin initialize.\n"); - return (NPError)do_init_pipe(); -} - -#ifdef OJI -NP_DLLPUBLIC jref -NPP_GetJavaClass() -{ - return NULL; -} -#endif - -void -NPP_Shutdown(void) -{ - PLUGIN_MSG msg; - memset((char*)&msg, 0, sizeof(PLUGIN_MSG)); - msg.msg_id = SO_SHUTDOWN; - sendMsg(&msg, sizeof(PLUGIN_MSG), 0); - NSP_Close_Pipe(write_fd); - -#ifdef UNIX - // on Unix we should wait till the child process is dead - int nStatus; - waitpid( nChildPID, &nStatus, 0 ); -#endif -} - -NP_DLLPUBLIC NPError NP_LOADDS -NPP_New(NPMIMEType pluginType, - NPP instance, - uint16_t mode, - int16_t /*argc*/, - char* /*argn*/[], - char* /*argv*/[], - NPSavedData* /*saved*/) -{ - PluginInstance* This; - - debug_fprintf(NSP_LOG_APPEND, "print by Netscape Plugin, enter NPP_New.\n"); - if (instance == NULL) - return NPERR_INVALID_INSTANCE_ERROR; - - instance->pdata = (PluginInstance*)NPN_MemAlloc(sizeof(PluginInstance)); - - memset(instance->pdata, 0 , sizeof(PluginInstance)); - This = (PluginInstance*) instance->pdata; - - if (This == NULL) - { - return NPERR_OUT_OF_MEMORY_ERROR; - } - - memset(This, 0, sizeof(PluginInstance)); - - /* mode is NP_EMBED, NP_FULL, or NP_BACKGROUND (see npapi.h) */ -#ifdef UNIX - This->mode = mode; - This->type = dupMimeType(pluginType); - This->instance = instance; - This->pluginsPageUrl = NULL; - This->exists = FALSE; -#endif //end of UNIX -#ifdef WNT - (void)pluginType; - This->fWindow = (NPWindow*)NPN_MemAlloc(sizeof(NPWindow)); - memset(This->fWindow, 0, sizeof (NPWindow)); - This->fMode = mode; -#endif //end of WNT - PLUGIN_MSG msg; - memset((char*)&msg, 0, sizeof(PLUGIN_MSG)); - msg.msg_id = SO_NEW_INSTANCE; - msg.instance_id = reinterpret_cast<plugin_Int32>(instance); - if (!sendMsg(&msg, sizeof(PLUGIN_MSG), 1)) - return NPERR_GENERIC_ERROR; - - NPN_Status(instance, "......"); - return NPERR_NO_ERROR; -} - -NP_DLLPUBLIC NPError NP_LOADDS -NPP_Destroy(NPP instance, NPSavedData** /*save*/) -{ - debug_fprintf(NSP_LOG_APPEND, "print by Nsplugin, enter NPP_Destroy.\n"); - PluginInstance* This; - - if (instance == NULL) - return NPERR_INVALID_INSTANCE_ERROR; - - // Send destroy message - PLUGIN_MSG msg; - memset((char*)&msg, 0, sizeof(PLUGIN_MSG)); - msg.msg_id = SO_DESTROY; - msg.instance_id = reinterpret_cast<plugin_Int32>(instance); -#ifdef UNIX - msg.wnd_id =(plugin_Int32)((PluginInstance*) instance->pdata)->window; -#endif //end of UNIX -#ifdef WNT - msg.wnd_id =(plugin_Int32)((PluginInstance*) instance->pdata)->fhWnd; -#endif //end of WNT - sendMsg(&msg, sizeof(PLUGIN_MSG), 0); - - // Free the instance space - This = (PluginInstance*) instance->pdata; - if (This != NULL) { -#ifdef UNIX - if (This->type) - NPN_MemFree(This->type); - if (This->pluginsPageUrl) - NPN_MemFree(This->pluginsPageUrl); - if (This->pluginsFileUrl) - NPN_MemFree(This->pluginsFileUrl); -#endif //end of UNIX -#ifdef WNT - if(This->fWindow) - NPN_MemFree(This->fWindow); -#endif //end of WNT - NPN_MemFree(instance->pdata); - instance->pdata = NULL; - } - - return NPERR_NO_ERROR; -} - - -NP_DLLPUBLIC NPError NP_LOADDS -NPP_SetWindow(NPP instance, NPWindow* window) -{ - PluginInstance* This; -#ifdef UNIX - NPSetWindowCallbackStruct *ws_info; -#endif //end of UNIX - - debug_fprintf(NSP_LOG_APPEND, "print by Netscape Plugin, received window resize.\n"); - if (instance == NULL) - return NPERR_INVALID_INSTANCE_ERROR; - - This = (PluginInstance*) instance->pdata; - if (This == NULL) - return NPERR_INVALID_INSTANCE_ERROR; - - // Prepare the general part of the SET_WINDOW message - PLUGIN_MSG msg; - memset((char*)&msg, 0, sizeof(msg)); - msg.msg_id = SO_SET_WINDOW; - msg.instance_id = reinterpret_cast<plugin_Int32>(instance); - - if ( window ) - { - // Set window info for instance -#ifdef UNIX - ws_info = (NPSetWindowCallbackStruct *)window->ws_info; - This->window = reinterpret_cast<Window>( window->window); - This->x = window->x; - This->y = window->y; - This->width = window->width; - This->height = window->height; - This->display = ws_info->display; - This->visual = ws_info->visual; - This->depth = ws_info->depth; - This->colormap = ws_info->colormap; -#endif //end of UNIX -#ifdef WNT - This->fhWnd = (HWND) window->window; - This->fWindow->x = window->x; - This->fWindow->y = window->y; - This->fWindow->width = window->width; - This->fWindow->height = window->height; -#endif //end of WNT - debug_fprintf(NSP_LOG_APPEND, "begin Set window of Office\n"); - debug_fprintf(NSP_LOG_APPEND, "W=(%d) H=(%d)\n", window->width, window->height); - - // fill the window dependent part of the message - msg.wnd_id = reinterpret_cast<plugin_Int32>(window->window); - msg.wnd_x = window->x; - msg.wnd_y = window->y; - msg.wnd_w = window->width; - msg.wnd_h = window->height; - } - else - { - // empty window pointer usually means closing of the parent window -#ifdef UNIX - ws_info = NULL; - This->window = (Window) NULL; - This->x = 0; - This->y = 0; - This->width = 0; - This->height = 0; - This->display = NULL; - This->visual = NULL; -#endif //end of UNIX -#ifdef WNT - This->fhWnd = (HWND) NULL; - This->fWindow->x = 0; - This->fWindow->y = 0; - This->fWindow->width = 0; - This->fWindow->height = 0; -#endif //end of WNT - debug_fprintf(NSP_LOG_APPEND, "Empty window pointer is provided\n"); - - // fill the window dependent part of the message - msg.wnd_id = (plugin_Int32) NULL; - msg.wnd_x = 0; - msg.wnd_y = 0; - msg.wnd_w = 0; - msg.wnd_h = 0; - } - - if(!sendMsg(&msg, sizeof(PLUGIN_MSG), 1)) - { - debug_fprintf(NSP_LOG_APPEND, "NPP_SetWindow return failure \n"); - return NPERR_GENERIC_ERROR; - } - - return NPERR_NO_ERROR; -} - - -NP_DLLPUBLIC NPError NP_LOADDS -NPP_NewStream(NPP instance, - NPMIMEType /*type*/, - NPStream* /*stream*/, - NPBool /*seekable*/, - uint16_t *stype) -{ - if (instance == NULL) - return NPERR_INVALID_INSTANCE_ERROR; - - // Notify Mozilla to fetch the remote file into local cache directory - *stype=NP_ASFILEONLY; - - return NPERR_NO_ERROR; -} - - -int32_t STREAMBUFSIZE = 0X0FFFFFFF; -/* If we are reading from a file in NPAsFile - * mode so we can take any size stream in our - * write call (since we ignore it) */ - -NP_DLLPUBLIC int32_t NP_LOADDS -NPP_WriteReady(NPP /*instance*/, NPStream* /*stream*/) -{ - return STREAMBUFSIZE; -} - - -NP_DLLPUBLIC int32_t NP_LOADDS -NPP_Write(NPP /*instance*/, NPStream* /*stream*/, int32_t /*offset*/, int32_t len, void* /*buffer*/) -{ - return len; /* The number of bytes accepted */ -} - - -NP_DLLPUBLIC NPError NP_LOADDS -NPP_DestroyStream(NPP instance, NPStream* /*stream*/, NPError /*reason*/) -{ - if (instance == NULL) - return NPERR_INVALID_INSTANCE_ERROR; - return NPERR_NO_ERROR; -} - -// save fname to another file with the original file name -NP_DLLPUBLIC void NP_LOADDS -NPP_StreamAsFile(NPP instance, NPStream *stream, const char* fname) -{ - debug_fprintf(NSP_LOG_APPEND, "Into Stream\n"); - char* url = (char*)stream->url; - char filename[1024] = {0}; - char* pfilename = NULL; - if (NULL != (pfilename = strrchr(url, '/'))) - { - strncat(filename, pfilename+1, 1023); - } - else - { - return; - } - - int length = strlen(url); - debug_fprintf(NSP_LOG_APPEND, "url: %s; length: %d\n", url, length); - PluginInstance* This; - This = (PluginInstance*) instance->pdata; - - debug_fprintf(NSP_LOG_APPEND, "NPP_StreamAsFile\n"); - - // copy cached file to another file with original name - char localPathNew[NPP_PATH_MAX] = {0}; - char localFileNew[NPP_PATH_MAX] = {0}; - // if the file is from local - if (0 == STRNICMP(url, "file:///", strlen("file:///"))) - { - sprintf(localPathNew, "%s", fname); - char* pAskSymbol = NULL; - if(NULL != (pAskSymbol = strrchr(localPathNew, '?'))) - *pAskSymbol = 0; - } - else // from network, on windows, fname is c:\abc123 - { - strncpy(localPathNew, fname, NPP_PATH_MAX - 1); - char* pRandomFilename = NULL; - -#ifdef UNIX - if(NULL != (pRandomFilename = strrchr(localPathNew, '/'))) -#endif //end of UNIX -#ifdef WNT - if(NULL != (pRandomFilename = strrchr(localPathNew, '\\'))) -#endif //end of WNT - { - pRandomFilename[1] = 0; - } else { - return; - } - strcat(localPathNew, filename); - char* pAskSymbol = NULL; - if(NULL != (pAskSymbol = strrchr(localPathNew, '?'))) - *pAskSymbol = 0; - - sprintf(localFileNew, "file://%s", localPathNew); - UnixToDosPath(localFileNew); - debug_fprintf(NSP_LOG_APPEND, "fname: %s\n localPathNew: %s\nlocalFileNew: %s\n", - fname, localPathNew, localFileNew); - - restoreUTF8(localPathNew); - restoreUTF8(localFileNew); - if(0 != strcmp(fname, localPathNew)) { - -#ifdef WNT - if(FALSE == CopyFile(fname, localPathNew, FALSE)) - return; -#endif //end of WNT - -#ifdef UNIX - int fdSrc, fdDst; - if((0 > (fdSrc = open(fname, O_RDONLY)))){ - return; - } - remove(localPathNew); - if (0 > (fdDst = open(localPathNew, O_WRONLY|O_CREAT, - S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH))){ - close( fdSrc); - debug_fprintf(NSP_LOG_APPEND, "NPP_StreamAsFile:can not create cache file %s. error: %s \n", - localPathNew, strerror(errno)); - return; - } - char buffer[NPP_BUFFER_SIZE] = {0}; - ssize_t ret; - while(0 <= (ret = read(fdSrc, buffer, NPP_BUFFER_SIZE))) - { - if (0 == ret) - { - if(EINTR == errno) - continue; - else - - break; - } - ssize_t written_bytes = write(fdDst, buffer, ret); - if (written_bytes != ret) - { - debug_fprintf(NSP_LOG_APPEND, "NPP_StreamAsFile:short write to %s. error: %s \n", - localPathNew, strerror(errno)); - close(fdSrc); - close(fdDst); - return; - } - } - close(fdSrc); - close(fdDst); -#endif //end of UNIX - - debug_fprintf(NSP_LOG_APPEND, "NPP_StreamAsFile:before SetURL\n"); - } - } - - // send SO_SET_URl message to inform the new URL - PLUGIN_MSG msg; - memset((char*)&msg, 0, sizeof(PLUGIN_MSG)); - msg.msg_id = SO_SET_URL; - msg.instance_id = reinterpret_cast<plugin_Int32>(instance); -#ifdef UNIX - msg.wnd_id =(plugin_Int32)(This->window); - sprintf(msg.url, "file://%s", localPathNew); -#endif //end of UNIX -#ifdef WNT - msg.wnd_id =(plugin_Int32)(This->fhWnd); - sprintf(msg.url, "file:///%s", localPathNew); - DosToUnixPath(msg.url); -#endif //endof WNT - if(!sendMsg(&msg, sizeof(PLUGIN_MSG), 1)) - debug_fprintf(NSP_LOG_APPEND, "NPP_StreamAsFile send SO_SET_URL return failure \n"); - - // send SO_SET_WINDOW message -// memset((char*)&msg, 0, sizeof(PLUGIN_MSG)); - msg.msg_id = SO_SET_WINDOW; - msg.instance_id = reinterpret_cast<plugin_Int32>(instance); -// msg.wnd_id =(plugin_Int32)((PluginInstance*) instance->pdata)->window; -#ifdef UNIX - msg.wnd_x = This->x; - msg.wnd_y = This->y; - msg.wnd_w = This->width; - msg.wnd_h = This->height; -#endif //end of UNIX -#ifdef WNT - msg.wnd_x = This->fWindow->x; - msg.wnd_y = This->fWindow->y; - msg.wnd_w = This->fWindow->width; - msg.wnd_h = This->fWindow->height; -#endif //endof WNT - if(!sendMsg(&msg, sizeof(PLUGIN_MSG), 1)) - debug_fprintf(NSP_LOG_APPEND, "NPP_StreamAsFile send SO_SET_WINDOW return failure \n"); -} - -NP_DLLPUBLIC void NP_LOADDS -NPP_URLNotify(NPP /*instance*/, const char* /*url*/, - NPReason /*reason*/, void* /*notifyData*/) -{ -} - - -NP_DLLPUBLIC void NP_LOADDS -NPP_Print(NPP instance, NPPrint* printInfo) -{ - if(printInfo == NULL) - return; - - if (instance != NULL) { - /***** Insert NPP_Print code here *****/ - PluginInstance* This = (PluginInstance*) instance->pdata; - (void)This; - PLUGIN_MSG msg; - memset((char*)&msg, 0, sizeof(PLUGIN_MSG)); - msg.msg_id = SO_PRINT; - msg.instance_id = reinterpret_cast<plugin_Int32>(instance); - if(!sendMsg(&msg, sizeof(PLUGIN_MSG), 1)) - debug_fprintf(NSP_LOG_APPEND, "NPP_StreamAsFile send SO_SET_WINDOW return failure \n"); - /**************************************/ - - if (printInfo->mode == NP_FULL) { - /* - * PLUGIN DEVELOPERS: - * If your plugin would like to take over - * printing completely when it is in full-screen mode, - * set printInfo->pluginPrinted to TRUE and print your - * plugin as you see fit. If your plugin wants Netscape - * to handle printing in this case, set - * printInfo->pluginPrinted to FALSE (the default) and - * do nothing. If you do want to handle printing - * yourself, printOne is true if the print button - * (as opposed to the print menu) was clicked. - * On the Macintosh, platformPrint is a THPrint; on - * Windows, platformPrint is a structure - * (defined in npapi.h) containing the printer name, port, - * etc. - */ - - /***** Insert NPP_Print code here *****\ - void* platformPrint = - printInfo->print.fullPrint.platformPrint; - NPBool printOne = - printInfo->print.fullPrint.printOne; - \**************************************/ - - /* Do the default*/ - printInfo->print.fullPrint.pluginPrinted = FALSE; - } - else { /* If not fullscreen, we must be embedded */ - /* - * PLUGIN DEVELOPERS: - * If your plugin is embedded, or is full-screen - * but you returned false in pluginPrinted above, NPP_Print - * will be called with mode == NP_EMBED. The NPWindow - * in the printInfo gives the location and dimensions of - * the embedded plugin on the printed page. On the - * Macintosh, platformPrint is the printer port; on - * Windows, platformPrint is the handle to the printing - * device context. - */ - - /***** Insert NPP_Print code here *****\ - NPWindow* printWindow = - &(printInfo->print.embedPrint.window); - void* platformPrint = - printInfo->print.embedPrint.platformPrint; - \**************************************/ - } - } -} - -}// end of extern "C" - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/extensions/source/nsplugin/source/npshell.hxx b/extensions/source/nsplugin/source/npshell.hxx deleted file mode 100644 index 343f3b0..0000000 --- a/extensions/source/nsplugin/source/npshell.hxx +++ /dev/null @@ -1,99 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/************************************************************************* - * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * Copyright 2000, 2010 Oracle and/or its affiliates. - * - * OpenOffice.org - a multi-platform office productivity suite - * - * This file is part of OpenOffice.org. - * - * OpenOffice.org is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License version 3 - * only, as published by the Free Software Foundation. - * - * OpenOffice.org is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License version 3 for more details - * (a copy is included in the LICENSE file that accompanied this code). - * - * You should have received a copy of the GNU Lesser General Public License - * version 3 along with OpenOffice.org. If not, see - * <http://www.openoffice.org/license.html> - * for a copy of the LGPLv3 License. - * - ************************************************************************/ - -#ifndef INCLUDED_EXTENSIONS_SOURCE_NSPLUGIN_SOURCE_NPSHELL_HXX -#define INCLUDED_EXTENSIONS_SOURCE_NSPLUGIN_SOURCE_NPSHELL_HXX - -#ifdef UNIX - -#ifndef MOZ_X11 -# define MOZ_X11 -#endif - -#include <gtk/gtk.h> -#include <X11/Xlib.h> - -typedef struct _PluginInstance -{ - uint16_t mode; -#ifdef MOZ_X11 - Window window; - Display *display; -#endif - uint32_t x, y; - uint32_t width, height; - NPMIMEType type; - char *message; - - NPP instance; - char *pluginsPageUrl; - char *pluginsFileUrl; - NPBool pluginsHidden; -#ifdef MOZ_X11 - Visual* visual; - Colormap colormap; -#endif - unsigned int depth; - GtkWidget* dialogBox; - - NPBool exists; /* Does the widget already exist? */ - int action; /* What action should we take? (GET or REFRESH) */ - -} PluginInstance; - -typedef struct _MimeTypeElement -{ - PluginInstance *pinst; - struct _MimeTypeElement *next; -} MimeTypeElement; - -#endif //end of UNIX - - -#ifdef WNT - -#include <windows.h> - -typedef struct _PluginInstance -{ - NPWindow* fWindow; - uint16_t fMode; - - HWND fhWnd; - WNDPROC fDefaultWindowProc; -} PluginInstance; - -#endif //end of WNT - - -/* Extern functions */ -extern "C" NPMIMEType dupMimeType(NPMIMEType type); - -#endif // INCLUDED_EXTENSIONS_SOURCE_NSPLUGIN_SOURCE_NPSHELL_HXX - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ ... etc. - the rest is truncated _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits