Bug 1499947 - Part 2 - Remove the "progressmeter" element and related tests. r=bgrins,bzbarsky
authorPaolo Amadini <paolo.mozmail@amadzone.org>
Tue, 20 Nov 2018 14:12:33 +0000
changeset 503838 82e8d51e41a5febd002c00fe1d33c282a58d48bb
parent 503837 0f64862fa1c318d5efd7005a4fb45854351023c7
child 503839 781e474c75714b384c3246a257e9389a2771c505
push id10290
push userffxbld-merge
push dateMon, 03 Dec 2018 16:23:23 +0000
treeherdermozilla-beta@700bed2445e6 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersbgrins, bzbarsky
bugs1499947
milestone65.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1499947 - Part 2 - Remove the "progressmeter" element and related tests. r=bgrins,bzbarsky Differential Revision: https://phabricator.services.mozilla.com/D12145
browser/installer/allowed-dupes.mn
dom/base/crashtests/398088-1.xul
dom/base/crashtests/crashtests.list
layout/reftests/bugs/474336-1-ref.xul
layout/reftests/bugs/474336-1.xul
layout/reftests/bugs/reftest.list
layout/xul/crashtests/472189.xul
layout/xul/crashtests/475133.html
layout/xul/crashtests/crashtests.list
mobile/android/installer/allowed-dupes.mn
toolkit/content/customElements.js
toolkit/content/jar.mn
toolkit/content/moz.build
toolkit/content/tests/chrome/chrome.ini
toolkit/content/tests/chrome/test_progressmeter.xul
toolkit/content/tests/reftests/bug-442419-progressmeter-max-ref.xul
toolkit/content/tests/reftests/bug-442419-progressmeter-max.xul
toolkit/content/tests/reftests/reftest.list
toolkit/content/widgets.css
toolkit/content/widgets/progressmeter.js
toolkit/themes/mobile/jar.mn
toolkit/themes/osx/global/jar.mn
toolkit/themes/osx/global/progressmeter.css
toolkit/themes/shared/non-mac.jar.inc.mn
toolkit/themes/windows/global/progressmeter.css
widget/nsNativeTheme.cpp
xpcom/ds/StaticAtoms.py
--- a/browser/installer/allowed-dupes.mn
+++ b/browser/installer/allowed-dupes.mn
@@ -93,17 +93,16 @@ chrome/toolkit/skin/classic/global/dialo
 chrome/toolkit/skin/classic/global/dropmarker.css
 chrome/toolkit/skin/classic/global/global.css
 chrome/toolkit/skin/classic/global/icons/close-win7.png
 chrome/toolkit/skin/classic/global/menu.css
 chrome/toolkit/skin/classic/global/menulist.css
 chrome/toolkit/skin/classic/global/numberbox.css
 chrome/toolkit/skin/classic/global/popup.css
 chrome/toolkit/skin/classic/global/preferences.css
-chrome/toolkit/skin/classic/global/progressmeter.css
 chrome/toolkit/skin/classic/global/radio.css
 chrome/toolkit/skin/classic/global/richlistbox.css
 chrome/toolkit/skin/classic/global/scrollbars.css
 chrome/toolkit/skin/classic/global/scrollbox.css
 chrome/toolkit/skin/classic/global/splitter.css
 chrome/toolkit/skin/classic/global/tabbox.css
 chrome/toolkit/skin/classic/global/textbox.css
 chrome/toolkit/skin/classic/global/toolbar.css
deleted file mode 100644
--- a/dom/base/crashtests/398088-1.xul
+++ /dev/null
@@ -1,23 +0,0 @@
-<window onload="boom();" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
-
-<script>
-
-function boom()
-{
-  var p = document.getElementById("p");
-  
-  document.addEventListener("DOMAttrModified", removeP, true); 
-  
-  p.removeAttribute("mode");
-  
-  function removeP()
-  {
-    document.documentElement.removeChild(p);
-  }
-}
-
-</script>
-
-<progressmeter id="p" mode="determined" />
-
-</window>
--- a/dom/base/crashtests/crashtests.list
+++ b/dom/base/crashtests/crashtests.list
@@ -46,17 +46,16 @@ load 377360-1.xhtml
 load 377960-1.html
 load 377960-2.html
 load 384663-1.html
 load 386000-1.html
 load 386794-1.html
 load 387460-1.html
 load 395469-1.xhtml
 load 395469-2.xhtml
