mozilla-kde.patch
changeset 1067 735b140fb042
parent 1055 526f445635f3
child 1074 4b99400f6d17
equal deleted inserted replaced
1066:3f18b0f2a868 1067:735b140fb042
     1 # HG changeset patch
     1 # HG changeset patch
     2 # Parent  8671b358718cb8898a55fada20fc9999408daefe
     2 # Parent  989a507ffc5faf9a3bd950c2391a24afa9f463c8
     3 Description: Add KDE integration to Firefox (toolkit parts)
     3 Description: Add KDE integration to Firefox (toolkit parts)
     4 Author: Wolfgang Rosenauer <wolfgang@rosenauer.org>
     4 Author: Wolfgang Rosenauer <wolfgang@rosenauer.org>
     5 Author: Lubos Lunak <lunak@suse.com>
     5 Author: Lubos Lunak <lunak@suse.com>
     6 Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=140751
     6 Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=140751
     7      https://bugzilla.novell.com/show_bug.cgi?id=170055
     7      https://bugzilla.novell.com/show_bug.cgi?id=170055
    25  #endif
    25  #endif
    26  
    26  
    27  using namespace mozilla;
    27  using namespace mozilla;
    28  
    28  
    29  #ifdef DEBUG
    29  #ifdef DEBUG
    30 @@ -4201,25 +4202,37 @@ Preferences::InitInitialObjects(bool aIs
    30 @@ -4189,25 +4190,37 @@ Preferences::InitInitialObjects(bool aIs
    31    // application pref files for backwards compatibility.
    31    // application pref files for backwards compatibility.
    32    static const char* specialFiles[] = {
    32    static const char* specialFiles[] = {
    33  #if defined(XP_MACOSX)
    33  #if defined(XP_MACOSX)
    34      "macprefs.js"
    34      "macprefs.js"
    35  #elif defined(XP_WIN)
    35  #elif defined(XP_WIN)
    63      NS_WARNING("Error parsing application default preferences.");
    63      NS_WARNING("Error parsing application default preferences.");
    64    }
    64    }
    65  
    65  
    66    // Load jar:$app/omni.jar!/defaults/preferences/*.js
    66    // Load jar:$app/omni.jar!/defaults/preferences/*.js
    67    // or jar:$gre/omni.jar!/defaults/preferences/*.js.
    67    // or jar:$gre/omni.jar!/defaults/preferences/*.js.
    68 @@ -4268,17 +4281,17 @@ Preferences::InitInitialObjects(bool aIs
    68 @@ -4256,17 +4269,17 @@ Preferences::InitInitialObjects(bool aIs
    69        }
    69        }
    70  
    70  
    71        nsCOMPtr<nsIFile> path = do_QueryInterface(elem);
    71        nsCOMPtr<nsIFile> path = do_QueryInterface(elem);
    72        if (!path) {
    72        if (!path) {
    73          continue;
    73          continue;
   130             flags = Flags('contentaccessible=yes', 'appversion>=3.5')
   130             flags = Flags('contentaccessible=yes', 'appversion>=3.5')
   131          '''
   131          '''
   132 diff --git a/python/mozbuild/mozpack/chrome/manifest.py b/python/mozbuild/mozpack/chrome/manifest.py
   132 diff --git a/python/mozbuild/mozpack/chrome/manifest.py b/python/mozbuild/mozpack/chrome/manifest.py
   133 --- a/python/mozbuild/mozpack/chrome/manifest.py
   133 --- a/python/mozbuild/mozpack/chrome/manifest.py
   134 +++ b/python/mozbuild/mozpack/chrome/manifest.py
   134 +++ b/python/mozbuild/mozpack/chrome/manifest.py
   135 @@ -34,16 +34,17 @@ class ManifestEntry(object):
   135 @@ -39,16 +39,17 @@ class ManifestEntry(object):
   136          'platformversion',
   136          'platformversion',
   137          'os',
   137          'os',
   138          'osversion',
   138          'osversion',
   139          'abi',
   139          'abi',
   140          'xpcnativewrappers',
   140          'xpcnativewrappers',
   169  with Files('**'):
   169  with Files('**'):
   170      BUG_COMPONENT = ('Toolkit', 'Download Manager')
   170      BUG_COMPONENT = ('Toolkit', 'Download Manager')
   171 diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn
   171 diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn
   172 --- a/toolkit/content/jar.mn
   172 --- a/toolkit/content/jar.mn
   173 +++ b/toolkit/content/jar.mn
   173 +++ b/toolkit/content/jar.mn
   174 @@ -68,16 +68,18 @@ toolkit.jar:
   174 @@ -69,16 +69,18 @@ toolkit.jar:
   175     content/global/bindings/checkbox.xml        (widgets/checkbox.xml)
   175     content/global/bindings/checkbox.xml        (widgets/checkbox.xml)
   176     content/global/bindings/colorpicker.xml     (widgets/colorpicker.xml)
   176     content/global/bindings/colorpicker.xml     (widgets/colorpicker.xml)
   177     content/global/bindings/datekeeper.js       (widgets/datekeeper.js)
   177     content/global/bindings/datekeeper.js       (widgets/datekeeper.js)
   178     content/global/bindings/datepicker.js       (widgets/datepicker.js)
   178     content/global/bindings/datepicker.js       (widgets/datepicker.js)
   179     content/global/bindings/datetimepopup.xml   (widgets/datetimepopup.xml)
   179     content/global/bindings/datetimepopup.xml   (widgets/datetimepopup.xml)
   846 +}
   846 +}
   847 +
   847 +
   848 diff --git a/toolkit/xre/moz.build b/toolkit/xre/moz.build
   848 diff --git a/toolkit/xre/moz.build b/toolkit/xre/moz.build
   849 --- a/toolkit/xre/moz.build
   849 --- a/toolkit/xre/moz.build
   850 +++ b/toolkit/xre/moz.build
   850 +++ b/toolkit/xre/moz.build
   851 @@ -65,17 +65,19 @@ elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'co
   851 @@ -71,17 +71,19 @@ elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'co
   852          '../components/printingui',
   852          '../components/printingui',
   853      ]
   853      ]
   854  elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'uikit':
   854  elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'uikit':
   855      UNIFIED_SOURCES += [
   855      UNIFIED_SOURCES += [
   856          'nsNativeAppSupportDefault.cpp',
   856          'nsNativeAppSupportDefault.cpp',
  1289  using mozilla::dom::HandlerApp;
  1289  using mozilla::dom::HandlerApp;
  1290  using mozilla::dom::ContentHandlerService;
  1290  using mozilla::dom::ContentHandlerService;
  1291  using mozilla::dom::RemoteHandlerApp;
  1291  using mozilla::dom::RemoteHandlerApp;
  1292  
  1292  
  1293  namespace {
  1293  namespace {
  1294 @@ -264,17 +264,17 @@ HandlerServiceParent::RecvExists(const H
  1294 @@ -265,17 +265,17 @@ HandlerServiceParent::RecvExists(const H
  1295  }
  1295  }
  1296  
  1296  
  1297  mozilla::ipc::IPCResult
  1297  mozilla::ipc::IPCResult
  1298  HandlerServiceParent::RecvExistsForProtocol(const nsCString& aProtocolScheme,
  1298  HandlerServiceParent::RecvExistsForProtocol(const nsCString& aProtocolScheme,
  1299                                              bool* aHandlerExists)
  1299                                              bool* aHandlerExists)
  2164  struct ManifestDirective
  2164  struct ManifestDirective
  2165  {
  2165  {
  2166    const char* directive;
  2166    const char* directive;
  2167    int argc;
  2167    int argc;
  2168  
  2168  
  2169 @@ -441,16 +442,17 @@ ParseManifest(NSLocationType aType, File
  2169 @@ -437,16 +438,17 @@ ParseManifest(NSLocationType aType, File
  2170    NS_NAMED_LITERAL_STRING(kRemoteEnabled, "remoteenabled");
  2170    NS_NAMED_LITERAL_STRING(kRemoteEnabled, "remoteenabled");
  2171    NS_NAMED_LITERAL_STRING(kRemoteRequired, "remoterequired");
  2171    NS_NAMED_LITERAL_STRING(kRemoteRequired, "remoterequired");
  2172    NS_NAMED_LITERAL_STRING(kApplication, "application");
  2172    NS_NAMED_LITERAL_STRING(kApplication, "application");
  2173    NS_NAMED_LITERAL_STRING(kAppVersion, "appversion");
  2173    NS_NAMED_LITERAL_STRING(kAppVersion, "appversion");
  2174    NS_NAMED_LITERAL_STRING(kGeckoVersion, "platformversion");
  2174    NS_NAMED_LITERAL_STRING(kGeckoVersion, "platformversion");
  2182  #endif
  2182  #endif
  2183  
  2183  
  2184    NS_NAMED_LITERAL_STRING(kMain, "main");
  2184    NS_NAMED_LITERAL_STRING(kMain, "main");
  2185    NS_NAMED_LITERAL_STRING(kContent, "content");
  2185    NS_NAMED_LITERAL_STRING(kContent, "content");
  2186  
  2186  
  2187 @@ -496,44 +498,49 @@ ParseManifest(NSLocationType aType, File
  2187 @@ -492,44 +494,49 @@ ParseManifest(NSLocationType aType, File
  2188          CopyUTF8toUTF16(s, abi);
  2188          CopyUTF8toUTF16(s, abi);
  2189          abi.Insert(char16_t('_'), 0);
  2189          abi.Insert(char16_t('_'), 0);
  2190          abi.Insert(osTarget, 0);
  2190          abi.Insert(osTarget, 0);
  2191        }
  2191        }
  2192      }
  2192      }
  2232      process = kContent;
  2232      process = kContent;
  2233    } else {
  2233    } else {
  2234      process = kMain;
  2234      process = kMain;
  2235    }
  2235    }
  2236  
  2236  
  2237 @@ -635,25 +642,27 @@ ParseManifest(NSLocationType aType, File
  2237 @@ -631,25 +638,27 @@ ParseManifest(NSLocationType aType, File
  2238      TriState stOsVersion = eUnspecified;
  2238      TriState stOsVersion = eUnspecified;
  2239      TriState stOs = eUnspecified;
  2239      TriState stOs = eUnspecified;
  2240      TriState stABI = eUnspecified;
  2240      TriState stABI = eUnspecified;
  2241      TriState stProcess = eUnspecified;
  2241      TriState stProcess = eUnspecified;
  2242  #if defined(MOZ_WIDGET_ANDROID)
  2242  #if defined(MOZ_WIDGET_ANDROID)
  2260            CheckVersionFlag(kGeckoVersion, wtoken, geckoVersion, stGeckoVersion)) {
  2260            CheckVersionFlag(kGeckoVersion, wtoken, geckoVersion, stGeckoVersion)) {
  2261          continue;
  2261          continue;
  2262        }
  2262        }
  2263  
  2263  
  2264  #if defined(MOZ_WIDGET_ANDROID)
  2264  #if defined(MOZ_WIDGET_ANDROID)
  2265 @@ -698,16 +707,17 @@ ParseManifest(NSLocationType aType, File
  2265 @@ -694,16 +703,17 @@ ParseManifest(NSLocationType aType, File
  2266      }
  2266      }
  2267  
  2267  
  2268      if (!ok ||
  2268      if (!ok ||
  2269          stApp == eBad ||
  2269          stApp == eBad ||
  2270          stAppVersion == eBad ||
  2270          stAppVersion == eBad ||
  2298  if 'gtk' in CONFIG['MOZ_WIDGET_TOOLKIT']:
  2298  if 'gtk' in CONFIG['MOZ_WIDGET_TOOLKIT']:
  2299      CXXFLAGS += CONFIG['TK_CFLAGS']
  2299      CXXFLAGS += CONFIG['TK_CFLAGS']
  2300 diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp
  2300 diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp
  2301 --- a/xpcom/io/nsLocalFileUnix.cpp
  2301 --- a/xpcom/io/nsLocalFileUnix.cpp
  2302 +++ b/xpcom/io/nsLocalFileUnix.cpp
  2302 +++ b/xpcom/io/nsLocalFileUnix.cpp
  2303 @@ -46,16 +46,17 @@
  2303 @@ -47,16 +47,17 @@
  2304  #include "prproces.h"
  2304  #include "prproces.h"
  2305  #include "nsIDirectoryEnumerator.h"
  2305  #include "nsIDirectoryEnumerator.h"
  2306  #include "nsISimpleEnumerator.h"
  2306  #include "nsISimpleEnumerator.h"
  2307  #include "private/pprio.h"
  2307  #include "private/pprio.h"
  2308  #include "prlink.h"
  2308  #include "prlink.h"
  2316  #include <Carbon/Carbon.h>
  2316  #include <Carbon/Carbon.h>
  2317  #include "CocoaFileUtils.h"
  2317  #include "CocoaFileUtils.h"
  2318  #include "prmem.h"
  2318  #include "prmem.h"
  2319  #include "plbase64.h"
  2319  #include "plbase64.h"
  2320  
  2320  
  2321 @@ -1955,59 +1956,74 @@ nsLocalFile::SetPersistentDescriptor(con
  2321 @@ -1999,63 +2000,78 @@ nsLocalFile::SetPersistentDescriptor(con
  2322    return InitWithNativePath(aPersistentDescriptor);
       
  2323  #endif
       
  2324  }
       
  2325  
       
  2326  NS_IMETHODIMP
  2322  NS_IMETHODIMP
  2327  nsLocalFile::Reveal()
  2323  nsLocalFile::Reveal()
  2328  {
  2324  {
       
  2325    if (!FilePreferences::IsAllowedPath(mPath)) {
       
  2326      return NS_ERROR_FILE_ACCESS_DENIED;
       
  2327    }
       
  2328  
  2329  #ifdef MOZ_WIDGET_GTK
  2329  #ifdef MOZ_WIDGET_GTK
  2330 -  nsCOMPtr<nsIGIOService> giovfs = do_GetService(NS_GIOSERVICE_CONTRACTID);
  2330 -  nsCOMPtr<nsIGIOService> giovfs = do_GetService(NS_GIOSERVICE_CONTRACTID);
  2331 -  if (!giovfs) {
  2331 -  if (!giovfs) {
  2332 -    return NS_ERROR_FAILURE;
  2332 -    return NS_ERROR_FAILURE;
  2333 -  }
  2333 -  }
  2382  }
  2382  }
  2383  
  2383  
  2384  NS_IMETHODIMP
  2384  NS_IMETHODIMP
  2385  nsLocalFile::Launch()
  2385  nsLocalFile::Launch()
  2386  {
  2386  {
       
  2387    if (!FilePreferences::IsAllowedPath(mPath)) {
       
  2388      return NS_ERROR_FILE_ACCESS_DENIED;
       
  2389    }
       
  2390  
  2387  #ifdef MOZ_WIDGET_GTK
  2391  #ifdef MOZ_WIDGET_GTK
  2388 +  if( nsKDEUtils::kdeSupport()) {
  2392 +  if( nsKDEUtils::kdeSupport()) {
  2389 +    nsTArray<nsCString> command;
  2393 +    nsTArray<nsCString> command;
  2390 +    command.AppendElement( NS_LITERAL_CSTRING("OPEN") );
  2394 +    command.AppendElement( NS_LITERAL_CSTRING("OPEN") );
  2391 +    command.AppendElement( mPath );
  2395 +    command.AppendElement( mPath );