зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1342636 - Part 1: Factor out the fallback screen configuration code into a shared header; r=kanru
This commit is contained in:
Родитель
a50d01215c
Коммит
48c08aeda9
|
@ -2,10 +2,7 @@
|
|||
* 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 "Hal.h"
|
||||
#include "mozilla/dom/ScreenOrientation.h"
|
||||
#include "nsIScreenManager.h"
|
||||
#include "nsServiceManagerUtils.h"
|
||||
#include "FallbackScreenConfiguration.h"
|
||||
|
||||
namespace mozilla {
|
||||
namespace hal_impl {
|
||||
|
@ -23,29 +20,7 @@ DisableScreenConfigurationNotifications()
|
|||
void
|
||||
GetCurrentScreenConfiguration(hal::ScreenConfiguration* aScreenConfiguration)
|
||||
{
|
||||
nsresult rv;
|
||||
nsCOMPtr<nsIScreenManager> screenMgr =
|
||||
do_GetService("@mozilla.org/gfx/screenmanager;1", &rv);
|
||||
if (NS_FAILED(rv)) {
|
||||
NS_ERROR("Can't find nsIScreenManager!");
|
||||
return;
|
||||
}
|
||||
|
||||
nsIntRect rect;
|
||||
int32_t colorDepth, pixelDepth;
|
||||
dom::ScreenOrientationInternal orientation;
|
||||
nsCOMPtr<nsIScreen> screen;
|
||||
|
||||
screenMgr->GetPrimaryScreen(getter_AddRefs(screen));
|
||||
screen->GetRect(&rect.x, &rect.y, &rect.width, &rect.height);
|
||||
screen->GetColorDepth(&colorDepth);
|
||||
screen->GetPixelDepth(&pixelDepth);
|
||||
orientation = rect.width >= rect.height
|
||||
? dom::eScreenOrientation_LandscapePrimary
|
||||
: dom::eScreenOrientation_PortraitPrimary;
|
||||
|
||||
*aScreenConfiguration =
|
||||
hal::ScreenConfiguration(rect, orientation, 0, colorDepth, pixelDepth);
|
||||
fallback::GetCurrentScreenConfiguration(aScreenConfiguration);
|
||||
}
|
||||
|
||||
bool
|
||||
|
|
|
@ -0,0 +1,42 @@
|
|||
/* 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 "Hal.h"
|
||||
#include "mozilla/dom/ScreenOrientation.h"
|
||||
#include "nsIScreenManager.h"
|
||||
#include "nsServiceManagerUtils.h"
|
||||
|
||||
namespace mozilla {
|
||||
namespace fallback {
|
||||
|
||||
inline void
|
||||
GetCurrentScreenConfiguration(hal::ScreenConfiguration* aScreenConfiguration)
|
||||
{
|
||||
nsresult rv;
|
||||
nsCOMPtr<nsIScreenManager> screenMgr =
|
||||
do_GetService("@mozilla.org/gfx/screenmanager;1", &rv);
|
||||
if (NS_FAILED(rv)) {
|
||||
NS_ERROR("Can't find nsIScreenManager!");
|
||||
return;
|
||||
}
|
||||
|
||||
nsIntRect rect;
|
||||
int32_t colorDepth, pixelDepth;
|
||||
dom::ScreenOrientationInternal orientation;
|
||||
nsCOMPtr<nsIScreen> screen;
|
||||
|
||||
screenMgr->GetPrimaryScreen(getter_AddRefs(screen));
|
||||
screen->GetRect(&rect.x, &rect.y, &rect.width, &rect.height);
|
||||
screen->GetColorDepth(&colorDepth);
|
||||
screen->GetPixelDepth(&pixelDepth);
|
||||
orientation = rect.width >= rect.height
|
||||
? dom::eScreenOrientation_LandscapePrimary
|
||||
: dom::eScreenOrientation_PortraitPrimary;
|
||||
|
||||
*aScreenConfiguration =
|
||||
hal::ScreenConfiguration(rect, orientation, 0, colorDepth, pixelDepth);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
|
@ -23,6 +23,10 @@ EXPORTS.mozilla += [
|
|||
'HalWakeLock.h',
|
||||
]
|
||||
|
||||
EXPORTS.mozilla.fallback += [
|
||||
'fallback/FallbackScreenConfiguration.h',
|
||||
]
|
||||
|
||||
UNIFIED_SOURCES += [
|
||||
'HalWakeLock.cpp',
|
||||
'sandbox/SandboxHal.cpp',
|
||||
|
|
Загрузка…
Ссылка в новой задаче