diff --git a/.firefox.metadata b/.firefox.metadata
index 3eee2ac..166a39d 100644
--- a/.firefox.metadata
+++ b/.firefox.metadata
@@ -1,7 +1,7 @@
 18a8f30a0356c751b8d0ea6f76e764cab13ee046 SOURCES/Python-2.7.13.tar.xz
 a9effcc06cf80eaa22f12c1f7d6aa4266a1c4966 SOURCES/cbindgen-vendor-0.14.3.tar.xz
-03a8fc7dc94a2ceaa2a7b902e98d09abab62ae38 SOURCES/firefox-78.9.0esr.source.tar.xz
-2955ee68508613d63528c4a8b9da027135609597 SOURCES/firefox-langpacks-78.9.0esr-20210317.tar.xz
+547bac33732774993bd8223de9acfeedcc69a10d SOURCES/firefox-78.10.0esr.source.tar.xz
+839e2486057cef4926ea4c8de3b82bed045adca5 SOURCES/firefox-langpacks-78.10.0esr-20210420.tar.xz
 0de63f863b158454b9429234b52ed28a397ec45c SOURCES/gtk3-private-3.22.26-1.el6.src.rpm
 e188ab1a444697bc649e223c28389d82ca94c472 SOURCES/libffi-3.0.13-18.el7_3.src.rpm
 5715f987bc0024ce5d72993cb101b8268350033b SOURCES/nodejs-10.21.0-5.fc32.src.rpm
diff --git a/.gitignore b/.gitignore
index 2090ecd..ff5d302 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,7 +1,7 @@
 SOURCES/Python-2.7.13.tar.xz
 SOURCES/cbindgen-vendor-0.14.3.tar.xz
-SOURCES/firefox-78.9.0esr.source.tar.xz
-SOURCES/firefox-langpacks-78.9.0esr-20210317.tar.xz
+SOURCES/firefox-78.10.0esr.source.tar.xz
+SOURCES/firefox-langpacks-78.10.0esr-20210420.tar.xz
 SOURCES/gtk3-private-3.22.26-1.el6.src.rpm
 SOURCES/libffi-3.0.13-18.el7_3.src.rpm
 SOURCES/nodejs-10.21.0-5.fc32.src.rpm