-load 398088-1.xul
 skip load 399712-1.html # sporadically times out (bug 473680)
 load 400763-1.html
 load 401993-1.html
 load 404869-1.xul
 load 407818.html
 load 410860-1.xml
 load 411882-1.xhtml
 load 416734-1.html
deleted file mode 100644
--- a/layout/reftests/bugs/474336-1-ref.xul
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
-
-<window xmlns:html="http://www.w3.org/1999/xhtml"
-        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
-        >
-
-<html:style>
-    #prog {
-        -moz-appearance: none;
-        background-color: blue;
-    }
-    #prog .progress-bar {
-        -moz-appearance: none;
-        border-radius: 3px 3px;
-        background-color: red;
-    }
-</html:style>
-
-<progressmeter id="prog" value="50" max="200"/>
-
-</window>
deleted file mode 100644
--- a/layout/reftests/bugs/474336-1.xul
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
-
-<window xmlns:html="http://www.w3.org/1999/xhtml"
-        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
-        class="reftest-wait">
-
-<html:style>
-    #prog {
-        -moz-appearance: none;
-        background-color: blue;
-    }
-    #prog .progress-bar {
-        -moz-appearance: none;
-        border-radius: 3px 3px;
-        background-color: red;
-    }
-</html:style>
-
-<progressmeter id="prog" value="50"/>
-
-<script>
-<![CDATA[
-
-function load(event) {
-  setTimeout(function() {
-    document.getElementById("prog").max = 200;
-    document.documentElement.removeAttribute("class");
-  }, 0);
-}
-window.addEventListener("load", load, false);
-
-]]>
-</script>
-
-</window>
--- a/layout/reftests/bugs/reftest.list
+++ b/layout/reftests/bugs/reftest.list
@@ -1255,17 +1255,16 @@ fuzzy(0-255,0-15) == 472020-1a.xul 47202
 fails == 472020-1b.xul 472020-1-ref.xul
 fails == 472020-2.xul 472020-2-ref.xul
 == 472500-1.xul 472500-1-ref.xul
 == 472769-1a.html 472769-1-ref.html
 == 472769-1b.html 472769-1-ref.html
 == 472769-2.html 472769-2-ref.html
 == 472769-3.html 472769-3-ref.html
 == 473847-1.xul 473847-1-ref.xul
-fuzzy-if(skiaContent,0-1,0-16) == 474336-1.xul 474336-1-ref.xul
 == 474417-1.html 474417-1-ref.html
 fuzzy-if(skiaContent,0-1,0-5) == 474472-1.html 474472-1-ref.html
 == 475986-1a.html 475986-1-ref.html
 == 475986-1b.html 475986-1-ref.html
 == 475986-1c.html 475986-1-ref.html
 == 475986-1d.html 475986-1-ref.html
 == 475986-1e.html 475986-1-ref.html
 == 475986-1f.html 475986-1-ref.html
deleted file mode 100644
--- a/layout/xul/crashtests/472189.xul
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0"?>
-<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
-<window id="yourwindow" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
-<script type="text/javascript">
-<![CDATA[
-function onload() {
-  document.addEventListener("DOMAttrModified", function() {}, true);
-  document.getElementById("test").setAttribute("value", "50");
-}
-]]>
-</script>
-<progressmeter id="test"/>
-</window>
\ No newline at end of file
deleted file mode 100644
--- a/layout/xul/crashtests/475133.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script type="text/javascript">
-function x()
-{
-  document.removeEventListener("DOMAttrModified", x);
-  document.removeChild(document.documentElement);
-}
-
-function boom()
-{
-  var p = document.createElementNS("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul", "progressmeter");
-  document.addEventListener("DOMAttrModified", x);
-  document.documentElement.appendChild(p);
-}
-</script>
-</head>
-<body onload="boom();"></body>
-</html>
--- a/layout/xul/crashtests/crashtests.list
+++ b/layout/xul/crashtests/crashtests.list
@@ -54,18 +54,16 @@ load 408904-1.xul
 load 412479-1.xhtml
 load 417509.xul
 load 430356-1.xhtml
 load 452185.html
 asserts(0-1) load 464407-1.xhtml # Bugs 450974, 1267054, 718883
 load 467080.xul
 load 470063-1.html
 load 470272.html
