--- a/mozilla-kde.patch Fri Mar 22 10:02:25 2024 +0100
+++ b/mozilla-kde.patch Sun Apr 21 06:46:25 2024 +0200
@@ -283,7 +283,7 @@
nsUnixSystemProxySettings::GetMainThreadOnly(bool* aMainThreadOnly) {
// dbus prevents us from being threadsafe, but this routine should not block
// anyhow
-@@ -391,21 +395,46 @@ nsresult nsUnixSystemProxySettings::GetP
+@@ -388,21 +392,46 @@ nsresult nsUnixSystemProxySettings::GetP
return NS_OK;
}
@@ -1255,15 +1255,15 @@
mFilters.AppendElement(filter);
mFilterNames.AppendElement(name);
-@@ -412,16 +416,39 @@ nsresult nsFilePicker::Show(nsIFilePicke
- return NS_OK;
- }
-
- NS_IMETHODIMP
+@@ -416,16 +420,39 @@ NS_IMETHODIMP
nsFilePicker::Open(nsIFilePickerShownCallback* aCallback) {
// Can't show two dialogs concurrently with the same filepicker
if (mFileChooser) return NS_ERROR_NOT_AVAILABLE;
+ if (MaybeBlockFilePicker(aCallback)) {
+ return NS_OK;
+ }
+
+ // KDE file picker is not handled via callback
+ if (nsKDEUtils::kdeSupport()) {
+ mCallback = aCallback;
@@ -1295,7 +1295,7 @@
GtkFileChooserAction action = GetGtkFileChooserAction(mMode);
const gchar* accept_button;
-@@ -703,16 +730,215 @@ void nsFilePicker::Done(void* file_choos
+@@ -707,16 +734,215 @@ void nsFilePicker::Done(void* file_choos
mCallback->Done(result);
mCallback = nullptr;
} else {
@@ -1670,13 +1670,13 @@
diff --git a/xpcom/components/moz.build b/xpcom/components/moz.build
--- a/xpcom/components/moz.build
+++ b/xpcom/components/moz.build
-@@ -66,16 +66,17 @@ LOCAL_INCLUDES += [
- "!..",
+@@ -67,16 +67,17 @@ LOCAL_INCLUDES += [
"../base",
"../build",
"../ds",
"/chrome",
"/js/xpconnect/loader",
+ "/js/xpconnect/src",
"/layout/build",
"/modules/libjar",
+ "/toolkit/xre",