forked from pool/MozillaThunderbird
- For openSUSE > 13.2, the build fails for i586 as it goes out of
memory. Prevent this from happening by disabing parallel build in this particular case (i.e. do not pass mk_add_options MOZ_MAKE_FLAGS%{?jobs:-j%jobs}). - update to Thunderbird 45.0 * Add a Correspondents column combining Sender and Recipient * Much better support for XMPP chatrooms and commands * Remote content exceptions: Improved options to add exceptions * Implement option to always use HTML formatting to prevent unexpected format loss when converting messages to plain text * Use OpenStreetmap for maps (even allow the user to choose from list of map services) * Allow spell checking and dictionary selection in the subject line * Allow editing of From when composing a message * Add dropdown in compose to allow specific setting of font size * Return/Enter in composer will now insert a new paragraph by default (shift-Enter will insert a line break) * Allow copying of name and email address from the message header of an email * Mail.ru supports OAuth authentication OBS-URL: https://build.opensuse.org/package/show/mozilla:Factory/MozillaThunderbird?expand=0&rev=314
This commit is contained in:
parent
c7c14f778a
commit
f244ebf410
@ -1,3 +1,31 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 27 04:26:56 UTC 2016 - badshah400@gmail.com
|
||||
|
||||
- For openSUSE > 13.2, the build fails for i586 as it goes out of
|
||||
memory. Prevent this from happening by disabing parallel build
|
||||
in this particular case (i.e. do not pass
|
||||
mk_add_options MOZ_MAKE_FLAGS%{?jobs:-j%jobs}).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Apr 16 08:11:14 UTC 2016 - wr@rosenauer.org
|
||||
|
||||
- update to Thunderbird 45.0
|
||||
* Add a Correspondents column combining Sender and Recipient
|
||||
* Much better support for XMPP chatrooms and commands
|
||||
* Remote content exceptions: Improved options to add exceptions
|
||||
* Implement option to always use HTML formatting to prevent
|
||||
unexpected format loss when converting messages to plain text
|
||||
* Use OpenStreetmap for maps (even allow the user to choose from
|
||||
list of map services)
|
||||
* Allow spell checking and dictionary selection in the subject line
|
||||
* Allow editing of From when composing a message
|
||||
* Add dropdown in compose to allow specific setting of font size
|
||||
* Return/Enter in composer will now insert a new paragraph by
|
||||
default (shift-Enter will insert a line break)
|
||||
* Allow copying of name and email address from the message header
|
||||
of an email
|
||||
* Mail.ru supports OAuth authentication
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 6 21:54:09 UTC 2016 - astieger@suse.com
|
||||
|
||||
|
@ -17,18 +17,16 @@
|
||||
#
|
||||
|
||||
|
||||
%define mainversion 38.7.2
|
||||
%define mainversion 45.0
|
||||
%define update_channel release
|
||||
%define releasedate 2016040400
|
||||
%define releasedate 2016041500
|
||||
|
||||
%if %suse_version > 1210
|
||||
%if %suse_version > 1310
|
||||
%define gstreamer_ver 1.0
|
||||
%define gstreamer 1
|
||||
%else
|
||||
%define gstreamer_ver 0.10
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%bcond_without mozilla_tb_kde4
|
||||
%bcond_with mozilla_tb_valgrind
|
||||
@ -46,8 +44,8 @@ BuildRequires: libcurl-devel
|
||||
BuildRequires: libgnomeui-devel
|
||||
BuildRequires: libidl-devel
|
||||
BuildRequires: libnotify-devel
|
||||
BuildRequires: mozilla-nspr-devel >= 4.10.10
|
||||
BuildRequires: mozilla-nss-devel >= 3.20.2
|
||||
BuildRequires: mozilla-nspr-devel >= 4.12
|
||||
BuildRequires: mozilla-nss-devel >= 3.21.1
|
||||
BuildRequires: python
|
||||
BuildRequires: startup-notification-devel
|
||||
BuildRequires: unzip
|
||||
@ -60,7 +58,6 @@ BuildRequires: pkgconfig(libpulse)
|
||||
%if %{with mozilla_tb_valgrind}
|
||||
BuildRequires: pkgconfig(valgrind)
|
||||
%endif
|
||||
%if %suse_version > 1210
|
||||
BuildRequires: pkgconfig(gstreamer-%gstreamer_ver)
|
||||
BuildRequires: pkgconfig(gstreamer-app-%gstreamer_ver)
|
||||
BuildRequires: pkgconfig(gstreamer-plugins-base-%gstreamer_ver)
|
||||
@ -73,7 +70,6 @@ Requires: libgstreamer-0_10-0
|
||||
Recommends: gstreamer-0_10-fluendo-mp3
|
||||
Recommends: gstreamer-0_10-plugins-ffmpeg
|
||||
%endif
|
||||
%endif
|
||||
Version: %{mainversion}
|
||||
Release: 0
|
||||
Provides: thunderbird = %{version}
|
||||
@ -105,10 +101,8 @@ Source12: kde.js
|
||||
Patch1: mozilla-language.patch
|
||||
Patch2: mozilla-nongnome-proxies.patch
|
||||
Patch3: mozilla-kde.patch
|
||||
Patch4: mozilla-arm-disable-edsp.patch
|
||||
Patch5: mozilla-develdirs.patch
|
||||
Patch6: mozilla-icu-strncat.patch
|
||||
Patch7: mozilla-arm64-libjpeg-turbo.patch
|
||||
Patch4: mozilla-develdirs.patch
|
||||
Patch5: mozilla-no-stdcxx-check.patch
|
||||
# Thunderbird/mail
|
||||
Patch20: tb-ssldap.patch
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
@ -204,8 +198,6 @@ pushd mozilla
|
||||
%endif
|
||||
%patch4 -p1
|
||||
%patch5 -p1
|
||||
%patch6 -p1
|
||||
%patch7 -p1
|
||||
popd
|
||||
# comm-central patches
|
||||
%patch20 -p1
|
||||
@ -253,7 +245,13 @@ cat << EOF > $MOZCONFIG
|
||||
mk_add_options MOZILLA_OFFICIAL=1
|
||||
mk_add_options BUILD_OFFICIAL=1
|
||||
mk_add_options MOZ_MILESTONE_RELEASE=1
|
||||
%if 0%{?suse_version} > 1320
|
||||
%ifarch i586
|
||||
mk_add_options MOZ_MAKE_FLAGS=-j1
|
||||
%else
|
||||
mk_add_options MOZ_MAKE_FLAGS=%{?jobs:-j%jobs}
|
||||
%endif
|
||||
%endif
|
||||
mk_add_options MOZ_OBJDIR=$RPM_BUILD_DIR/obj
|
||||
ac_add_options --enable-application=mail
|
||||
ac_add_options --enable-calendar
|
||||
@ -280,9 +278,6 @@ ac_add_options --enable-update-channel=%{update_channel}
|
||||
%if 0%{?gstreamer} == 1
|
||||
ac_add_options --enable-gstreamer=1.0
|
||||
%endif
|
||||
%if %suse_version < 1220
|
||||
ac_add_options --disable-gstreamer
|
||||
%endif
|
||||
%if %has_system_cairo
|
||||
ac_add_options --enable-system-cairo
|
||||
%endif
|
||||
@ -455,15 +450,11 @@ rm -rf %{_tmppath}/translations.*
|
||||
%endif
|
||||
|
||||
%post
|
||||
%if %suse_version > 1130
|
||||
%icon_theme_cache_post
|
||||
%endif
|
||||
exit 0
|
||||
|
||||
%postun
|
||||
%if %suse_version > 1130
|
||||
%icon_theme_cache_postun
|
||||
%endif
|
||||
exit 0
|
||||
|
||||
%files
|
||||
@ -472,7 +463,6 @@ exit 0
|
||||
%dir %{progdir}
|
||||
%{progdir}/application.ini
|
||||
%{progdir}/blocklist.xml
|
||||
%{progdir}/chrome.manifest
|
||||
%{progdir}/dependentlibs.list
|
||||
%{progdir}/*.so
|
||||
%{progdir}/omni.ja
|
||||
@ -486,16 +476,14 @@ exit 0
|
||||
%{progdir}/crashreporter.ini
|
||||
%{progdir}/Throbber-small.gif
|
||||
%endif
|
||||
%{progdir}/components/
|
||||
%dir %{progdir}/chrome/
|
||||
%{progdir}/chrome/icons/
|
||||
%dir %{progdir}/dictionaries/
|
||||
%{progdir}/distribution/
|
||||
%{progdir}/defaults/
|
||||
%dir %{progdir}/extensions/
|
||||
%{progdir}/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}
|
||||
%{progdir}/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}.xpi
|
||||
%{progdir}/isp/
|
||||
%{progdir}/searchplugins/
|
||||
%{_datadir}/appdata/
|
||||
%{_datadir}/applications/%{desktop_file_name}.desktop
|
||||
%{_datadir}/icons/hicolor/*/apps/%{progname}.png
|
||||
@ -514,7 +502,6 @@ exit 0
|
||||
%defattr(-,root,root)
|
||||
%{_libdir}/%{progname}/*.a
|
||||
%{_libdir}/%{progname}/*.py
|
||||
%{_libdir}/%{progname}/*.pyc
|
||||
%{_libdir}/%{progname}/ply/
|
||||
%{_libdir}/%{progname}/xpcshell
|
||||
#%{_libdir}/pkgconfig/*.pc
|
||||
|
@ -2,7 +2,7 @@
|
||||
<constraints>
|
||||
<hardware>
|
||||
<disk>
|
||||
<size unit="G">11</size>
|
||||
<size unit="G">13</size>
|
||||
</disk>
|
||||
<memory>
|
||||
<size unit="M">6000</size>
|
||||
|
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:9ea4b3d27f97562219f732c8906eda3727ef59265f3a6d6b3da0e8957616a301
|
||||
size 28432
|
||||
oid sha256:a8057e32507230b91977e44dffd7dba5969bf391a20f93af0e39786732246088
|
||||
size 28376
|
||||
|
@ -1,9 +1,9 @@
|
||||
#!/bin/bash
|
||||
|
||||
CHANNEL="esr38"
|
||||
CHANNEL="esr45"
|
||||
BRANCH="releases/comm-$CHANNEL"
|
||||
RELEASE_TAG="THUNDERBIRD_38_7_2_RELEASE"
|
||||
VERSION="38.7.2"
|
||||
RELEASE_TAG="THUNDERBIRD_45_0_RELEASE"
|
||||
VERSION="45.0"
|
||||
|
||||
echo "cloning $BRANCH..."
|
||||
hg clone http://hg.mozilla.org/$BRANCH thunderbird
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:5bd6cca927899f1dd5006b2b71b534efced197aa53100258cd6a9b6b8fe90bbc
|
||||
size 22297300
|
3
l10n-45.0.tar.xz
Normal file
3
l10n-45.0.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:97797ae1da39a20af90e312434388a3d0ad7071dd6893d2402ffb8ab144a856e
|
||||
size 24491464
|
@ -1,27 +0,0 @@
|
||||
# HG changeset patch
|
||||
# User Adrian Schröter <adrian@suse.de>
|
||||
# Parent b945e0c3b145b6b2245f42bab52f911c2d1f6759
|
||||
disable ESDP support (no BNC or BMO reference yet :-()
|
||||
|
||||
diff --git a/mozglue/build/arm.h b/mozglue/build/arm.h
|
||||
--- a/mozglue/build/arm.h
|
||||
+++ b/mozglue/build/arm.h
|
||||
@@ -116,17 +116,17 @@ namespace mozilla {
|
||||
extern bool MFBT_DATA neon_enabled;
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
|
||||
#if defined(MOZILLA_PRESUME_EDSP)
|
||||
# define MOZILLA_MAY_SUPPORT_EDSP 1
|
||||
inline bool supports_edsp() { return true; }
|
||||
-#elif defined(MOZILLA_MAY_SUPPORT_EDSP) \
|
||||
+#elif 0 \
|
||||
&& defined(MOZILLA_ARM_HAVE_CPUID_DETECTION)
|
||||
inline bool supports_edsp() { return arm_private::edsp_enabled; }
|
||||
#else
|
||||
inline bool supports_edsp() { return false; }
|
||||
#endif
|
||||
|
||||
#if defined(MOZILLA_PRESUME_ARMV6)
|
||||
# define MOZILLA_MAY_SUPPORT_ARMV6 1
|
@ -1,22 +0,0 @@
|
||||
Index: mozilla/configure.in
|
||||
===================================================================
|
||||
--- mozilla.orig/configure.in
|
||||
+++ mozilla/configure.in
|
||||
@@ -6241,7 +6241,7 @@ fi
|
||||
|
||||
dnl If we're on an ARM system which supports libjpeg-turbo's asm routines and
|
||||
dnl --disable-libjpeg-turbo wasn't passed, use the C compiler as the assembler.
|
||||
-if test -n "$LIBJPEG_TURBO_ARM_ASM" ; then
|
||||
+if test -n "$LIBJPEG_TURBO_ARM_ASM" -o -n "$LIBJPEG_TURBO_ARM64_ASM" ; then
|
||||
echo "Using $AS as the assembler for ARM code."
|
||||
LIBJPEG_TURBO_AS=$AS
|
||||
fi
|
||||
@@ -6252,6 +6252,8 @@ elif test -n "$LIBJPEG_TURBO_X64_ASM"; t
|
||||
AC_DEFINE(LIBJPEG_TURBO_X64_ASM)
|
||||
elif test -n "$LIBJPEG_TURBO_ARM_ASM"; then
|
||||
AC_DEFINE(LIBJPEG_TURBO_ARM_ASM)
|
||||
+elif test -n "$LIBJPEG_TURBO_ARM64_ASM"; then
|
||||
+ AC_DEFINE(LIBJPEG_TURBO_ARM64_ASM)
|
||||
elif test -n "$MOZ_LIBJPEG_TURBO"; then
|
||||
dnl Warn if we're not building the optimized routines, even though the user
|
||||
dnl didn't specify --disable-libjpeg-turbo.
|
@ -1,20 +1,24 @@
|
||||
diff --git a/config/baseconfig.mk b/config/baseconfig.mk
|
||||
--- a/config/baseconfig.mk
|
||||
+++ b/config/baseconfig.mk
|
||||
@@ -1,14 +1,14 @@
|
||||
@@ -1,16 +1,16 @@
|
||||
# This file is normally included by autoconf.mk, but it is also used
|
||||
# directly in python/mozbuild/mozbuild/base.py for gmake validation.
|
||||
# We thus use INCLUDED_AUTOCONF_MK to enable/disable some parts depending
|
||||
# whether a normal build is happening or whether the check is running.
|
||||
-includedir := $(includedir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
|
||||
-idldir = $(datadir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
|
||||
-installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
|
||||
-sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION)
|
||||
+includedir := $(includedir)/$(MOZ_APP_NAME)
|
||||
+idldir = $(datadir)/idl/$(MOZ_APP_NAME)
|
||||
installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
|
||||
sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION)
|
||||
ifndef TOP_DIST
|
||||
TOP_DIST = dist
|
||||
endif
|
||||
ifneq (,$(filter /%,$(TOP_DIST)))
|
||||
DIST = $(TOP_DIST)
|
||||
+installdir = $(libdir)/$(MOZ_APP_NAME)
|
||||
+sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel
|
||||
ifeq (.,$(DEPTH))
|
||||
DIST = dist
|
||||
else
|
||||
DIST = $(DEPTH)/dist
|
||||
endif
|
||||
|
||||
# We do magic with OBJ_SUFFIX in config.mk, the following ensures we don't
|
||||
# manually use it before config.mk inclusion
|
||||
|
@ -1,35 +0,0 @@
|
||||
# HG changeset patch
|
||||
# Parent 29be2a4daa0f512d22bde85b97b5460839026571
|
||||
# User Wolfgang Rosenauer <wr@rosenauer.org>
|
||||
From: Jan Engelhardt <jengelh@inai.de>
|
||||
Reference: http://bugs.icu-project.org/trac/ticket/7808
|
||||
|
||||
diff --git a/intl/icu/source/tools/pkgdata/pkgdata.cpp b/intl/icu/source/tools/pkgdata/pkgdata.cpp
|
||||
--- a/intl/icu/source/tools/pkgdata/pkgdata.cpp
|
||||
+++ b/intl/icu/source/tools/pkgdata/pkgdata.cpp
|
||||
@@ -1975,22 +1975,22 @@ static void loadLists(UPKGOptions *o, UE
|
||||
FILE *p = NULL;
|
||||
size_t n;
|
||||
static char buf[512] = "";
|
||||
char cmdBuf[1024];
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
const char cmd[] = "icu-config --incpkgdatafile";
|
||||
|
||||
/* #1 try the same path where pkgdata was called from. */
|
||||
- findDirname(progname, cmdBuf, 1024, &status);
|
||||
+ findDirname(progname, cmdBuf, sizeof(cmdBuf), &status);
|
||||
if(U_SUCCESS(status)) {
|
||||
if (cmdBuf[0] != 0) {
|
||||
- uprv_strncat(cmdBuf, U_FILE_SEP_STRING, 1024);
|
||||
+ uprv_strncat(cmdBuf, U_FILE_SEP_STRING, sizeof(cmdBuf)-1-strlen(cmdBuf));
|
||||
}
|
||||
- uprv_strncat(cmdBuf, cmd, 1024);
|
||||
+ uprv_strncat(cmdBuf, cmd, sizeof(cmdBuf)-1-strlen(cmdBuf));
|
||||
|
||||
if(verbose) {
|
||||
fprintf(stdout, "# Calling icu-config: %s\n", cmdBuf);
|
||||
}
|
||||
p = popen(cmdBuf, "r");
|
||||
}
|
||||
|
||||
if(p == NULL || (n = fread(buf, 1, 511, p)) <= 0) {
|
@ -1,34 +1,15 @@
|
||||
# HG changeset patch
|
||||
# Parent 879df970cffe74db62f72f5b815b559dab63418a
|
||||
# Parent 797d5f17b080f54439602f107ecaf6b09a0ef5c1
|
||||
Description: Add KDE integration to Firefox (toolkit parts)
|
||||
Author: Wolfgang Rosenauer <wolfgang@rosenauer.org>
|
||||
Author: Lubos Lunak <lunak@suse.com>
|
||||
Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=140751
|
||||
https://bugzilla.novell.com/show_bug.cgi?id=170055
|
||||
|
||||
diff --git a/modules/libpref/Makefile.in b/modules/libpref/Makefile.in
|
||||
--- a/modules/libpref/Makefile.in
|
||||
+++ b/modules/libpref/Makefile.in
|
||||
@@ -21,13 +21,15 @@ endif
|
||||
ifdef MOZ_SERVICES_HEALTHREPORT
|
||||
ifneq (android,$(MOZ_WIDGET_TOOLKIT))
|
||||
grepref_files += $(topsrcdir)/services/healthreport/healthreport-prefs.js
|
||||
else
|
||||
grepref_files += $(topsrcdir)/mobile/android/chrome/content/healthreport-prefs.js
|
||||
endif
|
||||
endif
|
||||
|
||||
+LOCAL_INCLUDES += -I$(topsrcdir)/toolkit/xre
|
||||
+
|
||||
greprefs.js: $(grepref_files)
|
||||
$(call py_action,preprocessor,$(PREF_PPFLAGS) $(DEFINES) $(ACDEFINES) $(XULPPFLAGS) $^ -o $@)
|
||||
|
||||
libs:: greprefs.js
|
||||
$(INSTALL) $^ $(DIST)/bin/
|
||||
diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
|
||||
--- a/modules/libpref/Preferences.cpp
|
||||
+++ b/modules/libpref/Preferences.cpp
|
||||
@@ -27,16 +27,17 @@
|
||||
@@ -30,16 +30,17 @@
|
||||
#include "nsIZipReader.h"
|
||||
#include "nsPrefBranch.h"
|
||||
#include "nsXPIDLString.h"
|
||||
@ -40,13 +21,13 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
|
||||
+#include "nsKDEUtils.h"
|
||||
|
||||
#include "nsQuickSort.h"
|
||||
#include "pldhash.h"
|
||||
#include "PLDHashTable.h"
|
||||
|
||||
#include "prefapi.h"
|
||||
#include "prefread.h"
|
||||
#include "prefapi_private_data.h"
|
||||
|
||||
@@ -1165,16 +1166,34 @@ pref_LoadPrefsInDir(nsIFile* aDir, char
|
||||
@@ -1136,16 +1137,34 @@ pref_LoadPrefsInDir(nsIFile* aDir, char
|
||||
|
||||
static nsresult pref_LoadPrefsInDirList(const char *listId)
|
||||
{
|
||||
@ -81,7 +62,7 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
|
||||
return NS_OK;
|
||||
|
||||
bool hasMore;
|
||||
@@ -1190,17 +1209,17 @@ static nsresult pref_LoadPrefsInDirList(
|
||||
@@ -1161,17 +1180,17 @@ static nsresult pref_LoadPrefsInDirList(
|
||||
|
||||
nsAutoCString leaf;
|
||||
path->GetNativeLeafName(leaf);
|
||||
@ -100,7 +81,7 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
|
||||
{
|
||||
nsZipItemPtr<char> manifest(jarReader, name, true);
|
||||
NS_ENSURE_TRUE(manifest.Buffer(), NS_ERROR_NOT_AVAILABLE);
|
||||
@@ -1294,26 +1313,38 @@ static nsresult pref_InitInitialObjects(
|
||||
@@ -1265,26 +1284,38 @@ static nsresult pref_InitInitialObjects(
|
||||
/* these pref file names should not be used: we process them after all other application pref files for backwards compatibility */
|
||||
static const char* specialFiles[] = {
|
||||
#if defined(XP_MACOSX)
|
||||
@ -137,12 +118,36 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
|
||||
|
||||
// Load jar:$app/omni.jar!/defaults/preferences/*.js
|
||||
// or jar:$gre/omni.jar!/defaults/preferences/*.js.
|
||||
nsRefPtr<nsZipArchive> appJarReader = mozilla::Omnijar::GetReader(mozilla::Omnijar::APP);
|
||||
RefPtr<nsZipArchive> appJarReader = mozilla::Omnijar::GetReader(mozilla::Omnijar::APP);
|
||||
// GetReader(mozilla::Omnijar::APP) returns null when $app == $gre, in which
|
||||
diff --git a/modules/libpref/moz.build b/modules/libpref/moz.build
|
||||
--- a/modules/libpref/moz.build
|
||||
+++ b/modules/libpref/moz.build
|
||||
@@ -31,16 +31,20 @@ UNIFIED_SOURCES += [
|
||||
'prefread.cpp',
|
||||
]
|
||||
|
||||
# prefapi.cpp cannot be built in unified mode because it uses plarena.h
|
||||
SOURCES += [
|
||||
'prefapi.cpp',
|
||||
]
|
||||
|
||||
+LOCAL_INCLUDES += [
|
||||
+ '/toolkit/xre'
|
||||
+]
|
||||
+
|
||||
include('/ipc/chromium/chromium-config.mozbuild')
|
||||
|
||||
FINAL_LIBRARY = 'xul'
|
||||
|
||||
DEFINES['OS_ARCH'] = CONFIG['OS_ARCH']
|
||||
DEFINES['MOZ_WIDGET_TOOLKIT'] = CONFIG['MOZ_WIDGET_TOOLKIT']
|
||||
|
||||
if CONFIG['GNU_CXX']:
|
||||
diff --git a/python/mozbuild/mozpack/chrome/flags.py b/python/mozbuild/mozpack/chrome/flags.py
|
||||
--- a/python/mozbuild/mozpack/chrome/flags.py
|
||||
+++ b/python/mozbuild/mozpack/chrome/flags.py
|
||||
@@ -209,16 +209,17 @@ class Flags(OrderedDict):
|
||||
@@ -211,16 +211,17 @@ class Flags(OrderedDict):
|
||||
'contentaccessible': Flag,
|
||||
'os': StringFlag,
|
||||
'osversion': VersionFlag,
|
||||
@ -163,7 +168,7 @@ diff --git a/python/mozbuild/mozpack/chrome/flags.py b/python/mozbuild/mozpack/c
|
||||
diff --git a/python/mozbuild/mozpack/chrome/manifest.py b/python/mozbuild/mozpack/chrome/manifest.py
|
||||
--- a/python/mozbuild/mozpack/chrome/manifest.py
|
||||
+++ b/python/mozbuild/mozpack/chrome/manifest.py
|
||||
@@ -31,16 +31,17 @@ class ManifestEntry(object):
|
||||
@@ -33,16 +33,17 @@ class ManifestEntry(object):
|
||||
'application',
|
||||
'platformversion',
|
||||
'os',
|
||||
@ -184,11 +189,11 @@ diff --git a/python/mozbuild/mozpack/chrome/manifest.py b/python/mozbuild/mozpac
|
||||
diff --git a/toolkit/components/downloads/moz.build b/toolkit/components/downloads/moz.build
|
||||
--- a/toolkit/components/downloads/moz.build
|
||||
+++ b/toolkit/components/downloads/moz.build
|
||||
@@ -52,14 +52,15 @@ if not CONFIG['MOZ_SUITE']:
|
||||
@@ -65,15 +65,16 @@ if not CONFIG['MOZ_SUITE']:
|
||||
'nsDownloadManagerUI.js',
|
||||
'nsDownloadManagerUI.manifest',
|
||||
]
|
||||
|
||||
FAIL_ON_WARNINGS = True
|
||||
|
||||
FINAL_LIBRARY = 'xul'
|
||||
|
||||
LOCAL_INCLUDES += [
|
||||
@ -199,12 +204,13 @@ diff --git a/toolkit/components/downloads/moz.build b/toolkit/components/downloa
|
||||
]
|
||||
|
||||
DEFINES['GOOGLE_PROTOBUF_NO_RTTI'] = True
|
||||
DEFINES['GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER'] = True
|
||||
|
||||
CXXFLAGS += CONFIG['TK_CFLAGS']
|
||||
diff --git a/toolkit/components/downloads/nsDownloadManager.cpp b/toolkit/components/downloads/nsDownloadManager.cpp
|
||||
--- a/toolkit/components/downloads/nsDownloadManager.cpp
|
||||
+++ b/toolkit/components/downloads/nsDownloadManager.cpp
|
||||
@@ -46,16 +46,20 @@
|
||||
@@ -51,16 +51,20 @@
|
||||
#ifdef XP_WIN
|
||||
#include <shlobj.h>
|
||||
#include "nsWindowsHelpers.h"
|
||||
@ -225,7 +231,7 @@ diff --git a/toolkit/components/downloads/nsDownloadManager.cpp b/toolkit/compon
|
||||
#include "AndroidBridge.h"
|
||||
#endif
|
||||
|
||||
@@ -2716,16 +2720,25 @@ nsDownload::SetState(DownloadState aStat
|
||||
@@ -2719,16 +2723,25 @@ nsDownload::SetState(DownloadState aStat
|
||||
nsCOMPtr<nsIPrefBranch> pref(do_GetService(NS_PREFSERVICE_CONTRACTID));
|
||||
|
||||
// Master pref to control this function.
|
||||
@ -251,7 +257,7 @@ diff --git a/toolkit/components/downloads/nsDownloadManager.cpp b/toolkit/compon
|
||||
int64_t goat = PR_Now() - mStartTime;
|
||||
showTaskbarAlert = goat > alertIntervalUSec;
|
||||
|
||||
@@ -2756,16 +2769,17 @@ nsDownload::SetState(DownloadState aStat
|
||||
@@ -2759,16 +2772,17 @@ nsDownload::SetState(DownloadState aStat
|
||||
NS_LITERAL_STRING(DOWNLOAD_MANAGER_ALERT_ICON), title,
|
||||
message, !removeWhenDone,
|
||||
mPrivate ? NS_LITERAL_STRING("private") : NS_LITERAL_STRING("non-private"),
|
||||
@ -272,8 +278,8 @@ diff --git a/toolkit/components/downloads/nsDownloadManager.cpp b/toolkit/compon
|
||||
diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn
|
||||
--- a/toolkit/content/jar.mn
|
||||
+++ b/toolkit/content/jar.mn
|
||||
@@ -57,29 +57,33 @@ toolkit.jar:
|
||||
content/global/viewZoomOverlay.js (viewZoomOverlay.js)
|
||||
@@ -64,29 +64,33 @@ toolkit.jar:
|
||||
content/global/viewZoomOverlay.js
|
||||
*+ content/global/bindings/autocomplete.xml (widgets/autocomplete.xml)
|
||||
content/global/bindings/browser.xml (widgets/browser.xml)
|
||||
content/global/bindings/button.xml (widgets/button.xml)
|
||||
@ -310,7 +316,7 @@ diff --git a/toolkit/content/widgets/dialog-kde.xml b/toolkit/content/widgets/di
|
||||
new file mode 100644
|
||||
--- /dev/null
|
||||
+++ b/toolkit/content/widgets/dialog-kde.xml
|
||||
@@ -0,0 +1,455 @@
|
||||
@@ -0,0 +1,460 @@
|
||||
+<?xml version="1.0"?>
|
||||
+<!-- 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
|
||||
@ -426,11 +432,16 @@ new file mode 100644
|
||||
+ sizeToContent();
|
||||
+ }
|
||||
+
|
||||
+ if (opener) {
|
||||
+ var xOffset = (opener.outerWidth - window.outerWidth) / 2;
|
||||
+ var yOffset = opener.outerHeight / 5;
|
||||
+
|
||||
+ var newX = opener.screenX + xOffset;
|
||||
+ var newY = opener.screenY + yOffset;
|
||||
+ } else {
|
||||
+ newX = (screen.availWidth - window.outerWidth) / 2;
|
||||
+ newY = (screen.availHeight - window.outerHeight) / 2;
|
||||
+ }
|
||||
+
|
||||
+ // ensure the window is fully onscreen (if smaller than the screen)
|
||||
+ if (newX < screen.availLeft)
|
||||
@ -770,7 +781,7 @@ diff --git a/toolkit/content/widgets/preferences-kde.xml b/toolkit/content/widge
|
||||
new file mode 100644
|
||||
--- /dev/null
|
||||
+++ b/toolkit/content/widgets/preferences-kde.xml
|
||||
@@ -0,0 +1,1350 @@
|
||||
@@ -0,0 +1,1403 @@
|
||||
+<?xml version="1.0"?>
|
||||
+
|
||||
+<!DOCTYPE bindings [
|
||||
@ -1394,9 +1405,11 @@ new file mode 100644
|
||||
+ <constructor>
|
||||
+ <![CDATA[
|
||||
+ if (this.type != "child") {
|
||||
+ var psvc = Components.classes["@mozilla.org/preferences-service;1"]
|
||||
+ if (!this._instantApplyInitialized) {
|
||||
+ let psvc = Components.classes["@mozilla.org/preferences-service;1"]
|
||||
+ .getService(Components.interfaces.nsIPrefBranch);
|
||||
+ this.instantApply = psvc.getBoolPref("browser.preferences.instantApply");
|
||||
+ }
|
||||
+ if (this.instantApply) {
|
||||
+ var docElt = document.documentElement;
|
||||
+ var acceptButton = docElt.getButton("accept");
|
||||
@ -1466,6 +1479,11 @@ new file mode 100644
|
||||
+ ]]>
|
||||
+ </destructor>
|
||||
+
|
||||
+ <!-- Derived bindings can set this to true to cause us to skip
|
||||
+ reading the browser.preferences.instantApply pref in the constructor.
|
||||
+ Then they can set instantApply to their wished value. -->
|
||||
+ <field name="_instantApplyInitialized">false</field>
|
||||
+ <!-- Controls whether changed pref values take effect immediately. -->
|
||||
+ <field name="instantApply">false</field>
|
||||
+
|
||||
+ <property name="preferencePanes"
|
||||
@ -1949,6 +1967,10 @@ new file mode 100644
|
||||
+ <body>
|
||||
+ <![CDATA[
|
||||
+ // Write all values to preferences.
|
||||
+ if (this._deferredValueUpdateElements.size) {
|
||||
+ this._finalizeDeferredElements();
|
||||
+ }
|
||||
+
|
||||
+ var preferences = this.preferences;
|
||||
+ for (var i = 0; i < preferences.length; ++i) {
|
||||
+ var preference = preferences[i];
|
||||
@ -2025,15 +2047,57 @@ new file mode 100644
|
||||
+ </body>
|
||||
+ </method>
|
||||
+
|
||||
+ <field name="DeferredTask" readonly="true">
|
||||
+ let targetObj = {};
|
||||
+ Components.utils.import("resource://gre/modules/DeferredTask.jsm", targetObj);
|
||||
+ targetObj.DeferredTask;
|
||||
+ </field>
|
||||
+ <method name="_deferredValueUpdate">
|
||||
+ <parameter name="aElement"/>
|
||||
+ <body>
|
||||
+ <![CDATA[
|
||||
+ delete aElement._deferredValueUpdateTask;
|
||||
+ let preference = document.getElementById(aElement.getAttribute("preference"));
|
||||
+ let prefVal = preference.getElementValue(aElement);
|
||||
+ preference.value = prefVal;
|
||||
+ this._deferredValueUpdateElements.delete(aElement);
|
||||
+ ]]>
|
||||
+ </body>
|
||||
+ </method>
|
||||
+ <field name="_deferredValueUpdateElements">
|
||||
+ new Set();
|
||||
+ </field>
|
||||
+ <method name="_finalizeDeferredElements">
|
||||
+ <body>
|
||||
+ <![CDATA[
|
||||
+ for (let el of this._deferredValueUpdateElements) {
|
||||
+ if (el._deferredValueUpdateTask) {
|
||||
+ el._deferredValueUpdateTask.finalize();
|
||||
+ }
|
||||
+ }
|
||||
+ ]]>
|
||||
+ </body>
|
||||
+ </method>
|
||||
+ <method name="userChangedValue">
|
||||
+ <parameter name="aElement"/>
|
||||
+ <body>
|
||||
+ <![CDATA[
|
||||
+ var element = this.getPreferenceElement(aElement);
|
||||
+ let element = this.getPreferenceElement(aElement);
|
||||
+ if (element.hasAttribute("preference")) {
|
||||
+ if (element.getAttribute("delayprefsave") != "true") {
|
||||
+ var preference = document.getElementById(element.getAttribute("preference"));
|
||||
+ var prefVal = preference.getElementValue(element);
|
||||
+ preference.value = prefVal;
|
||||
+ } else {
|
||||
+ if (!element._deferredValueUpdateTask) {
|
||||
+ element._deferredValueUpdateTask = new this.DeferredTask(this._deferredValueUpdate.bind(this, element), 1000);
|
||||
+ this._deferredValueUpdateElements.add(element);
|
||||
+ } else {
|
||||
+ // Each time the preference is changed, restart the delay.
|
||||
+ element._deferredValueUpdateTask.disarm();
|
||||
+ }
|
||||
+ element._deferredValueUpdateTask.arm();
|
||||
+ }
|
||||
+ }
|
||||
+ ]]>
|
||||
+ </body>
|
||||
@ -2124,16 +2188,15 @@ new file mode 100644
|
||||
diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
|
||||
--- a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
|
||||
+++ b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
|
||||
@@ -14,16 +14,18 @@
|
||||
#include "prenv.h"
|
||||
@@ -15,16 +15,17 @@
|
||||
#include "nsPrintfCString.h"
|
||||
#include "nsNetCID.h"
|
||||
#include "nsNetUtil.h"
|
||||
#include "nsISupportsPrimitives.h"
|
||||
#include "nsIGSettingsService.h"
|
||||
#include "nsInterfaceHashtable.h"
|
||||
#include "mozilla/Attributes.h"
|
||||
#include "nsIURI.h"
|
||||
+#include "nsVoidArray.h"
|
||||
+#include "nsKDEUtils.h"
|
||||
|
||||
class nsUnixSystemProxySettings final : public nsISystemProxySettings {
|
||||
@ -2143,7 +2206,7 @@ diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/sy
|
||||
|
||||
nsUnixSystemProxySettings()
|
||||
: mSchemeProxySettings(4)
|
||||
@@ -38,16 +40,17 @@ private:
|
||||
@@ -39,16 +40,17 @@ private:
|
||||
nsCOMPtr<nsIGSettingsService> mGSettings;
|
||||
nsCOMPtr<nsIGSettingsCollection> mProxySettings;
|
||||
nsInterfaceHashtable<nsCStringHashKey, nsIGSettingsCollection> mSchemeProxySettings;
|
||||
@ -2161,7 +2224,7 @@ diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/sy
|
||||
nsUnixSystemProxySettings::GetMainThreadOnly(bool *aMainThreadOnly)
|
||||
{
|
||||
// dbus prevents us from being threadsafe, but this routine should not block anyhow
|
||||
@@ -504,16 +507,19 @@ nsUnixSystemProxySettings::GetProxyFromG
|
||||
@@ -505,16 +507,19 @@ nsUnixSystemProxySettings::GetProxyFromG
|
||||
|
||||
nsresult
|
||||
nsUnixSystemProxySettings::GetProxyForURI(const nsACString & aSpec,
|
||||
@ -2181,7 +2244,7 @@ diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/sy
|
||||
if (mGConf)
|
||||
return GetProxyFromGConf(aScheme, aHost, aPort, aResult);
|
||||
|
||||
@@ -539,8 +545,34 @@ static const mozilla::Module::ContractID
|
||||
@@ -540,8 +545,34 @@ static const mozilla::Module::ContractID
|
||||
|
||||
static const mozilla::Module kUnixProxyModule = {
|
||||
mozilla::Module::kVersion,
|
||||
@ -2219,11 +2282,11 @@ diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/sy
|
||||
diff --git a/toolkit/xre/moz.build b/toolkit/xre/moz.build
|
||||
--- a/toolkit/xre/moz.build
|
||||
+++ b/toolkit/xre/moz.build
|
||||
@@ -45,17 +45,19 @@ elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'qt
|
||||
GENERATED_SOURCES += [
|
||||
'moc_nsNativeAppSupportQt.cpp',
|
||||
]
|
||||
@@ -48,17 +48,19 @@ elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'ui
|
||||
elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'qt':
|
||||
EXPORTS += ['nsQAppInstance.h']
|
||||
SOURCES += [
|
||||
'!moc_nsNativeAppSupportQt.cpp',
|
||||
'nsNativeAppSupportQt.cpp',
|
||||
'nsQAppInstance.cpp',
|
||||
]
|
||||
@ -2445,12 +2508,12 @@ new file mode 100644
|
||||
+ }
|
||||
+
|
||||
+
|
||||
+bool nsKDEUtils::commandBlockUi( const nsTArray<nsCString>& command, const GtkWindow* parent, nsTArray<nsCString>* output )
|
||||
+bool nsKDEUtils::commandBlockUi( const nsTArray<nsCString>& command, GtkWindow* parent, nsTArray<nsCString>* output )
|
||||
+ {
|
||||
+ return self()->internalCommand( command, parent, true, output );
|
||||
+ }
|
||||
+
|
||||
+bool nsKDEUtils::internalCommand( const nsTArray<nsCString>& command, const GtkWindow* parent, bool blockUi,
|
||||
+bool nsKDEUtils::internalCommand( const nsTArray<nsCString>& command, GtkWindow* parent, bool blockUi,
|
||||
+ nsTArray<nsCString>* output )
|
||||
+ {
|
||||
+ if( !startHelper())
|
||||
@ -2466,8 +2529,8 @@ new file mode 100644
|
||||
+ {
|
||||
+ data.loop = g_main_loop_new( NULL, FALSE );
|
||||
+ GtkWidget* window = gtk_window_new( GTK_WINDOW_TOPLEVEL );
|
||||
+ if( parent && parent->group )
|
||||
+ gtk_window_group_add_window( parent->group, GTK_WINDOW( window ));
|
||||
+ if( parent && gtk_window_get_group(parent) )
|
||||
+ gtk_window_group_add_window( gtk_window_get_group(parent), GTK_WINDOW( window ));
|
||||
+ gtk_widget_realize( window );
|
||||
+ gtk_widget_set_sensitive( window, TRUE );
|
||||
+ gtk_grab_add( window );
|
||||
@ -2620,7 +2683,7 @@ new file mode 100644
|
||||
+ /* Like command(), but additionally blocks the parent widget like if there was
|
||||
+ a modal dialog shown and enters the event loop (i.e. there are still paint updates,
|
||||
+ this is for commands that take long). */
|
||||
+ static bool commandBlockUi( const nsTArray<nsCString>& command, const GtkWindow* parent, nsTArray<nsCString>* output = NULL );
|
||||
+ static bool commandBlockUi( const nsTArray<nsCString>& command, GtkWindow* parent, nsTArray<nsCString>* output = NULL );
|
||||
+
|
||||
+ private:
|
||||
+ nsKDEUtils();
|
||||
@ -2629,7 +2692,7 @@ new file mode 100644
|
||||
+ bool startHelper();
|
||||
+ void closeHelper();
|
||||
+ void feedCommand( const nsTArray<nsCString>& command );
|
||||
+ bool internalCommand( const nsTArray<nsCString>& command, const GtkWindow* parent, bool isParent,
|
||||
+ bool internalCommand( const nsTArray<nsCString>& command, GtkWindow* parent, bool isParent,
|
||||
+ nsTArray<nsCString>* output );
|
||||
+ FILE* commandFile;
|
||||
+ FILE* replyFile;
|
||||
@ -2639,7 +2702,7 @@ new file mode 100644
|
||||
diff --git a/uriloader/exthandler/moz.build b/uriloader/exthandler/moz.build
|
||||
--- a/uriloader/exthandler/moz.build
|
||||
+++ b/uriloader/exthandler/moz.build
|
||||
@@ -68,17 +68,19 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'coco
|
||||
@@ -75,17 +75,19 @@ elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'ui
|
||||
else:
|
||||
# These files can't be built in unified mode because they redefine LOG.
|
||||
SOURCES += [
|
||||
@ -2659,7 +2722,7 @@ diff --git a/uriloader/exthandler/moz.build b/uriloader/exthandler/moz.build
|
||||
'android/nsExternalSharingAppService.cpp',
|
||||
'android/nsExternalURLHandlerService.cpp',
|
||||
'android/nsMIMEInfoAndroid.cpp',
|
||||
@@ -123,16 +125,17 @@ include('/ipc/chromium/chromium-config.m
|
||||
@@ -129,16 +131,17 @@ include('/ipc/chromium/chromium-config.m
|
||||
|
||||
FINAL_LIBRARY = 'xul'
|
||||
|
||||
@ -2681,7 +2744,7 @@ diff --git a/uriloader/exthandler/unix/nsCommonRegistry.cpp b/uriloader/exthandl
|
||||
new file mode 100644
|
||||
--- /dev/null
|
||||
+++ b/uriloader/exthandler/unix/nsCommonRegistry.cpp
|
||||
@@ -0,0 +1,54 @@
|
||||
@@ -0,0 +1,53 @@
|
||||
+/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
||||
+/* 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
|
||||
@ -2692,7 +2755,6 @@ new file mode 100644
|
||||
+#include "nsGNOMERegistry.h"
|
||||
+#include "nsKDERegistry.h"
|
||||
+#include "nsString.h"
|
||||
+#include "nsVoidArray.h"
|
||||
+#include "nsKDEUtils.h"
|
||||
+
|
||||
+/* static */ bool
|
||||
@ -2851,7 +2913,7 @@ new file mode 100644
|
||||
+ if( nsKDEUtils::command( command, &output ) && output.Length() == 3 )
|
||||
+ {
|
||||
+ nsCString mimetype = output[ 0 ];
|
||||
+ nsRefPtr<nsMIMEInfoUnix> mimeInfo = new nsMIMEInfoUnix( mimetype );
|
||||
+ RefPtr<nsMIMEInfoUnix> mimeInfo = new nsMIMEInfoUnix( mimetype );
|
||||
+ NS_ENSURE_TRUE(mimeInfo, nullptr);
|
||||
+ nsCString description = output[ 1 ];
|
||||
+ mimeInfo->SetDescription(NS_ConvertUTF8toUTF16(description));
|
||||
@ -2954,8 +3016,8 @@ diff --git a/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp b/uriloader/exthandler
|
||||
- *_retval = nsGNOMERegistry::HandlerExists(mSchemeOrType.get());
|
||||
+ *_retval = nsCommonRegistry::HandlerExists(mSchemeOrType.get());
|
||||
} else {
|
||||
- nsRefPtr<nsMIMEInfoBase> mimeInfo = nsGNOMERegistry::GetFromType(mSchemeOrType);
|
||||
+ nsRefPtr<nsMIMEInfoBase> mimeInfo = nsCommonRegistry::GetFromType(mSchemeOrType);
|
||||
- RefPtr<nsMIMEInfoBase> mimeInfo = nsGNOMERegistry::GetFromType(mSchemeOrType);
|
||||
+ RefPtr<nsMIMEInfoBase> mimeInfo = nsCommonRegistry::GetFromType(mSchemeOrType);
|
||||
if (!mimeInfo) {
|
||||
nsAutoCString ext;
|
||||
nsresult rv = GetPrimaryExtension(ext);
|
||||
@ -3063,7 +3125,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
|
||||
|
||||
#ifdef MOZ_WIDGET_GTK
|
||||
LOG(("Looking in GNOME registry\n"));
|
||||
nsRefPtr<nsMIMEInfoBase> gnomeInfo =
|
||||
RefPtr<nsMIMEInfoBase> gnomeInfo =
|
||||
- nsGNOMERegistry::GetFromExtension(aFileExt);
|
||||
+ nsCommonRegistry::GetFromExtension(aFileExt);
|
||||
if (gnomeInfo) {
|
||||
@ -3083,8 +3145,8 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
|
||||
|
||||
#ifdef MOZ_WIDGET_GTK
|
||||
if (handler.IsEmpty()) {
|
||||
- nsRefPtr<nsMIMEInfoBase> gnomeInfo = nsGNOMERegistry::GetFromType(aMIMEType);
|
||||
+ nsRefPtr<nsMIMEInfoBase> gnomeInfo = nsCommonRegistry::GetFromType(aMIMEType);
|
||||
- RefPtr<nsMIMEInfoBase> gnomeInfo = nsGNOMERegistry::GetFromType(aMIMEType);
|
||||
+ RefPtr<nsMIMEInfoBase> gnomeInfo = nsCommonRegistry::GetFromType(aMIMEType);
|
||||
if (gnomeInfo) {
|
||||
LOG(("Got MIMEInfo from GNOME registry without extensions; setting them "
|
||||
"to %s\n", NS_LossyConvertUTF16toASCII(extensions).get()));
|
||||
@ -3096,7 +3158,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
|
||||
diff --git a/widget/gtk/moz.build b/widget/gtk/moz.build
|
||||
--- a/widget/gtk/moz.build
|
||||
+++ b/widget/gtk/moz.build
|
||||
@@ -79,16 +79,17 @@ else:
|
||||
@@ -86,16 +86,17 @@ else:
|
||||
include('/ipc/chromium/chromium-config.mozbuild')
|
||||
|
||||
FINAL_LIBRARY = 'xul'
|
||||
@ -3152,7 +3214,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
|
||||
#define MAX_PREVIEW_SOURCE_SIZE 4096
|
||||
|
||||
nsIFile *nsFilePicker::mPrevDisplayDirectory = nullptr;
|
||||
@@ -243,17 +245,19 @@ nsFilePicker::AppendFilters(int32_t aFil
|
||||
@@ -246,17 +248,19 @@ nsFilePicker::AppendFilters(int32_t aFil
|
||||
return nsBaseFilePicker::AppendFilters(aFilterMask);
|
||||
}
|
||||
|
||||
@ -3173,7 +3235,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
|
||||
|
||||
mFilters.AppendElement(filter);
|
||||
mFilterNames.AppendElement(name);
|
||||
@@ -368,16 +372,32 @@ nsFilePicker::Show(int16_t *aReturn)
|
||||
@@ -371,16 +375,32 @@ nsFilePicker::Show(int16_t *aReturn)
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsFilePicker::Open(nsIFilePickerShownCallback *aCallback)
|
||||
@ -3206,7 +3268,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
|
||||
|
||||
GtkFileChooserAction action = GetGtkFileChooserAction(mMode);
|
||||
const gchar *accept_button = (action == GTK_FILE_CHOOSER_ACTION_SAVE)
|
||||
@@ -556,8 +576,235 @@ nsFilePicker::Done(GtkWidget* file_choos
|
||||
@@ -595,8 +615,235 @@ nsFilePicker::Done(GtkWidget* file_choos
|
||||
if (mCallback) {
|
||||
mCallback->Done(result);
|
||||
mCallback = nullptr;
|
||||
@ -3445,8 +3507,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
|
||||
diff --git a/widget/gtk/nsFilePicker.h b/widget/gtk/nsFilePicker.h
|
||||
--- a/widget/gtk/nsFilePicker.h
|
||||
+++ b/widget/gtk/nsFilePicker.h
|
||||
@@ -68,11 +68,17 @@ protected:
|
||||
nsString mDefault;
|
||||
@@ -69,14 +69,20 @@ protected:
|
||||
nsString mDefaultExtension;
|
||||
|
||||
nsTArray<nsCString> mFilters;
|
||||
@ -3454,19 +3515,23 @@ diff --git a/widget/gtk/nsFilePicker.h b/widget/gtk/nsFilePicker.h
|
||||
|
||||
private:
|
||||
static nsIFile *mPrevDisplayDirectory;
|
||||
+
|
||||
|
||||
+ bool kdeRunning();
|
||||
+ bool getKdeRunning();
|
||||
+ NS_IMETHODIMP kdeFileDialog(PRInt16 *aReturn);
|
||||
+ NS_IMETHODIMP kdeAppsDialog(PRInt16 *aReturn);
|
||||
+ nsCString kdeMakeFilter( int index );
|
||||
+
|
||||
#if (MOZ_WIDGET_GTK == 3)
|
||||
GtkFileChooserWidget *mFileChooserDelegate;
|
||||
#endif
|
||||
};
|
||||
|
||||
#endif
|
||||
diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestParser.cpp
|
||||
--- a/xpcom/components/ManifestParser.cpp
|
||||
+++ b/xpcom/components/ManifestParser.cpp
|
||||
@@ -34,16 +34,17 @@
|
||||
@@ -35,16 +35,17 @@
|
||||
|
||||
#include "nsIConsoleService.h"
|
||||
#include "nsIScriptError.h"
|
||||
@ -3484,7 +3549,7 @@ diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestPars
|
||||
#define XPTONLY_MANIFEST nullptr
|
||||
#define XPTONLY_XPT nullptr
|
||||
#endif
|
||||
@@ -489,16 +490,17 @@ ParseManifest(NSLocationType aType, File
|
||||
@@ -494,16 +495,17 @@ ParseManifest(NSLocationType aType, File
|
||||
NS_NAMED_LITERAL_STRING(kRemoteEnabled, "remoteenabled");
|
||||
NS_NAMED_LITERAL_STRING(kRemoteRequired, "remoterequired");
|
||||
NS_NAMED_LITERAL_STRING(kApplication, "application");
|
||||
@ -3502,7 +3567,7 @@ diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestPars
|
||||
NS_NAMED_LITERAL_STRING(kMain, "main");
|
||||
NS_NAMED_LITERAL_STRING(kContent, "content");
|
||||
|
||||
@@ -549,44 +551,49 @@ ParseManifest(NSLocationType aType, File
|
||||
@@ -554,44 +556,49 @@ ParseManifest(NSLocationType aType, File
|
||||
CopyUTF8toUTF16(s, abi);
|
||||
abi.Insert(char16_t('_'), 0);
|
||||
abi.Insert(osTarget, 0);
|
||||
@ -3526,7 +3591,7 @@ diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestPars
|
||||
#elif defined(MOZ_WIDGET_COCOA)
|
||||
SInt32 majorVersion = nsCocoaFeatures::OSXVersionMajor();
|
||||
SInt32 minorVersion = nsCocoaFeatures::OSXVersionMinor();
|
||||
nsTextFormatter::ssprintf(osVersion, NS_LITERAL_STRING("%ld.%ld").get(),
|
||||
nsTextFormatter::ssprintf(osVersion, MOZ_UTF16("%ld.%ld"),
|
||||
majorVersion,
|
||||
minorVersion);
|
||||
+ desktop = NS_LITERAL_STRING("macosx");
|
||||
@ -3546,13 +3611,13 @@ diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestPars
|
||||
+ desktop = NS_LITERAL_STRING("android");
|
||||
#endif
|
||||
|
||||
if (XRE_GetProcessType() == GeckoProcessType_Content) {
|
||||
if (XRE_IsContentProcess()) {
|
||||
process = kContent;
|
||||
} else {
|
||||
process = kMain;
|
||||
}
|
||||
|
||||
@@ -681,25 +688,27 @@ ParseManifest(NSLocationType aType, File
|
||||
@@ -694,25 +701,27 @@ ParseManifest(NSLocationType aType, File
|
||||
TriState stOsVersion = eUnspecified;
|
||||
TriState stOs = eUnspecified;
|
||||
TriState stABI = eUnspecified;
|
||||
@ -3580,7 +3645,7 @@ diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestPars
|
||||
}
|
||||
|
||||
#if defined(MOZ_WIDGET_ANDROID)
|
||||
@@ -749,16 +758,17 @@ ParseManifest(NSLocationType aType, File
|
||||
@@ -762,16 +771,17 @@ ParseManifest(NSLocationType aType, File
|
||||
}
|
||||
|
||||
if (!ok ||
|
||||
@ -3601,9 +3666,9 @@ diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestPars
|
||||
diff --git a/xpcom/components/moz.build b/xpcom/components/moz.build
|
||||
--- a/xpcom/components/moz.build
|
||||
+++ b/xpcom/components/moz.build
|
||||
@@ -48,12 +48,13 @@ FINAL_LIBRARY = 'xul'
|
||||
GENERATED_INCLUDES += ['..']
|
||||
@@ -47,12 +47,13 @@ FINAL_LIBRARY = 'xul'
|
||||
LOCAL_INCLUDES += [
|
||||
'!..',
|
||||
'../base',
|
||||
'../build',
|
||||
'../ds',
|
||||
@ -3618,7 +3683,7 @@ diff --git a/xpcom/components/moz.build b/xpcom/components/moz.build
|
||||
diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp
|
||||
--- a/xpcom/io/nsLocalFileUnix.cpp
|
||||
+++ b/xpcom/io/nsLocalFileUnix.cpp
|
||||
@@ -44,16 +44,17 @@
|
||||
@@ -47,16 +47,17 @@
|
||||
#include "prproces.h"
|
||||
#include "nsIDirectoryEnumerator.h"
|
||||
#include "nsISimpleEnumerator.h"
|
||||
@ -3636,7 +3701,7 @@ diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp
|
||||
#include "prmem.h"
|
||||
#include "plbase64.h"
|
||||
|
||||
@@ -1964,42 +1965,52 @@ nsLocalFile::SetPersistentDescriptor(con
|
||||
@@ -1963,42 +1964,52 @@ nsLocalFile::SetPersistentDescriptor(con
|
||||
return InitWithNativePath(aPersistentDescriptor);
|
||||
#endif
|
||||
}
|
||||
@ -3695,7 +3760,7 @@ diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp
|
||||
return rv;
|
||||
}
|
||||
return NS_ERROR_FAILURE;
|
||||
@@ -2007,16 +2018,22 @@ nsLocalFile::Reveal()
|
||||
@@ -2006,16 +2017,22 @@ nsLocalFile::Reveal()
|
||||
return NS_ERROR_FAILURE;
|
||||
#endif
|
||||
}
|
||||
|
@ -1,13 +1,14 @@
|
||||
# HG changeset patch
|
||||
# User Wolfgang Rosenauer <wr@rosenauer.org>
|
||||
# Parent 5a29924228527f8882c83cf62d470963ea1ce62e
|
||||
# Parent 55b6ae7fd3ebf28f960031801f1948dfc1bd80d2
|
||||
Bug 583793 - Firefox interface language set to LANG, ignores LANGUAGE
|
||||
|
||||
diff --git a/intl/locale/nsLocaleService.cpp b/intl/locale/nsLocaleService.cpp
|
||||
--- a/intl/locale/nsLocaleService.cpp
|
||||
+++ b/intl/locale/nsLocaleService.cpp
|
||||
@@ -122,16 +122,17 @@ nsLocaleService::nsLocaleService(void)
|
||||
nsRefPtr<nsLocale> resultLocale(new nsLocale());
|
||||
RefPtr<nsLocale> resultLocale(new nsLocale());
|
||||
NS_ENSURE_TRUE_VOID(resultLocale);
|
||||
|
||||
#ifdef MOZ_WIDGET_QT
|
||||
@ -24,7 +25,7 @@ diff --git a/intl/locale/nsLocaleService.cpp b/intl/locale/nsLocaleService.cpp
|
||||
|
||||
for( i = 0; i < LocaleListLength; i++ ) {
|
||||
nsresult result;
|
||||
@@ -150,16 +151,21 @@ nsLocaleService::nsLocaleService(void)
|
||||
@@ -158,16 +159,21 @@ nsLocaleService::nsLocaleService(void)
|
||||
} else {
|
||||
CopyASCIItoUTF16(lang, platformLocale);
|
||||
result = nsPosixLocale::GetXPLocale(lang, xpLocale);
|
||||
|
25
mozilla-no-stdcxx-check.patch
Normal file
25
mozilla-no-stdcxx-check.patch
Normal file
@ -0,0 +1,25 @@
|
||||
# HG changeset patch
|
||||
# User Wolfgang Rosenauer <wr@rosenauer.org>
|
||||
# Parent e96e9b3997ea31024687aaa1e9aa5ccf78bc0ee9
|
||||
|
||||
diff --git a/config/config.mk b/config/config.mk
|
||||
--- a/config/config.mk
|
||||
+++ b/config/config.mk
|
||||
@@ -653,17 +653,16 @@ ifeq ($(MOZ_WIDGET_TOOLKIT),android)
|
||||
# of the linker command line), if libmozglue.so ends up after libc.so, all
|
||||
# hell breaks loose, so better safe than sorry, and check it's actually the
|
||||
# case.
|
||||
CHECK_MOZGLUE_ORDER = @$(TOOLCHAIN_PREFIX)readelf -d $(1) | grep NEEDED | awk '{ libs[$$NF] = ++n } END { if (libs["[libmozglue.so]"] && libs["[libc.so]"] < libs["[libmozglue.so]"]) { print "libmozglue.so must be linked before libc.so"; exit 1 } }'
|
||||
endif
|
||||
|
||||
define CHECK_BINARY
|
||||
$(call CHECK_GLIBC,$(1))
|
||||
-$(call CHECK_STDCXX,$(1))
|
||||
$(call CHECK_TEXTREL,$(1))
|
||||
$(call LOCAL_CHECKS,$(1))
|
||||
$(call CHECK_MOZGLUE_ORDER,$(1))
|
||||
endef
|
||||
|
||||
# autoconf.mk sets OBJ_SUFFIX to an error to avoid use before including
|
||||
# this file
|
||||
OBJ_SUFFIX := $(_OBJ_SUFFIX)
|
@ -1,21 +1,21 @@
|
||||
diff --git a/mail/installer/package-manifest.in b/mail/installer/package-manifest.in
|
||||
--- a/mail/installer/package-manifest.in
|
||||
+++ b/mail/installer/package-manifest.in
|
||||
@@ -358,16 +358,17 @@
|
||||
#ifdef XP_WIN32
|
||||
@BINPATH@/nsldap32v60@DLL_SUFFIX@
|
||||
@BINPATH@/nsldappr32v60@DLL_SUFFIX@
|
||||
@BINPATH@/nsldif32v60@DLL_SUFFIX@
|
||||
#else
|
||||
@@ -329,16 +329,17 @@
|
||||
@RESPATH@/components/mozldap.xpt
|
||||
@RESPATH@/components/nsAbLDAPAttributeMap.js
|
||||
@RESPATH@/components/nsAbLDAPAutoCompleteSearch.js
|
||||
@RESPATH@/components/nsLDAPProtocolHandler.js
|
||||
@RESPATH@/components/ldapComponents.manifest
|
||||
@BINPATH@/@DLL_PREFIX@ldap60@DLL_SUFFIX@
|
||||
@BINPATH@/@DLL_PREFIX@ldif60@DLL_SUFFIX@
|
||||
@BINPATH@/@DLL_PREFIX@prldap60@DLL_SUFFIX@
|
||||
+@BINPATH@/@DLL_PREFIX@ssldap60@DLL_SUFFIX@
|
||||
#endif
|
||||
|
||||
; login manager
|
||||
@RESPATH@/components/loginmgr.xpt
|
||||
@RESPATH@/components/nsLoginInfo.js
|
||||
@RESPATH@/components/nsLoginManager.js
|
||||
@RESPATH@/components/nsLoginManagerPrompter.js
|
||||
@RESPATH@/components/passwordmgr.manifest
|
||||
; download progress for jsdownloads
|
||||
@RESPATH@/components/DownloadsStartup.js
|
||||
|
||||
; Protocol/Content handling
|
||||
@RESPATH@/components/nsSMTPProtocolHandler.js
|
||||
@RESPATH@/components/nsSMTPProtocolHandler.manifest
|
||||
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:5b6c0d3830272e87b1e576622811aae6d13a051f7377ba4865c8528aefe9cbde
|
||||
size 174871280
|
3
thunderbird-45.0-source.tar.xz
Normal file
3
thunderbird-45.0-source.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:6ef27dfdcdf17b63a8617a1700ba8a6bb667d78939ce2cb960d649c93a5fa814
|
||||
size 211293500
|
Loading…
Reference in New Issue
Block a user