diff options
-rw-r--r-- | .SRCINFO | 42 | ||||
-rw-r--r-- | PKGBUILD | 36 | ||||
-rw-r--r-- | firefox-quicktime.patch | 144 | ||||
-rw-r--r-- | mozconfig | 8 | ||||
-rw-r--r-- | pgo_fix_missing_kdejs.patch | 10 | ||||
-rw-r--r-- | unity-menubar.patch | 248 |
6 files changed, 333 insertions, 155 deletions
@@ -1,8 +1,8 @@ # Generated by mksrcinfo v8 -# Mon Jan 4 21:59:55 UTC 2016 +# Thu Feb 25 06:43:31 UTC 2016 pkgbase = firefox-kde-opensuse pkgdesc = Standalone web browser from mozilla.org with OpenSUSE patch, integrate better with KDE - pkgver = 43.0.3 + pkgver = 44.0.2 pkgrel = 1 url = https://build.opensuse.org/package/show/mozilla:Factory/MozillaFirefox install = firefox.install @@ -41,13 +41,13 @@ pkgbase = firefox-kde-opensuse depends = libnotify depends = kmozillahelper optdepends = networkmanager: Location detection via available WiFi networks - optdepends = gst-plugins-good: h.264 video - optdepends = gst-libav: h.264 video - provides = firefox=43.0.3 + optdepends = upower: Battery API + optdepends = ffmpeg: H264/AAC/MP3 decoding + provides = firefox=44.0.2 conflicts = firefox options = !emptydirs options = strip - source = https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/43.0.3/source/firefox-43.0.3.source.tar.xz + source = https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/44.0.2/source/firefox-44.0.2.source.tar.xz source = mozconfig source = firefox.desktop source = firefox-install-dir.patch @@ -55,32 +55,34 @@ pkgbase = firefox-kde-opensuse source = kde.js source = firefox-fixed-loading-icon.png source = rhbz-966424.patch - source = http://www.rosenauer.org/hg/mozilla/raw-file/de3a92aed259/firefox-branded-icons.patch - source = http://www.rosenauer.org/hg/mozilla/raw-file/de3a92aed259/firefox-kde.patch - source = http://www.rosenauer.org/hg/mozilla/raw-file/de3a92aed259/firefox-no-default-ualocale.patch - source = http://www.rosenauer.org/hg/mozilla/raw-file/de3a92aed259/mozilla-kde.patch - source = http://www.rosenauer.org/hg/mozilla/raw-file/de3a92aed259/mozilla-language.patch - source = http://www.rosenauer.org/hg/mozilla/raw-file/de3a92aed259/mozilla-nongnome-proxies.patch + source = http://www.rosenauer.org/hg/mozilla/raw-file/11475705ab0f/firefox-branded-icons.patch + source = http://www.rosenauer.org/hg/mozilla/raw-file/11475705ab0f/firefox-kde.patch + source = http://www.rosenauer.org/hg/mozilla/raw-file/11475705ab0f/firefox-no-default-ualocale.patch + source = http://www.rosenauer.org/hg/mozilla/raw-file/11475705ab0f/mozilla-kde.patch + source = http://www.rosenauer.org/hg/mozilla/raw-file/11475705ab0f/mozilla-language.patch + source = http://www.rosenauer.org/hg/mozilla/raw-file/11475705ab0f/mozilla-nongnome-proxies.patch source = unity-menubar.patch source = add_missing_pgo_rule.patch source = pgo_fix_missing_kdejs.patch - sha256sums = 15c5222e3b0a6a766f0a1c5452ff5c31498454187165a281448954a5eb462e89 - sha256sums = 72a6572b9692cbb4a15d83de06e1674c4dbb7228999c5749c4f7ab9db5e0c516 + source = firefox-quicktime.patch + sha256sums = 0bb28841a9268c50cbb239f759f16f55b3a624f679c68965158beaa0a83a2d9e + sha256sums = 2057537f5a1478d0718085e1e81138b99ac332a1e2f43d29261b08196d97b7a1 sha256sums = c202e5e18da1eeddd2e1d81cb3436813f11e44585ca7357c4c5f1bddd4bec826 sha256sums = d86e41d87363656ee62e12543e2f5181aadcff448e406ef3218e91865ae775cd sha256sums = 4b50e9aec03432e21b44d18c4c97b2630bace606b033f7d556c9d3e3eb0f4fa4 sha256sums = b8cc5f35ec35fc96ac5c5a2477b36722e373dbb57eba87eb5ad1276e4df7236d sha256sums = 68e3a5b47c6d175cc95b98b069a15205f027cab83af9e075818d38610feb6213 sha256sums = 746cb474c5a2c26fc474256e430e035e604b71b27df1003d4af85018fa263f4a - sha256sums = 72abd31e89a41cddbd8165b0b9555465184c52c426e0998c9cb7786af94b5532 - sha256sums = 2017e1f7a71e8c3563c11fa48cc96de864388ff4fa8a124da3c30ba6129565a2 + sha256sums = 0ac532cb40be8057225032a000587e1fb7936dd06607e79a69064b10d436afd5 + sha256sums = 8255adfb5289505c98c2f0aa534c5e63c4750e867552f6c6f9199e03d2cc9bc8 sha256sums = 02e92f84dd31ed079be3e67509cf23d0d351e06bb690fcc091c904d906d2d690 - sha256sums = cffc199f0d4d684792e6dbeec106077f4a6ac4bdf406b4fc67d46b330c3b4169 - sha256sums = ce1b7a5bb217c31590bce30653aea5139b6401a01eda7bded7fd2f83a23d397b + sha256sums = 0d764c620fc2853803fca31e8b9ca1b44620ccfccceffc78f0e9af652ca80ea0 + sha256sums = feede2fb86527c4a5d90bd5458fe582da920ab02dd25ec656236d87caf8888ba sha256sums = e8289ea4c1f8191e1e23661312ceee2128b8e790501b9a589d0d7bfc4384553f - sha256sums = 1d3fd85fe760ac3ab454e71322231e671483533be6089ac87f9f4880ee619e48 + sha256sums = aaf7d17559777320b7380d185fce0fd0ba455c8bc83140a005dedffcdedfc5d7 sha256sums = f9067f62a25a7a77276e15f91cc9e7ba6576315345cfc6347b1b2e884becdb0c - sha256sums = 2c9c97bff07cc71b3f6d35f3edfaddaf8180a1f533ee4682adf18a8f86d29264 + sha256sums = 2797d1e61031d24ee24bf682c9447b3b9c1bca10f8e6cbd597b854af2de1ec54 + sha256sums = 6b731ca36e7688aeb24685da702e0af0475e6671072fc96464fbbed49d0bbd50 pkgname = firefox-kde-opensuse @@ -5,14 +5,14 @@ #_lowmem=true # enable gtk3 (warning: flash or any other plugin crashes frequently) -#_gtk3=true +_gtk3=true # try to build with PGO -_pgo=true +#_pgo=false _pkgname=firefox pkgname=$_pkgname-kde-opensuse -pkgver=43.0.3 +pkgver=44.0.2 pkgrel=1 pkgdesc="Standalone web browser from mozilla.org with OpenSUSE patch, integrate better with KDE" arch=('i686' 'x86_64') @@ -25,12 +25,12 @@ depends=('gtk2' 'mozilla-common' 'libxt' 'startup-notification' 'mime-types' makedepends=('unzip' 'zip' 'diffutils' 'python2' 'yasm' 'mesa' 'imake' 'xorg-server-xvfb' 'libpulse' 'gst-plugins-base-libs' 'inetutils') optdepends=('networkmanager: Location detection via available WiFi networks' - 'gst-plugins-good: h.264 video' - 'gst-libav: h.264 video') + 'upower: Battery API' + 'ffmpeg: H264/AAC/MP3 decoding') provides=("firefox=${pkgver}") conflicts=('firefox') install=firefox.install -_patchrev=de3a92aed259 +_patchrev=11475705ab0f options=('!emptydirs' 'strip' ) _patchurl=http://www.rosenauer.org/hg/mozilla/raw-file/$_patchrev source=(https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/$pkgver/source/firefox-$pkgver.source.tar.xz @@ -46,7 +46,8 @@ source=(https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/$pkgver/source/ $_patchurl/mozilla-nongnome-proxies.patch unity-menubar.patch add_missing_pgo_rule.patch - pgo_fix_missing_kdejs.patch + pgo_fix_missing_kdejs.patch + firefox-quicktime.patch ) _google_api_key=AIzaSyDwr302FpOSkGRpLlUpPThNTDPbXcIn_FM @@ -62,6 +63,10 @@ prepare() { # https://bugs.archlinux.org/task/41689 patch -Np1 -i "$srcdir/rhbz-966424.patch" + # FS#47953 - [firefox] 44.0-1 breaks mp4a audio stream playback capability + # https://bugzilla.mozilla.org/show_bug.cgi?id=1244523 + patch -Np1 -i "$srcdir"/firefox-quicktime.patch + msg "Patching for KDE" patch -Np1 -i "$srcdir/mozilla-nongnome-proxies.patch" patch -Np1 -i "$srcdir/mozilla-kde.patch" @@ -160,20 +165,21 @@ package() { ln -sf firefox "$pkgdir/usr/lib/firefox/firefox-bin" } -sha256sums=('15c5222e3b0a6a766f0a1c5452ff5c31498454187165a281448954a5eb462e89' - '72a6572b9692cbb4a15d83de06e1674c4dbb7228999c5749c4f7ab9db5e0c516' +sha256sums=('0bb28841a9268c50cbb239f759f16f55b3a624f679c68965158beaa0a83a2d9e' + '2057537f5a1478d0718085e1e81138b99ac332a1e2f43d29261b08196d97b7a1' 'c202e5e18da1eeddd2e1d81cb3436813f11e44585ca7357c4c5f1bddd4bec826' 'd86e41d87363656ee62e12543e2f5181aadcff448e406ef3218e91865ae775cd' '4b50e9aec03432e21b44d18c4c97b2630bace606b033f7d556c9d3e3eb0f4fa4' 'b8cc5f35ec35fc96ac5c5a2477b36722e373dbb57eba87eb5ad1276e4df7236d' '68e3a5b47c6d175cc95b98b069a15205f027cab83af9e075818d38610feb6213' '746cb474c5a2c26fc474256e430e035e604b71b27df1003d4af85018fa263f4a' - '72abd31e89a41cddbd8165b0b9555465184c52c426e0998c9cb7786af94b5532' - '2017e1f7a71e8c3563c11fa48cc96de864388ff4fa8a124da3c30ba6129565a2' + '0ac532cb40be8057225032a000587e1fb7936dd06607e79a69064b10d436afd5' + '8255adfb5289505c98c2f0aa534c5e63c4750e867552f6c6f9199e03d2cc9bc8' '02e92f84dd31ed079be3e67509cf23d0d351e06bb690fcc091c904d906d2d690' - 'cffc199f0d4d684792e6dbeec106077f4a6ac4bdf406b4fc67d46b330c3b4169' - 'ce1b7a5bb217c31590bce30653aea5139b6401a01eda7bded7fd2f83a23d397b' + '0d764c620fc2853803fca31e8b9ca1b44620ccfccceffc78f0e9af652ca80ea0' + 'feede2fb86527c4a5d90bd5458fe582da920ab02dd25ec656236d87caf8888ba' 'e8289ea4c1f8191e1e23661312ceee2128b8e790501b9a589d0d7bfc4384553f' - '1d3fd85fe760ac3ab454e71322231e671483533be6089ac87f9f4880ee619e48' + 'aaf7d17559777320b7380d185fce0fd0ba455c8bc83140a005dedffcdedfc5d7' 'f9067f62a25a7a77276e15f91cc9e7ba6576315345cfc6347b1b2e884becdb0c' - '2c9c97bff07cc71b3f6d35f3edfaddaf8180a1f533ee4682adf18a8f86d29264') + '2797d1e61031d24ee24bf682c9447b3b9c1bca10f8e6cbd597b854af2de1ec54' + '6b731ca36e7688aeb24685da702e0af0475e6671072fc96464fbbed49d0bbd50') diff --git a/firefox-quicktime.patch b/firefox-quicktime.patch new file mode 100644 index 000000000000..353ee3f31f7e --- /dev/null +++ b/firefox-quicktime.patch @@ -0,0 +1,144 @@ + +# HG changeset patch +# User John Lin <jolin@mozilla.com> +# Date 1447265580 -3600 +# Node ID aeb7ece8cbd40280f27ec3631f4f9e5b8b52c5a9 +# Parent 22d372a893d764554af0edb7e47f817af93b2114 +Bug 1211802 - Recognize 'avc?' as mp4 video. r=jya + +diff --git a/toolkit/components/mediasniffer/nsMediaSniffer.cpp b/toolkit/components/mediasniffer/nsMediaSniffer.cpp +--- a/toolkit/components/mediasniffer/nsMediaSniffer.cpp ++++ b/toolkit/components/mediasniffer/nsMediaSniffer.cpp +@@ -36,16 +36,17 @@ nsMediaSnifferEntry nsMediaSniffer::sSni + PATTERN_ENTRY("\xFF\xFF\xFF\xFF\x00\x00\x00\x00\xFF\xFF\xFF\xFF", "RIFF\x00\x00\x00\x00WAVE", AUDIO_WAV), + // mp3 with ID3 tags, the string "ID3". + PATTERN_ENTRY("\xFF\xFF\xFF", "ID3", AUDIO_MP3) + }; + + // For a complete list of file types, see http://www.ftyps.com/index.html + nsMediaSnifferEntry sFtypEntries[] = { + PATTERN_ENTRY("\xFF\xFF\xFF", "mp4", VIDEO_MP4), // Could be mp41 or mp42. ++ PATTERN_ENTRY("\xFF\xFF\xFF", "avc", VIDEO_MP4), // Could be avc1, avc2, ... + PATTERN_ENTRY("\xFF\xFF\xFF", "3gp", VIDEO_3GPP), // Could be 3gp4, 3gp5, ... + PATTERN_ENTRY("\xFF\xFF\xFF\xFF", "M4A ", AUDIO_MP4), + PATTERN_ENTRY("\xFF\xFF\xFF\xFF", "M4P ", AUDIO_MP4) + }; + + static bool MatchesBrands(const uint8_t aData[4], nsACString& aSniffedType) + { + for (size_t i = 0; i < mozilla::ArrayLength(sFtypEntries); ++i) { + + +# HG changeset patch +# User Jean-Yves Avenard <jyavenard@mozilla.com> +# Date 1454373529 -39600 +# Node ID f7d66b2782266c066f2efecc9f066af01472ffb5 +# Parent b237f1bffcfd9b7c7da767ffa54dbf4ed7b68321 +Bug 1244523: P1. Allow video/quicktime mimetype. r=cpearce + +It's just like video/mp4 + + +diff --git a/dom/media/fmp4/MP4Decoder.cpp b/dom/media/fmp4/MP4Decoder.cpp +--- a/dom/media/fmp4/MP4Decoder.cpp ++++ b/dom/media/fmp4/MP4Decoder.cpp +@@ -102,16 +102,17 @@ MP4Decoder::CanHandleMediaType(const nsA + const bool isMP4Audio = aMIMETypeExcludingCodecs.EqualsASCII("audio/mp4") || + aMIMETypeExcludingCodecs.EqualsASCII("audio/x-m4a"); + const bool isMP4Video = + // On B2G, treat 3GPP as MP4 when Gonk PDM is available. + #ifdef MOZ_GONK_MEDIACODEC + aMIMETypeExcludingCodecs.EqualsASCII(VIDEO_3GPP) || + #endif + aMIMETypeExcludingCodecs.EqualsASCII("video/mp4") || ++ aMIMETypeExcludingCodecs.EqualsASCII("video/quicktime") || + aMIMETypeExcludingCodecs.EqualsASCII("video/x-m4v"); + if (!isMP4Audio && !isMP4Video) { + return false; + } + + nsTArray<nsCString> codecMimes; + if (aCodecs.IsEmpty()) { + // No codecs specified. Assume AAC/H.264 + + +# HG changeset patch +# User Jean-Yves Avenard <jyavenard@mozilla.com> +# Date 1454373530 -39600 +# Node ID b0c3e8efafc8aa13935d023762e26495fc9b99a9 +# Parent f7d66b2782266c066f2efecc9f066af01472ffb5 +Bug 1244523: [mp4] P2. Have sniffer recognise ftyp qt subtype. r=cpearce + + +diff --git a/toolkit/components/mediasniffer/nsMediaSniffer.cpp b/toolkit/components/mediasniffer/nsMediaSniffer.cpp +--- a/toolkit/components/mediasniffer/nsMediaSniffer.cpp ++++ b/toolkit/components/mediasniffer/nsMediaSniffer.cpp +@@ -37,17 +37,18 @@ nsMediaSnifferEntry nsMediaSniffer::sSni + }; + + // For a complete list of file types, see http://www.ftyps.com/index.html + nsMediaSnifferEntry sFtypEntries[] = { + PATTERN_ENTRY("\xFF\xFF\xFF", "mp4", VIDEO_MP4), // Could be mp41 or mp42. + PATTERN_ENTRY("\xFF\xFF\xFF", "avc", VIDEO_MP4), // Could be avc1, avc2, ... + PATTERN_ENTRY("\xFF\xFF\xFF", "3gp", VIDEO_3GPP), // Could be 3gp4, 3gp5, ... + PATTERN_ENTRY("\xFF\xFF\xFF\xFF", "M4A ", AUDIO_MP4), +- PATTERN_ENTRY("\xFF\xFF\xFF\xFF", "M4P ", AUDIO_MP4) ++ PATTERN_ENTRY("\xFF\xFF\xFF\xFF", "M4P ", AUDIO_MP4), ++ PATTERN_ENTRY("\xFF\xFF\xFF\xFF", "qt ", VIDEO_MP4), + }; + + static bool MatchesBrands(const uint8_t aData[4], nsACString& aSniffedType) + { + for (size_t i = 0; i < mozilla::ArrayLength(sFtypEntries); ++i) { + const auto& currentEntry = sFtypEntries[i]; + bool matched = true; + MOZ_ASSERT(currentEntry.mLength <= 4, "Pattern is too large to match brand strings."); + + +# HG changeset patch +# User Jean-Yves Avenard <jyavenard@mozilla.com> +# Date 1454373533 -39600 +# Node ID 15d15d76aae97b14717eded043ea73cc81fe50e6 +# Parent b0c3e8efafc8aa13935d023762e26495fc9b99a9 +Bug 1244523: [mp4] P3. Skip four bytes when we hit a zero length box, r=kentuckyfriedtakahe + +Similar to bug 1180101, but don't handle only the last box in the file. + + +diff --git a/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp b/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp +--- a/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp ++++ b/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp +@@ -646,24 +646,24 @@ static bool ValidInputSize(int32_t size) + // frame. This is a reasonable cut-off for a lossy codec, + // combined with the current Firefox limit to 5k video. + return (size > 0 && size <= 4 * (1920 * 1080) * 3 / 2); + } + + status_t MPEG4Extractor::parseChunk(off64_t *offset, int depth) { + ALOGV("entering parseChunk %lld/%d", *offset, depth); + uint32_t hdr[2]; +- ssize_t nbytes; +- if ((nbytes = mDataSource->readAt(*offset, hdr, 8)) < 8) { +- if (nbytes == 4) { +- if (!hdr[0]) { +- *offset += 4; +- return OK; +- } +- } ++ if (mDataSource->readAt(*offset, hdr, 4) < 4) { ++ return ERROR_IO; ++ } ++ if (!hdr[0]) { ++ *offset += 4; ++ return OK; ++ } ++ if (mDataSource->readAt(*offset + 4, hdr + 1, 4) < 4) { + return ERROR_IO; + } + uint64_t chunk_size = ntohl(hdr[0]); + uint32_t chunk_type = ntohl(hdr[1]); + off64_t data_offset = *offset + 8; + + if (chunk_size == 1) { + if (mDataSource->readAt(*offset + 8, &chunk_size, 8) < 8) { + diff --git a/mozconfig b/mozconfig index 4ffe80354acc..704326b9f268 100644 --- a/mozconfig +++ b/mozconfig @@ -3,6 +3,8 @@ ac_add_options --prefix=/usr ac_add_options --libdir=/usr/lib ac_add_options --enable-pie +ac_add_options --enable-gold + ac_add_options --enable-release ac_add_options --enable-official-branding @@ -28,7 +30,7 @@ ac_add_options --disable-libproxy # Features ac_add_options --enable-startup-notification ac_add_options --enable-pulseaudio -ac_add_options --enable-gstreamer=1.0 +ac_add_options --disable-gstreamer #ac_add_options --disable-gio ac_add_options --disable-gconf @@ -52,6 +54,4 @@ mk_add_options PROFILE_GEN_SCRIPT='EXTRA_TEST_ARGS=10 $(MAKE) -C $(MOZ_OBJDIR) p export BUILD_OFFICIAL=1 export MOZILLA_OFFICIAL=1 mk_add_options BUILD_OFFICIAL=1 -mk_add_options MOZILLA_OFFICIAL=1 - - +mk_add_options MOZILLA_OFFICIAL=1xac_add_options --enable-default-toolkit=cairo-gtk3 diff --git a/pgo_fix_missing_kdejs.patch b/pgo_fix_missing_kdejs.patch index e757da6ce938..b3487b620dd0 100644 --- a/pgo_fix_missing_kdejs.patch +++ b/pgo_fix_missing_kdejs.patch @@ -1,10 +1,10 @@ ---- mozilla-release/browser/app/Makefile.in 2015-04-23 09:20:26.806627368 +0200 -+++ mozilla-release/browser/app/Makefile.in 2015-04-23 09:07:04.000000000 +0200 -@@ -79,6 +79,7 @@ +--- b/browser/app/Makefile.in 2016-02-14 15:57:50.000000000 +0100 ++++ a/browser/app/Makefile.in 2016-02-14 16:08:29.823744590 +0100 +@@ -71,6 +71,7 @@ libs:: $(srcdir)/profile/channel-prefs.js $(NSINSTALL) -D $(DIST)/bin/defaults/pref $(call py_action,preprocessor,-Fsubstitution $(PREF_PPFLAGS) $(ACDEFINES) $^ -o $(DIST)/bin/defaults/pref/channel-prefs.js) -+ cp $(topsrcdir)/../kde.js $(DIST)/bin/defaults/pref/kde.js - endif ++ cp $(topsrcdir)/../kde.js $(DIST)/bin/defaults/pref/kde.js ifeq (cocoa,$(MOZ_WIDGET_TOOLKIT)) + diff --git a/unity-menubar.patch b/unity-menubar.patch index b36373887a2e..8642b76fd0cd 100644 --- a/unity-menubar.patch +++ b/unity-menubar.patch @@ -1,7 +1,7 @@ -Index: firefox-trunk-43.0~a1~hg20150916r262830/browser/base/content/browser-menubar.inc +Index: firefox-44.0~a2~hg20151207r291794/browser/base/content/browser-menubar.inc =================================================================== ---- firefox-trunk-43.0~a1~hg20150916r262830.orig/browser/base/content/browser-menubar.inc 2015-09-17 22:38:32.436567004 +0100 -+++ firefox-trunk-43.0~a1~hg20150916r262830/browser/base/content/browser-menubar.inc 2015-09-17 22:38:32.424566978 +0100 +--- firefox-44.0~a2~hg20151207r291794.orig/browser/base/content/browser-menubar.inc 2015-12-08 05:35:46.000000000 +0000 ++++ firefox-44.0~a2~hg20151207r291794/browser/base/content/browser-menubar.inc 2015-12-09 22:34:37.000000000 +0000 @@ -5,7 +5,11 @@ <menubar id="main-menubar" @@ -14,10 +14,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/browser/base/content/browser-menu this.setAttribute('openedwithkey', event.target.parentNode.openedWithKey);" style="border:0px;padding:0px;margin:0px;-moz-appearance:none"> -Index: firefox-trunk-43.0~a1~hg20150916r262830/browser/components/places/content/places.xul +Index: firefox-44.0~a2~hg20151207r291794/browser/components/places/content/places.xul =================================================================== ---- firefox-trunk-43.0~a1~hg20150916r262830.orig/browser/components/places/content/places.xul 2015-09-17 22:38:32.436567004 +0100 -+++ firefox-trunk-43.0~a1~hg20150916r262830/browser/components/places/content/places.xul 2015-09-17 22:38:32.424566978 +0100 +--- firefox-44.0~a2~hg20151207r291794.orig/browser/components/places/content/places.xul 2015-12-08 05:35:55.000000000 +0000 ++++ firefox-44.0~a2~hg20151207r291794/browser/components/places/content/places.xul 2015-12-09 22:34:37.000000000 +0000 @@ -157,7 +157,7 @@ <toolbarbutton type="menu" class="tabbable" onpopupshowing="document.getElementById('placeContent').focus()" @@ -27,10 +27,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/browser/components/places/content <menu accesskey="&organize.accesskey;" class="menu-iconic" #endif id="organizeButton" label="&organize.label;" -Index: firefox-trunk-43.0~a1~hg20150916r262830/toolkit/content/widgets/popup.xml +Index: firefox-44.0~a2~hg20151207r291794/toolkit/content/widgets/popup.xml =================================================================== ---- firefox-trunk-43.0~a1~hg20150916r262830.orig/toolkit/content/widgets/popup.xml 2015-09-17 22:38:32.436567004 +0100 -+++ firefox-trunk-43.0~a1~hg20150916r262830/toolkit/content/widgets/popup.xml 2015-09-17 22:38:32.424566978 +0100 +--- firefox-44.0~a2~hg20151207r291794.orig/toolkit/content/widgets/popup.xml 2015-12-08 05:37:22.000000000 +0000 ++++ firefox-44.0~a2~hg20151207r291794/toolkit/content/widgets/popup.xml 2015-12-09 22:34:37.000000000 +0000 @@ -25,8 +25,14 @@ </getter> </property> @@ -48,10 +48,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/toolkit/content/widgets/popup.xml <property name="triggerNode" readonly="true" onget="return this.popupBoxObject.triggerNode"/> -Index: firefox-trunk-43.0~a1~hg20150916r262830/toolkit/content/xul.css +Index: firefox-44.0~a2~hg20151207r291794/toolkit/content/xul.css =================================================================== ---- firefox-trunk-43.0~a1~hg20150916r262830.orig/toolkit/content/xul.css 2015-09-17 22:38:32.436567004 +0100 -+++ firefox-trunk-43.0~a1~hg20150916r262830/toolkit/content/xul.css 2015-09-17 22:38:32.428566987 +0100 +--- firefox-44.0~a2~hg20151207r291794.orig/toolkit/content/xul.css 2015-12-08 05:37:22.000000000 +0000 ++++ firefox-44.0~a2~hg20151207r291794/toolkit/content/xul.css 2015-12-09 22:34:37.000000000 +0000 @@ -315,6 +315,18 @@ } %endif @@ -71,10 +71,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/toolkit/content/xul.css toolbarseparator { -moz-binding: url("chrome://global/content/bindings/toolbar.xml#toolbardecoration"); } -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsDbusmenu.cpp +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsDbusmenu.cpp =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsDbusmenu.cpp 2015-09-17 22:38:32.428566987 +0100 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsDbusmenu.cpp 2015-12-09 22:34:37.000000000 +0000 @@ -0,0 +1,63 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: @@ -139,10 +139,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsDbusmenu.cpp + + return NS_OK; +} -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsDbusmenu.h +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsDbusmenu.h =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsDbusmenu.h 2015-09-17 22:38:32.428566987 +0100 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsDbusmenu.h 2015-12-09 22:34:37.000000000 +0000 @@ -0,0 +1,99 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: @@ -243,10 +243,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsDbusmenu.h +#define dbusmenu_menuitem_property_set_shortcut nsDbusmenuFunctions::s_dbusmenu_menuitem_property_set_shortcut + +#endif /* __nsDbusmenu_h__ */ -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenu.cpp +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenu.cpp =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenu.cpp 2015-09-17 23:19:48.934614587 +0100 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenu.cpp 2015-12-09 22:34:37.000000000 +0000 @@ -0,0 +1,866 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: @@ -351,7 +351,7 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenu.cpp + return; + } + -+ nsRefPtr<nsStyleContext> sc = ++ RefPtr<nsStyleContext> sc = + shell->StyleSet()->ResolveStyleFor(aContent->AsElement(), + nullptr); + if (!sc) { @@ -368,7 +368,7 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenu.cpp + return; + } + -+ nsRefPtr<nsXBLBinding> binding; ++ RefPtr<nsXBLBinding> binding; + bool dummy; + nsresult rv = xbl->LoadBindings(aContent, display->mBinding->GetURI(), + display->mBinding->mOriginPrincipal, @@ -917,10 +917,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenu.cpp + + if (aAttribute == nsGkAtoms::hidden || + aAttribute == nsGkAtoms::collapsed) { -+ nsRefPtr<nsStyleContext> sc = GetStyleContext(); ++ RefPtr<nsStyleContext> sc = GetStyleContext(); + UpdateVisibility(sc); + } else if (aAttribute == nsGkAtoms::image) { -+ nsRefPtr<nsStyleContext> sc = GetStyleContext(); ++ RefPtr<nsStyleContext> sc = GetStyleContext(); + UpdateIcon(sc); + } +} @@ -1114,10 +1114,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenu.cpp + + MaybeAddPlaceholderItem(); +} -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenu.h +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenu.h =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenu.h 2015-09-17 22:38:32.428566987 +0100 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenu.h 2015-12-09 22:34:37.000000000 +0000 @@ -0,0 +1,166 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: @@ -1285,10 +1285,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenu.h +}; + +#endif /* __nsMenu_h__ */ -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuBar.cpp +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenuBar.cpp =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuBar.cpp 2015-09-17 22:38:32.428566987 +0100 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenuBar.cpp 2015-12-09 22:34:37.000000000 +0000 @@ -0,0 +1,545 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: @@ -1608,7 +1608,7 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuBar.cpp + + g_object_ref(mTopLevel); + -+ nsRefPtr<nsNativeMenuDocListener> listener = ++ RefPtr<nsNativeMenuDocListener> listener = + nsNativeMenuDocListener::Create(aMenuBarNode); + if (!listener) { + return NS_ERROR_FAILURE; @@ -1835,10 +1835,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuBar.cpp + DebugOnly<nsresult> rv = RemoveChild(aChild); + NS_ASSERTION(NS_SUCCEEDED(rv), "Failed to remove item from menubar"); +} -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuBar.h +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenuBar.h =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuBar.h 2015-09-17 22:38:32.428566987 +0100 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenuBar.h 2015-12-09 22:34:37.000000000 +0000 @@ -0,0 +1,112 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: @@ -1944,7 +1944,7 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuBar.h + DbusmenuServer *mServer; + nsCOMPtr<nsIDOMEventTarget> mDocument; + nsNativeMenuGIORequest mRegisterRequestCanceller; -+ nsRefPtr<nsMenuBarDocEventListener> mEventListener; ++ RefPtr<nsMenuBarDocEventListener> mEventListener; + + uint32_t mAccessKey; + ModifierFlags mAccessKeyMask; @@ -1952,10 +1952,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuBar.h +}; + +#endif /* __nsMenuBar_h__ */ -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuContainer.cpp +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenuContainer.cpp =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuContainer.cpp 2015-09-17 22:38:32.428566987 +0100 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenuContainer.cpp 2015-12-09 22:34:37.000000000 +0000 @@ -0,0 +1,174 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: @@ -2131,10 +2131,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuContainer.cpp + + return aContent; +} -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuContainer.h +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenuContainer.h =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuContainer.h 2015-09-17 22:38:32.428566987 +0100 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenuContainer.h 2015-12-09 22:34:37.000000000 +0000 @@ -0,0 +1,66 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: @@ -2202,10 +2202,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuContainer.h +}; + +#endif /* __nsMenuContainer_h__ */ -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuItem.cpp +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenuItem.cpp =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuItem.cpp 2015-09-17 22:38:32.428566987 +0100 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenuItem.cpp 2015-12-09 22:34:37.000000000 +0000 @@ -0,0 +1,742 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: @@ -2942,17 +2942,17 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuItem.cpp + + if (aAttribute == nsGkAtoms::hidden || + aAttribute == nsGkAtoms::collapsed) { -+ nsRefPtr<nsStyleContext> sc = GetStyleContext(); ++ RefPtr<nsStyleContext> sc = GetStyleContext(); + UpdateVisibility(sc); + } else if (aAttribute == nsGkAtoms::image) { -+ nsRefPtr<nsStyleContext> sc = GetStyleContext(); ++ RefPtr<nsStyleContext> sc = GetStyleContext(); + UpdateIcon(sc); + } +} -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuItem.h +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenuItem.h =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuItem.h 2015-09-17 22:38:32.428566987 +0100 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenuItem.h 2015-12-09 22:34:37.000000000 +0000 @@ -0,0 +1,107 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: @@ -3061,10 +3061,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuItem.h +}; + +#endif /* __nsMenuItem_h__ */ -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuObject.cpp +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenuObject.cpp =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuObject.cpp 2015-09-17 22:38:32.428566987 +0100 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenuObject.cpp 2015-12-09 22:34:37.000000000 +0000 @@ -0,0 +1,707 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: @@ -3164,7 +3164,7 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuObject.cpp + ~nsMenuObjectIconLoader() { }; + + nsMenuObject *mOwner; -+ nsRefPtr<imgRequestProxy> mImageRequest; ++ RefPtr<imgRequestProxy> mImageRequest; + nsCOMPtr<nsIURI> mURI; + nsIntRect mImageRect; + bool mIconLoaded; @@ -3305,7 +3305,7 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuObject.cpp + } else { + mImageRect.SetEmpty(); + nsCOMPtr<nsILoadGroup> loadGroup = doc->GetDocumentLoadGroup(); -+ nsRefPtr<imgLoader> loader = ++ RefPtr<imgLoader> loader = + nsContentUtils::GetImgLoaderForDocument(doc); + if (!loader || !loadGroup) { + NS_WARNING("Failed to get loader or load group for image load"); @@ -3618,7 +3618,7 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuObject.cpp + return nullptr; + } + -+ nsRefPtr<nsStyleContext> sc = ++ RefPtr<nsStyleContext> sc = + nsComputedDOMStyle::GetStyleContextForElementNoFlush( + mContent->AsElement(), nullptr, shell); + @@ -3732,7 +3732,7 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuObject.cpp + + UpdateContentAttributes(); + -+ nsRefPtr<nsStyleContext> sc = GetStyleContext(); ++ RefPtr<nsStyleContext> sc = GetStyleContext(); + Update(sc); +} + @@ -3773,10 +3773,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuObject.cpp + weak = weak->GetPrevious(); + } +} -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuObject.h +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenuObject.h =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuObject.h 2015-09-17 22:38:32.428566987 +0100 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenuObject.h 2015-12-09 22:34:37.000000000 +0000 @@ -0,0 +1,242 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: @@ -3925,10 +3925,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuObject.h + // children outlives their parent). However, we need to keep it alive until + // after running the nsMenuObject destructor for the top-level menu object, + // hence the strong ref -+ nsRefPtr<nsNativeMenuDocListener> mListener; ++ RefPtr<nsNativeMenuDocListener> mListener; + nsMenuContainer *mParent; // [weak] + DbusmenuMenuitem *mNativeData; // [strong] -+ nsRefPtr<nsMenuObjectIconLoader> mIconLoader; ++ RefPtr<nsMenuObjectIconLoader> mIconLoader; + uint8_t mFlags; +}; + @@ -4020,10 +4020,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuObject.h +}; + +#endif /* __nsMenuObject_h__ */ -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuSeparator.cpp +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenuSeparator.cpp =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuSeparator.cpp 2015-09-17 22:38:32.428566987 +0100 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenuSeparator.cpp 2015-12-09 22:34:37.000000000 +0000 @@ -0,0 +1,90 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: @@ -4111,14 +4111,14 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuSeparator.cpp + + if (aAttribute == nsGkAtoms::hidden || + aAttribute == nsGkAtoms::collapsed) { -+ nsRefPtr<nsStyleContext> sc = GetStyleContext(); ++ RefPtr<nsStyleContext> sc = GetStyleContext(); + UpdateVisibility(sc); + } +} -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuSeparator.h +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenuSeparator.h =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuSeparator.h 2015-09-17 22:38:32.428566987 +0100 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsMenuSeparator.h 2015-12-09 22:34:37.000000000 +0000 @@ -0,0 +1,41 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: @@ -4161,10 +4161,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsMenuSeparator.h +}; + +#endif /* __nsMenuSeparator_h__ */ -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuAtomList.h +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsNativeMenuAtomList.h =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuAtomList.h 2015-09-17 22:38:32.428566987 +0100 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsNativeMenuAtomList.h 2015-12-09 22:34:37.000000000 +0000 @@ -0,0 +1,11 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: @@ -4177,10 +4177,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuAtomList.h +WIDGET_ATOM2(_moz_menupopupstate, "_moz-menupopupstate") +WIDGET_ATOM(openedwithkey) +WIDGET_ATOM(shellshowingmenubar) -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuAtoms.cpp +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsNativeMenuAtoms.cpp =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuAtoms.cpp 2015-09-17 22:38:32.428566987 +0100 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsNativeMenuAtoms.cpp 2015-12-09 22:34:37.000000000 +0000 @@ -0,0 +1,39 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: @@ -4221,10 +4221,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuAtoms.cpp +{ + NS_RegisterStaticAtoms(gAtoms); +} -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuAtoms.h +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsNativeMenuAtoms.h =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuAtoms.h 2015-09-17 22:38:32.428566987 +0100 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsNativeMenuAtoms.h 2015-12-09 22:34:37.000000000 +0000 @@ -0,0 +1,25 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: @@ -4251,10 +4251,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuAtoms.h +}; + +#endif /* __nsNativeMenuAtoms_h__ */ -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuDocListener.cpp +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsNativeMenuDocListener.cpp =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuDocListener.cpp 2015-09-17 22:38:32.428566987 +0100 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsNativeMenuDocListener.cpp 2015-12-09 22:34:37.000000000 +0000 @@ -0,0 +1,370 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: @@ -4560,7 +4560,7 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuDocListene +/* static */ already_AddRefed<nsNativeMenuDocListener> +nsNativeMenuDocListener::Create(nsIContent *aRootNode) +{ -+ nsRefPtr<nsNativeMenuDocListener> listener = new nsNativeMenuDocListener(); ++ RefPtr<nsNativeMenuDocListener> listener = new nsNativeMenuDocListener(); + if (NS_FAILED(listener->Init(aRootNode))) { + return nullptr; + } @@ -4626,11 +4626,11 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuDocListene + CancelFlush(this); + mPendingMutations.Clear(); +} -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuDocListener.h +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsNativeMenuDocListener.h =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuDocListener.h 2015-09-17 22:38:32.428566987 +0100 -@@ -0,0 +1,152 @@ ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsNativeMenuDocListener.h 2015-12-09 22:34:37.000000000 +0000 +@@ -0,0 +1,153 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: + */ @@ -4643,6 +4643,7 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuDocListene + +#include "mozilla/Attributes.h" +#include "mozilla/GuardObjects.h" ++#include "mozilla/RefPtr.h" +#include "nsAutoPtr.h" +#include "nsDataHashtable.h" +#include "nsStubMutationObserver.h" @@ -4730,7 +4731,7 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuDocListene + static uint32_t sUpdateDepth; +}; + -+typedef nsTArray<nsRefPtr<nsNativeMenuDocListener> > nsNativeMenuDocListenerTArray; ++typedef nsTArray<RefPtr<nsNativeMenuDocListener> > nsNativeMenuDocListenerTArray; + +class nsNativeMenuChangeObserver +{ @@ -4783,10 +4784,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuDocListene +}; + +#endif /* __nsNativeMenuDocListener_h__ */ -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuService.cpp +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsNativeMenuService.cpp =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuService.cpp 2015-09-17 22:38:32.428566987 +0100 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsNativeMenuService.cpp 2015-12-09 22:34:37.000000000 +0000 @@ -0,0 +1,506 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: @@ -5206,7 +5207,7 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuService.cp +/* static */ already_AddRefed<nsNativeMenuService> +nsNativeMenuService::GetInstance() +{ -+ nsRefPtr<nsNativeMenuService> service(sService); ++ RefPtr<nsNativeMenuService> service(sService); + + if (service) { + return service.forget(); @@ -5294,10 +5295,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuService.cp + + return NS_OK; +} -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuService.h +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsNativeMenuService.h =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuService.h 2015-09-17 22:38:32.428566987 +0100 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsNativeMenuService.h 2015-12-09 22:34:37.000000000 +0000 @@ -0,0 +1,88 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: @@ -5387,10 +5388,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuService.h +}; + +#endif /* __nsNativeMenuService_h__ */ -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuUtils.h +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsNativeMenuUtils.h =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuUtils.h 2015-09-17 22:38:32.428566987 +0100 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsNativeMenuUtils.h 2015-12-09 22:34:37.000000000 +0000 @@ -0,0 +1,59 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: @@ -5451,10 +5452,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsNativeMenuUtils.h +}; + +#endif /* __nsNativeMenuUtils_h__ */ -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsWidgetFactory.cpp +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsWidgetFactory.cpp =================================================================== ---- firefox-trunk-43.0~a1~hg20150916r262830.orig/widget/gtk/nsWidgetFactory.cpp 2015-09-17 22:38:32.436567004 +0100 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsWidgetFactory.cpp 2015-09-17 22:38:32.428566987 +0100 +--- firefox-44.0~a2~hg20151207r291794.orig/widget/gtk/nsWidgetFactory.cpp 2015-12-08 05:37:43.000000000 +0000 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsWidgetFactory.cpp 2015-12-09 22:34:37.000000000 +0000 @@ -49,6 +49,9 @@ #include "GfxInfoX11.h" #endif @@ -5523,11 +5524,11 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsWidgetFactory.cpp nsWidgetGtk2ModuleDtor }; -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsWindow.cpp +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsWindow.cpp =================================================================== ---- firefox-trunk-43.0~a1~hg20150916r262830.orig/widget/gtk/nsWindow.cpp 2015-09-17 22:38:32.436567004 +0100 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsWindow.cpp 2015-09-17 22:38:32.432566995 +0100 -@@ -4922,6 +4922,11 @@ +--- firefox-44.0~a2~hg20151207r291794.orig/widget/gtk/nsWindow.cpp 2015-12-08 05:37:43.000000000 +0000 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsWindow.cpp 2015-12-09 22:34:37.000000000 +0000 +@@ -5033,6 +5033,11 @@ return NS_OK; } @@ -5539,11 +5540,11 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsWindow.cpp bool nsWindow::CheckForRollup(gdouble aMouseX, gdouble aMouseY, bool aIsWheel, bool aAlwaysRollup) -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsWindow.h +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsWindow.h =================================================================== ---- firefox-trunk-43.0~a1~hg20150916r262830.orig/widget/gtk/nsWindow.h 2015-09-17 22:38:32.436567004 +0100 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsWindow.h 2015-09-17 22:38:32.432566995 +0100 -@@ -33,6 +33,8 @@ +--- firefox-44.0~a2~hg20151207r291794.orig/widget/gtk/nsWindow.h 2015-12-08 05:37:43.000000000 +0000 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsWindow.h 2015-12-09 22:34:37.000000000 +0000 +@@ -35,6 +35,8 @@ #include "IMContextWrapper.h" @@ -5552,7 +5553,7 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsWindow.h #undef LOG #ifdef MOZ_LOGGING -@@ -161,6 +163,8 @@ +@@ -163,6 +165,8 @@ nsIScreen* aTargetScreen = nullptr) override; NS_IMETHOD HideWindowChrome(bool aShouldHide) override; @@ -5561,19 +5562,19 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/nsWindow.h /** * GetLastUserInputTime returns a timestamp for the most recent user input * event. This is intended for pointer grab requests (including drags). -@@ -516,6 +520,8 @@ - private: - mozilla::LayoutDeviceIntPoint GdkEventCoordsToDevicePixels(gdouble x, gdouble y); - nsIntRect GdkRectToDevicePixels(GdkRectangle rect); +@@ -548,6 +552,8 @@ + RefPtr<mozilla::widget::IMContextWrapper> mIMContext; + + nsAutoPtr<mozilla::CurrentX11TimeGetter> mCurrentTimeGetter; + + nsAutoPtr<nsMenuBar> mMenuBar; }; class nsChildWindow : public nsWindow { -Index: firefox-trunk-43.0~a1~hg20150916r262830/xpfe/appshell/nsWebShellWindow.cpp +Index: firefox-44.0~a2~hg20151207r291794/xpfe/appshell/nsWebShellWindow.cpp =================================================================== ---- firefox-trunk-43.0~a1~hg20150916r262830.orig/xpfe/appshell/nsWebShellWindow.cpp 2015-09-17 22:38:32.436567004 +0100 -+++ firefox-trunk-43.0~a1~hg20150916r262830/xpfe/appshell/nsWebShellWindow.cpp 2015-09-17 22:38:32.432566995 +0100 +--- firefox-44.0~a2~hg20151207r291794.orig/xpfe/appshell/nsWebShellWindow.cpp 2015-12-08 05:37:50.000000000 +0000 ++++ firefox-44.0~a2~hg20151207r291794/xpfe/appshell/nsWebShellWindow.cpp 2015-12-09 22:34:37.000000000 +0000 @@ -58,6 +58,7 @@ #include "nsIScreen.h" @@ -5603,11 +5604,11 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/xpfe/appshell/nsWebShellWindow.cp nms->CreateNativeMenuBar(aParentWindow, menubarContent); } else { nms->CreateNativeMenuBar(aParentWindow, nullptr); -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/moz.build +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/moz.build =================================================================== ---- firefox-trunk-43.0~a1~hg20150916r262830.orig/widget/gtk/moz.build 2015-09-17 22:38:32.436567004 +0100 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/moz.build 2015-09-17 22:38:32.432566995 +0100 -@@ -20,10 +20,18 @@ +--- firefox-44.0~a2~hg20151207r291794.orig/widget/gtk/moz.build 2015-12-08 05:37:43.000000000 +0000 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/moz.build 2015-12-09 22:34:37.000000000 +0000 +@@ -24,10 +24,18 @@ 'nsAppShell.cpp', 'nsBidiKeyboard.cpp', 'nsColorPicker.cpp', @@ -5626,7 +5627,7 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/moz.build 'nsNativeThemeGTK.cpp', 'nsScreenGtk.cpp', 'nsScreenManagerGtk.cpp', -@@ -35,6 +43,8 @@ +@@ -40,6 +48,8 @@ ] SOURCES += [ @@ -5635,7 +5636,7 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/moz.build 'nsWindow.cpp', # conflicts with X11 headers ] -@@ -84,6 +94,7 @@ +@@ -89,6 +99,7 @@ LOCAL_INCLUDES += [ '/layout/generic', @@ -5643,11 +5644,11 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/gtk/moz.build '/layout/xul', '/other-licenses/atk-1.0', '/widget', -Index: firefox-trunk-43.0~a1~hg20150916r262830/browser/base/content/browser.js +Index: firefox-44.0~a2~hg20151207r291794/browser/base/content/browser.js =================================================================== ---- firefox-trunk-43.0~a1~hg20150916r262830.orig/browser/base/content/browser.js 2015-09-17 22:38:32.436567004 +0100 -+++ firefox-trunk-43.0~a1~hg20150916r262830/browser/base/content/browser.js 2015-09-17 22:38:32.432566995 +0100 -@@ -4975,6 +4975,8 @@ +--- firefox-44.0~a2~hg20151207r291794.orig/browser/base/content/browser.js 2015-12-08 05:35:46.000000000 +0000 ++++ firefox-44.0~a2~hg20151207r291794/browser/base/content/browser.js 2015-12-09 22:34:37.000000000 +0000 +@@ -5010,6 +5010,8 @@ let toolbarNodes = Array.slice(gNavToolbox.childNodes); toolbarNodes = toolbarNodes.concat(gNavToolbox.externalToolbars); toolbarNodes = toolbarNodes.filter(node => node.getAttribute("toolbarname")); @@ -5656,10 +5657,10 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/browser/base/content/browser.js return toolbarNodes; } -Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/moz.build +Index: firefox-44.0~a2~hg20151207r291794/widget/moz.build =================================================================== ---- firefox-trunk-43.0~a1~hg20150916r262830.orig/widget/moz.build 2015-09-17 22:38:32.436567004 +0100 -+++ firefox-trunk-43.0~a1~hg20150916r262830/widget/moz.build 2015-09-17 22:38:32.432566995 +0100 +--- firefox-44.0~a2~hg20151207r291794.orig/widget/moz.build 2015-12-08 05:37:43.000000000 +0000 ++++ firefox-44.0~a2~hg20151207r291794/widget/moz.build 2015-12-09 22:34:37.000000000 +0000 @@ -37,10 +37,12 @@ 'nsITaskbarProgress.idl', ] @@ -5674,11 +5675,11 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/widget/moz.build TEST_DIRS += ['tests'] # Don't build the DSO under the 'build' directory as windows does. -Index: firefox-trunk-43.0~a1~hg20150916r262830/modules/libpref/init/all.js +Index: firefox-44.0~a2~hg20151207r291794/modules/libpref/init/all.js =================================================================== ---- firefox-trunk-43.0~a1~hg20150916r262830.orig/modules/libpref/init/all.js 2015-09-17 22:38:32.436567004 +0100 -+++ firefox-trunk-43.0~a1~hg20150916r262830/modules/libpref/init/all.js 2015-09-17 22:38:32.432566995 +0100 -@@ -211,6 +211,9 @@ +--- firefox-44.0~a2~hg20151207r291794.orig/modules/libpref/init/all.js 2015-12-08 05:37:24.000000000 +0000 ++++ firefox-44.0~a2~hg20151207r291794/modules/libpref/init/all.js 2015-12-09 22:34:37.000000000 +0000 +@@ -217,6 +217,9 @@ pref("browser.sessionhistory.max_total_viewers", -1); pref("ui.use_native_colors", true); @@ -5688,3 +5689,28 @@ Index: firefox-trunk-43.0~a1~hg20150916r262830/modules/libpref/init/all.js pref("ui.click_hold_context_menus", false); // Duration of timeout of incremental search in menus (ms). 0 means infinite. pref("ui.menu.incremental_search.timeout", 1000); +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsScreenGtk.cpp +=================================================================== +--- firefox-44.0~a2~hg20151207r291794.orig/widget/gtk/nsScreenGtk.cpp 2015-12-08 05:37:43.000000000 +0000 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsScreenGtk.cpp 2015-12-09 22:35:28.665445270 +0000 +@@ -13,6 +13,7 @@ + #include <gtk/gtk.h> + #include <dlfcn.h> + #include "gfxPlatformGtk.h" ++#include "nsIWidget.h" + + static uint32_t sScreenId = 0; + +Index: firefox-44.0~a2~hg20151207r291794/widget/gtk/nsIdleServiceGTK.cpp +=================================================================== +--- firefox-44.0~a2~hg20151207r291794.orig/widget/gtk/nsIdleServiceGTK.cpp 2015-12-08 05:37:43.000000000 +0000 ++++ firefox-44.0~a2~hg20151207r291794/widget/gtk/nsIdleServiceGTK.cpp 2015-12-09 22:36:46.577798732 +0000 +@@ -13,6 +13,8 @@ + #include "prlink.h" + #include "mozilla/Logging.h" + ++using namespace mozilla; ++ + static PRLogModuleInfo* sIdleLog = nullptr; + + typedef bool (*_XScreenSaverQueryExtension_fn)(Display* dpy, int* event_base, |