From cc8a7e3f7b7d40967d2dd537b6343c87ba9138c7 Mon Sep 17 00:00:00 2001 From: Moonchild Date: Thu, 11 Mar 2021 06:43:10 +0000 Subject: Issue #1053 - Remove MOZ_WIDGET_ANDROID and IDB_MOBILE --- dom/apps/AppsUtils.jsm | 3 - dom/apps/moz.build | 5 +- dom/audiochannel/AudioChannelService.cpp | 10 +- dom/base/ScreenOrientation.cpp | 31 -- dom/base/nsGlobalWindow.h | 16 - dom/base/nsPIDOMWindow.h | 5 - dom/events/EventListenerManager.cpp | 36 --- dom/events/EventNameList.h | 6 - dom/events/TouchEvent.cpp | 5 +- dom/geolocation/nsGeolocation.cpp | 8 - dom/html/HTMLMediaElement.cpp | 30 +- dom/html/nsIFormControl.h | 6 - dom/indexedDB/ActorsParent.cpp | 63 +--- dom/ipc/ContentChild.cpp | 4 - dom/media/Benchmark.cpp | 7 - dom/media/CubebUtils.cpp | 2 - dom/media/MediaPrefs.h | 19 +- dom/media/eme/MediaKeySystemAccess.cpp | 58 ---- dom/media/eme/MediaKeys.cpp | 11 - dom/media/fmp4/MP4Decoder.cpp | 3 - dom/media/mediasource/MediaSource.cpp | 9 - dom/media/platforms/PDMFactory.cpp | 16 - dom/media/webrtc/MediaEngineDefault.cpp | 9 - dom/media/webrtc/MediaEngineWebRTC.cpp | 34 --- dom/push/PushService.jsm | 5 - dom/push/moz.build | 7 +- dom/webidl/Window.webidl | 9 - dom/workers/ServiceWorkerClients.cpp | 48 --- gfx/layers/apz/src/APZCTreeManager.cpp | 6 +- gfx/src/DriverCrashGuard.cpp | 7 - gfx/src/nsDeviceContext.cpp | 7 - gfx/thebes/gfxAndroidPlatform.cpp | 337 --------------------- gfx/thebes/gfxAndroidPlatform.h | 80 ----- gfx/thebes/gfxFT2FontList.cpp | 15 - gfx/thebes/gfxHarfBuzzShaper.cpp | 10 - gfx/thebes/gfxPlatform.cpp | 27 +- gfx/thebes/moz.build | 24 +- .../signaling/src/media-conduit/AudioConduit.cpp | 15 - .../signaling/src/media-conduit/VideoConduit.cpp | 13 - memory/mozalloc/mozalloc_abort.cpp | 4 - toolkit/components/telemetry/Telemetry.cpp | 4 - .../components/telemetry/TelemetryHistogram.cpp | 44 --- toolkit/modules/AppConstants.jsm | 4 - 43 files changed, 14 insertions(+), 1048 deletions(-) delete mode 100644 gfx/thebes/gfxAndroidPlatform.cpp delete mode 100644 gfx/thebes/gfxAndroidPlatform.h 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 root; - docShell->GetSameTypeRootTreeItem(getter_AddRefs(root)); - nsCOMPtr rootShell(do_QueryInterface(root)); - if (!rootShell) { - aRv.Throw(NS_ERROR_UNEXPECTED); - return nullptr; - } - - rootShell->SetOrientationLock(aOrientation); - AbortOrientationPromises(rootShell); - - doc->SetOrientationPendingPromise(p); - - nsCOMPtr 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 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 mEnabledSensors; -#if defined(MOZ_WIDGET_ANDROID) - nsAutoPtr mOrientationChangeObserver; -#endif - #ifdef MOZ_WEBSPEECH // mSpeechSynthesis is only used on inner windows. RefPtr 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(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 #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 MediaKeys::CreateCDMProxy() { RefPtr 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(new webrtc::ExtendedFilter(mExtendedFilter)); mConfig.Set(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 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 os = services::GetObserverService(); - NS_ENSURE_STATE(os); - - WorkerPrivate* workerPrivate = mPromiseProxy->GetWorkerPrivate(); - MOZ_ASSERT(workerPrivate); - - RefPtr swm = ServiceWorkerManager::GetInstance(); - if (!swm) { - // browser shutdown - return NS_ERROR_FAILURE; - } - - nsCOMPtr principal = workerPrivate->GetPrincipal(); - MOZ_ASSERT(principal); - - RefPtr registration = - swm->GetRegistration(principal, NS_ConvertUTF16toUTF8(mScope)); - if (NS_WARN_IF(!registration)) { - return NS_ERROR_FAILURE; - } - - RefPtr serviceWorkerInfo = - registration->GetServiceWorkerInfoById(workerPrivate->ServiceWorkerID()); - if (NS_WARN_IF(!serviceWorkerInfo)) { - return NS_ERROR_FAILURE; - } - - os->AddObserver(static_cast(serviceWorkerInfo->WorkerPrivate()), - "BrowserChrome:Ready", true); - serviceWorkerInfo->WorkerPrivate()->AddPendingWindow(this); - return NS_OK; - } -#endif RefPtr 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(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 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 -{ -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 CountingAllocatorBase::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 -gfxAndroidPlatform::CreateOffscreenSurface(const IntSize& aSize, - gfxImageFormat aFormat) -{ - if (!Factory::AllowedSurfaceSize(aSize)) { - return nullptr; - } - - RefPtr 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 ls = - do_GetService(NS_LOCALESERVICE_CONTRACTID, &rv); - if (NS_FAILED(rv)) { - break; - } - nsCOMPtr 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& 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* 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 -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 -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 - CreateOffscreenSurface(const IntSize& aSize, - gfxImageFormat aFormat) override; - - virtual gfxImageFormat GetOffscreenFormat() override { return mOffscreenFormat; } - - already_AddRefed - GetScaledFontForFont(mozilla::gfx::DrawTarget* aTarget, gfxFont *aFont) override; - - // to support IPC font list (sharing between chrome and content) - void GetSystemFontList(InfallibleTArray* 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& 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 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& 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 #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 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 KeyedHistogramEntry; typedef AutoHashtable 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 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(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 -- cgit v1.2.3