mozilla-kde.patch
changeset 467 a9baaad57fa4
parent 438 7d934b2f5014
child 515 0f6539389500
child 518 d6bd28cbe760
equal deleted inserted replaced
466:c0ae7c025b78 467:a9baaad57fa4
     5      https://bugzilla.novell.com/show_bug.cgi?id=170055
     5      https://bugzilla.novell.com/show_bug.cgi?id=170055
     6 
     6 
     7 diff --git a/modules/libpref/src/Makefile.in b/modules/libpref/src/Makefile.in
     7 diff --git a/modules/libpref/src/Makefile.in b/modules/libpref/src/Makefile.in
     8 --- a/modules/libpref/src/Makefile.in
     8 --- a/modules/libpref/src/Makefile.in
     9 +++ b/modules/libpref/src/Makefile.in
     9 +++ b/modules/libpref/src/Makefile.in
    10 @@ -77,14 +77,16 @@ GREPREF_FILES = $(topsrcdir)/netwerk/bas
    10 @@ -45,14 +45,16 @@ GREPREF_FILES = $(topsrcdir)/netwerk/bas
    11  # Optimizer bug with GCC 3.2.2 on OS/2
    11  # Optimizer bug with GCC 3.2.2 on OS/2
    12  ifeq ($(OS_ARCH), OS2)
    12  ifeq ($(OS_ARCH), OS2)
    13  nsPrefService.$(OBJ_SUFFIX): nsPrefService.cpp
    13  nsPrefService.$(OBJ_SUFFIX): nsPrefService.cpp
    14  	$(REPORT_BUILD)
    14  	$(REPORT_BUILD)
    15  	@$(MAKE_DEPS_AUTO_CXX)
    15  	@$(MAKE_DEPS_AUTO_CXX)
    25  libs:: greprefs.js
    25  libs:: greprefs.js
    26  	$(INSTALL) $^ $(DIST)/bin/
    26  	$(INSTALL) $^ $(DIST)/bin/
    27 diff --git a/modules/libpref/src/Preferences.cpp b/modules/libpref/src/Preferences.cpp
    27 diff --git a/modules/libpref/src/Preferences.cpp b/modules/libpref/src/Preferences.cpp
    28 --- a/modules/libpref/src/Preferences.cpp
    28 --- a/modules/libpref/src/Preferences.cpp
    29 +++ b/modules/libpref/src/Preferences.cpp
    29 +++ b/modules/libpref/src/Preferences.cpp
    30 @@ -57,16 +57,17 @@
    30 @@ -23,16 +23,17 @@
    31  #include "nsIStringEnumerator.h"
    31  #include "nsIStringEnumerator.h"
    32  #include "nsIZipReader.h"
    32  #include "nsIZipReader.h"
    33  #include "nsPrefBranch.h"
    33  #include "nsPrefBranch.h"
    34  #include "nsXPIDLString.h"
    34  #include "nsXPIDLString.h"
    35  #include "nsCRT.h"
    35  #include "nsCRT.h"
    43  #include "pldhash.h"
    43  #include "pldhash.h"
    44  
    44  
    45  #include "prefapi.h"
    45  #include "prefapi.h"
    46  #include "prefread.h"
    46  #include "prefread.h"
    47  #include "prefapi_private_data.h"
    47  #include "prefapi_private_data.h"
    48 @@ -941,16 +942,34 @@ pref_LoadPrefsInDir(nsIFile* aDir, char 
    48 @@ -907,16 +908,34 @@ pref_LoadPrefsInDir(nsIFile* aDir, char 
    49  
    49  
    50  static nsresult pref_LoadPrefsInDirList(const char *listId)
    50  static nsresult pref_LoadPrefsInDirList(const char *listId)
    51  {
    51  {
    52    nsresult rv;
    52    nsresult rv;
    53    nsCOMPtr<nsIProperties> dirSvc(do_GetService(NS_DIRECTORY_SERVICE_CONTRACTID, &rv));
    53    nsCOMPtr<nsIProperties> dirSvc(do_GetService(NS_DIRECTORY_SERVICE_CONTRACTID, &rv));
    78                getter_AddRefs(list));
    78                getter_AddRefs(list));
    79    if (!list)
    79    if (!list)
    80      return NS_OK;
    80      return NS_OK;
    81  
    81  
    82    bool hasMore;
    82    bool hasMore;
    83 @@ -966,17 +985,17 @@ static nsresult pref_LoadPrefsInDirList(
    83 @@ -932,17 +951,17 @@ static nsresult pref_LoadPrefsInDirList(
    84  
    84  
    85      nsCAutoString leaf;
    85      nsCAutoString leaf;
    86      path->GetNativeLeafName(leaf);
    86      path->GetNativeLeafName(leaf);
    87  
    87  
    88      // Do we care if a file provided by this process fails to load?
    88      // Do we care if a file provided by this process fails to load?
    97  
    97  
    98  static nsresult pref_ReadPrefFromJar(nsZipArchive* jarReader, const char *name)
    98  static nsresult pref_ReadPrefFromJar(nsZipArchive* jarReader, const char *name)
    99  {
    99  {
   100    nsZipItemPtr<char> manifest(jarReader, name, true);
   100    nsZipItemPtr<char> manifest(jarReader, name, true);
   101    NS_ENSURE_TRUE(manifest.Buffer(), NS_ERROR_NOT_AVAILABLE);
   101    NS_ENSURE_TRUE(manifest.Buffer(), NS_ERROR_NOT_AVAILABLE);
   102 @@ -1070,28 +1089,40 @@ static nsresult pref_InitInitialObjects(
   102 @@ -1036,28 +1055,40 @@ static nsresult pref_InitInitialObjects(
   103    /* these pref file names should not be used: we process them after all other application pref files for backwards compatibility */
   103    /* these pref file names should not be used: we process them after all other application pref files for backwards compatibility */
   104    static const char* specialFiles[] = {
   104    static const char* specialFiles[] = {
   105  #if defined(XP_MACOSX)
   105  #if defined(XP_MACOSX)
   106      "macprefs.js"
   106      "macprefs.js"
   107  #elif defined(XP_WIN)
   107  #elif defined(XP_WIN)
   141    nsRefPtr<nsZipArchive> appJarReader = mozilla::Omnijar::GetReader(mozilla::Omnijar::APP);
   141    nsRefPtr<nsZipArchive> appJarReader = mozilla::Omnijar::GetReader(mozilla::Omnijar::APP);
   142    // GetReader(mozilla::Omnijar::APP) returns null when $app == $gre, in which
   142    // GetReader(mozilla::Omnijar::APP) returns null when $app == $gre, in which
   143 diff --git a/toolkit/components/downloads/Makefile.in b/toolkit/components/downloads/Makefile.in
   143 diff --git a/toolkit/components/downloads/Makefile.in b/toolkit/components/downloads/Makefile.in
   144 --- a/toolkit/components/downloads/Makefile.in
   144 --- a/toolkit/components/downloads/Makefile.in
   145 +++ b/toolkit/components/downloads/Makefile.in
   145 +++ b/toolkit/components/downloads/Makefile.in
   146 @@ -73,8 +73,11 @@ EXTRA_COMPONENTS = \
   146 @@ -41,9 +41,12 @@ EXTRA_COMPONENTS = \
   147    nsDownloadManagerUI.js \
       
   148    nsDownloadManagerUI.manifest \
   147    nsDownloadManagerUI.manifest \
   149    $(NULL)
   148    $(NULL)
   150  endif
   149  endif
   151  
   150  
   152  TEST_DIRS += test
   151  TEST_DIRS += test
   153  
   152  
   154  include $(topsrcdir)/config/rules.mk
   153  include $(topsrcdir)/config/rules.mk
   155 +
   154  
   156 +LOCAL_INCLUDES += -I$(topsrcdir)/toolkit/xre
   155 +LOCAL_INCLUDES += -I$(topsrcdir)/toolkit/xre
   157 +
   156 +
       
   157 +
       
   158  CXXFLAGS += $(TK_CFLAGS)
   158 diff --git a/toolkit/components/downloads/nsDownloadManager.cpp b/toolkit/components/downloads/nsDownloadManager.cpp
   159 diff --git a/toolkit/components/downloads/nsDownloadManager.cpp b/toolkit/components/downloads/nsDownloadManager.cpp
   159 --- a/toolkit/components/downloads/nsDownloadManager.cpp
   160 --- a/toolkit/components/downloads/nsDownloadManager.cpp
   160 +++ b/toolkit/components/downloads/nsDownloadManager.cpp
   161 +++ b/toolkit/components/downloads/nsDownloadManager.cpp
   161 @@ -74,16 +74,20 @@
   162 @@ -35,16 +35,20 @@
   162  
   163  
   163  #ifdef XP_WIN
   164  #ifdef XP_WIN
   164  #include <shlobj.h>
   165  #include <shlobj.h>
   165  #ifdef DOWNLOAD_SCANNER
   166  #ifdef DOWNLOAD_SCANNER
   166  #include "nsDownloadScanner.h"
   167  #include "nsDownloadScanner.h"
   177  
   178  
   178  #ifdef MOZ_WIDGET_ANDROID
   179  #ifdef MOZ_WIDGET_ANDROID
   179  #include "AndroidBridge.h"
   180  #include "AndroidBridge.h"
   180  #endif
   181  #endif
   181  
   182  
   182 @@ -2259,16 +2263,25 @@ nsDownload::SetState(DownloadState aStat
   183 @@ -2236,16 +2240,25 @@ nsDownload::SetState(DownloadState aStat
   183        nsCOMPtr<nsIPrefBranch> pref(do_GetService(NS_PREFSERVICE_CONTRACTID));
   184        nsCOMPtr<nsIPrefBranch> pref(do_GetService(NS_PREFSERVICE_CONTRACTID));
   184  
   185  
   185        // Master pref to control this function.
   186        // Master pref to control this function.
   186        bool showTaskbarAlert = true;
   187        bool showTaskbarAlert = true;
   187        if (pref)
   188        if (pref)
   203  
   204  
   204          PRInt64 alertIntervalUSec = alertInterval * PR_USEC_PER_MSEC;
   205          PRInt64 alertIntervalUSec = alertInterval * PR_USEC_PER_MSEC;
   205          PRInt64 goat = PR_Now() - mStartTime;
   206          PRInt64 goat = PR_Now() - mStartTime;
   206          showTaskbarAlert = goat > alertIntervalUSec;
   207          showTaskbarAlert = goat > alertIntervalUSec;
   207  
   208  
   208 @@ -2292,19 +2305,20 @@ nsDownload::SetState(DownloadState aStat
   209 @@ -2269,19 +2282,20 @@ nsDownload::SetState(DownloadState aStat
   209                // If downloads are automatically removed per the user's
   210                // If downloads are automatically removed per the user's
   210                // retention policy, there's no reason to make the text clickable
   211                // retention policy, there's no reason to make the text clickable
   211                // because if it is, they'll click open the download manager and
   212                // because if it is, they'll click open the download manager and
   212                // the items they downloaded will have been removed.
   213                // the items they downloaded will have been removed.
   213                alerts->ShowAlertNotification(
   214                alerts->ShowAlertNotification(
   218 +          }
   219 +          }
   219          }
   220          }
   220        }
   221        }
   221 +      }
   222 +      }
   222  
   223  
   223  #if defined(XP_WIN) || defined(XP_MACOSX) || defined(MOZ_WIDGET_ANDROID)
   224  #if defined(XP_WIN) || defined(XP_MACOSX) || defined(MOZ_WIDGET_ANDROID) || defined(MOZ_WIDGET_GTK2)
   224        nsCOMPtr<nsIFileURL> fileURL = do_QueryInterface(mTarget);
   225        nsCOMPtr<nsIFileURL> fileURL = do_QueryInterface(mTarget);
   225        nsCOMPtr<nsIFile> file;
   226        nsCOMPtr<nsIFile> file;
   226        nsAutoString path;
   227        nsAutoString path;
   227  
   228  
   228        if (fileURL &&
   229        if (fileURL &&
   229            NS_SUCCEEDED(fileURL->GetFile(getter_AddRefs(file))) &&
   230            NS_SUCCEEDED(fileURL->GetFile(getter_AddRefs(file))) &&
   230 diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn
   231 diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn
   231 --- a/toolkit/content/jar.mn
   232 --- a/toolkit/content/jar.mn
   232 +++ b/toolkit/content/jar.mn
   233 +++ b/toolkit/content/jar.mn
   233 @@ -44,29 +44,33 @@ toolkit.jar:
   234 @@ -45,29 +45,33 @@ toolkit.jar:
   234  *+ content/global/viewZoomOverlay.js          (viewZoomOverlay.js)
   235  *+ content/global/viewZoomOverlay.js          (viewZoomOverlay.js)
   235  *+ content/global/bindings/autocomplete.xml    (widgets/autocomplete.xml)
   236  *+ content/global/bindings/autocomplete.xml    (widgets/autocomplete.xml)
   236  *+ content/global/bindings/browser.xml         (widgets/browser.xml)
   237  *+ content/global/bindings/browser.xml         (widgets/browser.xml)
   237  *+ content/global/bindings/button.xml          (widgets/button.xml)
   238  *+ content/global/bindings/button.xml          (widgets/button.xml)
   238  *+ content/global/bindings/checkbox.xml        (widgets/checkbox.xml)
   239  *+ content/global/bindings/checkbox.xml        (widgets/checkbox.xml)
  2095 +#    PrefWindow I   (June 4, 1999)
  2096 +#    PrefWindow I   (June 4, 1999)
  2096 +#
  2097 +#
  2097 diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
  2098 diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
  2098 --- a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
  2099 --- a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
  2099 +++ b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
  2100 +++ b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
  2100 @@ -46,16 +46,18 @@
  2101 @@ -12,16 +12,18 @@
  2101  #include "nsArrayUtils.h"
  2102  #include "nsArrayUtils.h"
  2102  #include "prnetdb.h"
  2103  #include "prnetdb.h"
  2103  #include "prenv.h"
  2104  #include "prenv.h"
  2104  #include "nsPrintfCString.h"
  2105  #include "nsPrintfCString.h"
  2105  #include "nsNetUtil.h"
  2106  #include "nsNetUtil.h"
  2114    NS_DECL_ISUPPORTS
  2115    NS_DECL_ISUPPORTS
  2115    NS_DECL_NSISYSTEMPROXYSETTINGS
  2116    NS_DECL_NSISYSTEMPROXYSETTINGS
  2116  
  2117  
  2117    nsUnixSystemProxySettings() {}
  2118    nsUnixSystemProxySettings() {}
  2118    nsresult Init();
  2119    nsresult Init();
  2119 @@ -67,16 +69,17 @@ private:
  2120 @@ -33,16 +35,17 @@ private:
  2120    nsCOMPtr<nsIGSettingsService> mGSettings;
  2121    nsCOMPtr<nsIGSettingsService> mGSettings;
  2121    nsCOMPtr<nsIGSettingsCollection> mProxySettings;
  2122    nsCOMPtr<nsIGSettingsCollection> mProxySettings;
  2122    nsInterfaceHashtable<nsCStringHashKey, nsIGSettingsCollection> mSchemeProxySettings;
  2123    nsInterfaceHashtable<nsCStringHashKey, nsIGSettingsCollection> mSchemeProxySettings;
  2123    bool IsProxyMode(const char* aMode);
  2124    bool IsProxyMode(const char* aMode);
  2124    nsresult SetProxyResultFromGConf(const char* aKeyBase, const char* aType, nsACString& aResult);
  2125    nsresult SetProxyResultFromGConf(const char* aKeyBase, const char* aType, nsACString& aResult);
  2132  
  2133  
  2133  nsresult
  2134  nsresult
  2134  nsUnixSystemProxySettings::Init()
  2135  nsUnixSystemProxySettings::Init()
  2135  {
  2136  {
  2136    // If this is a GNOME session, load gconf and try to use its preferences.
  2137    // If this is a GNOME session, load gconf and try to use its preferences.
  2137 @@ -529,16 +532,19 @@ nsUnixSystemProxySettings::GetProxyForUR
  2138 @@ -495,16 +498,19 @@ nsUnixSystemProxySettings::GetProxyForUR
  2138    nsCAutoString host;
  2139    nsCAutoString host;
  2139    rv = aURI->GetHost(host);
  2140    rv = aURI->GetHost(host);
  2140    NS_ENSURE_SUCCESS(rv, rv);
  2141    NS_ENSURE_SUCCESS(rv, rv);
  2141  
  2142  
  2142    PRInt32 port;
  2143    PRInt32 port;
  2152        return rv;
  2153        return rv;
  2153    }
  2154    }
  2154    if (mGConf)
  2155    if (mGConf)
  2155      return GetProxyFromGConf(scheme, host, port, aResult);
  2156      return GetProxyFromGConf(scheme, host, port, aResult);
  2156  
  2157  
  2157 @@ -564,8 +570,34 @@ static const mozilla::Module::ContractID
  2158 @@ -530,8 +536,34 @@ static const mozilla::Module::ContractID
  2158  
  2159  
  2159  static const mozilla::Module kUnixProxyModule = {
  2160  static const mozilla::Module kUnixProxyModule = {
  2160    mozilla::Module::kVersion,
  2161    mozilla::Module::kVersion,
  2161    kUnixProxyCIDs,
  2162    kUnixProxyCIDs,
  2162    kUnixProxyContracts
  2163    kUnixProxyContracts
  2190 +}
  2191 +}
  2191 +
  2192 +
  2192 diff --git a/toolkit/xre/Makefile.in b/toolkit/xre/Makefile.in
  2193 diff --git a/toolkit/xre/Makefile.in b/toolkit/xre/Makefile.in
  2193 --- a/toolkit/xre/Makefile.in
  2194 --- a/toolkit/xre/Makefile.in
  2194 +++ b/toolkit/xre/Makefile.in
  2195 +++ b/toolkit/xre/Makefile.in
  2195 @@ -100,17 +100,18 @@ else
  2196 @@ -69,17 +69,18 @@ else
  2196  ifeq ($(MOZ_WIDGET_TOOLKIT),cocoa)
  2197  ifeq ($(MOZ_WIDGET_TOOLKIT),cocoa)
  2197  CMMSRCS = nsNativeAppSupportCocoa.mm
  2198  CMMSRCS = nsNativeAppSupportCocoa.mm
  2198  EXPORTS += MacQuirks.h
  2199  EXPORTS += MacQuirks.h
  2199  else
  2200  else
  2200  ifeq ($(MOZ_WIDGET_TOOLKIT),os2)
  2201  ifeq ($(MOZ_WIDGET_TOOLKIT),os2)
  2676 +
  2677 +
  2677 +#endif // nsKDEUtils
  2678 +#endif // nsKDEUtils
  2678 diff --git a/uriloader/exthandler/Makefile.in b/uriloader/exthandler/Makefile.in
  2679 diff --git a/uriloader/exthandler/Makefile.in b/uriloader/exthandler/Makefile.in
  2679 --- a/uriloader/exthandler/Makefile.in
  2680 --- a/uriloader/exthandler/Makefile.in
  2680 +++ b/uriloader/exthandler/Makefile.in
  2681 +++ b/uriloader/exthandler/Makefile.in
  2681 @@ -90,18 +90,19 @@ LOCAL_INCLUDES = -I$(srcdir)
  2682 @@ -58,18 +58,19 @@ LOCAL_INCLUDES = -I$(srcdir)
  2682  LOCAL_INCLUDES += -I$(topsrcdir)/dom/base \
  2683  LOCAL_INCLUDES += -I$(topsrcdir)/dom/base \
  2683              -I$(topsrcdir)/dom/ipc \
  2684              -I$(topsrcdir)/dom/ipc \
  2684              -I$(topsrcdir)/content/base/src \
  2685              -I$(topsrcdir)/content/base/src \
  2685              -I$(topsrcdir)/content/events/src \
  2686              -I$(topsrcdir)/content/events/src \
  2686              -I$(topsrcdir)/netwerk/base/src \
  2687              -I$(topsrcdir)/netwerk/base/src \
  3044 +
  3045 +
  3045 +};
  3046 +};
  3046 diff --git a/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp b/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp
  3047 diff --git a/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp b/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp
  3047 --- a/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp
  3048 --- a/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp
  3048 +++ b/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp
  3049 +++ b/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp
  3049 @@ -50,30 +50,33 @@
  3050 @@ -16,30 +16,33 @@
  3050  #include <QString>
  3051  #include <QString>
  3051  #if (MOZ_ENABLE_CONTENTACTION)
  3052  #if (MOZ_ENABLE_CONTENTACTION)
  3052  #include <contentaction/contentaction.h>
  3053  #include <contentaction/contentaction.h>
  3053  #include "nsContentHandlerApp.h"
  3054  #include "nsContentHandlerApp.h"
  3054  #endif
  3055  #endif
  3080      HildonURIAction *action = hildon_uri_get_default_action(mSchemeOrType.get(), nsnull);
  3081      HildonURIAction *action = hildon_uri_get_default_action(mSchemeOrType.get(), nsnull);
  3081      if (action) {
  3082      if (action) {
  3082        nsCAutoString spec;
  3083        nsCAutoString spec;
  3083        aURI->GetAsciiSpec(spec);
  3084        aURI->GetAsciiSpec(spec);
  3084        if (hildon_uri_open(spec.get(), action, nsnull))
  3085        if (hildon_uri_open(spec.get(), action, nsnull))
  3085 @@ -95,22 +98,22 @@ nsMIMEInfoUnix::LoadUriInternal(nsIURI *
  3086 @@ -61,22 +64,22 @@ nsMIMEInfoUnix::LoadUriInternal(nsIURI *
  3086  
  3087  
  3087    return rv;
  3088    return rv;
  3088  }
  3089  }
  3089  
  3090  
  3090  NS_IMETHODIMP
  3091  NS_IMETHODIMP
  3105      *_retval = true;
  3106      *_retval = true;
  3106  
  3107  
  3107    if (*_retval)
  3108    if (*_retval)
  3108      return NS_OK;
  3109      return NS_OK;
  3109  
  3110  
  3110 @@ -153,16 +156,33 @@ nsMIMEInfoUnix::LaunchDefaultWithFile(ns
  3111 @@ -119,16 +122,33 @@ nsMIMEInfoUnix::LaunchDefaultWithFile(ns
  3111      ContentAction::Action::defaultActionForFile(uri, QString(mSchemeOrType.get()));
  3112      ContentAction::Action::defaultActionForFile(uri, QString(mSchemeOrType.get()));
  3112    if (action.isValid()) {
  3113    if (action.isValid()) {
  3113      action.trigger();
  3114      action.trigger();
  3114      return NS_OK;
  3115      return NS_OK;
  3115    }
  3116    }
  3139      // nsGIOMimeApp->Launch wants a URI string instead of local file
  3140      // nsGIOMimeApp->Launch wants a URI string instead of local file
  3140      nsresult rv;
  3141      nsresult rv;
  3141      nsCOMPtr<nsIIOService> ioservice = do_GetService(NS_IOSERVICE_CONTRACTID, &rv);
  3142      nsCOMPtr<nsIIOService> ioservice = do_GetService(NS_IOSERVICE_CONTRACTID, &rv);
  3142      NS_ENSURE_SUCCESS(rv, rv);
  3143      NS_ENSURE_SUCCESS(rv, rv);
  3143      nsCOMPtr<nsIURI> uri;
  3144      nsCOMPtr<nsIURI> uri;
  3144 @@ -180,17 +200,17 @@ nsMIMEInfoUnix::LaunchDefaultWithFile(ns
  3145 @@ -146,17 +166,17 @@ nsMIMEInfoUnix::LaunchDefaultWithFile(ns
  3145      /* Fallback to GnomeVFS */
  3146      /* Fallback to GnomeVFS */
  3146      nsCOMPtr<nsIGnomeVFSMimeApp> app;
  3147      nsCOMPtr<nsIGnomeVFSMimeApp> app;
  3147      if (NS_SUCCEEDED(gnomevfs->GetAppForMimeType(mSchemeOrType, getter_AddRefs(app))) && app)
  3148      if (NS_SUCCEEDED(gnomevfs->GetAppForMimeType(mSchemeOrType, getter_AddRefs(app))) && app)
  3148        return app->Launch(nativePath);
  3149        return app->Launch(nativePath);
  3149    }
  3150    }
  3161          return app->Launch(uriSpec);
  3162          return app->Launch(uriSpec);
  3162      } else if (gnomevfs) {
  3163      } else if (gnomevfs) {
  3163 diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exthandler/unix/nsOSHelperAppService.cpp
  3164 diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exthandler/unix/nsOSHelperAppService.cpp
  3164 --- a/uriloader/exthandler/unix/nsOSHelperAppService.cpp
  3165 --- a/uriloader/exthandler/unix/nsOSHelperAppService.cpp
  3165 +++ b/uriloader/exthandler/unix/nsOSHelperAppService.cpp
  3166 +++ b/uriloader/exthandler/unix/nsOSHelperAppService.cpp
  3166 @@ -44,17 +44,17 @@
  3167 @@ -10,17 +10,17 @@
  3167  #if defined(MOZ_ENABLE_CONTENTACTION)
  3168  #if defined(MOZ_ENABLE_CONTENTACTION)
  3168  #include <contentaction/contentaction.h>
  3169  #include <contentaction/contentaction.h>
  3169  #include <QString>
  3170  #include <QString>
  3170  #endif
  3171  #endif
  3171  
  3172  
  3180  #include "nsReadableUtils.h"
  3181  #include "nsReadableUtils.h"
  3181  #include "nsUnicharUtils.h"
  3182  #include "nsUnicharUtils.h"
  3182  #include "nsXPIDLString.h"
  3183  #include "nsXPIDLString.h"
  3183  #include "nsIURL.h"
  3184  #include "nsIURL.h"
  3184  #include "nsIFileStreams.h"
  3185  #include "nsIFileStreams.h"
  3185 @@ -1191,29 +1191,29 @@ nsresult nsOSHelperAppService::OSProtoco
  3186 @@ -1157,29 +1157,29 @@ nsresult nsOSHelperAppService::OSProtoco
  3186      ContentAction::Action::defaultActionForScheme(QString(aProtocolScheme) + ':');
  3187      ContentAction::Action::defaultActionForScheme(QString(aProtocolScheme) + ':');
  3187  
  3188  
  3188    if (action.isValid())
  3189    if (action.isValid())
  3189      *aHandlerExists = true;
  3190      *aHandlerExists = true;
  3190  #endif
  3191  #endif
  3212  #endif
  3213  #endif
  3213  }
  3214  }
  3214  
  3215  
  3215  nsresult nsOSHelperAppService::GetFileTokenForPath(const PRUnichar * platformAppPath, nsIFile ** aFile)
  3216  nsresult nsOSHelperAppService::GetFileTokenForPath(const PRUnichar * platformAppPath, nsIFile ** aFile)
  3216  {
  3217  {
  3217 @@ -1299,17 +1299,17 @@ nsOSHelperAppService::GetFromExtension(c
  3218 @@ -1265,17 +1265,17 @@ nsOSHelperAppService::GetFromExtension(c
  3218                                           minorType,
  3219                                           minorType,
  3219                                           mime_types_description,
  3220                                           mime_types_description,
  3220                                           true);
  3221                                           true);
  3221  
  3222  
  3222    if (NS_FAILED(rv) || majorType.IsEmpty()) {
  3223    if (NS_FAILED(rv) || majorType.IsEmpty()) {
  3231      }
  3232      }
  3232  #endif
  3233  #endif
  3233  
  3234  
  3234      rv = LookUpTypeAndDescription(NS_ConvertUTF8toUTF16(aFileExt),
  3235      rv = LookUpTypeAndDescription(NS_ConvertUTF8toUTF16(aFileExt),
  3235                                    majorType,
  3236                                    majorType,
  3236 @@ -1425,17 +1425,17 @@ nsOSHelperAppService::GetFromType(const 
  3237 @@ -1391,17 +1391,17 @@ nsOSHelperAppService::GetFromType(const 
  3237  #ifdef MOZ_WIDGET_GTK2
  3238  #ifdef MOZ_WIDGET_GTK2
  3238    nsMIMEInfoBase *gnomeInfo = nsnull;
  3239    nsMIMEInfoBase *gnomeInfo = nsnull;
  3239    if (handler.IsEmpty()) {
  3240    if (handler.IsEmpty()) {
  3240      // No useful data yet.  Check the GNOME registry.  Unfortunately, newer
  3241      // No useful data yet.  Check the GNOME registry.  Unfortunately, newer
  3241      // GNOME versions no longer have type-to-extension mappings, so we might
  3242      // GNOME versions no longer have type-to-extension mappings, so we might
  3253  
  3254  
  3254    // Now look up our extensions
  3255    // Now look up our extensions
  3255 diff --git a/widget/gtk2/Makefile.in b/widget/gtk2/Makefile.in
  3256 diff --git a/widget/gtk2/Makefile.in b/widget/gtk2/Makefile.in
  3256 --- a/widget/gtk2/Makefile.in
  3257 --- a/widget/gtk2/Makefile.in
  3257 +++ b/widget/gtk2/Makefile.in
  3258 +++ b/widget/gtk2/Makefile.in
  3258 @@ -135,11 +135,14 @@ DEFINES		+= -DCAIRO_GFX -DMOZ_APP_NAME='
  3259 @@ -104,11 +104,14 @@ DEFINES		+= -DCAIRO_GFX -DMOZ_APP_NAME='
  3259  
  3260  
  3260  INCLUDES	+= \
  3261  INCLUDES	+= \
  3261  		-I$(srcdir)/../xpwidgets \
  3262  		-I$(srcdir)/../xpwidgets \
  3262  		-I$(srcdir)/../shared \
  3263  		-I$(srcdir)/../shared \
  3263  		-I$(topsrcdir)/layout/generic \
  3264  		-I$(topsrcdir)/layout/generic \
  3271  INCLUDES   	+= -I$(srcdir)/../shared/x11
  3272  INCLUDES   	+= -I$(srcdir)/../shared/x11
  3272  endif
  3273  endif
  3273 diff --git a/widget/gtk2/nsFilePicker.cpp b/widget/gtk2/nsFilePicker.cpp
  3274 diff --git a/widget/gtk2/nsFilePicker.cpp b/widget/gtk2/nsFilePicker.cpp
  3274 --- a/widget/gtk2/nsFilePicker.cpp
  3275 --- a/widget/gtk2/nsFilePicker.cpp
  3275 +++ b/widget/gtk2/nsFilePicker.cpp
  3276 +++ b/widget/gtk2/nsFilePicker.cpp
  3276 @@ -33,16 +33,17 @@
  3277 @@ -1,16 +1,17 @@
  3277   * the provisions above, a recipient may use your version of this file under
  3278  /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
  3278   * the terms of any one of the MPL, the GPL or the LGPL.
  3279  /* This Source Code Form is subject to the terms of the Mozilla Public
  3279   *
  3280   * License, v. 2.0. If a copy of the MPL was not distributed with this
  3280   * ***** END LICENSE BLOCK ***** */
  3281   * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
  3281  
  3282  
  3282  #include "mozilla/Util.h"
  3283  #include "mozilla/Util.h"
  3283  
  3284  
  3284  #include <gtk/gtk.h>
  3285  #include <gtk/gtk.h>
  3285 +#include <gdk/gdkx.h>
  3286 +#include <gdk/gdkx.h>
  3289  #include "nsIWidget.h"
  3290  #include "nsIWidget.h"
  3290  #include "nsILocalFile.h"
  3291  #include "nsILocalFile.h"
  3291  #include "nsIStringBundle.h"
  3292  #include "nsIStringBundle.h"
  3292  
  3293  
  3293  #include "nsArrayEnumerator.h"
  3294  #include "nsArrayEnumerator.h"
  3294 @@ -51,16 +52,17 @@
  3295 @@ -19,16 +20,17 @@
  3295  #include "nsNetUtil.h"
  3296  #include "nsNetUtil.h"
  3296  #include "nsReadableUtils.h"
  3297  #include "nsReadableUtils.h"
  3297  #include "mozcontainer.h"
  3298  #include "mozcontainer.h"
  3298  
  3299  
  3299  #include "prmem.h"
  3300  #include "prmem.h"
  3307  #endif
  3308  #endif
  3308  
  3309  
  3309  using namespace mozilla;
  3310  using namespace mozilla;
  3310  
  3311  
  3311  #define MAX_PREVIEW_SIZE 180
  3312  #define MAX_PREVIEW_SIZE 180
  3312 @@ -285,17 +287,19 @@ nsFilePicker::AppendFilters(PRInt32 aFil
  3313 @@ -253,17 +255,19 @@ nsFilePicker::AppendFilters(PRInt32 aFil
  3313    return nsBaseFilePicker::AppendFilters(aFilterMask);
  3314    return nsBaseFilePicker::AppendFilters(aFilterMask);
  3314  }
  3315  }
  3315  
  3316  
  3316  NS_IMETHODIMP
  3317  NS_IMETHODIMP
  3317  nsFilePicker::AppendFilter(const nsAString& aTitle, const nsAString& aFilter)
  3318  nsFilePicker::AppendFilter(const nsAString& aTitle, const nsAString& aFilter)
  3328    CopyUTF16toUTF8(aFilter, filter);
  3329    CopyUTF16toUTF8(aFilter, filter);
  3329    CopyUTF16toUTF8(aTitle, name);
  3330    CopyUTF16toUTF8(aTitle, name);
  3330  
  3331  
  3331    mFilters.AppendElement(filter);
  3332    mFilters.AppendElement(filter);
  3332    mFilterNames.AppendElement(name);
  3333    mFilterNames.AppendElement(name);
  3333 @@ -390,16 +394,19 @@ nsFilePicker::GetFiles(nsISimpleEnumerat
  3334 @@ -358,16 +362,19 @@ nsFilePicker::GetFiles(nsISimpleEnumerat
  3334    return NS_ERROR_FAILURE;
  3335    return NS_ERROR_FAILURE;
  3335  }
  3336  }
  3336  
  3337  
  3337  NS_IMETHODIMP
  3338  NS_IMETHODIMP
  3338  nsFilePicker::Show(PRInt16 *aReturn)
  3339  nsFilePicker::Show(PRInt16 *aReturn)
  3348    GtkWindow *parent_widget = get_gtk_window_for_nsiwidget(mParentWidget);
  3349    GtkWindow *parent_widget = get_gtk_window_for_nsiwidget(mParentWidget);
  3349  
  3350  
  3350    GtkFileChooserAction action = GetGtkFileChooserAction(mMode);
  3351    GtkFileChooserAction action = GetGtkFileChooserAction(mMode);
  3351    const gchar *accept_button = (action == GTK_FILE_CHOOSER_ACTION_SAVE)
  3352    const gchar *accept_button = (action == GTK_FILE_CHOOSER_ACTION_SAVE)
  3352                                 ? GTK_STOCK_SAVE : GTK_STOCK_OPEN;
  3353                                 ? GTK_STOCK_SAVE : GTK_STOCK_OPEN;
  3353 @@ -538,8 +545,234 @@ nsFilePicker::Show(PRInt16 *aReturn)
  3354 @@ -506,8 +513,234 @@ nsFilePicker::Show(PRInt16 *aReturn)
  3354      *aReturn = nsIFilePicker::returnCancel;
  3355      *aReturn = nsIFilePicker::returnCancel;
  3355      break;
  3356      break;
  3356    }
  3357    }
  3357  
  3358  
  3358    gtk_widget_destroy(file_chooser);
  3359    gtk_widget_destroy(file_chooser);
  3586 +    return NS_OK;
  3587 +    return NS_OK;
  3587 +    }
  3588 +    }
  3588 diff --git a/widget/gtk2/nsFilePicker.h b/widget/gtk2/nsFilePicker.h
  3589 diff --git a/widget/gtk2/nsFilePicker.h b/widget/gtk2/nsFilePicker.h
  3589 --- a/widget/gtk2/nsFilePicker.h
  3590 --- a/widget/gtk2/nsFilePicker.h
  3590 +++ b/widget/gtk2/nsFilePicker.h
  3591 +++ b/widget/gtk2/nsFilePicker.h
  3591 @@ -89,11 +89,17 @@ protected:
  3592 @@ -57,11 +57,17 @@ protected:
  3592    nsString  mDefault;
  3593    nsString  mDefault;
  3593    nsString  mDefaultExtension;
  3594    nsString  mDefaultExtension;
  3594  
  3595  
  3595    nsTArray<nsCString> mFilters;
  3596    nsTArray<nsCString> mFilters;
  3596    nsTArray<nsCString> mFilterNames;
  3597    nsTArray<nsCString> mFilterNames;
  3607  
  3608  
  3608  #endif
  3609  #endif
  3609 diff --git a/xpcom/components/Makefile.in b/xpcom/components/Makefile.in
  3610 diff --git a/xpcom/components/Makefile.in b/xpcom/components/Makefile.in
  3610 --- a/xpcom/components/Makefile.in
  3611 --- a/xpcom/components/Makefile.in
  3611 +++ b/xpcom/components/Makefile.in
  3612 +++ b/xpcom/components/Makefile.in
  3612 @@ -91,10 +91,11 @@ LOCAL_INCLUDES	= \
  3613 @@ -59,10 +59,11 @@ LOCAL_INCLUDES	= \
  3613  # we don't want the shared lib, but we want to force the creation of a static lib.
  3614  # we don't want the shared lib, but we want to force the creation of a static lib.
  3614  FORCE_STATIC_LIB = 1
  3615  FORCE_STATIC_LIB = 1
  3615  
  3616  
  3616  include $(topsrcdir)/config/rules.mk
  3617  include $(topsrcdir)/config/rules.mk
  3617  
  3618  
  3622  CXXFLAGS += $(MOZ_GTK2_CFLAGS)
  3623  CXXFLAGS += $(MOZ_GTK2_CFLAGS)
  3623  endif
  3624  endif
  3624 diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestParser.cpp
  3625 diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestParser.cpp
  3625 --- a/xpcom/components/ManifestParser.cpp
  3626 --- a/xpcom/components/ManifestParser.cpp
  3626 +++ b/xpcom/components/ManifestParser.cpp
  3627 +++ b/xpcom/components/ManifestParser.cpp
  3627 @@ -63,16 +63,17 @@
  3628 @@ -30,16 +30,17 @@
  3628  #include "nsTextFormatter.h"
  3629  #include "nsTextFormatter.h"
  3629  #include "nsVersionComparator.h"
  3630  #include "nsVersionComparator.h"
  3630  #include "nsXPCOMCIDInternal.h"
  3631  #include "nsXPCOMCIDInternal.h"
  3631  
  3632  
  3632  #include "nsIConsoleService.h"
  3633  #include "nsIConsoleService.h"
  3640  struct ManifestDirective
  3641  struct ManifestDirective
  3641  {
  3642  {
  3642    const char* directive;
  3643    const char* directive;
  3643    int argc;
  3644    int argc;
  3644  
  3645  
  3645 @@ -430,16 +431,17 @@ ParseManifest(NSLocationType type, FileL
  3646 @@ -397,16 +398,17 @@ ParseManifest(NSLocationType type, FileL
  3646    NS_NAMED_LITERAL_STRING(kPlatform, "platform");
  3647    NS_NAMED_LITERAL_STRING(kPlatform, "platform");
  3647    NS_NAMED_LITERAL_STRING(kContentAccessible, "contentaccessible");
  3648    NS_NAMED_LITERAL_STRING(kContentAccessible, "contentaccessible");
  3648    NS_NAMED_LITERAL_STRING(kApplication, "application");
  3649    NS_NAMED_LITERAL_STRING(kApplication, "application");
  3649    NS_NAMED_LITERAL_STRING(kAppVersion, "appversion");
  3650    NS_NAMED_LITERAL_STRING(kAppVersion, "appversion");
  3650    NS_NAMED_LITERAL_STRING(kGeckoVersion, "platformversion");
  3651    NS_NAMED_LITERAL_STRING(kGeckoVersion, "platformversion");
  3658  
  3659  
  3659    // Obsolete
  3660    // Obsolete
  3660    NS_NAMED_LITERAL_STRING(kXPCNativeWrappers, "xpcnativewrappers");
  3661    NS_NAMED_LITERAL_STRING(kXPCNativeWrappers, "xpcnativewrappers");
  3661  
  3662  
  3662    nsAutoString appID;
  3663    nsAutoString appID;
  3663 @@ -477,41 +479,46 @@ ParseManifest(NSLocationType type, FileL
  3664 @@ -444,41 +446,46 @@ ParseManifest(NSLocationType type, FileL
  3664          CopyUTF8toUTF16(s, abi);
  3665          CopyUTF8toUTF16(s, abi);
  3665          abi.Insert(PRUnichar('_'), 0);
  3666          abi.Insert(PRUnichar('_'), 0);
  3666          abi.Insert(osTarget, 0);
  3667          abi.Insert(osTarget, 0);
  3667        }
  3668        }
  3668      }
  3669      }
  3705    // at the end.
  3706    // at the end.
  3706    nsTArray<CachedDirective> contracts;
  3707    nsTArray<CachedDirective> contracts;
  3707  
  3708  
  3708    char *token;
  3709    char *token;
  3709    char *newline = buf;
  3710    char *newline = buf;
  3710 @@ -593,24 +600,26 @@ ParseManifest(NSLocationType type, FileL
  3711 @@ -560,24 +567,26 @@ ParseManifest(NSLocationType type, FileL
  3711      TriState stOsVersion = eUnspecified;
  3712      TriState stOsVersion = eUnspecified;
  3712      TriState stOs = eUnspecified;
  3713      TriState stOs = eUnspecified;
  3713      TriState stABI = eUnspecified;
  3714      TriState stABI = eUnspecified;
  3714  #if defined(MOZ_WIDGET_ANDROID)
  3715  #if defined(MOZ_WIDGET_ANDROID)
  3715      TriState stTablet = eUnspecified;
  3716      TriState stTablet = eUnspecified;
  3732          continue;
  3733          continue;
  3733  
  3734  
  3734  #if defined(MOZ_WIDGET_ANDROID)
  3735  #if defined(MOZ_WIDGET_ANDROID)
  3735        bool tablet = false;
  3736        bool tablet = false;
  3736        if (CheckFlag(kTablet, wtoken, tablet)) {
  3737        if (CheckFlag(kTablet, wtoken, tablet)) {
  3737 @@ -639,16 +648,17 @@ ParseManifest(NSLocationType type, FileL
  3738 @@ -606,16 +615,17 @@ ParseManifest(NSLocationType type, FileL
  3738      }
  3739      }
  3739  
  3740  
  3740      if (!ok ||
  3741      if (!ok ||
  3741          stApp == eBad ||
  3742          stApp == eBad ||
  3742          stAppVersion == eBad ||
  3743          stAppVersion == eBad ||
  3753      if (directive->regfunc) {
  3754      if (directive->regfunc) {
  3754        if (GeckoProcessType_Default != XRE_GetProcessType())
  3755        if (GeckoProcessType_Default != XRE_GetProcessType())
  3755 diff --git a/xpcom/io/Makefile.in b/xpcom/io/Makefile.in
  3756 diff --git a/xpcom/io/Makefile.in b/xpcom/io/Makefile.in
  3756 --- a/xpcom/io/Makefile.in
  3757 --- a/xpcom/io/Makefile.in
  3757 +++ b/xpcom/io/Makefile.in
  3758 +++ b/xpcom/io/Makefile.in
  3758 @@ -189,17 +189,17 @@ include $(topsrcdir)/ipc/chromium/chromi
  3759 @@ -157,17 +157,17 @@ include $(topsrcdir)/ipc/chromium/chromi
  3759  DEFINES		+= -D_IMPL_NS_COM
  3760  DEFINES		+= -D_IMPL_NS_COM
  3760  
  3761  
  3761  ifeq ($(OS_ARCH),Linux)
  3762  ifeq ($(OS_ARCH),Linux)
  3762  ifneq (,$(findstring lib64,$(libdir)))
  3763  ifneq (,$(findstring lib64,$(libdir)))
  3763  DEFINES     += -DHAVE_USR_LIB64_DIR
  3764  DEFINES     += -DHAVE_USR_LIB64_DIR
  3775  ifdef MOZ_PLATFORM_MAEMO
  3776  ifdef MOZ_PLATFORM_MAEMO
  3776  CFLAGS          += $(MOZ_PLATFORM_MAEMO_CFLAGS) $(MOZ_QT_CFLAGS)
  3777  CFLAGS          += $(MOZ_PLATFORM_MAEMO_CFLAGS) $(MOZ_QT_CFLAGS)
  3777 diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp
  3778 diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp
  3778 --- a/xpcom/io/nsLocalFileUnix.cpp
  3779 --- a/xpcom/io/nsLocalFileUnix.cpp
  3779 +++ b/xpcom/io/nsLocalFileUnix.cpp
  3780 +++ b/xpcom/io/nsLocalFileUnix.cpp
  3780 @@ -90,16 +90,17 @@
  3781 @@ -48,16 +48,17 @@
  3781  #include "prproces.h"
  3782  #include "prproces.h"
  3782  #include "nsIDirectoryEnumerator.h"
  3783  #include "nsIDirectoryEnumerator.h"
  3783  #include "nsISimpleEnumerator.h"
  3784  #include "nsISimpleEnumerator.h"
  3784  #include "private/pprio.h"
  3785  #include "private/pprio.h"
  3785  
  3786  
  3793  #include <Carbon/Carbon.h>
  3794  #include <Carbon/Carbon.h>
  3794  #include "CocoaFileUtils.h"
  3795  #include "CocoaFileUtils.h"
  3795  #include "prmem.h"
  3796  #include "prmem.h"
  3796  #include "plbase64.h"
  3797  #include "plbase64.h"
  3797  
  3798  
  3798 @@ -1798,44 +1799,51 @@ nsLocalFile::SetPersistentDescriptor(con
  3799 @@ -1763,44 +1764,51 @@ nsLocalFile::SetPersistentDescriptor(con
  3799      return InitWithNativePath(aPersistentDescriptor);
  3800      return InitWithNativePath(aPersistentDescriptor);
  3800  #endif
  3801  #endif
  3801  }
  3802  }
  3802  
  3803  
  3803  NS_IMETHODIMP
  3804  NS_IMETHODIMP
  3859        nsresult rv = CocoaFileUtils::RevealFileInFinder(url);
  3860        nsresult rv = CocoaFileUtils::RevealFileInFinder(url);
  3860        ::CFRelease(url);
  3861        ::CFRelease(url);
  3861        return rv;
  3862        return rv;
  3862      }
  3863      }
  3863      return NS_ERROR_FAILURE;
  3864      return NS_ERROR_FAILURE;
  3864 @@ -1861,16 +1869,23 @@ nsLocalFile::Launch()
  3865 @@ -1826,16 +1834,23 @@ nsLocalFile::Launch()
  3865  
  3866  
  3866      if (nsnull == connection)
  3867      if (nsnull == connection)
  3867        return NS_ERROR_FAILURE;
  3868        return NS_ERROR_FAILURE;
  3868  
  3869  
  3869      if (hildon_mime_open_file(connection, mPath.get()) != kHILDON_SUCCESS)
  3870      if (hildon_mime_open_file(connection, mPath.get()) != kHILDON_SUCCESS)