-load 472189.xul
-load 475133.html
 load 538308-1.xul
 load 557174-1.xml
 load 564705-1.xul
 load 583957-1.html
 load 617089.html
 load menulist-focused.xhtml
 load 716503.html
 load 1379332-1.xul
--- a/mobile/android/installer/allowed-dupes.mn
+++ b/mobile/android/installer/allowed-dupes.mn
@@ -12,17 +12,16 @@ chrome/toolkit/skin/classic/global/dialo
 chrome/toolkit/skin/classic/global/dropmarker.css
 chrome/toolkit/skin/classic/global/global.css
 chrome/toolkit/skin/classic/global/listbox.css
 chrome/toolkit/skin/classic/global/menu.css
 chrome/toolkit/skin/classic/global/menulist.css
 chrome/toolkit/skin/classic/global/numberbox.css
 chrome/toolkit/skin/classic/global/popup.css
 chrome/toolkit/skin/classic/global/preferences.css
-chrome/toolkit/skin/classic/global/progressmeter.css
 chrome/toolkit/skin/classic/global/radio.css
 chrome/toolkit/skin/classic/global/richlistbox.css
 chrome/toolkit/skin/classic/global/scrollbars.css
 chrome/toolkit/skin/classic/global/scrollbox.css
 chrome/toolkit/skin/classic/global/splitter.css
 chrome/toolkit/skin/classic/global/tabbox.css
 chrome/toolkit/skin/classic/global/textbox.css
 chrome/toolkit/skin/classic/global/toolbar.css
