summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dom/apps/AppsUtils.jsm3
-rw-r--r--dom/apps/moz.build5
-rw-r--r--dom/audiochannel/AudioChannelService.cpp10
-rw-r--r--dom/base/ScreenOrientation.cpp31
-rw-r--r--dom/base/nsGlobalWindow.h16
-rw-r--r--dom/base/nsPIDOMWindow.h5
-rw-r--r--dom/events/EventListenerManager.cpp36
-rw-r--r--dom/events/EventNameList.h6
-rw-r--r--dom/events/TouchEvent.cpp5
-rw-r--r--dom/geolocation/nsGeolocation.cpp8
-rw-r--r--dom/html/HTMLMediaElement.cpp30
-rw-r--r--dom/html/nsIFormControl.h6
-rw-r--r--dom/indexedDB/ActorsParent.cpp63
-rw-r--r--dom/ipc/ContentChild.cpp4
-rw-r--r--dom/media/Benchmark.cpp7
-rw-r--r--dom/media/CubebUtils.cpp2
-rw-r--r--dom/media/MediaPrefs.h19
-rw-r--r--dom/media/eme/MediaKeySystemAccess.cpp58
-rw-r--r--dom/media/eme/MediaKeys.cpp11
-rw-r--r--dom/media/fmp4/MP4Decoder.cpp3
-rw-r--r--dom/media/mediasource/MediaSource.cpp9
-rw-r--r--dom/media/platforms/PDMFactory.cpp16
-rw-r--r--dom/media/webrtc/MediaEngineDefault.cpp9
-rw-r--r--dom/media/webrtc/MediaEngineWebRTC.cpp34
-rw-r--r--dom/push/PushService.jsm5
-rw-r--r--dom/push/moz.build7
-rw-r--r--dom/webidl/Window.webidl9
-rw-r--r--dom/workers/ServiceWorkerClients.cpp48
-rw-r--r--gfx/layers/apz/src/APZCTreeManager.cpp6
-rw-r--r--gfx/src/DriverCrashGuard.cpp7
-rw-r--r--gfx/src/nsDeviceContext.cpp7
-rw-r--r--gfx/thebes/gfxAndroidPlatform.cpp337
-rw-r--r--gfx/thebes/gfxAndroidPlatform.h80
-rw-r--r--gfx/thebes/gfxFT2FontList.cpp15
-rw-r--r--gfx/thebes/gfxHarfBuzzShaper.cpp10
-rw-r--r--gfx/thebes/gfxPlatform.cpp27
-rw-r--r--gfx/thebes/moz.build24
-rwxr-xr-xmedia/webrtc/signaling/src/media-conduit/AudioConduit.cpp15
-rwxr-xr-xmedia/webrtc/signaling/src/media-conduit/VideoConduit.cpp13
-rw-r--r--memory/mozalloc/mozalloc_abort.cpp4
-rw-r--r--toolkit/components/telemetry/Telemetry.cpp4
-rw-r--r--toolkit/components/telemetry/TelemetryHistogram.cpp44
-rw-r--r--toolkit/modules/AppConstants.jsm4
43 files changed, 14 insertions, 1048 deletions
diff --git a/dom/apps/AppsUtils.jsm b/dom/apps/AppsUtils.jsm
index 2bd6a41339..d24dee8c23 100644
--- a/dom/apps/AppsUtils.jsm
+++ b/dom/apps/AppsUtils.jsm
@@ -84,9 +84,6 @@ function _setAppProperties(aObj, aApp) {
aObj.csp = aApp.csp;
aObj.installOrigin = aApp.installOrigin;
aObj.origin = aApp.origin;
-#ifdef MOZ_WIDGET_ANDROID
- aObj.apkPackageName = aApp.apkPackageName;
-#endif
aObj.receipts = aApp.receipts ? JSON.parse(JSON.stringify(aApp.receipts)) : null;
aObj.installTime = aApp.installTime;
aObj.manifestURL = aApp.manifestURL;
diff --git a/dom/apps/moz.build b/dom/apps/moz.build
index f3b34a024f..27ac62947e 100644
--- a/dom/apps/moz.build
+++ b/dom/apps/moz.build
@@ -12,10 +12,7 @@ EXTRA_COMPONENTS += [
EXTRA_JS_MODULES += [
'AppsServiceChild.jsm',
+ 'AppsUtils.jsm',
'PermissionsInstaller.jsm',
'PermissionsTable.jsm',
]
-
-EXTRA_PP_JS_MODULES += [
- 'AppsUtils.jsm',
-]
diff --git a/dom/audiochannel/AudioChannelService.cpp b/dom/audiochannel/AudioChannelService.cpp
index ca06fa1e3c..7217868481 100644
--- a/dom/audiochannel/AudioChannelService.cpp
+++ b/dom/audiochannel/AudioChannelService.cpp
@@ -159,16 +159,8 @@ bool
IsEnableAudioCompetingForAllAgents()
{
// In general, the audio competing should only be for audible media and it
- // helps user can focus on one media at the same time. However, we hope to
- // treat all media as the same in the mobile device. First reason is we have
- // media control on fennec and we just want to control one media at once time.
- // Second reason is to reduce the bandwidth, avoiding to play any non-audible
- // media in background which user doesn't notice about.
-#ifdef MOZ_WIDGET_ANDROID
- return true;
-#else
+ // helps user can focus on one media at the same time.
return sAudioChannelCompetingAllAgents;
-#endif
}
} // anonymous namespace
diff --git a/dom/base/ScreenOrientation.cpp b/dom/base/ScreenOrientation.cpp
index ec9c4fa295..6d65e63a57 100644
--- a/dom/base/ScreenOrientation.cpp
+++ b/dom/base/ScreenOrientation.cpp
@@ -309,40 +309,9 @@ ScreenOrientation::LockInternal(ScreenOrientationInternal aOrientation, ErrorRes
return nullptr;
}
-#if !defined(MOZ_WIDGET_ANDROID)
// User agent does not support locking the screen orientation.
p->MaybeReject(NS_ERROR_DOM_NOT_SUPPORTED_ERR);
return p.forget();
-#else
- LockPermission perm = GetLockOrientationPermission(true);
- if (perm == LOCK_DENIED) {
- p->MaybeReject(NS_ERROR_DOM_SECURITY_ERR);
- return p.forget();
- }
-
- nsCOMPtr<nsIDocShellTreeItem> root;
- docShell->GetSameTypeRootTreeItem(getter_AddRefs(root));
- nsCOMPtr<nsIDocShell> rootShell(do_QueryInterface(root));
- if (!rootShell) {
- aRv.Throw(NS_ERROR_UNEXPECTED);
- return nullptr;
- }
-
- rootShell->SetOrientationLock(aOrientation);
- AbortOrientationPromises(rootShell);
-
- doc->SetOrientationPendingPromise(p);
-
- nsCOMPtr<nsIRunnable> lockOrientationTask =
- new LockOrientationTask(this, p, aOrientation, doc,
- perm == FULLSCREEN_LOCK_ALLOWED);
- aRv = NS_DispatchToMainThread(lockOrientationTask);
- if (NS_WARN_IF(aRv.Failed())) {
- return nullptr;
- }
-
- return p.forget();
-#endif
}
bool
diff --git a/dom/base/nsGlobalWindow.h b/dom/base/nsGlobalWindow.h
index de9b9f4d4c..c9c661dd53 100644
--- a/dom/base/nsGlobalWindow.h
+++ b/dom/base/nsGlobalWindow.h
@@ -135,9 +135,6 @@ class TabGroup;
class Timeout;
class U2F;
class WakeLock;
-#if defined(MOZ_WIDGET_ANDROID)
-class WindowOrientationObserver;
-#endif
class Worklet;
namespace cache {
class CacheStorage;
@@ -622,11 +619,6 @@ public:
virtual void EnableDeviceSensor(uint32_t aType) override;
virtual void DisableDeviceSensor(uint32_t aType) override;
-#if defined(MOZ_WIDGET_ANDROID)
- virtual void EnableOrientationChangeListener() override;
- virtual void DisableOrientationChangeListener() override;
-#endif
-
virtual void EnableTimeChangeNotifications() override;
virtual void DisableTimeChangeNotifications() override;
@@ -884,10 +876,6 @@ public:
nsIDOMOfflineResourceList* GetApplicationCache(mozilla::ErrorResult& aError);
already_AddRefed<nsIDOMOfflineResourceList> GetApplicationCache() override;
-#if defined(MOZ_WIDGET_ANDROID)
- int16_t Orientation(mozilla::dom::CallerType aCallerType) const;
-#endif
-
mozilla::dom::Console* GetConsole(mozilla::ErrorResult& aRv);
// https://w3c.github.io/webappsec-secure-contexts/#dom-window-issecurecontext
@@ -1915,10 +1903,6 @@ protected:
nsTArray<uint32_t> mEnabledSensors;
-#if defined(MOZ_WIDGET_ANDROID)
- nsAutoPtr<mozilla::dom::WindowOrientationObserver> mOrientationChangeObserver;
-#endif
-
#ifdef MOZ_WEBSPEECH
// mSpeechSynthesis is only used on inner windows.
RefPtr<mozilla::dom::SpeechSynthesis> mSpeechSynthesis;
diff --git a/dom/base/nsPIDOMWindow.h b/dom/base/nsPIDOMWindow.h
index d8d14b512f..21eb4cff7f 100644
--- a/dom/base/nsPIDOMWindow.h
+++ b/dom/base/nsPIDOMWindow.h
@@ -438,11 +438,6 @@ public:
*/
virtual void DisableDeviceSensor(uint32_t aType) = 0;
-#if defined(MOZ_WIDGET_ANDROID)
- virtual void EnableOrientationChangeListener() = 0;
- virtual void DisableOrientationChangeListener() = 0;
-#endif
-
virtual void EnableTimeChangeNotifications() = 0;
virtual void DisableTimeChangeNotifications() = 0;
diff --git a/dom/events/EventListenerManager.cpp b/dom/events/EventListenerManager.cpp
index 81fb67f5f1..4671f89f88 100644
--- a/dom/events/EventListenerManager.cpp
+++ b/dom/events/EventListenerManager.cpp
@@ -351,10 +351,6 @@ EventListenerManager::AddEventListenerInternal(
EnableDevice(eDeviceLight);
} else if (aTypeAtom == nsGkAtoms::ondevicemotion) {
EnableDevice(eDeviceMotion);
-#if defined(MOZ_WIDGET_ANDROID)
- } else if (aTypeAtom == nsGkAtoms::onorientationchange) {
- EnableDevice(eOrientationChange);
-#endif
} else if (aTypeAtom == nsGkAtoms::ontouchstart ||
aTypeAtom == nsGkAtoms::ontouchend ||
aTypeAtom == nsGkAtoms::ontouchmove ||
@@ -480,9 +476,6 @@ EventListenerManager::IsDeviceType(EventMessage aEventMessage)
case eDeviceLight:
case eDeviceProximity:
case eUserProximity:
-#if defined(MOZ_WIDGET_ANDROID)
- case eOrientationChange:
-#endif
return true;
default:
break;
@@ -500,21 +493,10 @@ EventListenerManager::EnableDevice(EventMessage aEventMessage)
switch (aEventMessage) {
case eDeviceOrientation:
-#ifdef MOZ_WIDGET_ANDROID
- // Falls back to SENSOR_ROTATION_VECTOR and SENSOR_ORIENTATION if
- // unavailable on device.
- window->EnableDeviceSensor(SENSOR_GAME_ROTATION_VECTOR);
-#else
window->EnableDeviceSensor(SENSOR_ORIENTATION);
-#endif
break;
case eAbsoluteDeviceOrientation:
-#ifdef MOZ_WIDGET_ANDROID
- // Falls back to SENSOR_ORIENTATION if unavailable on device.
- window->EnableDeviceSensor(SENSOR_ROTATION_VECTOR);
-#else
window->EnableDeviceSensor(SENSOR_ORIENTATION);
-#endif
break;
case eDeviceProximity:
case eUserProximity:
@@ -528,11 +510,6 @@ EventListenerManager::EnableDevice(EventMessage aEventMessage)
window->EnableDeviceSensor(SENSOR_LINEAR_ACCELERATION);
window->EnableDeviceSensor(SENSOR_GYROSCOPE);
break;
-#if defined(MOZ_WIDGET_ANDROID)
- case eOrientationChange:
- window->EnableOrientationChangeListener();
- break;
-#endif
default:
NS_WARNING("Enabling an unknown device sensor.");
break;
@@ -549,17 +526,9 @@ EventListenerManager::DisableDevice(EventMessage aEventMessage)
switch (aEventMessage) {
case eDeviceOrientation:
-#ifdef MOZ_WIDGET_ANDROID
- // Disable all potential fallback sensors.
- window->DisableDeviceSensor(SENSOR_GAME_ROTATION_VECTOR);
- window->DisableDeviceSensor(SENSOR_ROTATION_VECTOR);
-#endif
window->DisableDeviceSensor(SENSOR_ORIENTATION);
break;
case eAbsoluteDeviceOrientation:
-#ifdef MOZ_WIDGET_ANDROID
- window->DisableDeviceSensor(SENSOR_ROTATION_VECTOR);
-#endif
window->DisableDeviceSensor(SENSOR_ORIENTATION);
break;
case eDeviceMotion:
@@ -574,11 +543,6 @@ EventListenerManager::DisableDevice(EventMessage aEventMessage)
case eDeviceLight:
window->DisableDeviceSensor(SENSOR_LIGHT);
break;
-#if defined(MOZ_WIDGET_ANDROID)
- case eOrientationChange:
- window->DisableOrientationChangeListener();
- break;
-#endif
default:
NS_WARNING("Disabling an unknown device sensor.");
break;
diff --git a/dom/events/EventNameList.h b/dom/events/EventNameList.h
index edb84ea01b..c4edc1fe2a 100644
--- a/dom/events/EventNameList.h
+++ b/dom/events/EventNameList.h
@@ -566,12 +566,6 @@ WINDOW_EVENT(online,
eOnline,
EventNameType_XUL | EventNameType_HTMLBodyOrFramesetOnly,
eBasicEventClass)
-#if defined(MOZ_WIDGET_ANDROID)
-WINDOW_EVENT(orientationchange,
- eOrientationChange,
- EventNameType_HTMLBodyOrFramesetOnly,
- eBasicEventClass)
-#endif
WINDOW_EVENT(pagehide,
ePageHide,
EventNameType_HTMLBodyOrFramesetOnly,
diff --git a/dom/events/TouchEvent.cpp b/dom/events/TouchEvent.cpp
index c4cb33d950..2986198134 100644
--- a/dom/events/TouchEvent.cpp
+++ b/dom/events/TouchEvent.cpp
@@ -204,10 +204,7 @@ TouchEvent::PrefEnabled(nsIDocShell* aDocShell)
enabled = false;
} else {
if (sPrefCacheValue == 2) {
-#if defined(MOZ_WIDGET_ANDROID)
- // Touch support is always enabled on B2G and android.
- enabled = true;
-#elif defined(XP_WIN) || MOZ_WIDGET_GTK == 3
+#if defined(XP_WIN) || MOZ_WIDGET_GTK == 3
static bool sDidCheckTouchDeviceSupport = false;
static bool sIsTouchDeviceSupportPresent = false;
// On Windows and GTK3 we auto-detect based on device support.
diff --git a/dom/geolocation/nsGeolocation.cpp b/dom/geolocation/nsGeolocation.cpp
index f961535dfb..0b447dfa7a 100644
--- a/dom/geolocation/nsGeolocation.cpp
+++ b/dom/geolocation/nsGeolocation.cpp
@@ -27,10 +27,6 @@
class nsIPrincipal;
-#ifdef MOZ_WIDGET_ANDROID
-#include "AndroidLocationProvider.h"
-#endif
-
#ifdef MOZ_GPSD
#include "GpsdLocationProvider.h"
#endif
@@ -646,10 +642,6 @@ nsresult nsGeolocationService::Init()
obs->AddObserver(this, "xpcom-shutdown", false);
-#ifdef MOZ_WIDGET_ANDROID
- mProvider = new AndroidLocationProvider();
-#endif
-
#ifdef MOZ_WIDGET_GTK
#ifdef MOZ_GPSD
if (Preferences::GetBool("geo.provider.use_gpsd", false)) {
diff --git a/dom/html/HTMLMediaElement.cpp b/dom/html/HTMLMediaElement.cpp
index 1ff1fd7a45..a483198655 100644
--- a/dom/html/HTMLMediaElement.cpp
+++ b/dom/html/HTMLMediaElement.cpp
@@ -846,28 +846,7 @@ private:
bool CanOwnerPlayUnsupportedTypeMedia() const
{
-#if defined(MOZ_WIDGET_ANDROID)
- // On Fennec, we will user an external app to open unsupported media types.
- if (!Preferences::GetBool("media.openUnsupportedTypeWithExternalApp")) {
- return false;
- }
-
- if (!mError) {
- return false;
- }
-
- uint16_t errorCode = mError->Code();
- if (errorCode != MEDIA_ERR_SRC_NOT_SUPPORTED) {
- return false;
- }
-
- // If media doesn't start playing, we don't need to open it.
- if (mOwner->Paused()) {
- return false;
- }
-
- return true;
-#endif
+ // This was only something to check on Android. Stubbed now.
return false;
}
@@ -6204,13 +6183,6 @@ HTMLMediaElement::IsAllowedToPlay()
if (!mHasUserInteraction &&
!IsAutoplayEnabled() &&
!EventStateManager::IsHandlingUserInput()) {
-#if defined(MOZ_WIDGET_ANDROID)
- nsContentUtils::DispatchTrustedEvent(OwnerDoc(),
- static_cast<nsIContent*>(this),
- NS_LITERAL_STRING("MozAutoplayMediaBlocked"),
- false,
- false);
-#endif
return false;
}
diff --git a/dom/html/nsIFormControl.h b/dom/html/nsIFormControl.h
index 0a844a5671..067ac7cae8 100644
--- a/dom/html/nsIFormControl.h
+++ b/dom/html/nsIFormControl.h
@@ -265,12 +265,6 @@ nsIFormControl::IsSingleLineTextControl(bool aExcludePassword, uint32_t aType)
aType == NS_FORM_INPUT_SEARCH ||
aType == NS_FORM_INPUT_TEL ||
aType == NS_FORM_INPUT_URL ||
- // TODO: those are temporary until bug 773205 is fixed.
-#if defined(MOZ_WIDGET_ANDROID)
- // On Android, date/time input appears as a normal text box.
- aType == NS_FORM_INPUT_TIME ||
- aType == NS_FORM_INPUT_DATE ||
-#endif
aType == NS_FORM_INPUT_MONTH ||
aType == NS_FORM_INPUT_WEEK ||
aType == NS_FORM_INPUT_DATETIME_LOCAL ||
diff --git a/dom/indexedDB/ActorsParent.cpp b/dom/indexedDB/ActorsParent.cpp
index 46a3152ccf..9203f9ee41 100644
--- a/dom/indexedDB/ActorsParent.cpp
+++ b/dom/indexedDB/ActorsParent.cpp
@@ -121,10 +121,6 @@
LogLevel::Debug, \
_args )
-#if defined(MOZ_WIDGET_ANDROID)
-#define IDB_MOBILE
-#endif
-
#define BLOB_IMPL_STORED_FILE_IID \
{0x6b505c84, 0x2c60, 0x4ffb, {0x8b, 0x91, 0xfe, 0x22, 0xb1, 0xec, 0x75, 0xe2}}
@@ -189,12 +185,7 @@ const int32_t kStorageProgressGranularity = 1000;
// Changing the value here will override the page size of new databases only.
// A journal mode change and VACUUM are needed to change existing databases, so
// the best way to do that is to use the schema version upgrade mechanism.
-const uint32_t kSQLitePageSizeOverride =
-#ifdef IDB_MOBILE
- 2048;
-#else
- 4096;
-#endif
+const uint32_t kSQLitePageSizeOverride = 4096;
static_assert(kSQLitePageSizeOverride == /* mozStorage default */ 0 ||
(kSQLitePageSizeOverride % 2 == 0 &&
@@ -2621,25 +2612,6 @@ UpgradeSchemaFrom12_0To13_0(mozIStorageConnection* aConnection,
nsresult rv;
-#ifdef IDB_MOBILE
- int32_t defaultPageSize;
- rv = aConnection->GetDefaultPageSize(&defaultPageSize);
- if (NS_WARN_IF(NS_FAILED(rv))) {
- return rv;
- }
-
- // Enable auto_vacuum mode and update the page size to the platform default.
- nsAutoCString upgradeQuery("PRAGMA auto_vacuum = FULL; PRAGMA page_size = ");
- upgradeQuery.AppendInt(defaultPageSize);
-
- rv = aConnection->ExecuteSimpleSQL(upgradeQuery);
- if (NS_WARN_IF(NS_FAILED(rv))) {
- return rv;
- }
-
- *aVacuumNeeded = true;
-#endif
-
rv = aConnection->SetSchemaVersion(MakeSchemaVersion(13, 0));
if (NS_WARN_IF(NS_FAILED(rv))) {
return rv;
@@ -3583,15 +3555,9 @@ UpgradeSchemaFrom17_0To18_0Helper::DoUpgradeInternal(
return rv;
}
- // Finally, turn on auto_vacuum mode. We use full auto_vacuum mode to reclaim
- // disk space on mobile devices (at the cost of some COMMIT speed), and
- // incremental auto_vacuum mode on desktop builds.
+ // Finally, turn on auto_vacuum mode.
rv = aConnection->ExecuteSimpleSQL(
-#ifdef IDB_MOBILE
- NS_LITERAL_CSTRING("PRAGMA auto_vacuum = FULL;")
-#else
NS_LITERAL_CSTRING("PRAGMA auto_vacuum = INCREMENTAL;")
-#endif
);
if (NS_WARN_IF(NS_FAILED(rv))) {
return rv;
@@ -4223,7 +4189,6 @@ SetDefaultPragmas(mozIStorageConnection* aConnection)
return rv;
}
-#ifndef IDB_MOBILE
if (kSQLiteGrowthIncrement) {
// This is just an optimization so ignore the failure if the disk is
// currently too full.
@@ -4233,7 +4198,6 @@ SetDefaultPragmas(mozIStorageConnection* aConnection)
return rv;
}
}
-#endif // IDB_MOBILE
return NS_OK;
}
@@ -4285,13 +4249,6 @@ SetJournalMode(mozIStorageConnection* aConnection)
}
} else {
NS_WARNING("Failed to set WAL mode, falling back to normal journal mode.");
-#ifdef IDB_MOBILE
- rv = aConnection->ExecuteSimpleSQL(journalModeQueryStart +
- NS_LITERAL_CSTRING("truncate"));
- if (NS_WARN_IF(NS_FAILED(rv))) {
- return rv;
- }
-#endif
}
return NS_OK;
@@ -4533,14 +4490,7 @@ CreateStorageConnection(nsIFile* aDBFile,
// We have to set the auto_vacuum mode before opening a transaction.
rv = connection->ExecuteSimpleSQL(
-#ifdef IDB_MOBILE
- // Turn on full auto_vacuum mode to reclaim disk space on mobile
- // devices (at the cost of some COMMIT speed).
- NS_LITERAL_CSTRING("PRAGMA auto_vacuum = FULL;")
-#else
- // Turn on incremental auto_vacuum mode on desktop builds.
NS_LITERAL_CSTRING("PRAGMA auto_vacuum = INCREMENTAL;")
-#endif
);
if (rv == NS_ERROR_FILE_NO_DEVICE_SPACE) {
// mozstorage translates SQLITE_FULL to NS_ERROR_FILE_NO_DEVICE_SPACE,
@@ -21105,14 +21055,6 @@ FactoryOp::CheckPermission(ContentParent* aContentParent,
return rv;
}
-#ifdef IDB_MOBILE
- if (persistenceType == PERSISTENCE_TYPE_PERSISTENT &&
- !QuotaManager::IsOriginInternal(origin) &&
- !isApp) {
- return NS_ERROR_DOM_INDEXEDDB_NOT_ALLOWED_ERR;
- }
-#endif
-
PermissionRequestBase::PermissionValue permission;
if (QuotaManager::IsFirstPromptRequired(persistenceType, origin, isApp)) {
@@ -29589,7 +29531,6 @@ FileHelper::SyncCopy(nsIInputStream* aInputStream,
} // namespace dom
} // namespace mozilla
-#undef IDB_MOBILE
#undef IDB_DEBUG_LOG
#undef ASSERT_UNLESS_FUZZING
#undef DISABLE_ASSERTS_FOR_FUZZING
diff --git a/dom/ipc/ContentChild.cpp b/dom/ipc/ContentChild.cpp
index c56a21c1a6..046934277c 100644
--- a/dom/ipc/ContentChild.cpp
+++ b/dom/ipc/ContentChild.cpp
@@ -130,10 +130,6 @@
#include "PermissionMessageUtils.h"
-#if defined(MOZ_WIDGET_ANDROID)
-#include "APKOpen.h"
-#endif
-
#ifdef XP_WIN
#include <process.h>
#define getpid _getpid
diff --git a/dom/media/Benchmark.cpp b/dom/media/Benchmark.cpp
index e2b4abe7bb..27a6740a2b 100644
--- a/dom/media/Benchmark.cpp
+++ b/dom/media/Benchmark.cpp
@@ -14,10 +14,7 @@
#include "mozilla/SharedThreadPool.h"
#include "mozilla/dom/ContentChild.h"
-#ifndef MOZ_WIDGET_ANDROID
#include "WebMSample.h"
-#endif
-
namespace mozilla {
// Update this version number to force re-running the benchmark. Such as when
@@ -34,9 +31,6 @@ VP9Benchmark::IsVP9DecodeFast()
{
MOZ_ASSERT(NS_IsMainThread());
-#ifdef MOZ_WIDGET_ANDROID
- return false;
-#else
bool hasPref = Preferences::HasUserValue(sBenchmarkFpsPref);
uint32_t hadRecentUpdate = Preferences::GetUint(sBenchmarkFpsVersionCheck, 0U);
@@ -81,7 +75,6 @@ VP9Benchmark::IsVP9DecodeFast()
Preferences::GetUint("media.benchmark.vp9.threshold", 150);
return decodeFps >= threshold;
-#endif
}
Benchmark::Benchmark(MediaDataDemuxer* aDemuxer, const Parameters& aParameters)
diff --git a/dom/media/CubebUtils.cpp b/dom/media/CubebUtils.cpp
index 7f203ce629..aa611973db 100644
--- a/dom/media/CubebUtils.cpp
+++ b/dom/media/CubebUtils.cpp
@@ -276,9 +276,7 @@ void InitLibrary()
PrefChanged(PREF_CUBEB_LATENCY_MSG, nullptr);
Preferences::RegisterCallback(PrefChanged, PREF_CUBEB_LATENCY_PLAYBACK);
Preferences::RegisterCallback(PrefChanged, PREF_CUBEB_LATENCY_MSG);
-#ifndef MOZ_WIDGET_ANDROID
NS_DispatchToMainThread(NS_NewRunnableFunction(&InitBrandName));
-#endif
}
void ShutdownLibrary()
diff --git a/dom/media/MediaPrefs.h b/dom/media/MediaPrefs.h
index c67a899896..c1e66a3cee 100644
--- a/dom/media/MediaPrefs.h
+++ b/dom/media/MediaPrefs.h
@@ -6,10 +6,6 @@
#ifndef MEDIA_PREFS_H
#define MEDIA_PREFS_H
-#ifdef MOZ_WIDGET_ANDROID
-#include "AndroidBridge.h"
-#endif
-
#include "mozilla/Atomics.h"
// First time MediaPrefs::GetSingleton() needs to be called on the main thread,
@@ -105,11 +101,6 @@ private:
DECL_MEDIA_PREF("media.eme.enabled", EMEEnabled, bool, false);
DECL_MEDIA_PREF("media.use-blank-decoder", PDMUseBlankDecoder, bool, false);
DECL_MEDIA_PREF("media.gpu-process-decoder", PDMUseGPUDecoder, bool, false);
-#ifdef MOZ_WIDGET_ANDROID
- DECL_MEDIA_PREF("media.android-media-codec.enabled", PDMAndroidMediaCodecEnabled, bool, false);
- DECL_MEDIA_PREF("media.android-media-codec.preferred", PDMAndroidMediaCodecPreferred, bool, false);
- DECL_MEDIA_PREF("media.android-remote-codec.enabled", PDMAndroidRemoteCodecEnabled, bool, false);
-#endif
#ifdef MOZ_FFMPEG
DECL_MEDIA_PREF("media.ffmpeg.enabled", PDMFFmpegEnabled, bool, true);
DECL_MEDIA_PREF("media.libavcodec.allow-obsolete", LibavcodecAllowObsolete, bool, false);
@@ -168,15 +159,7 @@ private:
// Default value functions
static int32_t MediaDecoderLimitDefault()
{
-#ifdef MOZ_WIDGET_ANDROID
- if (AndroidBridge::Bridge() &&
- AndroidBridge::Bridge()->GetAPIVersion() < 18) {
- // Older Android versions have broken support for multiple simultaneous
- // decoders, see bug 1278574.
- return 1;
- }
-#endif
- // Otherwise, set no decoder limit.
+ // Setting a decoder limit was only necessary for Android; set no decoder limit.
return -1;
}
diff --git a/dom/media/eme/MediaKeySystemAccess.cpp b/dom/media/eme/MediaKeySystemAccess.cpp
index e4e86f4c5b..c65c57ed0f 100644
--- a/dom/media/eme/MediaKeySystemAccess.cpp
+++ b/dom/media/eme/MediaKeySystemAccess.cpp
@@ -37,9 +37,6 @@
#include "nsUnicharUtils.h"
#include "mozilla/dom/MediaSource.h"
#include "DecoderTraits.h"
-#ifdef MOZ_WIDGET_ANDROID
-#include "FennecJNIWrappers.h"
-#endif
namespace mozilla {
namespace dom {
@@ -104,12 +101,6 @@ HavePluginForKeySystem(const nsCString& aKeySystem)
{
bool havePlugin = HaveGMPFor(NS_LITERAL_CSTRING(GMP_API_DECRYPTOR),
{ aKeySystem });
-#ifdef MOZ_WIDGET_ANDROID
- // Check if we can use MediaDrm for this keysystem.
- if (!havePlugin) {
- havePlugin = mozilla::java::MediaDrmProxy::IsSchemeSupported(aKeySystem);
- }
-#endif
return havePlugin;
}
@@ -143,16 +134,6 @@ MediaKeySystemAccess::GetKeySystemStatus(const nsAString& aKeySystem,
return MediaKeySystemStatus::Cdm_disabled;
}
return EnsureCDMInstalled(aKeySystem, aOutMessage);
-#ifdef MOZ_WIDGET_ANDROID
- } else if (Preferences::GetBool("media.mediadrm-widevinecdm.visible", false)) {
- nsCString keySystem = NS_ConvertUTF16toUTF8(aKeySystem);
- bool supported = mozilla::java::MediaDrmProxy::IsSchemeSupported(keySystem);
- if (!supported) {
- aOutMessage = NS_LITERAL_CSTRING("Widevine CDM is not available");
- return MediaKeySystemStatus::Cdm_not_installed;
- }
- return MediaKeySystemStatus::Available;
-#endif
}
}
@@ -308,9 +289,6 @@ GetSupportedKeySystems()
widevine.mPersistentState = KeySystemFeatureSupport::Requestable;
widevine.mDistinctiveIdentifier = KeySystemFeatureSupport::Prohibited;
widevine.mSessionTypes.AppendElement(MediaKeySessionType::Temporary);
-#ifdef MOZ_WIDGET_ANDROID
- widevine.mSessionTypes.AppendElement(MediaKeySessionType::Persistent_license);
-#endif
widevine.mAudioRobustness.AppendElement(NS_LITERAL_STRING("SW_SECURE_CRYPTO"));
widevine.mVideoRobustness.AppendElement(NS_LITERAL_STRING("SW_SECURE_DECODE"));
#if defined(XP_WIN)
@@ -322,49 +300,13 @@ GetSupportedKeySystems()
if (WMFDecoderModule::HasAAC()) {
widevine.mMP4.SetCanDecrypt(EME_CODEC_AAC);
}
-#elif !defined(MOZ_WIDGET_ANDROID)
- widevine.mMP4.SetCanDecrypt(EME_CODEC_AAC);
#endif
-#if defined(MOZ_WIDGET_ANDROID)
- using namespace mozilla::java;
- // MediaDrm.isCryptoSchemeSupported only allows passing
- // "video/mp4" or "video/webm" for mimetype string.
- // See https://developer.android.com/reference/android/media/MediaDrm.html#isCryptoSchemeSupported(java.util.UUID, java.lang.String)
- // for more detail.
- typedef struct {
- const nsCString& mMimeType;
- const nsCString& mEMECodecType;
- const char16_t* mCodecType;
- KeySystemContainerSupport* mSupportType;
- } DataForValidation;
-
- DataForValidation validationList[] = {
- { nsCString("video/mp4"), EME_CODEC_H264, MediaDrmProxy::AVC, &widevine.mMP4 },
- { nsCString("audio/mp4"), EME_CODEC_AAC, MediaDrmProxy::AAC, &widevine.mMP4 },
- { nsCString("video/webm"), EME_CODEC_VP8, MediaDrmProxy::VP8, &widevine.mWebM },
- { nsCString("video/webm"), EME_CODEC_VP9, MediaDrmProxy::VP9, &widevine.mWebM},
- { nsCString("audio/webm"), EME_CODEC_VORBIS, MediaDrmProxy::VORBIS, &widevine.mWebM},
- { nsCString("audio/webm"), EME_CODEC_OPUS, MediaDrmProxy::OPUS, &widevine.mWebM},
- };
-
- for (const auto& data: validationList) {
- if (MediaDrmProxy::IsCryptoSchemeSupported(kEMEKeySystemWidevine,
- data.mMimeType)) {
- if (MediaDrmProxy::CanDecode(data.mCodecType)) {
- data.mSupportType->SetCanDecryptAndDecode(data.mEMECodecType);
- } else {
- data.mSupportType->SetCanDecrypt(data.mEMECodecType);
- }
- }
- }
-#else
widevine.mMP4.SetCanDecryptAndDecode(EME_CODEC_H264);
widevine.mWebM.SetCanDecrypt(EME_CODEC_VORBIS);
widevine.mWebM.SetCanDecrypt(EME_CODEC_OPUS);
widevine.mWebM.SetCanDecryptAndDecode(EME_CODEC_VP8);
widevine.mWebM.SetCanDecryptAndDecode(EME_CODEC_VP9);
-#endif
keySystemConfigs.AppendElement(Move(widevine));
}
}
diff --git a/dom/media/eme/MediaKeys.cpp b/dom/media/eme/MediaKeys.cpp
index a1d22fdd5e..8621007579 100644
--- a/dom/media/eme/MediaKeys.cpp
+++ b/dom/media/eme/MediaKeys.cpp
@@ -13,9 +13,6 @@
#include "mozilla/dom/DOMException.h"
#include "mozilla/dom/UnionTypes.h"
#include "GMPCDMProxy.h"
-#ifdef MOZ_WIDGET_ANDROID
-#include "mozilla/MediaDrmCDMProxy.h"
-#endif
#include "mozilla/EMEUtils.h"
#include "nsContentUtils.h"
#include "nsIScriptObjectPrincipal.h"
@@ -330,14 +327,6 @@ already_AddRefed<CDMProxy>
MediaKeys::CreateCDMProxy()
{
RefPtr<CDMProxy> proxy;
-#ifdef MOZ_WIDGET_ANDROID
- if (IsWidevineKeySystem(mKeySystem)) {
- proxy = new MediaDrmCDMProxy(this,
- mKeySystem,
- mConfig.mDistinctiveIdentifier == MediaKeysRequirement::Required,
- mConfig.mPersistentState == MediaKeysRequirement::Required);
- } else
-#endif
{
proxy = new GMPCDMProxy(this,
mKeySystem,
diff --git a/dom/media/fmp4/MP4Decoder.cpp b/dom/media/fmp4/MP4Decoder.cpp
index bf937241c3..7a340d8297 100644
--- a/dom/media/fmp4/MP4Decoder.cpp
+++ b/dom/media/fmp4/MP4Decoder.cpp
@@ -21,9 +21,6 @@
#ifdef XP_WIN
#include "mozilla/WindowsVersion.h"
#endif
-#ifdef MOZ_WIDGET_ANDROID
-#include "nsIGfxInfo.h"
-#endif
#include "mozilla/layers/LayersTypes.h"
#include "PDMFactory.h"
diff --git a/dom/media/mediasource/MediaSource.cpp b/dom/media/mediasource/MediaSource.cpp
index 7d22d50a31..3ae640fbcc 100644
--- a/dom/media/mediasource/MediaSource.cpp
+++ b/dom/media/mediasource/MediaSource.cpp
@@ -32,10 +32,6 @@
#include "mozilla/gfx/gfxVars.h"
#include "mozilla/Sprintf.h"
-#ifdef MOZ_WIDGET_ANDROID
-#include "AndroidBridge.h"
-#endif
-
struct JSContext;
class JSObject;
@@ -72,12 +68,7 @@ IsWebMForced(DecoderDoctorDiagnostics* aDiagnostics)
DecoderTraits::IsMP4TypeAndEnabled(NS_LITERAL_CSTRING("video/mp4"),
aDiagnostics);
bool hwsupported = gfx::gfxVars::CanUseHardwareVideoDecoding();
-#ifdef MOZ_WIDGET_ANDROID
- return !mp4supported || !hwsupported || VP9Benchmark::IsVP9DecodeFast() ||
- java::HardwareCodecCapabilityUtils::HasHWVP9();
-#else
return !mp4supported || !hwsupported || VP9Benchmark::IsVP9DecodeFast();
-#endif
}
namespace dom {
diff --git a/dom/media/platforms/PDMFactory.cpp b/dom/media/platforms/PDMFactory.cpp
index 6e7241c462..6304a5b8b1 100644
--- a/dom/media/platforms/PDMFactory.cpp
+++ b/dom/media/platforms/PDMFactory.cpp
@@ -19,9 +19,6 @@
#ifdef MOZ_APPLEMEDIA
#include "AppleDecoderModule.h"
#endif
-#ifdef MOZ_WIDGET_ANDROID
-#include "AndroidDecoderModule.h"
-#endif
#include "GMPDecoderModule.h"
#include "mozilla/ClearOnShutdown.h"
@@ -355,13 +352,6 @@ PDMFactory::CreatePDMs()
return;
}
-#ifdef MOZ_WIDGET_ANDROID
- if(MediaPrefs::PDMAndroidMediaCodecPreferred() &&
- MediaPrefs::PDMAndroidMediaCodecEnabled()) {
- m = new AndroidDecoderModule();
- StartupPDM(m);
- }
-#endif
#ifdef XP_WIN
if (MediaPrefs::PDMWMFEnabled()) {
m = new WMFDecoderModule();
@@ -390,12 +380,6 @@ PDMFactory::CreatePDMs()
m = new AppleDecoderModule();
StartupPDM(m);
#endif
-#ifdef MOZ_WIDGET_ANDROID
- if(MediaPrefs::PDMAndroidMediaCodecEnabled()){
- m = new AndroidDecoderModule();
- StartupPDM(m);
- }
-#endif
m = new AgnosticDecoderModule();
StartupPDM(m);
diff --git a/dom/media/webrtc/MediaEngineDefault.cpp b/dom/media/webrtc/MediaEngineDefault.cpp
index eb0ac2b6fc..5af7b9d40c 100644
--- a/dom/media/webrtc/MediaEngineDefault.cpp
+++ b/dom/media/webrtc/MediaEngineDefault.cpp
@@ -19,10 +19,6 @@
#include "nsIPrefService.h"
#include "nsIPrefBranch.h"
-#ifdef MOZ_WIDGET_ANDROID
-#include "nsISupportsUtils.h"
-#endif
-
#ifdef MOZ_WEBRTC
#include "YuvStamper.h"
#endif
@@ -192,12 +188,7 @@ MediaEngineDefaultVideoSource::Start(SourceMediaStream* aStream, TrackID aID,
mTrackID = aID;
// Start timer for subsequent frames
-#if defined(MOZ_WIDGET_ANDROID) && defined(DEBUG)
-// emulator debug is very, very slow and has problems dealing with realtime audio inputs
- mTimer->InitWithCallback(this, (1000 / mOpts.mFPS)*10, nsITimer::TYPE_REPEATING_SLACK);
-#else
mTimer->InitWithCallback(this, 1000 / mOpts.mFPS, nsITimer::TYPE_REPEATING_SLACK);
-#endif
mState = kStarted;
return NS_OK;
diff --git a/dom/media/webrtc/MediaEngineWebRTC.cpp b/dom/media/webrtc/MediaEngineWebRTC.cpp
index 6697ca56a1..3e978571f6 100644
--- a/dom/media/webrtc/MediaEngineWebRTC.cpp
+++ b/dom/media/webrtc/MediaEngineWebRTC.cpp
@@ -25,11 +25,6 @@ static mozilla::LazyLogModule sGetUserMediaLog("GetUserMedia");
#include "nsITabSource.h"
#include "MediaTrackConstraints.h"
-#ifdef MOZ_WIDGET_ANDROID
-#include "AndroidJNIWrapper.h"
-#include "AndroidBridge.h"
-#endif
-
#undef LOG
#define LOG(args) MOZ_LOG(sGetUserMediaLog, mozilla::LogLevel::Debug, args)
@@ -146,17 +141,6 @@ MediaEngineWebRTC::EnumerateVideoDevices(dom::MediaSourceEnum aMediaSource,
mozilla::camera::CaptureEngine capEngine = mozilla::camera::InvalidEngine;
-#ifdef MOZ_WIDGET_ANDROID
- // get the JVM
- JavaVM* jvm;
- JNIEnv* const env = jni::GetEnvForThread();
- MOZ_ALWAYS_TRUE(!env->GetJavaVM(&jvm));
-
- if (webrtc::VideoEngine::SetAndroidObjects(jvm) != 0) {
- LOG(("VieCapture:SetAndroidObjects Failed"));
- return;
- }
-#endif
bool scaryKind = false; // flag sources with cross-origin exploit potential
switch (aMediaSource) {
@@ -285,20 +269,6 @@ MediaEngineWebRTC::EnumerateAudioDevices(dom::MediaSourceEnum aMediaSource,
return;
}
-#ifdef MOZ_WIDGET_ANDROID
- jobject context = mozilla::AndroidBridge::Bridge()->GetGlobalContextRef();
-
- // get the JVM
- JavaVM* jvm;
- JNIEnv* const env = jni::GetEnvForThread();
- MOZ_ALWAYS_TRUE(!env->GetJavaVM(&jvm));
-
- if (webrtc::VoiceEngine::SetAndroidObjects(jvm, (void*)context) != 0) {
- LOG(("VoiceEngine:SetAndroidObjects Failed"));
- return;
- }
-#endif
-
if (!mVoiceEngine) {
mConfig.Set<webrtc::ExtendedFilter>(new webrtc::ExtendedFilter(mExtendedFilter));
mConfig.Set<webrtc::DelayAgnostic>(new webrtc::DelayAgnostic(mDelayAgnostic));
@@ -334,12 +304,8 @@ MediaEngineWebRTC::EnumerateAudioDevices(dom::MediaSourceEnum aMediaSource,
int nDevices = 0;
mAudioInput->GetNumOfRecordingDevices(nDevices);
int i;
-#if defined(MOZ_WIDGET_ANDROID)
- i = 0; // Bug 1037025 - let the OS handle defaulting for now on android/b2g
-#else
// -1 is "default communications device" depending on OS in webrtc.org code
i = -1;
-#endif
for (; i < nDevices; i++) {
// We use constants here because GetRecordingDeviceName takes char[128].
char deviceName[128];
diff --git a/dom/push/PushService.jsm b/dom/push/PushService.jsm
index 07cf70d210..e95f625553 100644
--- a/dom/push/PushService.jsm
+++ b/dom/push/PushService.jsm
@@ -23,14 +23,9 @@ const {
const {PushDB} = Cu.import("resource://gre/modules/PushDB.jsm");
const CONNECTION_PROTOCOLS = (function() {
-#ifdef MOZ_WIDGET_ANDROID
- const {PushServiceAndroidGCM} = Cu.import("resource://gre/modules/PushServiceAndroidGCM.jsm");
- return [PushServiceAndroidGCM];
-#else
const {PushServiceWebSocket} = Cu.import("resource://gre/modules/PushServiceWebSocket.jsm");
const {PushServiceHttp2} = Cu.import("resource://gre/modules/PushServiceHttp2.jsm");
return [PushServiceWebSocket, PushServiceHttp2];
-#endif
})();
XPCOMUtils.defineLazyServiceGetter(this, "gPushNotifier",
diff --git a/dom/push/moz.build b/dom/push/moz.build
index 657b59e75a..055f97d480 100644
--- a/dom/push/moz.build
+++ b/dom/push/moz.build
@@ -11,13 +11,10 @@ EXTRA_COMPONENTS += [
EXTRA_JS_MODULES += [
'PushCrypto.jsm',
'PushDB.jsm',
- 'PushServiceHttp2.jsm',
- 'PushServiceWebSocket.jsm',
-]
-
-EXTRA_PP_JS_MODULES += [
'PushRecord.jsm',
'PushService.jsm',
+ 'PushServiceHttp2.jsm',
+ 'PushServiceWebSocket.jsm',
]
MOCHITEST_MANIFESTS += [
diff --git a/dom/webidl/Window.webidl b/dom/webidl/Window.webidl
index ab03bf40b0..ad427630bd 100644
--- a/dom/webidl/Window.webidl
+++ b/dom/webidl/Window.webidl
@@ -365,15 +365,6 @@ Window implements TouchEventHandlers;
Window implements OnErrorEventHandlerForWindow;
-#if defined(MOZ_WIDGET_ANDROID)
-// https://compat.spec.whatwg.org/#windoworientation-interface
-partial interface Window {
- [NeedsCallerType]
- readonly attribute short orientation;
- attribute EventHandler onorientationchange;
-};
-#endif
-
#ifdef HAVE_SIDEBAR
// Mozilla extension
partial interface Window {
diff --git a/dom/workers/ServiceWorkerClients.cpp b/dom/workers/ServiceWorkerClients.cpp
index f7f35919cd..78a4825654 100644
--- a/dom/workers/ServiceWorkerClients.cpp
+++ b/dom/workers/ServiceWorkerClients.cpp
@@ -32,10 +32,6 @@
#include "nsWindowWatcher.h"
#include "nsWeakReference.h"
-#ifdef MOZ_WIDGET_ANDROID
-#include "AndroidBridge.h"
-#endif
-
using namespace mozilla;
using namespace mozilla::dom;
using namespace mozilla::dom::workers;
@@ -512,12 +508,6 @@ public:
return NS_OK;
}
-#ifdef MOZ_WIDGET_ANDROID
- // This fires an intent that will start launching Fennec and foreground it,
- // if necessary.
- java::GeckoAppShell::OpenWindowForNotification();
-#endif
-
nsCOMPtr<nsPIDOMWindowOuter> window;
nsresult rv = OpenWindow(getter_AddRefs(window));
if (NS_SUCCEEDED(rv)) {
@@ -573,44 +563,6 @@ public:
MOZ_ASSERT(NS_SUCCEEDED(rv));
return NS_OK;
}
-#ifdef MOZ_WIDGET_ANDROID
- else if (rv == NS_ERROR_NOT_AVAILABLE) {
- // We couldn't get a browser window, so Fennec must not be running.
- // Send an Intent to launch Fennec and wait for "BrowserChrome:Ready"
- // to try opening a window again.
- nsCOMPtr<nsIObserverService> os = services::GetObserverService();
- NS_ENSURE_STATE(os);
-
- WorkerPrivate* workerPrivate = mPromiseProxy->GetWorkerPrivate();
- MOZ_ASSERT(workerPrivate);
-
- RefPtr<ServiceWorkerManager> swm = ServiceWorkerManager::GetInstance();
- if (!swm) {
- // browser shutdown
- return NS_ERROR_FAILURE;
- }
-
- nsCOMPtr<nsIPrincipal> principal = workerPrivate->GetPrincipal();
- MOZ_ASSERT(principal);
-
- RefPtr<ServiceWorkerRegistrationInfo> registration =
- swm->GetRegistration(principal, NS_ConvertUTF16toUTF8(mScope));
- if (NS_WARN_IF(!registration)) {
- return NS_ERROR_FAILURE;
- }
-
- RefPtr<ServiceWorkerInfo> serviceWorkerInfo =
- registration->GetServiceWorkerInfoById(workerPrivate->ServiceWorkerID());
- if (NS_WARN_IF(!serviceWorkerInfo)) {
- return NS_ERROR_FAILURE;
- }
-
- os->AddObserver(static_cast<nsIObserver*>(serviceWorkerInfo->WorkerPrivate()),
- "BrowserChrome:Ready", true);
- serviceWorkerInfo->WorkerPrivate()->AddPendingWindow(this);
- return NS_OK;
- }
-#endif
RefPtr<ResolveOpenWindowRunnable> resolveRunnable =
new ResolveOpenWindowRunnable(mPromiseProxy, nullptr, rv);
diff --git a/gfx/layers/apz/src/APZCTreeManager.cpp b/gfx/layers/apz/src/APZCTreeManager.cpp
index 00eb3f1834..297bf57fe2 100644
--- a/gfx/layers/apz/src/APZCTreeManager.cpp
+++ b/gfx/layers/apz/src/APZCTreeManager.cpp
@@ -1854,10 +1854,8 @@ APZCTreeManager::FindRootContentOrRootApzc() const
{
mTreeLock.AssertCurrentThreadOwns();
- // Note: this is intended to find the same "root" that would be found
- // by AsyncCompositionManager::ApplyAsyncContentTransformToTree inside
- // the MOZ_WIDGET_ANDROID block. That is, it should find the RCD node if there
- // is one, or the root APZC if there is not.
+ // Note: this should find the RCD node if there is one, or the root APZC if
+ // there is not.
// Since BreadthFirstSearch is a pre-order search, we first do a search for
// the RCD, and then if we don't find one, we do a search for the root APZC.
HitTestingTreeNode* resultNode = BreadthFirstSearch<ReverseIterator>(mRootNode.get(),
diff --git a/gfx/src/DriverCrashGuard.cpp b/gfx/src/DriverCrashGuard.cpp
index 2303e9d664..42b7416344 100644
--- a/gfx/src/DriverCrashGuard.cpp
+++ b/gfx/src/DriverCrashGuard.cpp
@@ -520,13 +520,6 @@ GLContextCrashGuard::Initialize()
return;
}
-#if defined(MOZ_WIDGET_ANDROID)
- // Disable the WebGL crash guard on Android - it doesn't use E10S, and
- // its drivers will essentially never change, so the crash guard could
- // permanently disable WebGL.
- return;
-#endif
-
DriverCrashGuard::Initialize();
}
diff --git a/gfx/src/nsDeviceContext.cpp b/gfx/src/nsDeviceContext.cpp
index 5f67a79a3a..db69e21e98 100644
--- a/gfx/src/nsDeviceContext.cpp
+++ b/gfx/src/nsDeviceContext.cpp
@@ -645,13 +645,6 @@ nsDeviceContext::FindScreen(nsIScreen** outScreen)
outScreen);
}
-#ifdef MOZ_WIDGET_ANDROID
- if (!(*outScreen)) {
- nsCOMPtr<nsIScreen> screen = mWidget->GetWidgetScreen();
- screen.forget(outScreen);
- }
-#endif
-
if (!(*outScreen)) {
mScreenManager->GetPrimaryScreen(outScreen);
}
diff --git a/gfx/thebes/gfxAndroidPlatform.cpp b/gfx/thebes/gfxAndroidPlatform.cpp
deleted file mode 100644
index c237116db3..0000000000
--- a/gfx/thebes/gfxAndroidPlatform.cpp
+++ /dev/null
@@ -1,337 +0,0 @@
-/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/* 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
- * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-
-#include "base/basictypes.h"
-
-#include "gfxAndroidPlatform.h"
-#include "mozilla/gfx/2D.h"
-#include "mozilla/CountingAllocatorBase.h"
-#include "mozilla/Preferences.h"
-
-#include "gfx2DGlue.h"
-#include "gfxFT2FontList.h"
-#include "gfxImageSurface.h"
-#include "gfxTextRun.h"
-#include "mozilla/dom/ContentChild.h"
-#include "nsXULAppAPI.h"
-#include "nsIScreen.h"
-#include "nsIScreenManager.h"
-#include "nsILocaleService.h"
-#include "nsServiceManagerUtils.h"
-#include "nsUnicodeProperties.h"
-#include "gfxPrefs.h"
-#include "cairo.h"
-#include "VsyncSource.h"
-
-#include "ft2build.h"
-#include FT_FREETYPE_H
-#include FT_MODULE_H
-
-using namespace mozilla;
-using namespace mozilla::dom;
-using namespace mozilla::gfx;
-using namespace mozilla::unicode;
-
-static FT_Library gPlatformFTLibrary = nullptr;
-
-class FreetypeReporter final : public nsIMemoryReporter,
- public CountingAllocatorBase<FreetypeReporter>
-{
-private:
- ~FreetypeReporter() {}
-
-public:
- NS_DECL_ISUPPORTS
-
- static void* Malloc(FT_Memory, long size)
- {
- return CountingMalloc(size);
- }
-
- static void Free(FT_Memory, void* p)
- {
- return CountingFree(p);
- }
-
- static void*
- Realloc(FT_Memory, long cur_size, long new_size, void* p)
- {
- return CountingRealloc(p, new_size);
- }
-
- NS_IMETHOD CollectReports(nsIHandleReportCallback* aHandleReport,
- nsISupports* aData, bool aAnonymize) override
- {
- MOZ_COLLECT_REPORT(
- "explicit/freetype", KIND_HEAP, UNITS_BYTES, MemoryAllocated(),
- "Memory used by Freetype.");
-
- return NS_OK;
- }
-};
-
-NS_IMPL_ISUPPORTS(FreetypeReporter, nsIMemoryReporter)
-
-template<> Atomic<size_t> CountingAllocatorBase<FreetypeReporter>::sAmount(0);
-
-static FT_MemoryRec_ sFreetypeMemoryRecord;
-
-gfxAndroidPlatform::gfxAndroidPlatform()
-{
- // A custom allocator. It counts allocations, enabling memory reporting.
- sFreetypeMemoryRecord.user = nullptr;
- sFreetypeMemoryRecord.alloc = FreetypeReporter::Malloc;
- sFreetypeMemoryRecord.free = FreetypeReporter::Free;
- sFreetypeMemoryRecord.realloc = FreetypeReporter::Realloc;
-
- // These two calls are equivalent to FT_Init_FreeType(), but allow us to
- // provide a custom memory allocator.
- FT_New_Library(&sFreetypeMemoryRecord, &gPlatformFTLibrary);
- FT_Add_Default_Modules(gPlatformFTLibrary);
-
- RegisterStrongMemoryReporter(new FreetypeReporter());
-
- mOffscreenFormat = GetScreenDepth() == 16
- ? SurfaceFormat::R5G6B5_UINT16
- : SurfaceFormat::X8R8G8B8_UINT32;
-
- if (gfxPrefs::AndroidRGB16Force()) {
- mOffscreenFormat = SurfaceFormat::R5G6B5_UINT16;
- }
-}
-
-gfxAndroidPlatform::~gfxAndroidPlatform()
-{
- FT_Done_Library(gPlatformFTLibrary);
- gPlatformFTLibrary = nullptr;
-}
-
-already_AddRefed<gfxASurface>
-gfxAndroidPlatform::CreateOffscreenSurface(const IntSize& aSize,
- gfxImageFormat aFormat)
-{
- if (!Factory::AllowedSurfaceSize(aSize)) {
- return nullptr;
- }
-
- RefPtr<gfxASurface> newSurface;
- newSurface = new gfxImageSurface(aSize, aFormat);
-
- return newSurface.forget();
-}
-
-static bool
-IsJapaneseLocale()
-{
- static bool sInitialized = false;
- static bool sIsJapanese = false;
-
- if (!sInitialized) {
- sInitialized = true;
-
- do { // to allow 'break' to abandon this block if a call fails
- nsresult rv;
- nsCOMPtr<nsILocaleService> ls =
- do_GetService(NS_LOCALESERVICE_CONTRACTID, &rv);
- if (NS_FAILED(rv)) {
- break;
- }
- nsCOMPtr<nsILocale> appLocale;
- rv = ls->GetApplicationLocale(getter_AddRefs(appLocale));
- if (NS_FAILED(rv)) {
- break;
- }
- nsString localeStr;
- rv = appLocale->
- GetCategory(NS_LITERAL_STRING(NSILOCALE_MESSAGE), localeStr);
- if (NS_FAILED(rv)) {
- break;
- }
- const nsAString& lang = nsDependentSubstring(localeStr, 0, 2);
- if (lang.EqualsLiteral("ja")) {
- sIsJapanese = true;
- }
- } while (false);
- }
-
- return sIsJapanese;
-}
-
-void
-gfxAndroidPlatform::GetCommonFallbackFonts(uint32_t aCh, uint32_t aNextCh,
- Script aRunScript,
- nsTArray<const char*>& aFontList)
-{
- static const char kDroidSansJapanese[] = "Droid Sans Japanese";
- static const char kMotoyaLMaru[] = "MotoyaLMaru";
- static const char kNotoSansCJKJP[] = "Noto Sans CJK JP";
- static const char kNotoColorEmoji[] = "Noto Color Emoji";
-
- EmojiPresentation emoji = GetEmojiPresentation(aCh);
- if (emoji != EmojiPresentation::TextOnly) {
- if (aNextCh == kVariationSelector16 ||
- (aNextCh != kVariationSelector15 &&
- emoji == EmojiPresentation::EmojiDefault)) {
- // if char is followed by VS16, try for a color emoji glyph
- aFontList.AppendElement(kNotoColorEmoji);
- }
- }
-
- if (IS_IN_BMP(aCh)) {
- // try language-specific "Droid Sans *" and "Noto Sans *" fonts for
- // certain blocks, as most devices probably have these
- uint8_t block = (aCh >> 8) & 0xff;
- switch (block) {
- case 0x05:
- aFontList.AppendElement("Droid Sans Hebrew");
- aFontList.AppendElement("Droid Sans Armenian");
- break;
- case 0x06:
- aFontList.AppendElement("Droid Sans Arabic");
- break;
- case 0x09:
- aFontList.AppendElement("Noto Sans Devanagari");
- aFontList.AppendElement("Droid Sans Devanagari");
- break;
- case 0x0b:
- aFontList.AppendElement("Noto Sans Tamil");
- aFontList.AppendElement("Droid Sans Tamil");
- break;
- case 0x0e:
- aFontList.AppendElement("Noto Sans Thai");
- aFontList.AppendElement("Droid Sans Thai");
- break;
- case 0x10: case 0x2d:
- aFontList.AppendElement("Droid Sans Georgian");
- break;
- case 0x12: case 0x13:
- aFontList.AppendElement("Droid Sans Ethiopic");
- break;
- case 0xf9: case 0xfa:
- if (IsJapaneseLocale()) {
- aFontList.AppendElement(kMotoyaLMaru);
- aFontList.AppendElement(kNotoSansCJKJP);
- aFontList.AppendElement(kDroidSansJapanese);
- }
- break;
- default:
- if (block >= 0x2e && block <= 0x9f && IsJapaneseLocale()) {
- aFontList.AppendElement(kMotoyaLMaru);
- aFontList.AppendElement(kNotoSansCJKJP);
- aFontList.AppendElement(kDroidSansJapanese);
- }
- break;
- }
- }
- // and try Droid Sans Fallback as a last resort
- aFontList.AppendElement("Droid Sans Fallback");
-}
-
-void
-gfxAndroidPlatform::GetSystemFontList(InfallibleTArray<FontListEntry>* retValue)
-{
- gfxFT2FontList::PlatformFontList()->GetSystemFontList(retValue);
-}
-
-gfxPlatformFontList*
-gfxAndroidPlatform::CreatePlatformFontList()
-{
- gfxPlatformFontList* list = new gfxFT2FontList();
- if (NS_SUCCEEDED(list->InitFontList())) {
- return list;
- }
- gfxPlatformFontList::Shutdown();
- return nullptr;
-}
-
-bool
-gfxAndroidPlatform::IsFontFormatSupported(nsIURI *aFontURI, uint32_t aFormatFlags)
-{
- // check for strange format flags
- NS_ASSERTION(!(aFormatFlags & gfxUserFontSet::FLAG_FORMAT_NOT_USED),
- "strange font format hint set");
-
- // accept supported formats
- if (aFormatFlags & gfxUserFontSet::FLAG_FORMATS_COMMON) {
- return true;
- }
-
- // reject all other formats, known and unknown
- if (aFormatFlags != 0) {
- return false;
- }
-
- // no format hint set, need to look at data
- return true;
-}
-
-gfxFontGroup *
-gfxAndroidPlatform::CreateFontGroup(const FontFamilyList& aFontFamilyList,
- const gfxFontStyle* aStyle,
- gfxTextPerfMetrics* aTextPerf,
- gfxUserFontSet* aUserFontSet,
- gfxFloat aDevToCssSize)
-{
- return new gfxFontGroup(aFontFamilyList, aStyle, aTextPerf,
- aUserFontSet, aDevToCssSize);
-}
-
-FT_Library
-gfxAndroidPlatform::GetFTLibrary()
-{
- return gPlatformFTLibrary;
-}
-
-already_AddRefed<ScaledFont>
-gfxAndroidPlatform::GetScaledFontForFont(DrawTarget* aTarget, gfxFont *aFont)
-{
- return GetScaledFontForFontWithCairoSkia(aTarget, aFont);
-}
-
-bool
-gfxAndroidPlatform::FontHintingEnabled()
-{
- // In "mobile" builds, we sometimes use non-reflow-zoom, so we
- // might not want hinting. Let's see.
-
-#ifdef MOZ_WIDGET_ANDROID
- // On Android, we currently only use gecko to render web
- // content that can always be be non-reflow-zoomed. So turn off
- // hinting.
- //
- // XXX when gecko-android-java is used as an "app runtime", we may
- // want to re-enable hinting for non-browser processes there.
- return false;
-#endif // MOZ_WIDGET_ANDROID
-
- // Currently, we don't have any other targets, but if/when we do,
- // decide how to handle them here.
-
- NS_NOTREACHED("oops, what platform is this?");
- return gfxPlatform::FontHintingEnabled();
-}
-
-bool
-gfxAndroidPlatform::RequiresLinearZoom()
-{
-#ifdef MOZ_WIDGET_ANDROID
- // On Android, we currently only use gecko to render web
- // content that can always be be non-reflow-zoomed.
- //
- // XXX when gecko-android-java is used as an "app runtime", we may
- // want to treat it like B2G and use linear zoom only for the web
- // browser process, not other apps.
- return true;
-#endif
-
- NS_NOTREACHED("oops, what platform is this?");
- return gfxPlatform::RequiresLinearZoom();
-}
-
-already_AddRefed<mozilla::gfx::VsyncSource>
-gfxAndroidPlatform::CreateHardwareVsyncSource()
-{
- return gfxPlatform::CreateHardwareVsyncSource();
-}
diff --git a/gfx/thebes/gfxAndroidPlatform.h b/gfx/thebes/gfxAndroidPlatform.h
deleted file mode 100644
index 8975d0ab96..0000000000
--- a/gfx/thebes/gfxAndroidPlatform.h
+++ /dev/null
@@ -1,80 +0,0 @@
-/* -*- Mode: C++; tab-width: 20; indent-tabs-mode: nil; c-basic-offset: 4 -*-
- * 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
- * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-
-#ifndef GFX_PLATFORM_ANDROID_H
-#define GFX_PLATFORM_ANDROID_H
-
-#include "gfxFT2Fonts.h"
-#include "gfxPlatform.h"
-#include "gfxUserFontSet.h"
-#include "nsCOMPtr.h"
-#include "nsTArray.h"
-
-namespace mozilla {
- namespace dom {
- class FontListEntry;
- };
-};
-using mozilla::dom::FontListEntry;
-
-typedef struct FT_LibraryRec_ *FT_Library;
-
-class gfxAndroidPlatform : public gfxPlatform {
-public:
- gfxAndroidPlatform();
- virtual ~gfxAndroidPlatform();
-
- static gfxAndroidPlatform *GetPlatform() {
- return (gfxAndroidPlatform*) gfxPlatform::GetPlatform();
- }
-
- virtual already_AddRefed<gfxASurface>
- CreateOffscreenSurface(const IntSize& aSize,
- gfxImageFormat aFormat) override;
-
- virtual gfxImageFormat GetOffscreenFormat() override { return mOffscreenFormat; }
-
- already_AddRefed<mozilla::gfx::ScaledFont>
- GetScaledFontForFont(mozilla::gfx::DrawTarget* aTarget, gfxFont *aFont) override;
-
- // to support IPC font list (sharing between chrome and content)
- void GetSystemFontList(InfallibleTArray<FontListEntry>* retValue);
-
- // platform implementations of font functions
- virtual bool IsFontFormatSupported(nsIURI *aFontURI, uint32_t aFormatFlags) override;
- virtual gfxPlatformFontList* CreatePlatformFontList() override;
-
- virtual void GetCommonFallbackFonts(uint32_t aCh, uint32_t aNextCh,
- Script aRunScript,
- nsTArray<const char*>& aFontList) override;
-
- gfxFontGroup*
- CreateFontGroup(const mozilla::FontFamilyList& aFontFamilyList,
- const gfxFontStyle *aStyle,
- gfxTextPerfMetrics* aTextPerf,
- gfxUserFontSet *aUserFontSet,
- gfxFloat aDevToCssSize) override;
-
- virtual bool FontHintingEnabled() override;
- virtual bool RequiresLinearZoom() override;
-
- FT_Library GetFTLibrary();
-
- virtual bool CanRenderContentToDataSurface() const override {
- return true;
- }
-
- virtual already_AddRefed<mozilla::gfx::VsyncSource> CreateHardwareVsyncSource() override;
-
- virtual bool SupportsApzTouchInput() const override {
- return true;
- }
-
-private:
- gfxImageFormat mOffscreenFormat;
-};
-
-#endif /* GFX_PLATFORM_ANDROID_H */
-
diff --git a/gfx/thebes/gfxFT2FontList.cpp b/gfx/thebes/gfxFT2FontList.cpp
index 09c938a248..b032be13dc 100644
--- a/gfx/thebes/gfxFT2FontList.cpp
+++ b/gfx/thebes/gfxFT2FontList.cpp
@@ -492,15 +492,6 @@ FT2FontEntry::ReadCMAP(FontInfoData *aFontInfoData)
}
}
-#ifdef MOZ_WIDGET_ANDROID
- // Hack for the SamsungDevanagari font, bug 1012365:
- // pretend the font supports U+0972.
- if (!charmap->test(0x0972) &&
- charmap->test(0x0905) && charmap->test(0x0945)) {
- charmap->set(0x0972);
- }
-#endif
-
mHasCmapTable = NS_SUCCEEDED(rv);
if (mHasCmapTable) {
gfxPlatformFontList *pfl = gfxPlatformFontList::PlatformFontList();
@@ -1562,12 +1553,6 @@ gfxFontFamily*
gfxFT2FontList::GetDefaultFontForPlatform(const gfxFontStyle* aStyle)
{
gfxFontFamily *ff = nullptr;
-#if defined(MOZ_WIDGET_ANDROID)
- ff = FindFamily(NS_LITERAL_STRING("Roboto"));
- if (!ff) {
- ff = FindFamily(NS_LITERAL_STRING("Droid Sans"));
- }
-#endif
/* TODO: what about Qt or other platforms that may use this? */
return ff;
}
diff --git a/gfx/thebes/gfxHarfBuzzShaper.cpp b/gfx/thebes/gfxHarfBuzzShaper.cpp
index f2264bc1fe..4a563a95f9 100644
--- a/gfx/thebes/gfxHarfBuzzShaper.cpp
+++ b/gfx/thebes/gfxHarfBuzzShaper.cpp
@@ -1107,16 +1107,6 @@ HBUnicodeDecompose(hb_unicode_funcs_t *ufuncs,
hb_codepoint_t *b,
void *user_data)
{
-#ifdef MOZ_WIDGET_ANDROID
- // Hack for the SamsungDevanagari font, bug 1012365:
- // support U+0972 by decomposing it.
- if (ab == 0x0972) {
- *a = 0x0905;
- *b = 0x0945;
- return true;
- }
-#endif
-
if (!sNormalizer) {
return false;
}
diff --git a/gfx/thebes/gfxPlatform.cpp b/gfx/thebes/gfxPlatform.cpp
index ae43360606..e2c2ae7759 100644
--- a/gfx/thebes/gfxPlatform.cpp
+++ b/gfx/thebes/gfxPlatform.cpp
@@ -87,10 +87,6 @@
#include "gfxPlatformGtk.h" // xxx - for UseFcFontList
#endif
-#ifdef MOZ_WIDGET_ANDROID
-#include "TexturePoolOGL.h"
-#endif
-
#ifdef USE_SKIA
# ifdef __GNUC__
# pragma GCC diagnostic push
@@ -522,8 +518,6 @@ void RecordingPrefChanged(const char *aPrefName, void *aClosure)
#if defined(USE_SKIA)
static uint32_t GetSkiaGlyphCacheSize()
{
- // Only increase font cache size on non-android to save memory.
-#if !defined(MOZ_WIDGET_ANDROID)
// 10mb as the default cache size on desktop due to talos perf tweaking.
// Chromium uses 20mb and skia default uses 2mb.
// We don't need to change the font cache count since we usually
@@ -535,9 +529,6 @@ static uint32_t GetSkiaGlyphCacheSize()
}
return cacheSize;
-#else
- return kDefaultGlyphCacheSize;
-#endif // MOZ_WIDGET_ANDROID
}
#endif
@@ -671,11 +662,6 @@ gfxPlatform::Init()
GLContext::PlatformStartup();
-#ifdef MOZ_WIDGET_ANDROID
- // Texture pool init
- TexturePoolOGL::Init();
-#endif
-
Preferences::RegisterCallbackAndCall(RecordingPrefChanged, "gfx.2d.recording", nullptr);
CreateCMSOutputProfile();
@@ -781,11 +767,6 @@ gfxPlatform::Shutdown()
gPlatform->mVsyncSource = nullptr;
-#ifdef MOZ_WIDGET_ANDROID
- // Shut down the texture pool
- TexturePoolOGL::Shutdown();
-#endif
-
// Shut down the default GL context provider.
GLContextProvider::Shutdown();
@@ -2323,7 +2304,7 @@ gfxPlatform::GetTilesSupportInfo(mozilla::widget::InfoObject& aObj)
/*static*/ bool
gfxPlatform::AsyncPanZoomEnabled()
{
-#if !defined(MOZ_WIDGET_ANDROID) && !defined(MOZ_WIDGET_UIKIT)
+#if !defined(MOZ_WIDGET_UIKIT)
// For XUL applications (everything but Firefox on Android) we only want
// to use APZ when E10S is enabled or when the user explicitly enable it.
if (BrowserTabsRemoteAutostart() || gfxPrefs::APZDesktopEnabled()) {
@@ -2331,8 +2312,6 @@ gfxPlatform::AsyncPanZoomEnabled()
} else {
return false;
}
-#elif defined(MOZ_WIDGET_ANDROID)
- return true;
#else
return gfxPrefs::AsyncPanZoomEnabledDoNotUseDirectly();
#endif
@@ -2356,10 +2335,6 @@ gfxPlatform::GetAcceleratedCompositorBackends(nsTArray<LayersBackend>& aBackends
NS_WARNING("OpenGL-accelerated layers are not supported on this system");
tell_me_once = 1;
}
-#ifdef MOZ_WIDGET_ANDROID
- NS_RUNTIMEABORT("OpenGL-accelerated layers are a hard requirement on this platform. "
- "Cannot continue without support for them");
-#endif
}
}
diff --git a/gfx/thebes/moz.build b/gfx/thebes/moz.build
index b84c4a4c68..6d3b7819be 100644
--- a/gfx/thebes/moz.build
+++ b/gfx/thebes/moz.build
@@ -57,24 +57,7 @@ EXPORTS.mozilla.gfx += [
'PrintTargetThebes.h',
]
-if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android':
- EXPORTS += [
- 'gfxAndroidPlatform.h',
- 'gfxFT2FontBase.h',
- 'gfxFT2Fonts.h',
- ]
- EXPORTS.mozilla.gfx += [
- 'PrintTargetPDF.h',
- ]
- SOURCES += [
- 'gfxAndroidPlatform.cpp',
- 'gfxFT2FontBase.cpp',
- 'gfxFT2FontList.cpp',
- 'gfxFT2Fonts.cpp',
- 'gfxFT2Utils.cpp',
- 'PrintTargetPDF.cpp',
- ]
-elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
+if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
EXPORTS += [
'gfxPlatformMac.h',
'gfxQuartzNativeDrawing.h',
@@ -231,7 +214,7 @@ LOCAL_INCLUDES += [
'/dom/xml',
]
-if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('android', 'gtk2', 'gtk3'):
+if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk2', 'gtk3'):
DEFINES['MOZ_ENABLE_FREETYPE'] = True
if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'windows':
@@ -244,9 +227,6 @@ CXXFLAGS += CONFIG['TK_CFLAGS']
CFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']
CFLAGS += CONFIG['TK_CFLAGS']
-if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('android'):
- CXXFLAGS += CONFIG['CAIRO_FT_CFLAGS']
-
if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk2', 'gtk3'):
CXXFLAGS += CONFIG['MOZ_PANGO_CFLAGS']
diff --git a/media/webrtc/signaling/src/media-conduit/AudioConduit.cpp b/media/webrtc/signaling/src/media-conduit/AudioConduit.cpp
index e36b8b6cf4..42a50533a4 100755
--- a/media/webrtc/signaling/src/media-conduit/AudioConduit.cpp
+++ b/media/webrtc/signaling/src/media-conduit/AudioConduit.cpp
@@ -31,10 +31,6 @@
#include "webrtc/voice_engine/voice_engine_impl.h"
#include "webrtc/system_wrappers/interface/clock.h"
-#ifdef MOZ_WIDGET_ANDROID
-#include "AndroidJNIWrapper.h"
-#endif
-
namespace mozilla {
static const char* logTag ="WebrtcAudioSessionConduit";
@@ -261,17 +257,6 @@ MediaConduitErrorCode WebrtcAudioConduit::Init()
{
CSFLogDebug(logTag, "%s this=%p", __FUNCTION__, this);
-#ifdef MOZ_WIDGET_ANDROID
- jobject context = jsjni_GetGlobalContextRef();
- // get the JVM
- JavaVM *jvm = jsjni_GetVM();
-
- if (webrtc::VoiceEngine::SetAndroidObjects(jvm, (void*)context) != 0) {
- CSFLogError(logTag, "%s Unable to set Android objects", __FUNCTION__);
- return kMediaConduitSessionNotInited;
- }
-#endif
-
// Per WebRTC APIs below function calls return nullptr on failure
if(!(mVoiceEngine = webrtc::VoiceEngine::Create()))
{
diff --git a/media/webrtc/signaling/src/media-conduit/VideoConduit.cpp b/media/webrtc/signaling/src/media-conduit/VideoConduit.cpp
index 95f599be46..e6db06a685 100755
--- a/media/webrtc/signaling/src/media-conduit/VideoConduit.cpp
+++ b/media/webrtc/signaling/src/media-conduit/VideoConduit.cpp
@@ -25,10 +25,6 @@
#include "mozilla/Unused.h"
-#ifdef MOZ_WIDGET_ANDROID
-#include "AndroidJNIWrapper.h"
-#endif
-
// for ntohs
#ifdef _MSC_VER
#include "Winsock2.h"
@@ -323,15 +319,6 @@ WebrtcVideoConduit::InitMain()
}
}
-#ifdef MOZ_WIDGET_ANDROID
- // get the JVM
- JavaVM *jvm = jsjni_GetVM();
-
- if (webrtc::VideoEngine::SetAndroidObjects(jvm) != 0) {
- CSFLogError(logTag, "%s: could not set Android objects", __FUNCTION__);
- return kMediaConduitSessionNotInited;
- }
-#endif
#endif
return kMediaConduitNoError;
}
diff --git a/memory/mozalloc/mozalloc_abort.cpp b/memory/mozalloc/mozalloc_abort.cpp
index 40fce125c2..8db569655a 100644
--- a/memory/mozalloc/mozalloc_abort.cpp
+++ b/memory/mozalloc/mozalloc_abort.cpp
@@ -7,10 +7,6 @@
#include "mozilla/mozalloc_abort.h"
-#ifdef MOZ_WIDGET_ANDROID
-# include "APKOpen.h"
-# include "dlfcn.h"
-#endif
#include <stdio.h>
#include "mozilla/Assertions.h"
diff --git a/toolkit/components/telemetry/Telemetry.cpp b/toolkit/components/telemetry/Telemetry.cpp
index fdad5c7d02..5edf267866 100644
--- a/toolkit/components/telemetry/Telemetry.cpp
+++ b/toolkit/components/telemetry/Telemetry.cpp
@@ -1116,12 +1116,8 @@ TelemetryImpl::SnapshotSubsessionHistograms(bool clearSubsession,
JSContext *cx,
JS::MutableHandle<JS::Value> ret)
{
-#if !defined(MOZ_WIDGET_ANDROID)
return TelemetryHistogram::CreateHistogramSnapshots(cx, ret, true,
clearSubsession);
-#else
- return NS_OK;
-#endif
}
NS_IMETHODIMP
diff --git a/toolkit/components/telemetry/TelemetryHistogram.cpp b/toolkit/components/telemetry/TelemetryHistogram.cpp
index 7b9e119b98..c8a6d78249 100644
--- a/toolkit/components/telemetry/TelemetryHistogram.cpp
+++ b/toolkit/components/telemetry/TelemetryHistogram.cpp
@@ -582,7 +582,6 @@ internal_GetHistogramByName(const nsACString &name, Histogram **ret)
}
-#if !defined(MOZ_WIDGET_ANDROID)
/**
* This clones a histogram |existing| with the id |existingId| to a
@@ -670,7 +669,6 @@ internal_GetSubsessionHistogram(Histogram& existing)
cache[id] = clone;
return clone;
}
-#endif
nsresult
internal_HistogramAdd(Histogram& histogram, int32_t value, uint32_t dataset)
@@ -683,11 +681,9 @@ internal_HistogramAdd(Histogram& histogram, int32_t value, uint32_t dataset)
return NS_OK;
}
-#if !defined(MOZ_WIDGET_ANDROID)
if (Histogram* subsession = internal_GetSubsessionHistogram(histogram)) {
subsession->Add(value);
}
-#endif
// It is safe to add to the histogram now: the subsession histogram was already
// cloned from this so we won't add the sample twice.
@@ -728,11 +724,9 @@ internal_HistogramClear(Histogram& aHistogram, bool onlySubsession)
aHistogram.Clear();
}
-#if !defined(MOZ_WIDGET_ANDROID)
if (Histogram* subsession = internal_GetSubsessionHistogram(aHistogram)) {
subsession->Clear();
}
-#endif
}
} // namespace
@@ -925,9 +919,7 @@ private:
typedef nsBaseHashtableET<nsCStringHashKey, Histogram*> KeyedHistogramEntry;
typedef AutoHashtable<KeyedHistogramEntry> KeyedHistogramMapType;
KeyedHistogramMapType mHistogramMap;
-#if !defined(MOZ_WIDGET_ANDROID)
KeyedHistogramMapType mSubsessionMap;
-#endif
static bool ReflectKeyedHistogram(KeyedHistogramEntry* entry,
JSContext* cx,
@@ -949,9 +941,7 @@ KeyedHistogram::KeyedHistogram(const nsACString &name,
uint32_t min, uint32_t max,
uint32_t bucketCount, uint32_t dataset)
: mHistogramMap()
-#if !defined(MOZ_WIDGET_ANDROID)
, mSubsessionMap()
-#endif
, mName(name)
, mExpiration(expiration)
, mHistogramType(histogramType)
@@ -967,11 +957,7 @@ nsresult
KeyedHistogram::GetHistogram(const nsCString& key, Histogram** histogram,
bool subsession)
{
-#if !defined(MOZ_WIDGET_ANDROID)
KeyedHistogramMapType& map = subsession ? mSubsessionMap : mHistogramMap;
-#else
- KeyedHistogramMapType& map = mHistogramMap;
-#endif
KeyedHistogramEntry* entry = map.GetEntry(key);
if (entry) {
*histogram = entry->mData;
@@ -979,11 +965,9 @@ KeyedHistogram::GetHistogram(const nsCString& key, Histogram** histogram,
}
nsCString histogramName;
-#if !defined(MOZ_WIDGET_ANDROID)
if (subsession) {
histogramName.AppendLiteral(SUBSESSION_HISTOGRAM_PREFIX);
}
-#endif
histogramName.Append(mName);
histogramName.AppendLiteral(KEYED_HISTOGRAM_NAME_SEPARATOR);
histogramName.Append(key);
@@ -1041,22 +1025,18 @@ KeyedHistogram::Add(const nsCString& key, uint32_t sample)
if (!histogram) {
return NS_ERROR_FAILURE;
}
-#if !defined(MOZ_WIDGET_ANDROID)
Histogram* subsession = GetHistogram(key, true);
MOZ_ASSERT(subsession);
if (!subsession) {
return NS_ERROR_FAILURE;
}
-#endif
if (!IsRecordingEnabled()) {
return NS_OK;
}
histogram->Add(sample);
-#if !defined(MOZ_WIDGET_ANDROID)
subsession->Add(sample);
-#endif
return NS_OK;
}
@@ -1067,7 +1047,6 @@ KeyedHistogram::Clear(bool onlySubsession)
if (!XRE_IsParentProcess()) {
return;
}
-#if !defined(MOZ_WIDGET_ANDROID)
for (auto iter = mSubsessionMap.Iter(); !iter.Done(); iter.Next()) {
iter.Get()->mData->Clear();
}
@@ -1075,7 +1054,6 @@ KeyedHistogram::Clear(bool onlySubsession)
if (onlySubsession) {
return;
}
-#endif
for (auto iter = mHistogramMap.Iter(); !iter.Done(); iter.Next()) {
iter.Get()->mData->Clear();
@@ -1136,20 +1114,14 @@ nsresult
KeyedHistogram::GetJSSnapshot(JSContext* cx, JS::Handle<JSObject*> obj,
bool subsession, bool clearSubsession)
{
-#if !defined(MOZ_WIDGET_ANDROID)
KeyedHistogramMapType& map = subsession ? mSubsessionMap : mHistogramMap;
-#else
- KeyedHistogramMapType& map = mHistogramMap;
-#endif
if (!map.ReflectIntoJS(&KeyedHistogram::ReflectKeyedHistogram, cx, obj)) {
return NS_ERROR_FAILURE;
}
-#if !defined(MOZ_WIDGET_ANDROID)
if (subsession && clearSubsession) {
Clear(true);
}
-#endif
return NS_OK;
}
@@ -1636,7 +1608,6 @@ internal_JSHistogram_Clear(JSContext *cx, unsigned argc, JS::Value *vp)
}
bool onlySubsession = false;
-#if !defined(MOZ_WIDGET_ANDROID)
JS::CallArgs args = JS::CallArgsFromVp(argc, vp);
if (args.length() >= 1) {
@@ -1647,7 +1618,6 @@ internal_JSHistogram_Clear(JSContext *cx, unsigned argc, JS::Value *vp)
onlySubsession = JS::ToBoolean(args[0]);
}
-#endif
Histogram *h = static_cast<Histogram*>(JS_GetPrivate(obj));
MOZ_ASSERT(h);
@@ -1873,16 +1843,13 @@ internal_JSKeyedHistogram_Snapshot(JSContext *cx, unsigned argc, JS::Value *vp)
return internal_KeyedHistogram_SnapshotImpl(cx, argc, vp, false, false);
}
-#if !defined(MOZ_WIDGET_ANDROID)
bool
internal_JSKeyedHistogram_SubsessionSnapshot(JSContext *cx,
unsigned argc, JS::Value *vp)
{
return internal_KeyedHistogram_SnapshotImpl(cx, argc, vp, true, false);
}
-#endif
-#if !defined(MOZ_WIDGET_ANDROID)
bool
internal_JSKeyedHistogram_SnapshotSubsessionAndClear(JSContext *cx,
unsigned argc,
@@ -1895,7 +1862,6 @@ internal_JSKeyedHistogram_SnapshotSubsessionAndClear(JSContext *cx,
return internal_KeyedHistogram_SnapshotImpl(cx, argc, vp, true, true);
}
-#endif
bool
internal_JSKeyedHistogram_Clear(JSContext *cx, unsigned argc, JS::Value *vp)
@@ -1910,7 +1876,6 @@ internal_JSKeyedHistogram_Clear(JSContext *cx, unsigned argc, JS::Value *vp)
return false;
}
-#if !defined(MOZ_WIDGET_ANDROID)
bool onlySubsession = false;
JS::CallArgs args = JS::CallArgsFromVp(argc, vp);
@@ -1924,9 +1889,6 @@ internal_JSKeyedHistogram_Clear(JSContext *cx, unsigned argc, JS::Value *vp)
}
keyed->Clear(onlySubsession);
-#else
- keyed->Clear(false);
-#endif
return true;
}
@@ -1973,12 +1935,10 @@ internal_WrapAndReturnKeyedHistogram(KeyedHistogram *h, JSContext *cx,
if (!(JS_DefineFunction(cx, obj, "add", internal_JSKeyedHistogram_Add, 2, 0)
&& JS_DefineFunction(cx, obj, "snapshot",
internal_JSKeyedHistogram_Snapshot, 1, 0)
-#if !defined(MOZ_WIDGET_ANDROID)
&& JS_DefineFunction(cx, obj, "subsessionSnapshot",
internal_JSKeyedHistogram_SubsessionSnapshot, 1, 0)
&& JS_DefineFunction(cx, obj, "snapshotSubsessionAndClear",
internal_JSKeyedHistogram_SnapshotSubsessionAndClear, 0, 0)
-#endif
&& JS_DefineFunction(cx, obj, "keys",
internal_JSKeyedHistogram_Keys, 0, 0)
&& JS_DefineFunction(cx, obj, "clear",
@@ -2419,14 +2379,12 @@ TelemetryHistogram::CreateHistogramSnapshots(JSContext *cx,
}
Histogram* original = h;
-#if !defined(MOZ_WIDGET_ANDROID)
if (subsession) {
h = internal_GetSubsessionHistogram(*h);
if (!h) {
continue;
}
}
-#endif
hobj = JS_NewPlainObject(cx);
if (!hobj) {
@@ -2447,11 +2405,9 @@ TelemetryHistogram::CreateHistogramSnapshots(JSContext *cx,
}
}
-#if !defined(MOZ_WIDGET_ANDROID)
if (subsession && clearSubsession) {
h->Clear();
}
-#endif
}
return NS_OK;
}
diff --git a/toolkit/modules/AppConstants.jsm b/toolkit/modules/AppConstants.jsm
index d8aea04739..030260cff1 100644
--- a/toolkit/modules/AppConstants.jsm
+++ b/toolkit/modules/AppConstants.jsm
@@ -130,8 +130,6 @@ MOZ_SAFE_BROWSING:
false,
#endif
-# NOTE! XP_LINUX has to go after MOZ_WIDGET_ANDROID otherwise Android
-# builds will be misidentified as linux.
platform:
#ifdef MOZ_WIDGET_GTK
"linux",
@@ -139,8 +137,6 @@ MOZ_SAFE_BROWSING:
"win",
#elif XP_MACOSX
"macosx",
-#elif MOZ_WIDGET_ANDROID
- "android",
#elif XP_LINUX
"linux",
#else