# HG changeset patch # User Wolfgang Rosenauer # Date 1259583091 -3600 # Node ID bc5dfe5b853a391f1b4f3a4a15b27b9de7ef6ddc # Parent 19a8c8d533495586f8a64b4a2338ce5d86e4bd1b Rebased KDE integration patches to 1.9.2 diff -r 19a8c8d53349 -r bc5dfe5b853a TODO/mozilla-kde.patch --- a/TODO/mozilla-kde.patch Mon Nov 30 08:50:50 2009 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1787 +0,0 @@ ---- mozilla/chrome/src/Makefile.in.sav 2009-09-14 10:00:21.000000000 +0200 -+++ mozilla/chrome/src/Makefile.in 2009-09-14 10:04:14.000000000 +0200 -@@ -86,6 +86,7 @@ EXTRA_DSO_LDOPTS = \ - - ifneq (,$(filter gtk2,$(MOZ_WIDGET_TOOLKIT))) - EXTRA_DSO_LDOPTS += $(MOZ_GTK2_LIBS) -+LOCAL_INCLUDES += -I$(topsrcdir)/toolkit/xre - endif - - ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT))) ---- mozilla/chrome/src/nsChromeRegistry.cpp.sav 2009-09-14 10:00:21.000000000 +0200 -+++ mozilla/chrome/src/nsChromeRegistry.cpp 2009-09-14 10:04:14.000000000 +0200 -@@ -114,6 +114,7 @@ - #include "nsIXULAppInfo.h" - #include "nsIXULRuntime.h" - #include "nsPresShellIterator.h" -+#include "nsKDEUtils.h" - - #ifdef MOZ_XUL - // keep all the RDF stuff together, in case we can remove it in the far future -@@ -2208,6 +2209,7 @@ nsChromeRegistry::ProcessManifestBuffer( - NS_NAMED_LITERAL_STRING(kAppVersion, "appversion"); - NS_NAMED_LITERAL_STRING(kOs, "os"); - NS_NAMED_LITERAL_STRING(kOsVersion, "osversion"); -+ NS_NAMED_LITERAL_STRING(kDesktop, "desktop"); - - nsCOMPtr io (do_GetIOService()); - if (!io) return NS_ERROR_FAILURE; -@@ -2251,6 +2253,7 @@ nsChromeRegistry::ProcessManifestBuffer( - } - - nsAutoString osVersion; -+ nsAutoString desktop; - #if defined(XP_WIN) - OSVERSIONINFO info = { sizeof(OSVERSIONINFO) }; - if (GetVersionEx(&info)) { -@@ -2258,6 +2261,7 @@ nsChromeRegistry::ProcessManifestBuffer( - info.dwMajorVersion, - info.dwMinorVersion); - } -+ desktop = NS_LITERAL_STRING("win"); - #elif defined(XP_MACOSX) - long majorVersion, minorVersion; - if ((Gestalt(gestaltSystemVersionMajor, &majorVersion) == noErr) && -@@ -2266,10 +2270,12 @@ nsChromeRegistry::ProcessManifestBuffer( - majorVersion, - minorVersion); - } -+ desktop = NS_LITERAL_STRING("macosx"); - #elif defined(MOZ_WIDGET_GTK2) - nsTextFormatter::ssprintf(osVersion, NS_LITERAL_STRING("%ld.%ld").get(), - gtk_major_version, - gtk_minor_version); -+ desktop = nsKDEUtils::kdeSession() ? NS_LITERAL_STRING("kde") : NS_LITERAL_STRING("gnome"); // TODO others? - #endif - - char *token; -@@ -2313,6 +2319,7 @@ nsChromeRegistry::ProcessManifestBuffer( - TriState stApp = eUnspecified; - TriState stOsVersion = eUnspecified; - TriState stOs = eUnspecified; -+ TriState stDesktop = eUnspecified; - - PRBool badFlag = PR_FALSE; - -@@ -2326,6 +2333,7 @@ nsChromeRegistry::ProcessManifestBuffer( - CheckFlag(kContentAccessible, wtoken, contentAccessible) || - CheckStringFlag(kApplication, wtoken, appID, stApp) || - CheckStringFlag(kOs, wtoken, osTarget, stOs) || -+ CheckStringFlag(kDesktop, wtoken, desktop, stDesktop) || - CheckVersionFlag(kOsVersion, wtoken, osVersion, vc, stOsVersion) || - CheckVersionFlag(kAppVersion, wtoken, appVersion, vc, stAppVersion)) - continue; -@@ -2337,7 +2345,7 @@ nsChromeRegistry::ProcessManifestBuffer( - } - - if (badFlag || stApp == eBad || stAppVersion == eBad || -- stOs == eBad || stOsVersion == eBad) -+ stOs == eBad || stOsVersion == eBad || stDesktop == eBad) - continue; - - nsCOMPtr resolved; -@@ -2398,6 +2406,7 @@ nsChromeRegistry::ProcessManifestBuffer( - TriState stApp = eUnspecified; - TriState stOs = eUnspecified; - TriState stOsVersion = eUnspecified; -+ TriState stDesktop = eUnspecified; - - PRBool badFlag = PR_FALSE; - -@@ -2408,6 +2417,7 @@ nsChromeRegistry::ProcessManifestBuffer( - - if (CheckStringFlag(kApplication, wtoken, appID, stApp) || - CheckStringFlag(kOs, wtoken, osTarget, stOs) || -+ CheckStringFlag(kDesktop, wtoken, desktop, stDesktop) || - CheckVersionFlag(kOsVersion, wtoken, osVersion, vc, stOsVersion) || - CheckVersionFlag(kAppVersion, wtoken, appVersion, vc, stAppVersion)) - continue; -@@ -2419,7 +2429,7 @@ nsChromeRegistry::ProcessManifestBuffer( - } - - if (badFlag || stApp == eBad || stAppVersion == eBad || -- stOs == eBad || stOsVersion == eBad) -+ stOs == eBad || stOsVersion == eBad || stDesktop == eBad) - continue; - - nsCOMPtr resolved; -@@ -2460,6 +2470,7 @@ nsChromeRegistry::ProcessManifestBuffer( - TriState stApp = eUnspecified; - TriState stOs = eUnspecified; - TriState stOsVersion = eUnspecified; -+ TriState stDesktop = eUnspecified; - - PRBool badFlag = PR_FALSE; - -@@ -2470,6 +2481,7 @@ nsChromeRegistry::ProcessManifestBuffer( - - if (CheckStringFlag(kApplication, wtoken, appID, stApp) || - CheckStringFlag(kOs, wtoken, osTarget, stOs) || -+ CheckStringFlag(kDesktop, wtoken, desktop, stDesktop) || - CheckVersionFlag(kOsVersion, wtoken, osVersion, vc, stOsVersion) || - CheckVersionFlag(kAppVersion, wtoken, appVersion, vc, stAppVersion)) - continue; -@@ -2481,7 +2493,7 @@ nsChromeRegistry::ProcessManifestBuffer( - } - - if (badFlag || stApp == eBad || stAppVersion == eBad || -- stOs == eBad || stOsVersion == eBad) -+ stOs == eBad || stOsVersion == eBad || stDesktop == eBad) - continue; - - nsCOMPtr resolved; -@@ -2524,6 +2536,7 @@ nsChromeRegistry::ProcessManifestBuffer( - TriState stApp = eUnspecified; - TriState stOs = eUnspecified; - TriState stOsVersion = eUnspecified; -+ TriState stDesktop = eUnspecified; - - PRBool badFlag = PR_FALSE; - -@@ -2534,6 +2547,7 @@ nsChromeRegistry::ProcessManifestBuffer( - - if (CheckStringFlag(kApplication, wtoken, appID, stApp) || - CheckStringFlag(kOs, wtoken, osTarget, stOs) || -+ CheckStringFlag(kDesktop, wtoken, desktop, stDesktop) || - CheckVersionFlag(kOsVersion, wtoken, osVersion, vc, stOsVersion) || - CheckVersionFlag(kAppVersion, wtoken, appVersion, vc, stAppVersion)) - continue; -@@ -2545,7 +2559,7 @@ nsChromeRegistry::ProcessManifestBuffer( - } - - if (badFlag || stApp == eBad || stAppVersion == eBad || -- stOs == eBad || stOsVersion == eBad) -+ stOs == eBad || stOsVersion == eBad || stDesktop == eBad) - continue; - - nsCOMPtr baseuri, overlayuri; -@@ -2580,6 +2594,7 @@ nsChromeRegistry::ProcessManifestBuffer( - TriState stApp = eUnspecified; - TriState stOs = eUnspecified; - TriState stOsVersion = eUnspecified; -+ TriState stDesktop = eUnspecified; - - PRBool badFlag = PR_FALSE; - -@@ -2590,6 +2605,7 @@ nsChromeRegistry::ProcessManifestBuffer( - - if (CheckStringFlag(kApplication, wtoken, appID, stApp) || - CheckStringFlag(kOs, wtoken, osTarget, stOs) || -+ CheckStringFlag(kDesktop, wtoken, desktop, stDesktop) || - CheckVersionFlag(kOsVersion, wtoken, osVersion, vc, stOsVersion) || - CheckVersionFlag(kAppVersion, wtoken, appVersion, vc, stAppVersion)) - continue; -@@ -2601,7 +2617,7 @@ nsChromeRegistry::ProcessManifestBuffer( - } - - if (badFlag || stApp == eBad || stAppVersion == eBad || -- stOs == eBad || stOsVersion == eBad) -+ stOs == eBad || stOsVersion == eBad || stDesktop == eBad) - continue; - - nsCOMPtr baseuri, overlayuri; -@@ -2640,6 +2656,7 @@ nsChromeRegistry::ProcessManifestBuffer( - TriState stApp = eUnspecified; - TriState stOs = eUnspecified; - TriState stOsVersion = eUnspecified; -+ TriState stDesktop = eUnspecified; - - PRBool badFlag = PR_FALSE; - -@@ -2650,6 +2667,7 @@ nsChromeRegistry::ProcessManifestBuffer( - - if (CheckStringFlag(kApplication, wtoken, appID, stApp) || - CheckStringFlag(kOs, wtoken, osTarget, stOs) || -+ CheckStringFlag(kDesktop, wtoken, desktop, stDesktop) || - CheckVersionFlag(kOsVersion, wtoken, osVersion, vc, stOsVersion) || - CheckVersionFlag(kAppVersion, wtoken, appVersion, vc, stAppVersion)) - continue; -@@ -2661,7 +2679,7 @@ nsChromeRegistry::ProcessManifestBuffer( - } - - if (badFlag || stApp == eBad || stAppVersion == eBad || -- stOs == eBad || stOsVersion == eBad) -+ stOs == eBad || stOsVersion == eBad || stDesktop == eBad) - continue; - - nsCOMPtr chromeuri, resolveduri; -@@ -2702,6 +2720,7 @@ nsChromeRegistry::ProcessManifestBuffer( - TriState stApp = eUnspecified; - TriState stOsVersion = eUnspecified; - TriState stOs = eUnspecified; -+ TriState stDesktop = eUnspecified; - - PRBool badFlag = PR_FALSE; - -@@ -2712,6 +2731,7 @@ nsChromeRegistry::ProcessManifestBuffer( - - if (CheckStringFlag(kApplication, wtoken, appID, stApp) || - CheckStringFlag(kOs, wtoken, osTarget, stOs) || -+ CheckStringFlag(kDesktop, wtoken, desktop, stDesktop) || - CheckVersionFlag(kOsVersion, wtoken, osVersion, vc, stOsVersion) || - CheckVersionFlag(kAppVersion, wtoken, appVersion, vc, stAppVersion)) - continue; -@@ -2723,7 +2743,7 @@ nsChromeRegistry::ProcessManifestBuffer( - } - - if (badFlag || stApp == eBad || stAppVersion == eBad || -- stOs == eBad || stOsVersion == eBad) -+ stOs == eBad || stOsVersion == eBad || stDesktop == eBad) - continue; - - nsDependentCString host(package); ---- mozilla/modules/libpref/src/Makefile.in.sav 2009-09-14 10:00:21.000000000 +0200 -+++ mozilla/modules/libpref/src/Makefile.in 2009-09-14 10:04:14.000000000 +0200 -@@ -97,3 +97,5 @@ nsPrefService.$(OBJ_SUFFIX): nsPrefServi - @$(MAKE_DEPS_AUTO_CXX) - $(ELOG) $(CCC) $(OUTOPTION)$@ -c $(COMPILE_CXXFLAGS:-O2=-O1) $(_VPATH_SRCS) - endif -+ -+LOCAL_INCLUDES += -I$(topsrcdir)/toolkit/xre ---- mozilla/modules/libpref/src/nsPrefService.cpp.sav 2009-09-14 10:00:21.000000000 +0200 -+++ mozilla/modules/libpref/src/nsPrefService.cpp 2009-09-14 10:04:14.000000000 +0200 -@@ -51,6 +51,7 @@ - #include "nsCOMArray.h" - #include "nsXPCOMCID.h" - #include "nsAutoPtr.h" -+#include "nsKDEUtils.h" - - #include "nsQuickSort.h" - #include "prmem.h" -@@ -606,7 +607,8 @@ pref_LoadPrefsInDir(nsIFile* aDir, char - return rv; - } - --static nsresult pref_LoadPrefsInDirList(const char *listId) -+static nsresult pref_LoadPrefsInDirList(const char *listId, -+ char const *const *aSpecialFiles = NULL, PRUint32 aSpecialFilesCount = 0) - { - nsresult rv; - nsCOMPtr dirSvc(do_GetService(NS_DIRECTORY_SERVICE_CONTRACTID, &rv)); -@@ -625,7 +627,7 @@ static nsresult pref_LoadPrefsInDirList( - nsCOMPtr dir = do_QueryInterface(elem); - if (dir) { - // Do we care if a file provided by this process fails to load? -- pref_LoadPrefsInDir(dir, nsnull, 0); -+ pref_LoadPrefsInDir(dir, aSpecialFiles, aSpecialFilesCount); - } - } - } -@@ -676,6 +678,7 @@ static nsresult pref_InitInitialObjects( - #if defined(MOZ_WIDGET_PHOTON) - , "photon.js" - #endif -+ , "" // placeholder for KDE (empty is otherwise harmless) - #elif defined(XP_OS2) - "os2pref.js" - #elif defined(XP_BEOS) -@@ -683,12 +686,23 @@ static nsresult pref_InitInitialObjects( - #endif - }; - -+ if( nsKDEUtils::kdeSession()) { // TODO what if some setup actually requires the helper? -+ for( int i = 0; -+ i < NS_ARRAY_LENGTH(specialFiles); -+ ++i ) { -+ if( *specialFiles[ i ] == '\0' ) { -+ specialFiles[ i ] = "kde.js"; -+ break; -+ } -+ } -+ } -+ - rv = pref_LoadPrefsInDir(defaultPrefDir, specialFiles, NS_ARRAY_LENGTH(specialFiles)); - if (NS_FAILED(rv)) { - NS_WARNING("Error parsing application default preferences."); - } - -- rv = pref_LoadPrefsInDirList(NS_APP_PREFS_DEFAULTS_DIR_LIST); -+ rv = pref_LoadPrefsInDirList(NS_APP_PREFS_DEFAULTS_DIR_LIST, specialFiles, NS_ARRAY_LENGTH(specialFiles)); - NS_ENSURE_SUCCESS(rv, rv); - - NS_CreateServicesFromCategory(NS_PREFSERVICE_APPDEFAULTS_TOPIC_ID, ---- mozilla/toolkit/components/downloads/src/Makefile.in.sav 2009-09-14 10:00:21.000000000 +0200 -+++ mozilla/toolkit/components/downloads/src/Makefile.in 2009-09-14 10:04:14.000000000 +0200 -@@ -100,3 +100,4 @@ include $(topsrcdir)/config/rules.mk - - EXTRA_DSO_LDOPTS += $(MOZ_COMPONENT_LIBS) - -+LOCAL_INCLUDES += -I$(topsrcdir)/toolkit/xre ---- mozilla/toolkit/components/downloads/src/nsDownloadManager.cpp.sav 2009-09-14 10:00:21.000000000 +0200 -+++ mozilla/toolkit/components/downloads/src/nsDownloadManager.cpp 2009-09-14 10:04:14.000000000 +0200 -@@ -85,6 +85,7 @@ - #include "nsDocShellCID.h" - #include "nsIPrivateBrowsingService.h" - #include "nsNetCID.h" -+#include "nsKDEUtils.h" - - #if defined(XP_WIN) && !defined(WINCE) - #include -@@ -2299,6 +2300,15 @@ nsDownload::SetState(DownloadState aStat - pref->GetBoolPref(PREF_BDM_SHOWALERTONCOMPLETE, &showTaskbarAlert); - - if (showTaskbarAlert) { -+ if( nsKDEUtils::kdeSupport()) { -+ nsCStringArray command; -+ command.AppendCString( NS_LITERAL_CSTRING( "DOWNLOADFINISHED" )); -+ nsAutoString displayName; -+ GetDisplayName( displayName ); -+ command.AppendCString( nsCAutoString( ToNewUTF8String( displayName ))); -+ nsKDEUtils::command( command ); -+ } else { -+ // begin non-KDE block - PRInt32 alertInterval = 2000; - if (pref) - pref->GetIntPref(PREF_BDM_SHOWALERTINTERVAL, &alertInterval); -@@ -2334,6 +2344,7 @@ nsDownload::SetState(DownloadState aStat - EmptyString()); - } - } -+ } // end non-KDE block - } - #if defined(XP_WIN) && !defined(WINCE) - nsCOMPtr fileURL = do_QueryInterface(mTarget); ---- mozilla/toolkit/content/jar.mn.sav 2009-09-14 10:00:21.000000000 +0200 -+++ mozilla/toolkit/content/jar.mn 2009-09-14 10:04:14.000000000 +0200 -@@ -43,6 +43,8 @@ toolkit.jar: - *+ content/global/bindings/colorpicker.xml (widgets/colorpicker.xml) - *+ content/global/bindings/datetimepicker.xml (widgets/datetimepicker.xml) - *+ content/global/bindings/dialog.xml (widgets/dialog.xml) -+*+ content/global/bindings/dialog-kde.xml (widgets/dialog-kde.xml) -+% override chrome://global/content/bindings/dialog.xml chrome://global/content/bindings/dialog-kde.xml desktop=kde - *+ content/global/bindings/editor.xml (widgets/editor.xml) - * content/global/bindings/expander.xml (widgets/expander.xml) - * content/global/bindings/filefield.xml (widgets/filefield.xml) -@@ -56,6 +58,8 @@ toolkit.jar: - *+ content/global/bindings/numberbox.xml (widgets/numberbox.xml) - *+ content/global/bindings/popup.xml (widgets/popup.xml) - *+ content/global/bindings/preferences.xml (widgets/preferences.xml) -+*+ content/global/bindings/preferences-kde.xml (widgets/preferences-kde.xml) -+% override chrome://global/content/bindings/preferences.xml chrome://global/content/bindings/preferences-kde.xml desktop=kde - *+ content/global/bindings/progressmeter.xml (widgets/progressmeter.xml) - *+ content/global/bindings/radio.xml (widgets/radio.xml) - *+ content/global/bindings/resizer.xml (widgets/resizer.xml) ---- mozilla/toolkit/content/widgets/dialog-kde.xml.sav 2009-09-14 10:00:21.000000000 +0200 -+++ mozilla/toolkit/content/widgets/dialog-kde.xml 2009-09-14 10:04:14.000000000 +0200 -@@ -19,7 +19,7 @@ - - - - -