forked from mirrors/gecko-dev
Bug 1483823 - Deduplicate system metric atoms. r=xidorn
Now that :-moz-system-metric is gone, there's no real reason for the atoms to be separate. Differential Revision: https://phabricator.services.mozilla.com/D3497 --HG-- extra : moz-landing-system : lando
This commit is contained in:
parent
0d855aa7f1
commit
accc448c34
3 changed files with 45 additions and 70 deletions
|
|
@ -299,111 +299,111 @@ nsMediaFeatures::InitSystemMetrics()
|
|||
int32_t metricResult =
|
||||
LookAndFeel::GetInt(LookAndFeel::eIntID_ScrollArrowStyle);
|
||||
if (metricResult & LookAndFeel::eScrollArrow_StartBackward) {
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::scrollbar_start_backward);
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::_moz_scrollbar_start_backward);
|
||||
}
|
||||
if (metricResult & LookAndFeel::eScrollArrow_StartForward) {
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::scrollbar_start_forward);
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::_moz_scrollbar_start_forward);
|
||||
}
|
||||
if (metricResult & LookAndFeel::eScrollArrow_EndBackward) {
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::scrollbar_end_backward);
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::_moz_scrollbar_end_backward);
|
||||
}
|
||||
if (metricResult & LookAndFeel::eScrollArrow_EndForward) {
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::scrollbar_end_forward);
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::_moz_scrollbar_end_forward);
|
||||
}
|
||||
|
||||
metricResult =
|
||||
LookAndFeel::GetInt(LookAndFeel::eIntID_ScrollSliderStyle);
|
||||
if (metricResult != LookAndFeel::eScrollThumbStyle_Normal) {
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::scrollbar_thumb_proportional);
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::_moz_scrollbar_thumb_proportional);
|
||||
}
|
||||
|
||||
metricResult =
|
||||
LookAndFeel::GetInt(LookAndFeel::eIntID_UseOverlayScrollbars);
|
||||
if (metricResult) {
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::overlay_scrollbars);
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::_moz_overlay_scrollbars);
|
||||
}
|
||||
|
||||
metricResult =
|
||||
LookAndFeel::GetInt(LookAndFeel::eIntID_MenuBarDrag);
|
||||
if (metricResult) {
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::menubar_drag);
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::_moz_menubar_drag);
|
||||
}
|
||||
|
||||
nsresult rv =
|
||||
LookAndFeel::GetInt(LookAndFeel::eIntID_WindowsDefaultTheme, &metricResult);
|
||||
if (NS_SUCCEEDED(rv) && metricResult) {
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::windows_default_theme);
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::_moz_windows_default_theme);
|
||||
}
|
||||
|
||||
rv = LookAndFeel::GetInt(LookAndFeel::eIntID_MacGraphiteTheme, &metricResult);
|
||||
if (NS_SUCCEEDED(rv) && metricResult) {
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::mac_graphite_theme);
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::_moz_mac_graphite_theme);
|
||||
}
|
||||
|
||||
rv = LookAndFeel::GetInt(LookAndFeel::eIntID_MacYosemiteTheme, &metricResult);
|
||||
if (NS_SUCCEEDED(rv) && metricResult) {
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::mac_yosemite_theme);
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::_moz_mac_yosemite_theme);
|
||||
}
|
||||
|
||||
rv = LookAndFeel::GetInt(LookAndFeel::eIntID_WindowsAccentColorInTitlebar, &metricResult);
|
||||
if (NS_SUCCEEDED(rv) && metricResult) {
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::windows_accent_color_in_titlebar);
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::_moz_windows_accent_color_in_titlebar);
|
||||
}
|
||||
|
||||
rv = LookAndFeel::GetInt(LookAndFeel::eIntID_DWMCompositor, &metricResult);
|
||||
if (NS_SUCCEEDED(rv) && metricResult) {
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::windows_compositor);
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::_moz_windows_compositor);
|
||||
}
|
||||
|
||||
rv = LookAndFeel::GetInt(LookAndFeel::eIntID_WindowsGlass, &metricResult);
|
||||
if (NS_SUCCEEDED(rv) && metricResult) {
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::windows_glass);
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::_moz_windows_glass);
|
||||
}
|
||||
|
||||
rv = LookAndFeel::GetInt(LookAndFeel::eIntID_WindowsClassic, &metricResult);
|
||||
if (NS_SUCCEEDED(rv) && metricResult) {
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::windows_classic);
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::_moz_windows_classic);
|
||||
}
|
||||
|
||||
rv = LookAndFeel::GetInt(LookAndFeel::eIntID_TouchEnabled, &metricResult);
|
||||
if (NS_SUCCEEDED(rv) && metricResult) {
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::touch_enabled);
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::_moz_touch_enabled);
|
||||
}
|
||||
|
||||
rv = LookAndFeel::GetInt(LookAndFeel::eIntID_SwipeAnimationEnabled,
|
||||
&metricResult);
|
||||
if (NS_SUCCEEDED(rv) && metricResult) {
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::swipe_animation_enabled);
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::_moz_swipe_animation_enabled);
|
||||
}
|
||||
|
||||
rv = LookAndFeel::GetInt(LookAndFeel::eIntID_GTKCSDAvailable,
|
||||
&metricResult);
|
||||
if (NS_SUCCEEDED(rv) && metricResult) {
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::gtk_csd_available);
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::_moz_gtk_csd_available);
|
||||
}
|
||||
|
||||
rv = LookAndFeel::GetInt(LookAndFeel::eIntID_GTKCSDMinimizeButton,
|
||||
&metricResult);
|
||||
if (NS_SUCCEEDED(rv) && metricResult) {
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::gtk_csd_minimize_button);
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::_moz_gtk_csd_minimize_button);
|
||||
}
|
||||
|
||||
rv = LookAndFeel::GetInt(LookAndFeel::eIntID_GTKCSDMaximizeButton,
|
||||
&metricResult);
|
||||
if (NS_SUCCEEDED(rv) && metricResult) {
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::gtk_csd_maximize_button);
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::_moz_gtk_csd_maximize_button);
|
||||
}
|
||||
|
||||
rv = LookAndFeel::GetInt(LookAndFeel::eIntID_GTKCSDCloseButton,
|
||||
&metricResult);
|
||||
if (NS_SUCCEEDED(rv) && metricResult) {
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::gtk_csd_close_button);
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::_moz_gtk_csd_close_button);
|
||||
}
|
||||
|
||||
metricResult =
|
||||
LookAndFeel::GetInt(LookAndFeel::eIntID_SystemUsesDarkTheme);
|
||||
if (metricResult) {
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::system_dark_theme);
|
||||
sSystemMetrics->AppendElement(nsGkAtoms::_moz_system_dark_theme);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -401,7 +401,7 @@ fn eval_moz_touch_enabled(
|
|||
eval_system_metric(
|
||||
device,
|
||||
query_value,
|
||||
atom!("touch-enabled"),
|
||||
atom!("-moz-touch-enabled"),
|
||||
/* accessible_from_content = */ true,
|
||||
)
|
||||
}
|
||||
|
|
@ -424,7 +424,7 @@ fn eval_moz_os_version(
|
|||
}
|
||||
|
||||
macro_rules! system_metric_feature {
|
||||
($feature_name:expr, $metric_name:expr) => {
|
||||
($feature_name:expr) => {
|
||||
{
|
||||
fn __eval(
|
||||
device: &Device,
|
||||
|
|
@ -434,7 +434,7 @@ macro_rules! system_metric_feature {
|
|||
eval_system_metric(
|
||||
device,
|
||||
query_value,
|
||||
$metric_name,
|
||||
$feature_name,
|
||||
/* accessible_from_content = */ false,
|
||||
)
|
||||
}
|
||||
|
|
@ -596,28 +596,26 @@ lazy_static! {
|
|||
Evaluator::Ident(eval_moz_os_version),
|
||||
ParsingRequirements::CHROME_AND_UA_ONLY,
|
||||
),
|
||||
// FIXME(emilio): make system metrics store the -moz- atom, and remove
|
||||
// some duplication here.
|
||||
system_metric_feature!(atom!("-moz-scrollbar-start-backward"), atom!("scrollbar-start-backward")),
|
||||
system_metric_feature!(atom!("-moz-scrollbar-start-forward"), atom!("scrollbar-start-forward")),
|
||||
system_metric_feature!(atom!("-moz-scrollbar-end-backward"), atom!("scrollbar-end-backward")),
|
||||
system_metric_feature!(atom!("-moz-scrollbar-end-forward"), atom!("scrollbar-end-forward")),
|
||||
system_metric_feature!(atom!("-moz-scrollbar-thumb-proportional"), atom!("scrollbar-thumb-proportional")),
|
||||
system_metric_feature!(atom!("-moz-overlay-scrollbars"), atom!("overlay-scrollbars")),
|
||||
system_metric_feature!(atom!("-moz-windows-default-theme"), atom!("windows-default-theme")),
|
||||
system_metric_feature!(atom!("-moz-mac-graphite-theme"), atom!("mac-graphite-theme")),
|
||||
system_metric_feature!(atom!("-moz-mac-yosemite-theme"), atom!("mac-yosemite-theme")),
|
||||
system_metric_feature!(atom!("-moz-windows-accent-color-in-titlebar"), atom!("windows-accent-color-in-titlebar")),
|
||||
system_metric_feature!(atom!("-moz-windows-compositor"), atom!("windows-compositor")),
|
||||
system_metric_feature!(atom!("-moz-windows-classic"), atom!("windows-classic")),
|
||||
system_metric_feature!(atom!("-moz-windows-glass"), atom!("windows-glass")),
|
||||
system_metric_feature!(atom!("-moz-menubar-drag"), atom!("menubar-drag")),
|
||||
system_metric_feature!(atom!("-moz-swipe-animation-enabled"), atom!("swipe-animation-enabled")),
|
||||
system_metric_feature!(atom!("-moz-gtk-csd-available"), atom!("gtk-csd-available")),
|
||||
system_metric_feature!(atom!("-moz-gtk-csd-minimize-button"), atom!("gtk-csd-minimize-button")),
|
||||
system_metric_feature!(atom!("-moz-gtk-csd-maximize-button"), atom!("gtk-csd-maximize-button")),
|
||||
system_metric_feature!(atom!("-moz-gtk-csd-close-button"), atom!("gtk-csd-close-button")),
|
||||
system_metric_feature!(atom!("-moz-system-dark-theme"), atom!("system-dark-theme")),
|
||||
system_metric_feature!(atom!("-moz-scrollbar-start-backward")),
|
||||
system_metric_feature!(atom!("-moz-scrollbar-start-forward")),
|
||||
system_metric_feature!(atom!("-moz-scrollbar-end-backward")),
|
||||
system_metric_feature!(atom!("-moz-scrollbar-end-forward")),
|
||||
system_metric_feature!(atom!("-moz-scrollbar-thumb-proportional")),
|
||||
system_metric_feature!(atom!("-moz-overlay-scrollbars")),
|
||||
system_metric_feature!(atom!("-moz-windows-default-theme")),
|
||||
system_metric_feature!(atom!("-moz-mac-graphite-theme")),
|
||||
system_metric_feature!(atom!("-moz-mac-yosemite-theme")),
|
||||
system_metric_feature!(atom!("-moz-windows-accent-color-in-titlebar")),
|
||||
system_metric_feature!(atom!("-moz-windows-compositor")),
|
||||
system_metric_feature!(atom!("-moz-windows-classic")),
|
||||
system_metric_feature!(atom!("-moz-windows-glass")),
|
||||
system_metric_feature!(atom!("-moz-menubar-drag")),
|
||||
system_metric_feature!(atom!("-moz-swipe-animation-enabled")),
|
||||
system_metric_feature!(atom!("-moz-gtk-csd-available")),
|
||||
system_metric_feature!(atom!("-moz-gtk-csd-minimize-button")),
|
||||
system_metric_feature!(atom!("-moz-gtk-csd-maximize-button")),
|
||||
system_metric_feature!(atom!("-moz-gtk-csd-close-button")),
|
||||
system_metric_feature!(atom!("-moz-system-dark-theme")),
|
||||
// This is the only system-metric media feature that's accessible to
|
||||
// content as of today.
|
||||
// FIXME(emilio): Restrict (or remove?) when bug 1035774 lands.
|
||||
|
|
|
|||
|
|
@ -1986,35 +1986,12 @@ STATIC_ATOMS = [
|
|||
Atom("RecordExecution", "recordExecution"),
|
||||
Atom("ReplayExecution", "replayExecution"),
|
||||
|
||||
# Names for system metrics
|
||||
Atom("scrollbar_start_backward", "scrollbar-start-backward"),
|
||||
Atom("scrollbar_start_forward", "scrollbar-start-forward"),
|
||||
Atom("scrollbar_end_backward", "scrollbar-end-backward"),
|
||||
Atom("scrollbar_end_forward", "scrollbar-end-forward"),
|
||||
Atom("scrollbar_thumb_proportional", "scrollbar-thumb-proportional"),
|
||||
Atom("overlay_scrollbars", "overlay-scrollbars"),
|
||||
Atom("windows_accent_color_in_titlebar", "windows-accent-color-in-titlebar"),
|
||||
Atom("windows_default_theme", "windows-default-theme"),
|
||||
Atom("mac_graphite_theme", "mac-graphite-theme"),
|
||||
Atom("mac_yosemite_theme", "mac-yosemite-theme"),
|
||||
Atom("windows_compositor", "windows-compositor"),
|
||||
Atom("windows_classic", "windows-classic"),
|
||||
Atom("windows_glass", "windows-glass"),
|
||||
Atom("touch_enabled", "touch-enabled"),
|
||||
Atom("menubar_drag", "menubar-drag"),
|
||||
Atom("swipe_animation_enabled", "swipe-animation-enabled"),
|
||||
Atom("gtk_csd_available", "gtk-csd-available"),
|
||||
Atom("gtk_csd_minimize_button", "gtk-csd-minimize-button"),
|
||||
Atom("gtk_csd_maximize_button", "gtk-csd-maximize-button"),
|
||||
Atom("gtk_csd_close_button", "gtk-csd-close-button"),
|
||||
Atom("system_dark_theme", "system-dark-theme"),
|
||||
|
||||
# windows media query names
|
||||
Atom("windows_win7", "windows-win7"),
|
||||
Atom("windows_win8", "windows-win8"),
|
||||
Atom("windows_win10", "windows-win10"),
|
||||
|
||||
# And the same again, as media query keywords.
|
||||
# Names for system metrics.
|
||||
Atom("_moz_scrollbar_start_backward", "-moz-scrollbar-start-backward"),
|
||||
Atom("_moz_scrollbar_start_forward", "-moz-scrollbar-start-forward"),
|
||||
Atom("_moz_scrollbar_end_backward", "-moz-scrollbar-end-backward"),
|
||||
|
|
|
|||
Loading…
Reference in a new issue