diff --git a/README.debrand b/README.debrand
deleted file mode 100644
index 01c46d2..0000000
--- a/README.debrand
+++ /dev/null
@@ -1,2 +0,0 @@
-Warning: This package was configured for automatic debranding, but the changes
-failed to apply.
diff --git a/SOURCES/Bug-1238661---fix-mozillaSignalTrampoline-to-work-.patch b/SOURCES/Bug-1238661---fix-mozillaSignalTrampoline-to-work-.patch
deleted file mode 100644
index 6dfe2ad..0000000
--- a/SOURCES/Bug-1238661---fix-mozillaSignalTrampoline-to-work-.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -up firefox-60.0/mfbt/LinuxSignal.h.mozilla-1238661 firefox-60.0/mfbt/LinuxSignal.h
---- firefox-60.0/mfbt/LinuxSignal.h.mozilla-1238661	2018-04-27 08:55:38.848241768 +0200
-+++ firefox-60.0/mfbt/LinuxSignal.h	2018-04-27 09:06:47.946769859 +0200
-@@ -22,7 +22,7 @@ __attribute__((naked)) void SignalTrampo
-                                              void* aContext) {
-   asm volatile("nop; nop; nop; nop" : : : "memory");
- 
--  asm volatile("b %0" : : "X"(H) : "memory");
-+  asm volatile("bx %0" : : "r"(H), "l"(aSignal), "l"(aInfo), "l"(aContext) : "memory");
- }
- 
- #  define MOZ_SIGNAL_TRAMPOLINE(h) (mozilla::SignalTrampoline<h>)
diff --git a/SOURCES/Bug-1526653---fix_user_vfp_armv7.patch b/SOURCES/Bug-1526653---fix_user_vfp_armv7.patch
deleted file mode 100644
index 3f84f95..0000000
--- a/SOURCES/Bug-1526653---fix_user_vfp_armv7.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From fd6847c9416f9eebde636e21d794d25d1be8791d Mon Sep 17 00:00:00 2001
-From: Mike Hommey <mh@glandium.org>
-Date: Sat, 1 Jun 2019 09:06:01 +0900
-Subject: [PATCH] Bug 1526653 - Include struct definitions for user_vfp and
- user_vfp_exc.
-
----
- js/src/wasm/WasmSignalHandlers.cpp | 11 ++++++++++-
- 1 file changed, 10 insertions(+), 1 deletion(-)
-
-diff --git a/js/src/wasm/WasmSignalHandlers.cpp b/js/src/wasm/WasmSignalHandlers.cpp
-index 636537f8478..383c380f04c 100644
---- a/js/src/wasm/WasmSignalHandlers.cpp
-+++ b/js/src/wasm/WasmSignalHandlers.cpp
-@@ -248,7 +248,16 @@ using mozilla::DebugOnly;
- #endif
- 
- #ifdef WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS
--#  include <sys/user.h>
-+struct user_vfp {
-+  unsigned long long fpregs[32];
-+  unsigned long fpscr;
-+};
-+
-+struct user_vfp_exc {
-+  unsigned long fpexc;
-+  unsigned long fpinst;
-+  unsigned long fpinst2;
-+};
- #endif
- 
- #if defined(ANDROID)
--- 
-2.20.1
-
diff --git a/SOURCES/D110204-fscreen.diff b/SOURCES/D110204-fscreen.diff
new file mode 100644
index 0000000..0249fd0
--- /dev/null
+++ b/SOURCES/D110204-fscreen.diff
@@ -0,0 +1,70 @@
+diff -up firefox-78.9.0/widget/gtk/nsWindow.cpp.D110204-fscreen firefox-78.9.0/widget/gtk/nsWindow.cpp
+--- firefox-78.9.0/widget/gtk/nsWindow.cpp.D110204-fscreen	2021-03-30 13:28:56.212009697 +0200
++++ firefox-78.9.0/widget/gtk/nsWindow.cpp	2021-03-30 13:37:41.925850585 +0200
+@@ -139,6 +139,7 @@ using namespace mozilla::widget;
+ 
+ #include <dlfcn.h>
+ #include "nsPresContext.h"
++#include "nsIBrowserHandler.h"
+ 
+ using namespace mozilla;
+ using namespace mozilla::gfx;
+@@ -416,6 +417,7 @@ nsWindow::nsWindow() {
+   mRetryPointerGrab = false;
+   mWindowType = eWindowType_child;
+   mSizeState = nsSizeMode_Normal;
++  mPendingFullscreen = false;
+   mBoundsAreValid = true;
+   mAspectRatio = 0.0f;
+   mAspectRatioSaved = 0.0f;
+@@ -3887,6 +3889,19 @@ void nsWindow::OnWindowStateEvent(GtkWid
+       }
+     }
+   }
++
++  // Hack to ensure window switched to fullscreen - avoid to fail when starting
++  // in kiosk mode
++  if (mPendingFullscreen &&
++      !(aEvent->new_window_state & GDK_WINDOW_STATE_FULLSCREEN)) {
++    LOG(
++        ("  Window should be fullscreen, but it's not, retrying set to "
++         "fullscreen.\n"));
++    MakeFullScreen(true);
++  } else {
++    LOG(("  Window successfully switched to fullscreen, happy now\n"));
++    mPendingFullscreen = false;
++  }
+ }
+ 
+ void nsWindow::ThemeChanged() {
+@@ -6010,6 +6025,19 @@ nsresult nsWindow::MakeFullScreen(bool a
+       }
+     }
+ 
++    // if in kiosk, ensure the fullscreen is called
++    nsCOMPtr<nsIBrowserHandler> browserHandler =
++        do_GetService("@mozilla.org/browser/clh;1");
++    if (browserHandler) {
++      bool isKiosk;
++      browserHandler->GetKiosk(&isKiosk);
++      if (isKiosk) {
++        LOG(("  is kiosk, ensure the window switch to fullscreen\n"));
++        mPendingFullscreen = true;
++      }
++    } else {
++      LOG(("  Cannot find the browserHandler service.\n"));
++    }
+     gtk_window_fullscreen(GTK_WINDOW(mShell));
+   } else {
+     mSizeMode = mLastSizeMode;
+diff -up firefox-78.9.0/widget/gtk/nsWindow.h.D110204-fscreen firefox-78.9.0/widget/gtk/nsWindow.h
+--- firefox-78.9.0/widget/gtk/nsWindow.h.D110204-fscreen	2021-03-15 16:52:42.000000000 +0100
++++ firefox-78.9.0/widget/gtk/nsWindow.h	2021-03-30 13:28:56.237009784 +0200
+@@ -703,6 +703,7 @@ class nsWindow final : public nsBaseWidg
+   nsRect mPreferredPopupRect;
+   bool mPreferredPopupRectFlushed;
+   bool mWaitingForMoveToRectCB;
++  bool mPendingFullscreen;
+   LayoutDeviceIntRect mPendingSizeRect;
+ 
+   /**
diff --git a/SOURCES/distribution.ini b/SOURCES/distribution.ini
index 0a0429e..8bf461e 100644
--- a/SOURCES/distribution.ini
+++ b/SOURCES/distribution.ini
@@ -1,7 +1,7 @@
 [Global]
 id=redhat
 version=1.0
-about=Mozilla Firefox for CentOS Linux
+about=Mozilla Firefox for Red Hat Enterprise Linux
 
 [Preferences]
 app.distributor=redhat
diff --git a/SOURCES/firefox-centos-default-prefs.js b/SOURCES/firefox-centos-default-prefs.js
deleted file mode 100644
index ea10021..0000000
--- a/SOURCES/firefox-centos-default-prefs.js
+++ /dev/null
@@ -1,35 +0,0 @@
-pref("app.update.auto",                     false);
-pref("app.update.enabled",                  false);
-pref("app.update.autoInstallEnabled",       false);
-pref("general.smoothScroll",                true);
-pref("intl.locale.matchOS",                 true);
-pref("toolkit.storage.synchronous",         0);
-pref("toolkit.networkmanager.disable",      false);
-pref("offline.autoDetect",                  true);
-pref("browser.backspace_action",            2);
-pref("browser.display.use_system_colors",   true);
-pref("browser.download.folderList",         1);
-pref("browser.link.open_external",          3);
-pref("browser.shell.checkDefaultBrowser",   false);
-pref("network.manage-offline-status",       true);
-pref("extensions.shownSelectionUI",         true);
-pref("ui.SpellCheckerUnderlineStyle",       1);
-pref("startup.homepage_override_url",       "http://www.centos.org");
-pref("startup.homepage_welcome_url",        "http://www.centos.org");
-pref("browser.startup.homepage",            "data:text/plain,browser.startup.homepage=file:///usr/share/doc/HTML/index.html");
-pref("geo.wifi.uri", "https://location.services.mozilla.com/v1/geolocate?key=%MOZILLA_API_KEY%");
-pref("media.gmp-gmpopenh264.provider.enabled",false);
-pref("media.gmp-gmpopenh264.autoupdate",false);
-pref("media.gmp-gmpopenh264.enabled",false);
-pref("media.gmp-gmpopenh264.enabled",false);
-pref("plugins.notifyMissingFlash", false);
-/* See https://bugzilla.redhat.com/show_bug.cgi?id=1226489 */
-pref("browser.display.use_system_colors", false);
-pref("layers.use-image-offscreen-surfaces", false);
-/* Allow sending credetials to all https:// sites */
-pref("network.negotiate-auth.trusted-uris", "https://");
-pref("security.use_sqldb", false);
-/* Use OS settings for UI language */
-pref("intl.locale.requested", "");
-/* See https://bugzilla.redhat.com/show_bug.cgi?id=1672424 */
-pref("storage.nfs_filesystem", true);
diff --git a/SOURCES/mozilla-1703636-slot-fail-workaround.patch b/SOURCES/mozilla-1703636-slot-fail-workaround.patch
new file mode 100644
index 0000000..079a15b
--- /dev/null
+++ b/SOURCES/mozilla-1703636-slot-fail-workaround.patch
@@ -0,0 +1,12 @@
+diff -up firefox-78.9.0/security/certverifier/NSSCertDBTrustDomain.cpp.slot-fail firefox-78.9.0/security/certverifier/NSSCertDBTrustDomain.cpp
+--- firefox-78.9.0/security/certverifier/NSSCertDBTrustDomain.cpp.slot-fail	2021-04-08 08:02:13.879018493 +0200
++++ firefox-78.9.0/security/certverifier/NSSCertDBTrustDomain.cpp	2021-04-08 08:05:56.713623197 +0200
+@@ -118,7 +118,7 @@ static Result FindRootsWithSubject(Uniqu
+     CERTCertificateList* rawResults = nullptr;
+     if (PK11_FindRawCertsWithSubject(rootsModule->slots[slotIndex], &subject,
+                                      &rawResults) != SECSuccess) {
+-      return Result::FATAL_ERROR_LIBRARY_FAILURE;
++      continue;
+     }
+     // rawResults == nullptr means we didn't find any matching certificates
+     if (!rawResults) {
diff --git a/SPECS/firefox.spec b/SPECS/firefox.spec
index 8f9c74a..3e55d96 100644
--- a/SPECS/firefox.spec
+++ b/SPECS/firefox.spec
@@ -215,7 +215,7 @@
 
 Summary:        Mozilla Firefox Web browser
 Name:           firefox
-Version:        78.9.0
+Version:        78.10.0
 Release:        1%{?dist}
 URL:            https://www.mozilla.org/firefox/
 License:        MPLv1.1 or GPLv2+ or LGPLv2+
@@ -228,7 +228,7 @@ ExclusiveArch:  i686 x86_64 ppc64 s390x
 
 Source0:        https://hg.mozilla.org/releases/mozilla-release/archive/firefox-%{version}%{?pre_version}.source.tar.xz
 %if %{build_langpacks}
-Source1:        firefox-langpacks-%{version}%{?pre_version}-20210317.tar.xz
+Source1:        firefox-langpacks-%{version}%{?pre_version}-20210420.tar.xz
 %endif
 Source2:        cbindgen-vendor-0.14.3.tar.xz
 Source10:       firefox-mozconfig
@@ -307,6 +307,8 @@ Patch513:        mozilla-bmo998749.patch
 Patch514:        mozilla-s390x-skia-gradient.patch
 Patch515:        mozilla-bmo1626236.patch
 Patch516:        D87019-thin-vec-big-endian.diff
+Patch517:        mozilla-1703636-slot-fail-workaround.patch
+Patch518:        D110204-fscreen.diff
 
 
 # CentOS patches
@@ -681,6 +683,8 @@ sed -ie 's|/usr/include|/app/include|' %_sourcedir/firefox-pipewire-0-3.patch
 %patch514 -p1 -b .mozilla-s390x-skia-gradient
 %patch515 -p1 -b .mozilla-bmo1626236
 %patch516 -p1 -b .D87019-thin-vec-big-endian.diff
+%patch517 -p1 -b .mozilla-1703636-slot-fail-workaround
+%patch518 -p1 -b .D110204-fscreen.diff
 
 
 %patch1001 -p1 -b .ppc64le-inline
@@ -1428,6 +1432,7 @@ SentUpstream: 2014-09-22
 <application>
   <id type="desktop">firefox.desktop</id>
   <metadata_license>CC0-1.0</metadata_license>
+  <project_license>MPLv1.1 or GPLv2+ or LGPLv2+</project_license>
   <description>
     <p>
       Bringing together all kinds of awesomeness to make browsing better for you.
@@ -1685,6 +1690,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
 #---------------------------------------------------------------------
 
 %changelog
+* Tue Apr 20 2021 Eike Rathke <erack@redhat.com> - 78.10.0-1
+- Update to 78.10.0
+
 * Wed Mar 17 2021 Eike Rathke <erack@redhat.com> - 78.9.0-1
 - Update to 78.9.0 build1