--- a/toolkit/content/customElements.js
+++ b/toolkit/content/customElements.js
@@ -291,17 +291,16 @@ window.MozElements = MozElements;
 
 // For now, don't load any elements in the extension dummy document.
 // We will want to load <browser> when that's migrated (bug 1441935).
 const isDummyDocument = document.documentURI == "chrome://extensions/content/dummy.xul";
 if (!isDummyDocument) {
   for (let script of [
     "chrome://global/content/elements/general.js",
     "chrome://global/content/elements/notificationbox.js",
-    "chrome://global/content/elements/progressmeter.js",
     "chrome://global/content/elements/radio.js",
     "chrome://global/content/elements/textbox.js",
     "chrome://global/content/elements/tabbox.js",
     "chrome://global/content/elements/tree.js",
   ]) {
     Services.scriptloader.loadSubScript(script, window);
   }
 
--- a/toolkit/content/jar.mn
+++ b/toolkit/content/jar.mn
@@ -92,17 +92,16 @@ toolkit.jar:
    content/global/bindings/tree.xml            (widgets/tree.xml)
    content/global/bindings/videocontrols.xml   (widgets/videocontrols.xml)
 *  content/global/bindings/wizard.xml          (widgets/wizard.xml)
    content/global/elements/datetimebox.js      (widgets/datetimebox.js)
    content/global/elements/findbar.js          (widgets/findbar.js)
    content/global/elements/editor.js          (widgets/editor.js)
    content/global/elements/general.js          (widgets/general.js)
    content/global/elements/notificationbox.js  (widgets/notificationbox.js)
-   content/global/elements/progressmeter.js    (widgets/progressmeter.js)
    content/global/elements/radio.js            (widgets/radio.js)
    content/global/elements/marquee.css         (widgets/marquee.css)
    content/global/elements/marquee.js          (widgets/marquee.js)
    content/global/elements/stringbundle.js     (widgets/stringbundle.js)
    content/global/elements/tabbox.js           (widgets/tabbox.js)
    content/global/elements/textbox.js          (widgets/textbox.js)
    content/global/elements/videocontrols.js    (widgets/videocontrols.js)
    content/global/elements/tree.js             (widgets/tree.js)
--- a/toolkit/content/moz.build
+++ b/toolkit/content/moz.build
@@ -164,19 +164,16 @@ with Files('tests/chrome/test_preference
     BUG_COMPONENT = ('Toolkit', 'Preferences')
 
 with Files('tests/mochitest/*autocomplete*'):
     BUG_COMPONENT = ('Toolkit', 'Autocomplete')
 
 with Files('tests/mochitest/*mousecapture*'):
     BUG_COMPONENT = ('Core', 'Event Handling')
 
-with Files('tests/reftests/*progress*'):
-    BUG_COMPONENT = ('Toolkit', 'XUL Widgets')
-
 with Files('tests/reftests/*multiline*'):
     BUG_COMPONENT = ('Core', 'XBL')
 
 with Files('tests/reftests/*videocontrols*'):
     BUG_COMPONENT = ('Toolkit', 'Video/Audio Controls')
 
 with Files('tests/unit/**'):
     BUG_COMPONENT = ('Toolkit', 'General')
--- a/toolkit/content/tests/chrome/chrome.ini
+++ b/toolkit/content/tests/chrome/chrome.ini
@@ -165,17 +165,16 @@ skip-if = (verify && (os == 'win'))
 [test_popupremoving.xul]
 [test_popupremoving_frame.xul]
 [test_position.xul]
 [test_preferences.xul]
 [test_preferences_beforeaccept.xul]
 support-files = window_preferences_beforeaccept.xul
 [test_preferences_onsyncfrompreference.xul]
 support-files = window_preferences_onsyncfrompreference.xul
-[test_progressmeter.xul]
 [test_props.xul]
 [test_radio.xul]
 [test_richlist_direction.xul]
 [test_righttoleft.xul]
 [test_screenPersistence.xul]
 [test_scrollbar.xul]
 [test_showcaret.xul]
 [test_subframe_origin.xul]
deleted file mode 100644
--- a/toolkit/content/tests/chrome/test_progressmeter.xul
+++ /dev/null
@@ -1,74 +0,0 @@
-<?xml version="1.0"?>
-<?xml-stylesheet href="chrome://global/skin" type="text/css"?>
-<?xml-stylesheet href="chrome://mochikit/content/tests/SimpleTest/test.css" type="text/css"?>
-<!--
-  XUL Widget Test for progressmeter
-  -->
-<window title="Progressmeter" width="500" height="600"
-        onload="doTests()"
-        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
-  <script type="application/javascript" src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script>  
-
-  <progressmeter id="n1"/>
-  <progressmeter id="n2" mode="undetermined"/>
-
-  <!-- test results are displayed in the html:body -->
-  <body xmlns="http://www.w3.org/1999/xhtml" style="height: 300px; overflow: auto;"/>
-
-  <!-- test code goes here -->
-  <script type="application/javascript"><![CDATA[
-SimpleTest.waitForExplicitFinish();
-
-function doTests() {
-  var n1 = document.getElementById("n1");
-  var n2 = document.getElementById("n2");
-
-  SimpleTest.is(n1.mode, "", "mode determined");
-  SimpleTest.is(n2.mode, "undetermined", "mode undetermined");
-
-  SimpleTest.is(n1.value, "0", "determined value");
-  SimpleTest.is(n2.value, "0", "undetermined value");
-
-  // values can only be incremented in multiples of 4
-  n1.value = 2;
-  SimpleTest.is(n1.value, "0", "determined value set 2");
-  n1.value = -1;
-  SimpleTest.is(n1.value, "0", "determined value set -1");
-  n1.value = 125;
-  SimpleTest.is(n1.value, "100", "determined value set 125");
-  n1.value = 7;
-  SimpleTest.is(n1.value, "7", "determined value set 7");
-  n1.value = "17";
-  SimpleTest.is(n1.value, "17", "determined value set 17 string");
-  n1.value = 18;
-  SimpleTest.is(n1.value, "17", "determined value set 18");
-  n1.value = "Cat";
-  SimpleTest.is(n1.value, "17", "determined value set invalid");
-
-  n1.max = 200;
-  is(n1.max, "200", "max changed");
-  n1.value = 150;
-  n1.max = 120;
-  is(n1.value, "120", "max lowered below value");
-
-  n2.value = 2;
-  SimpleTest.is(n2.value, "0", "undetermined value set 2");
-  n2.value = -1;
-  SimpleTest.is(n2.value, "0", "undetermined value set -1");
-  n2.value = 125;
-  SimpleTest.is(n2.value, "100", "undetermined value set 125");
-  n2.value = 7;
-  SimpleTest.is(n2.value, "7", "undetermined value set 7");
-  n2.value = "17";
-  SimpleTest.is(n2.value, "17", "undetermined value set 17 string");
-  n2.value = 18;
-  SimpleTest.is(n2.value, "17", "undetermined value set 18");
-  n2.value = "Cat";
-  SimpleTest.is(n2.value, "17", "determined value set invalid");
-
-  SimpleTest.finish();
-}
-
-]]></script>
-
-</window>
deleted file mode 100644
--- a/toolkit/content/tests/reftests/bug-442419-progressmeter-max-ref.xul
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0"?>
-<?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?>
-
-<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
-  <progressmeter value="100"/> <!-- default is max = 100 -->
-</window>
-
deleted file mode 100644
--- a/toolkit/content/tests/reftests/bug-442419-progressmeter-max.xul
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0"?>
-<?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?>
-
-<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
-  <progressmeter  max="198" value="198"/> <!-- 100% -->
-</window>
-
--- a/toolkit/content/tests/reftests/reftest.list
+++ b/toolkit/content/tests/reftests/reftest.list
@@ -1,6 +1,5 @@
-== bug-442419-progressmeter-max.xul bug-442419-progressmeter-max-ref.xul
 != textbox-multiline-default-value.xul textbox-multiline-empty.xul
 == videocontrols-dynamically-add-cc.html videocontrols-dynamically-add-cc-ref.html
 == audio-with-bogus-url.html audio-with-bogus-url-ref.html
 == audio-dynamically-change-small-width.html audio-dynamically-change-small-width-ref.html
 == audio-with-padding.html audio-with-padding-ref.html
--- a/toolkit/content/widgets.css
+++ b/toolkit/content/widgets.css
@@ -12,17 +12,16 @@
 @import url("chrome://global/skin/checkbox.css");
 @import url("chrome://global/skin/dialog.css");
 @import url("chrome://global/skin/dropmarker.css");
 @import url("chrome://global/skin/findBar.css");
 @import url("chrome://global/skin/menu.css");
 @import url("chrome://global/skin/menulist.css");
 @import url("chrome://global/skin/notification.css");
 @import url("chrome://global/skin/popup.css");
-@import url("chrome://global/skin/progressmeter.css");
 @import url("chrome://global/skin/radio.css");
 @import url("chrome://global/skin/richlistbox.css");
 @import url("chrome://global/skin/scrollbox.css");
 @import url("chrome://global/skin/splitter.css");
 @import url("chrome://global/skin/tabbox.css");
 
 /* numberbox.css needs to be loaded after textbox.css since it overrides it */
 @import url("chrome://global/skin/textbox.css");
deleted file mode 100644
--- a/toolkit/content/widgets/progressmeter.js
+++ /dev/null
@@ -1,105 +0,0 @@
-/* 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/. */
-
-"use strict";
-
-// This is loaded into chrome windows with the subscript loader. Wrap in
-// a block to prevent accidentally leaking globals onto `window`.
-{
-
-/**
- * XUL progressmeter element.
- */
-class MozProgressmeter extends MozXULElement {
-  get mode() {
-    return this.getAttribute("mode");
-  }
-
-  set mode(val) {
-    if (this.mode != val) {
-      this.setAttribute("mode", val);
-    }
-    return val;
-  }
-
-  get value() {
-    return this.getAttribute("value") || "0";
-  }
-
-  set value(val) {
-    let p = Math.round(val);
-    let max = Math.round(this.max);
-    if (p < 0) {
-      p = 0;
-    } else if (p > max) {
-      p = max;
-    }
-
-    let c = this.value;
-    if (p != c) {
-      let delta = p - c;
-      if (delta < 0) {
-        delta = -delta;
-      }
-      if (delta > 3 || p == 0 || p == max) {
-        this.setAttribute("value", p);
-        // Fire DOM event so that accessible value change events occur
-        let event = document.createEvent("Events");
-        event.initEvent("ValueChange", true, true);
-        this.dispatchEvent(event);
-      }
-    }
-
-    return val;
-  }
-
-  get max() {
-    return this.getAttribute("max") || "100";
-  }
-
-  set max(val) {
-    this.setAttribute("max", isNaN(val) ? 100 : Math.max(val, 1));
-    this.value = this.value;
-    return val;
-  }
-
-  isUndetermined() {
-    return this.getAttribute("mode") == "undetermined";
-  }
-
-  connectedCallback() {
-    if (this.delayConnectedCallback()) {
-      return;
-    }
-    this._initUI();
-  }
-
-  static get observedAttributes() {
-    return [ "mode" ];
-  }
-
-  attributeChangedCallback(name, oldValue, newValue) {
-    if (!this.isConnectedAndReady) {
-      return;
-    }
-
-    if (name === "mode" && oldValue != newValue) {
-      this._initUI();
-    }
-  }
-
-  _initUI() {
-    let content = `
-      <spacer class="progress-bar"/>
-      <spacer class="progress-remainder"/>
-    `;
-
-    this.textContent = "";
-    this.appendChild(MozXULElement.parseXULToFragment(content));
-  }
-}
-
-customElements.define("progressmeter", MozProgressmeter);
-
-}
--- a/toolkit/themes/mobile/jar.mn
+++ b/toolkit/themes/mobile/jar.mn
@@ -10,17 +10,16 @@ toolkit.jar:
    skin/classic/global/checkbox.css                        (global/empty.css)
    skin/classic/global/dialog.css                          (global/empty.css)
    skin/classic/global/dropmarker.css                      (global/empty.css)
    skin/classic/global/global.css                          (global/empty.css)
    skin/classic/global/menu.css                            (global/empty.css)
    skin/classic/global/menulist.css                        (global/empty.css)
    skin/classic/global/numberbox.css                       (global/empty.css)
    skin/classic/global/popup.css                           (global/empty.css)
-   skin/classic/global/progressmeter.css                   (global/empty.css)
    skin/classic/global/radio.css                           (global/empty.css)
    skin/classic/global/richlistbox.css                     (global/empty.css)
    skin/classic/global/scrollbox.css                       (global/empty.css)
    skin/classic/global/splitter.css                        (global/empty.css)
    skin/classic/global/tabbox.css                          (global/empty.css)
    skin/classic/global/textbox.css                         (global/empty.css)
    skin/classic/global/toolbar.css                         (global/empty.css)
    skin/classic/global/toolbarbutton.css                   (global/empty.css)
--- a/toolkit/themes/osx/global/jar.mn
+++ b/toolkit/themes/osx/global/jar.mn
@@ -13,17 +13,16 @@ toolkit.jar:
   skin/classic/global/dropmarker.css
 * skin/classic/global/findBar.css
 * skin/classic/global/global.css
   skin/classic/global/menu.css
   skin/classic/global/menulist.css
 * skin/classic/global/notification.css
   skin/classic/global/netError.css
   skin/classic/global/popup.css
-  skin/classic/global/progressmeter.css
   skin/classic/global/radio.css
   skin/classic/global/richlistbox.css
   skin/classic/global/scrollbars.css                                 (nativescrollbars.css)
   skin/classic/global/scrollbox.css
   skin/classic/global/splitter.css
   skin/classic/global/tabprompts.css
   skin/classic/global/tabbox.css
   skin/classic/global/textbox.css
deleted file mode 100644
--- a/toolkit/themes/osx/global/progressmeter.css
+++ /dev/null
@@ -1,18 +0,0 @@
-/* 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/. */
-
-@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
-
-progressmeter {
-  -moz-appearance: progressbar;
-  margin: 2px 4px;
-  min-width: 128px;
-  height: 12px;
-}
-
-.progress-remainder[flex="100"],
-.progress-remainder[flex="0"] {
-  background-image: none !important;
-  -moz-appearance: none;
-}
--- a/toolkit/themes/shared/non-mac.jar.inc.mn
+++ b/toolkit/themes/shared/non-mac.jar.inc.mn
@@ -6,17 +6,16 @@
 # by the shared jar manifest, which in turn is included by the os-specific
 # manifests.
 # As a result, the source file paths are relative to the location of the
 # actual manifests.
 
 #include jar.inc.mn
 
   skin/classic/global/dialog.css                           (../../windows/global/dialog.css)
-  skin/classic/global/progressmeter.css                    (../../windows/global/progressmeter.css)
   skin/classic/global/scrollbars.css                       (../../windows/global/xulscrollbars.css)
   skin/classic/global/tabprompts.css                       (../../windows/global/tabprompts.css)
   skin/classic/global/wizard.css                           (../../windows/global/wizard.css)
 
   skin/classic/global/arrow/arrow-dn.gif                   (../../windows/global/arrow/arrow-dn.gif)
   skin/classic/global/arrow/arrow-up.gif                   (../../windows/global/arrow/arrow-up.gif)
   skin/classic/global/arrow/panelarrow-horizontal.svg      (../../windows/global/arrow/panelarrow-horizontal.svg)
   skin/classic/global/arrow/panelarrow-vertical.svg        (../../windows/global/arrow/panelarrow-vertical.svg)
deleted file mode 100644
--- a/toolkit/themes/windows/global/progressmeter.css
+++ /dev/null
@@ -1,26 +0,0 @@
-/* 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/. */
-
-/* ===== progressmeter.css ==============================================
-  == Styles used by the XUL progressmeter element.
-  ======================================================================= */
-
-@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
-
-/* ::::: progressmeter ::::: */
-
-progressmeter {
-  -moz-appearance: progressbar;
-  margin: 2px 4px;
-  border: 1px solid ThreeDShadow;
-  background-color: -moz-Dialog;
-  min-width: 128px;
-  min-height: 15px;
-}
-
-.progress-bar {
-  -moz-appearance: progresschunk;
-  min-width: 0;
-  background-color: ThreeDShadow;
-}
--- a/widget/nsNativeTheme.cpp
+++ b/widget/nsNativeTheme.cpp
@@ -171,36 +171,32 @@ nsNativeTheme::CheckIntAttr(nsIFrame* aF
 
   return value;
 }
 
 /* static */
 double
 nsNativeTheme::GetProgressValue(nsIFrame* aFrame)
 {
-  // When we are using the HTML progress element,
-  // we can get the value from the IDL property.
-  if (aFrame && aFrame->GetContent()->IsHTMLElement(nsGkAtoms::progress)) {
-    return static_cast<HTMLProgressElement*>(aFrame->GetContent())->Value();
+  if (!aFrame || !aFrame->GetContent()->IsHTMLElement(nsGkAtoms::progress)) {
+    return 0;
   }
 
-  return (double)nsNativeTheme::CheckIntAttr(aFrame, nsGkAtoms::value, 0);
+  return static_cast<HTMLProgressElement*>(aFrame->GetContent())->Value();
 }
 
 /* static */
 double
 nsNativeTheme::GetProgressMaxValue(nsIFrame* aFrame)
 {
-  // When we are using the HTML progress element,
-  // we can get the max from the IDL property.
-  if (aFrame && aFrame->GetContent()->IsHTMLElement(nsGkAtoms::progress)) {
-    return static_cast<HTMLProgressElement*>(aFrame->GetContent())->Max();
+  if (!aFrame || !aFrame->GetContent()->IsHTMLElement(nsGkAtoms::progress)) {
+    return 100;
   }
 
-  return (double)std::max(nsNativeTheme::CheckIntAttr(aFrame, nsGkAtoms::max, 100), 1);
+  return static_cast<HTMLProgressElement*>(aFrame->GetContent())->Max();
 }
 
 bool
 nsNativeTheme::GetCheckedOrSelected(nsIFrame* aFrame, bool aCheckSelected)
 {
   if (!aFrame)
     return false;
 
@@ -560,32 +556,26 @@ nsNativeTheme::IsNextToSelectedTab(nsIFr
   }
 
   if (thisTabIndex == -1 || selectedTabIndex == -1)
     return false;
 
   return (thisTabIndex - selectedTabIndex == aOffset);
 }
 
-// progressbar:
 bool
 nsNativeTheme::IsIndeterminateProgress(nsIFrame* aFrame,
                                        EventStates aEventStates)
 {
-  if (!aFrame || !aFrame->GetContent()|| !aFrame->GetContent()->IsElement())
+  if (!aFrame || !aFrame->GetContent() ||
+      !aFrame->GetContent()->IsHTMLElement(nsGkAtoms::progress)) {
     return false;
-
-  if (aFrame->GetContent()->IsHTMLElement(nsGkAtoms::progress)) {
-    return aEventStates.HasState(NS_EVENT_STATE_INDETERMINATE);
   }
 
-  return aFrame->GetContent()->AsElement()->AttrValueIs(kNameSpaceID_None,
-                                                        nsGkAtoms::mode,
-                                                        NS_LITERAL_STRING("undetermined"),
-                                                        eCaseMatters);
+  return aEventStates.HasState(NS_EVENT_STATE_INDETERMINATE);
 }
 
 bool
 nsNativeTheme::IsVerticalProgress(nsIFrame* aFrame)
 {
   if (!aFrame) {
     return false;
   }
--- a/xpcom/ds/StaticAtoms.py
+++ b/xpcom/ds/StaticAtoms.py
@@ -977,17 +977,16 @@ STATIC_ATOMS = [
     Atom("preventdefault", "preventdefault"),
     Atom("previewDiv", "preview-div"),
     Atom("primary", "primary"),
     Atom("print", "print"),
     Atom("priority", "priority"),
     Atom("processingInstruction", "processing-instruction"),
     Atom("profile", "profile"),
     Atom("progress", "progress"),
-    Atom("progressmeter", "progressmeter"),
     Atom("prompt", "prompt"),
     Atom("properties", "properties"),
     Atom("property", "property"),
     Atom("pubdate", "pubdate"),
     Atom("q", "q"),
     Atom("radio", "radio"),
     Atom("radioLabel", "radio-label"),
     Atom("radiogroup", "radiogroup"),
@@ -1212,17 +1211,16 @@ STATIC_ATOMS = [
     Atom("treeseparator", "treeseparator"),
     Atom("_true", "true"),
     Atom("truespeed", "truespeed"),
     Atom("tt", "tt"),
     Atom("type", "type"),
     Atom("typemustmatch", "typemustmatch"),
     Atom("u", "u"),
     Atom("ul", "ul"),
-    Atom("undetermined", "undetermined"),
     Atom("unparsedEntityUri", "unparsed-entity-uri"),
     Atom("up", "up"),
     Atom("upperAlpha", "upper-alpha"),
     Atom("upperFirst", "upper-first"),
     Atom("upperRoman", "upper-roman"),
     Atom("use", "use"),
     Atom("useAttributeSets", "use-attribute-sets"),
     Atom("usemap", "usemap"),