Merge m-c to f-t
authorPhil Ringnalda <philringnalda@gmail.com>
Sun, 27 Oct 2013 19:26:05 -0700
changeset 166251 3685c303b72343849658ef2d22c3535648223a6c
parent 166250 57f39d5c71fac208029215152d203716d87595b1 (current diff)
parent 166225 5e49bfec9ecb1adc1e513837b2c9c884a4eae4dc (diff)
child 166252 59ff3a2a708a6d95894e4bcf6c6ed8c75190e30c
child 166257 f4b1b234f20df00ec7328bb25549fee2e1a6c2d9
push id3066
push userakeybl@mozilla.com
push dateMon, 09 Dec 2013 19:58:46 +0000
treeherdermozilla-beta@a31a0dce83aa [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
milestone27.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
Merge m-c to f-t
--- a/browser/devtools/shared/widgets/SideMenuWidget.jsm
+++ b/browser/devtools/shared/widgets/SideMenuWidget.jsm
@@ -482,17 +482,16 @@ function SideMenuGroup(aWidget, aName, a
     name.setAttribute("value", aName);
     name.setAttribute("crop", "end");
     name.setAttribute("flex", "1");
 
     // Show a checkbox before the content.
     if (aOptions.showCheckbox) {
       let checkbox = this._checkbox = makeCheckbox(title, { description: aName });
       checkbox.className = "side-menu-widget-group-checkbox";
-      checkbox.setAttribute("align", "start");
     }
 
     title.appendChild(name);
     target.appendChild(title);
     target.appendChild(list);
   }
   // Skip a few redundant nodes when no title is shown.
   else {
@@ -587,17 +586,16 @@ function SideMenuItem(aGroup, aContents,
 
     let target = this._target = this.document.createElement("vbox");
     target.className = "side-menu-widget-item-contents";
 
     // Show a checkbox before the content.
     if (aOptions.showCheckbox) {
       let checkbox = this._checkbox = makeCheckbox(container, aAttachment);
       checkbox.className = "side-menu-widget-item-checkbox";
-      checkbox.setAttribute("align", "start");
     }
 
     container.appendChild(target);
 
     // Show a horizontal arrow towards the content.
     if (aOptions.showArrow) {
       let arrow = this._arrow = this.document.createElement("hbox");
       arrow.className = "side-menu-widget-item-arrow";
--- a/browser/devtools/shared/widgets/widgets.css
+++ b/browser/devtools/shared/widgets/widgets.css
@@ -19,16 +19,21 @@
   overflow-x: hidden;
   overflow-y: auto;
 }
 
 .side-menu-widget-item-contents {
   -moz-user-focus: normal;
 }
 
+.side-menu-widget-group-checkbox .checkbox-label-box,
+.side-menu-widget-item-checkbox .checkbox-label-box {
+  display: none; /* See bug 669507 */
+}
+
 /* VariablesView */
 
 .variables-view-container {
   overflow-x: hidden;
   overflow-y: auto;
 }
 
 .variables-view-element-details:not([open]) {
--- a/browser/themes/linux/devtools/shadereditor.css
+++ b/browser/themes/linux/devtools/shadereditor.css
@@ -1,5 +1,9 @@
 /* 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 ../../shared/devtools/shadereditor.inc.css
+
+.side-menu-widget-item-checkbox > .checkbox-spacer-box {
+  -moz-appearance: none;
+}
--- a/browser/themes/linux/devtools/widgets.css
+++ b/browser/themes/linux/devtools/widgets.css
@@ -312,21 +312,16 @@
               0 -2px 0 hsla(206,37%,4%,.05) inset,
               0 -1px 1px hsla(206,37%,4%,.1) inset;
 }
 
 .side-menu-widget-group-title[theme="light"] {
   background-image: linear-gradient(#fff, #eee);
 }
 
-.side-menu-widget-group-checkbox {
-  margin: 0;
-  padding: 0;
-}
-
 /* SideMenuWidget items */
 
 .side-menu-widget-item[theme="dark"] {
   border-top: 1px solid hsla(210,8%,5%,.25);
   border-bottom: 1px solid hsla(210,16%,76%,.1);
   margin-top: -1px;
   margin-bottom: -1px;
 }
@@ -374,21 +369,16 @@
   padding: 4px 0px;
 }
 
 .side-menu-widget-item-arrow {
   -moz-margin-start: -8px;
   width: 8px;
 }
 
-.side-menu-widget-item-checkbox {
-  -moz-margin-start: 4px;
-  -moz-margin-end: -6px;
-}
-
 .side-menu-widget-item-other {
   background: url(background-noise-toolbar.png), hsla(208,11%,27%, 0.65);
 }
 
 .side-menu-widget-item-other.selected {
   background: url(background-noise-toolbar.png), hsla(208,11%,27%, 0.15);
   box-shadow: inset 0 1px 0 hsla(210,40%,83%,.07),
               inset 0 -1px 0 hsla(210,40%,83%,.07);
@@ -398,16 +388,35 @@
   border-top-left-radius: 4px;
 }
 
 .side-menu-widget-item-other > label {
   color: #f5f7fa;
   text-shadow: 0 1px 1px #111;
 }
 
+/* SideMenuWidget checkboxes */
+
+.side-menu-widget-group-checkbox {
+  margin: 0;
+  -moz-margin-end: 4px;
+}
+
+.side-menu-widget-item-checkbox {
+  margin: 0;
+  -moz-margin-start: 4px;
+  -moz-margin-end: -4px;
+}
+
+.side-menu-widget-group-checkbox .checkbox-spacer-box,
+.side-menu-widget-item-checkbox .checkbox-spacer-box {
+  margin: 0;
+  border: none;
+}
+
 /* SideMenuWidget misc */
 
 .side-menu-widget-empty-notice-container {
   padding: 12px;
 }
 
 .side-menu-widget-empty-notice-container[theme="dark"] {
   background: url(background-noise-toolbar.png), hsl(208,11%,27%);
--- a/browser/themes/osx/devtools/widgets.css
+++ b/browser/themes/osx/devtools/widgets.css
@@ -312,21 +312,16 @@
               0 -2px 0 hsla(206,37%,4%,.05) inset,
               0 -1px 1px hsla(206,37%,4%,.1) inset;
 }
 
 .side-menu-widget-group-title[theme="light"] {
   background-image: linear-gradient(#fff, #eee);
 }
 
-.side-menu-widget-group-checkbox {
-  margin: 0;
-  padding: 0;
-}
-
 /* SideMenuWidget items */
 
 .side-menu-widget-item[theme="dark"] {
   border-top: 1px solid hsla(210,8%,5%,.25);
   border-bottom: 1px solid hsla(210,16%,76%,.1);
   margin-top: -1px;
   margin-bottom: -1px;
 }
@@ -374,21 +369,16 @@
   padding: 4px 0px;
 }
 
 .side-menu-widget-item-arrow {
   -moz-margin-start: -8px;
   width: 8px;
 }
 
-.side-menu-widget-item-checkbox {
-  -moz-margin-start: 4px;
-  -moz-margin-end: -6px;
-}
-
 .side-menu-widget-item-other {
   background: url(background-noise-toolbar.png), hsla(208,11%,27%, 0.65);
 }
 
 .side-menu-widget-item-other.selected {
   background: url(background-noise-toolbar.png), hsla(208,11%,27%, 0.15);
   box-shadow: inset 0 1px 0 hsla(210,40%,83%,.07),
               inset 0 -1px 0 hsla(210,40%,83%,.07);
@@ -398,16 +388,29 @@
   border-top-left-radius: 4px;
 }
 
 .side-menu-widget-item-other > label {
   color: #f5f7fa;
   text-shadow: 0 1px 1px #111;
 }
 
+/* SideMenuWidget checkboxes */
+
+.side-menu-widget-group-checkbox {
+  margin: 0;
+  -moz-margin-end: 4px;
+}
+
+.side-menu-widget-item-checkbox {
+  margin: 0;
+  -moz-margin-start: 4px;
+  -moz-margin-end: -4px;
+}
+
 /* SideMenuWidget misc */
 
 .side-menu-widget-empty-notice-container {
   padding: 12px;
 }
 
 .side-menu-widget-empty-notice-container[theme="dark"] {
   background: url(background-noise-toolbar.png), hsl(208,11%,27%);
--- a/browser/themes/shared/devtools/shadereditor.inc.css
+++ b/browser/themes/shared/devtools/shadereditor.inc.css
@@ -46,45 +46,43 @@
 }
 
 #shaders-pane + .devtools-side-splitter {
   -moz-border-start-color: transparent;
 }
 
 .side-menu-widget-item-checkbox {
   -moz-appearance: none;
-  -moz-margin-end: -6px;
-  padding: 0;
   opacity: 0;
   transition: opacity .15s ease-out 0s;
 }
 
 /* Only show the checkbox when the source is hovered over, is selected, or if it
  * is not checked. */
 .side-menu-widget-item:hover > .side-menu-widget-item-checkbox,
 .side-menu-widget-item.selected > .side-menu-widget-item-checkbox,
 .side-menu-widget-item-checkbox:not([checked]) {
   opacity: 1;
   transition: opacity .15s ease-out 0s;
 }
 
-.side-menu-widget-item-checkbox > .checkbox-check {
+.side-menu-widget-item-checkbox .checkbox-check {
   -moz-appearance: none;
   background: none;
-  background-image: url("chrome://browser/skin/devtools/itemToggle.png");
+  background-image: url(itemToggle.png);
   background-repeat: no-repeat;
   background-clip: content-box;
   background-size: 32px 16px;
   background-position: -16px 0;
   width: 16px;
   height: 16px;
   border: 0;
 }
 
-.side-menu-widget-item-checkbox[checked] > .checkbox-check {
+.side-menu-widget-item-checkbox[checked] .checkbox-check {
   background-position: 0 0;
 }
 
 .side-menu-widget-item-checkbox:not([checked]) ~ .side-menu-widget-item-contents {
   color: #888;
 }
 
 /* Shader source editors */
--- a/browser/themes/windows/devtools/widgets.css
+++ b/browser/themes/windows/devtools/widgets.css
@@ -316,21 +316,16 @@
               0 -2px 0 hsla(206,37%,4%,.05) inset,
               0 -1px 1px hsla(206,37%,4%,.1) inset;
 }
 
 .side-menu-widget-group-title[theme="light"] {
   background-image: linear-gradient(#fff, #eee);
 }
 
-.side-menu-widget-group-checkbox {
-  margin: 0;
-  padding: 0;
-}
-
 /* SideMenuWidget items */
 
 .side-menu-widget-item[theme="dark"] {
   border-top: 1px solid hsla(210,8%,5%,.25);
   border-bottom: 1px solid hsla(210,16%,76%,.1);
   margin-top: -1px;
   margin-bottom: -1px;
 }
@@ -378,21 +373,16 @@
   padding: 4px 0px;
 }
 
 .side-menu-widget-item-arrow {
   -moz-margin-start: -8px;
   width: 8px;
 }
 
-.side-menu-widget-item-checkbox {
-  -moz-margin-start: 4px;
-  -moz-margin-end: -6px;
-}
-
 .side-menu-widget-item-other {
   background: url(background-noise-toolbar.png), hsla(208,11%,27%, 0.65);
 }
 
 .side-menu-widget-item-other.selected {
   background: url(background-noise-toolbar.png), hsla(208,11%,27%, 0.15);
   box-shadow: inset 0 1px 0 hsla(210,40%,83%,.07),
               inset 0 -1px 0 hsla(210,40%,83%,.07);
@@ -401,16 +391,29 @@
 .side-menu-widget-item-other:first-of-type {
   border-top-left-radius: 4px;
 }
 
 .side-menu-widget-item-other > label {
   color: #f5f7fa;
 }
 
+/* SideMenuWidget checkboxes */
+
+.side-menu-widget-group-checkbox {
+  margin: 0;
+  -moz-margin-end: 4px;
+}
+
+.side-menu-widget-item-checkbox {
+  margin: 0;
+  -moz-margin-start: 4px;
+  -moz-margin-end: -4px;
+}
+
 /* SideMenuWidget misc */
 
 .side-menu-widget-empty-notice-container {
   padding: 12px;
 }
 
 .side-menu-widget-empty-notice-container[theme="dark"] {
   background: url(background-noise-toolbar.png), hsl(208,11%,27%);
--- a/media/webrtc/trunk/webrtc/modules/audio_device/audio_device.gypi
+++ b/media/webrtc/trunk/webrtc/modules/audio_device/audio_device.gypi
@@ -42,17 +42,19 @@
         'audio_device_config.h',
         'dummy/audio_device_dummy.h',
         'dummy/audio_device_utility_dummy.h',
       ],
       'conditions': [
         ['build_with_mozilla==1', {
           'include_dirs': [
             '$(DIST)/include',
-            '$(DIST)/include/nspr',
+          ],
+          'cflags_mozilla': [
+            '$(NSPR_CFLAGS)',
           ],
         }],
         ['OS=="linux" or include_alsa_audio==1 or include_pulse_audio==1', {
           'include_dirs': [
             'linux',
           ],
         }], # OS=="linux" or include_alsa_audio==1 or include_pulse_audio==1
         ['OS=="ios"', {
--- a/toolkit/devtools/client/dbg-client.jsm
+++ b/toolkit/devtools/client/dbg-client.jsm
@@ -966,17 +966,17 @@ TabClient.prototype = {
    * @param function aOnResponse
    *        Called with the response packet.
    */
   detach: DebuggerClient.requester({
     type: "detach"
   }, {
     after: function (aResponse) {
       if (this.activeTab === this._client._tabClients[this.actor]) {
-        delete this.activeTab;
+        this.activeTab = undefined;
       }
       delete this._client._tabClients[this.actor];
       return aResponse;
     },
     telemetry: "TABDETACH"
   }),
 
   /**
@@ -1118,19 +1118,16 @@ ThreadClient.prototype = {
   }, {
     before: function (aPacket) {
       this._assertPaused("resume");
 
       // Put the client in a tentative "resuming" state so we can prevent
       // further requests that should only be sent in the paused state.
       this._state = "resuming";
 
-      if (!aPacket.resumeLimit) {
-        delete aPacket.resumeLimit;
-      }
       if (this._pauseOnExceptions) {
         aPacket.pauseOnExceptions = this._pauseOnExceptions;
       }
       if (this._ignoreCaughtExceptions) {
         aPacket.ignoreCaughtExceptions = this._ignoreCaughtExceptions;
       }
       if (this._pauseOnDOMEvents) {
         aPacket.pauseOnDOMEvents = this._pauseOnDOMEvents;
@@ -1297,17 +1294,17 @@ ThreadClient.prototype = {
    * @param function aOnResponse
    *        Called with the response packet.
    */
   detach: DebuggerClient.requester({
     type: "detach"
   }, {
     after: function (aResponse) {
       if (this.activeThread === this._client._threadClients[this.actor]) {
-        delete this.activeThread;
+        this.activeThread = null;
       }
       delete this._client._threadClients[this.actor];
       return aResponse;
     },
     telemetry: "THREADDETACH"
   }),
 
   /**
--- a/toolkit/devtools/server/main.js
+++ b/toolkit/devtools/server/main.js
@@ -287,17 +287,17 @@ var DebuggerServer = {
       let mod = gRegisteredModules[id];
       mod.module.unregister(mod.api);
     }
     gRegisteredModules = {};
 
     this.closeListener();
     this.globalActorFactories = {};
     this.tabActorFactories = {};
-    delete this._allowConnection;
+    this._allowConnection = null;
     this._transportInitialized = false;
     this._initialized = false;
 
     this._fireConnectionChange("closed");
 
     dumpn("Debugger server is shut down.");
   },
 
@@ -1018,17 +1018,17 @@ DebuggerServerConnection.prototype = {
       try {
         this.currentPacket = aPacket;
         ret = actor.requestTypes[aPacket.type].bind(actor)(aPacket, this);
       } catch(e) {
         this.transport.send(this._unknownError(
           "error occurred while processing '" + aPacket.type,
           e));
       } finally {
-        delete this.currentPacket;
+        this.currentPacket = undefined;
       }
     } else {
       ret = { error: "unrecognizedPacketType",
               message: ('Actor "' + actor.actorID +
                         '" does not recognize the packet type "' +
                         aPacket.type + '"') };
     }
 
--- a/toolkit/devtools/server/transport.js
+++ b/toolkit/devtools/server/transport.js
@@ -264,17 +264,17 @@ LocalDebuggerTransport.prototype = {
   /**
    * Close the transport.
    */
   close: function LDT_close() {
     if (this.other) {
       // Remove the reference to the other endpoint before calling close(), to
       // avoid infinite recursion.
       let other = this.other;
-      delete this.other;
+      this.other = null;
       other.close();
     }
     if (this.hooks) {
       try {
         this.hooks.onClosed();
       } catch(ex) {
         Components.utils.reportError(ex);
       }