From e526f5a7174af56a5b9f90061970ac133631290b Mon Sep 17 00:00:00 2001 From: Ralph Giles Date: Fri, 13 Jun 2014 11:47:28 -0700 Subject: [PATCH] Backed out changeset d437a1b97e7c. Doesn't build. --- widget/cocoa/nsAppShell.mm | 93 -------------------------------------- 1 file changed, 93 deletions(-) diff --git a/widget/cocoa/nsAppShell.mm b/widget/cocoa/nsAppShell.mm index 33489a980262..a4adf83cf8b5 100644 --- a/widget/cocoa/nsAppShell.mm +++ b/widget/cocoa/nsAppShell.mm @@ -36,70 +36,9 @@ #include "pratom.h" #include "npapi.h" -#include -#include "nsIDOMWakeLockListener.h" -#include "nsIPowerManagerService.h" using namespace mozilla::widget; -// A wake lock listener that disables screen saver when requested by -// Gecko. For example when we're playing video in a foreground tab we -// don't want the screen saver to turn on. - -class MacWakeLockListener : public nsIDOMMozWakeLockListener { -public: - NS_DECL_ISUPPORTS; - -private: - IOPMAssertionID mAssertionID = kIOPMNullAssertionID; - - NS_IMETHOD Callback(const nsAString& aTopic, const nsAString& aState) { - bool isLocked = mLockedTopics.Contains(aTopic); - bool shouldLock = aState.EqualsLiteral("locked-foreground"); - if (isLocked == shouldLock) { - return NS_OK; - } - if (shouldLock) { - if (!mLockedTopics.Count()) { - // This is the first topic to request the screen saver be disabled. - // Prevent screen saver. - CFStringRef cf_topic = - ::CFStringCreateWithCharacters(kCFAllocatorDefault, - reinterpret_cast - (aTopic.Data()), - aTopic.Length()); - IOReturn success = - ::IOPMAssertionCreateWithName(kIOPMAssertionTypeNoDisplaySleep, - kIOPMAssertionLevelOn, - cf_topic, - &mAssertionID); - CFRelease(cf_topic); - if (success != kIOReturnSuccess) { - NS_WARNING("fail to disable screensaver"); - } - } - mLockedTopics.PutEntry(aTopic); - } else { - mLockedTopics.RemoveEntry(aTopic); - if (!mLockedTopics.Count()) { - // No other outstanding topics have requested screen saver be disabled. - // Re-enable screen saver. - if (mAssertionID != kIOPMNullAssertionID) { - IOReturn result = ::IOPMAssertionRelease(mAssertionID); - if (result != kIOReturnSuccess) { - NS_WARNING("fail to release screensaver"); - } - } - } - } - return NS_OK; - } - // Keep track of all the topics that have requested a wake lock. When the - // number of topics in the hashtable reaches zero, we can uninhibit the - // screensaver again. - nsTHashtable mLockedTopics; -}; - // defined in nsCocoaWindow.mm extern int32_t gXULModalLevel; @@ -205,33 +144,6 @@ nsAppShell::~nsAppShell() NS_OBJC_END_TRY_ABORT_BLOCK } -NS_IMPL_ISUPPORTS(MacWakeLockListener, nsIDOMMozWakeLockListener) -StaticRefPtr sWakeLockListener; - -static void -AddScreenWakeLockListener() -{ - nsCOMPtr sPowerManagerService = do_GetService( - POWERMANAGERSERVICE_CONTRACTID); - if (sPowerManagerService) { - sWakeLockListener = new MacWakeLockListener(); - sPowerManagerService->AddWakeLockListener(sWakeLockListener); - } else { - NS_WARNING("Failed to retrieve PowerManagerService, wakelocks will be broken!"); - } -} - -static void -RemoveScreenWakeLockListener() -{ - nsCOMPtr sPowerManagerService = do_GetService( - POWERMANAGERSERVICE_CONTRACTID); - if (sPowerManagerService) { - sPowerManagerService->RemoveWakeLockListener(sWakeLockListener); - sPowerManagerService = nullptr; - sWakeLockListener = nullptr; - } -} // Init // // Loads the nib (see bug 316076c21) and sets up the CFRunLoopSource used to @@ -640,13 +552,8 @@ nsAppShell::Run(void) return NS_OK; mStarted = true; - - AddScreenWakeLockListener(); - NS_OBJC_TRY_ABORT([NSApp run]); - RemoveScreenWakeLockListener(); - return NS_OK; }