--- a/b2g/config/aries/sources.xml
+++ b/b2g/config/aries/sources.xml
@@ -10,17 +10,17 @@
<!--original fetch url was git://codeaurora.org/-->
<remote fetch="https://git.mozilla.org/external/caf" name="caf"/>
<!--original fetch url was https://git.mozilla.org/releases-->
<remote fetch="https://git.mozilla.org/releases" name="mozillaorg"/>
<!-- B2G specific things. -->
<project name="platform_build" path="build" remote="b2g" revision="8d83715f08b7849f16a0dfc88f78d5c3a89c0a54">
<copyfile dest="Makefile" src="core/root.mk"/>
</project>
- <project name="gaia" path="gaia" remote="mozillaorg" revision="27bc9412ca607648bc398b25bb1ae25653b2b278"/>
+ <project name="gaia" path="gaia" remote="mozillaorg" revision="4019a15121359c470765dd06e94850dd64cdf8d9"/>
<project name="fake-libdvm" path="dalvik" remote="b2g" revision="d50ae982b19f42f0b66d08b9eb306be81687869f"/>
<project name="fake-qemu-kernel" path="prebuilts/qemu-kernel" remote="b2g" revision="939b377d55a2f081d94029a30a75d05e5a20daf3"/>
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="9a58f2e395da17c252f61f28900b5b09aeb813bd"/>
<project name="librecovery" path="librecovery" remote="b2g" revision="1b3591a50ed352fc6ddb77462b7b35d0bfa555a3"/>
<project name="moztt" path="external/moztt" remote="b2g" revision="aa5b7b7f6ed207ea1adc4df11d1d8bdaeabadd85"/>
<project name="rilproxy" path="rilproxy" remote="b2g" revision="5ef30994f4778b4052e58a4383dbe7890048c87e"/>
<project name="valgrind" path="external/valgrind" remote="b2g" revision="5f931350fbc87c3df9db8b0ceb37734b8b471593"/>
<project name="vex" path="external/VEX" remote="b2g" revision="48d8c7c950745f1b166b42125e6f0d3293d71636"/>
--- a/b2g/config/dolphin/sources.xml
+++ b/b2g/config/dolphin/sources.xml
@@ -10,17 +10,17 @@
<!--original fetch url was git://codeaurora.org/-->
<remote fetch="https://git.mozilla.org/external/caf" name="caf"/>
<!--original fetch url was https://git.mozilla.org/releases-->
<remote fetch="https://git.mozilla.org/releases" name="mozillaorg"/>
<!-- B2G specific things. -->
<project name="platform_build" path="build" remote="b2g" revision="8d83715f08b7849f16a0dfc88f78d5c3a89c0a54">
<copyfile dest="Makefile" src="core/root.mk"/>
</project>
- <project name="gaia" path="gaia" remote="mozillaorg" revision="27bc9412ca607648bc398b25bb1ae25653b2b278"/>
+ <project name="gaia" path="gaia" remote="mozillaorg" revision="4019a15121359c470765dd06e94850dd64cdf8d9"/>
<project name="fake-libdvm" path="dalvik" remote="b2g" revision="d50ae982b19f42f0b66d08b9eb306be81687869f"/>
<project name="fake-qemu-kernel" path="prebuilts/qemu-kernel" remote="b2g" revision="939b377d55a2f081d94029a30a75d05e5a20daf3"/>
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="9a58f2e395da17c252f61f28900b5b09aeb813bd"/>
<project name="librecovery" path="librecovery" remote="b2g" revision="1b3591a50ed352fc6ddb77462b7b35d0bfa555a3"/>
<project name="moztt" path="external/moztt" remote="b2g" revision="aa5b7b7f6ed207ea1adc4df11d1d8bdaeabadd85"/>
<project name="rilproxy" path="rilproxy" remote="b2g" revision="5ef30994f4778b4052e58a4383dbe7890048c87e"/>
<project name="valgrind" path="external/valgrind" remote="b2g" revision="5f931350fbc87c3df9db8b0ceb37734b8b471593"/>
<project name="vex" path="external/VEX" remote="b2g" revision="48d8c7c950745f1b166b42125e6f0d3293d71636"/>
--- a/b2g/config/emulator-ics/sources.xml
+++ b/b2g/config/emulator-ics/sources.xml
@@ -14,17 +14,17 @@
<!--original fetch url was git://github.com/apitrace/-->
<remote fetch="https://git.mozilla.org/external/apitrace" name="apitrace"/>
<default remote="caf" revision="refs/tags/android-4.0.4_r2.1" sync-j="4"/>
<!-- Gonk specific things and forks -->
<project name="platform_build" path="build" remote="b2g" revision="1b0db93fb6b870b03467aff50d6419771ba0d88c">
<copyfile dest="Makefile" src="core/root.mk"/>
</project>
<project name="fake-dalvik" path="dalvik" remote="b2g" revision="ca1f327d5acc198bb4be62fa51db2c039032c9ce"/>
- <project name="gaia.git" path="gaia" remote="mozillaorg" revision="27bc9412ca607648bc398b25bb1ae25653b2b278"/>
+ <project name="gaia.git" path="gaia" remote="mozillaorg" revision="4019a15121359c470765dd06e94850dd64cdf8d9"/>
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="9a58f2e395da17c252f61f28900b5b09aeb813bd"/>
<project name="rilproxy" path="rilproxy" remote="b2g" revision="5ef30994f4778b4052e58a4383dbe7890048c87e"/>
<project name="platform_hardware_ril" path="hardware/ril" remote="b2g" revision="cb4604d5a578efd027277059ce3e0f6e3af59bd1"/>
<project name="platform_external_qemu" path="external/qemu" remote="b2g" revision="c72c9278ddc2f442d193474993d36e7f2cfb08c4"/>
<project name="moztt" path="external/moztt" remote="b2g" revision="aa5b7b7f6ed207ea1adc4df11d1d8bdaeabadd85"/>
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="34ea6163f9f0e0122fb0bb03607eccdca31ced7a"/>
<project name="platform_hardware_libhardware_moz" path="hardware/libhardware_moz" remote="b2g" revision="fdf3a143dc777e5f9d33a88373af7ea161d3b440"/>
<!-- Stock Android things -->
--- a/b2g/config/emulator-jb/sources.xml
+++ b/b2g/config/emulator-jb/sources.xml
@@ -12,17 +12,17 @@
<!--original fetch url was https://git.mozilla.org/releases-->
<remote fetch="https://git.mozilla.org/releases" name="mozillaorg"/>
<!-- B2G specific things. -->
<project name="platform_build" path="build" remote="b2g" revision="660169a3d7e034a892359e39135e8c2785a6ad6f">
<copyfile dest="Makefile" src="core/root.mk"/>
</project>
<project name="rilproxy" path="rilproxy" remote="b2g" revision="5ef30994f4778b4052e58a4383dbe7890048c87e"/>
<project name="fake-libdvm" path="dalvik" remote="b2g" revision="d50ae982b19f42f0b66d08b9eb306be81687869f"/>
- <project name="gaia" path="gaia" remote="mozillaorg" revision="27bc9412ca607648bc398b25bb1ae25653b2b278"/>
+ <project name="gaia" path="gaia" remote="mozillaorg" revision="4019a15121359c470765dd06e94850dd64cdf8d9"/>
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="9a58f2e395da17c252f61f28900b5b09aeb813bd"/>
<project name="moztt" path="external/moztt" remote="b2g" revision="aa5b7b7f6ed207ea1adc4df11d1d8bdaeabadd85"/>
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="f009c98ba697582c857c5788e5cdf0640e287ae6"/>
<project name="valgrind" path="external/valgrind" remote="b2g" revision="5f931350fbc87c3df9db8b0ceb37734b8b471593"/>
<project name="vex" path="external/VEX" remote="b2g" revision="48d8c7c950745f1b166b42125e6f0d3293d71636"/>
<project name="platform_hardware_libhardware_moz" path="hardware/libhardware_moz" remote="b2g" revision="fdf3a143dc777e5f9d33a88373af7ea161d3b440"/>
<!-- Stock Android things -->
<project groups="linux" name="platform/prebuilts/clang/linux-x86/3.1" path="prebuilts/clang/linux-x86/3.1" revision="5c45f43419d5582949284eee9cef0c43d866e03b"/>
--- a/b2g/config/emulator-kk/sources.xml
+++ b/b2g/config/emulator-kk/sources.xml
@@ -10,17 +10,17 @@
<!--original fetch url was git://codeaurora.org/-->
<remote fetch="https://git.mozilla.org/external/caf" name="caf"/>
<!--original fetch url was https://git.mozilla.org/releases-->
<remote fetch="https://git.mozilla.org/releases" name="mozillaorg"/>
<!-- B2G specific things. -->
<project name="platform_build" path="build" remote="b2g" revision="8d83715f08b7849f16a0dfc88f78d5c3a89c0a54">
<copyfile dest="Makefile" src="core/root.mk"/>
</project>
- <project name="gaia" path="gaia" remote="mozillaorg" revision="27bc9412ca607648bc398b25bb1ae25653b2b278"/>
+ <project name="gaia" path="gaia" remote="mozillaorg" revision="4019a15121359c470765dd06e94850dd64cdf8d9"/>
<project name="fake-libdvm" path="dalvik" remote="b2g" revision="d50ae982b19f42f0b66d08b9eb306be81687869f"/>
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="9a58f2e395da17c252f61f28900b5b09aeb813bd"/>
<project name="librecovery" path="librecovery" remote="b2g" revision="1b3591a50ed352fc6ddb77462b7b35d0bfa555a3"/>
<project name="moztt" path="external/moztt" remote="b2g" revision="aa5b7b7f6ed207ea1adc4df11d1d8bdaeabadd85"/>
<project name="rilproxy" path="rilproxy" remote="b2g" revision="5ef30994f4778b4052e58a4383dbe7890048c87e"/>
<project name="valgrind" path="external/valgrind" remote="b2g" revision="5f931350fbc87c3df9db8b0ceb37734b8b471593"/>
<project name="vex" path="external/VEX" remote="b2g" revision="48d8c7c950745f1b166b42125e6f0d3293d71636"/>
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="f009c98ba697582c857c5788e5cdf0640e287ae6"/>
--- a/b2g/config/emulator-l/sources.xml
+++ b/b2g/config/emulator-l/sources.xml
@@ -10,17 +10,17 @@
<!--original fetch url was git://codeaurora.org/-->
<remote fetch="https://git.mozilla.org/external/caf" name="caf"/>
<!--original fetch url was https://git.mozilla.org/releases-->
<remote fetch="https://git.mozilla.org/releases" name="mozillaorg"/>
<!-- B2G specific things. -->
<project name="platform_build" path="build" remote="b2g" revision="c9d4fe680662ee44a4bdea42ae00366f5df399cf">
<copyfile dest="Makefile" src="core/root.mk"/>
</project>
- <project name="gaia" path="gaia" remote="mozillaorg" revision="27bc9412ca607648bc398b25bb1ae25653b2b278"/>
+ <project name="gaia" path="gaia" remote="mozillaorg" revision="4019a15121359c470765dd06e94850dd64cdf8d9"/>
<project name="fake-libdvm" path="dalvik" remote="b2g" revision="d50ae982b19f42f0b66d08b9eb306be81687869f"/>
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="9a58f2e395da17c252f61f28900b5b09aeb813bd"/>
<project name="librecovery" path="librecovery" remote="b2g" revision="1b3591a50ed352fc6ddb77462b7b35d0bfa555a3"/>
<project name="moztt" path="external/moztt" remote="b2g" revision="aa5b7b7f6ed207ea1adc4df11d1d8bdaeabadd85"/>
<project name="rilproxy" path="rilproxy" remote="b2g" revision="5ef30994f4778b4052e58a4383dbe7890048c87e"/>
<project name="valgrind" path="external/valgrind" remote="b2g" revision="5f931350fbc87c3df9db8b0ceb37734b8b471593"/>
<project name="vex" path="external/VEX" remote="b2g" revision="48d8c7c950745f1b166b42125e6f0d3293d71636"/>
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="f009c98ba697582c857c5788e5cdf0640e287ae6"/>
--- a/b2g/config/emulator/sources.xml
+++ b/b2g/config/emulator/sources.xml
@@ -14,17 +14,17 @@
<!--original fetch url was git://github.com/apitrace/-->
<remote fetch="https://git.mozilla.org/external/apitrace" name="apitrace"/>
<default remote="caf" revision="refs/tags/android-4.0.4_r2.1" sync-j="4"/>
<!-- Gonk specific things and forks -->
<project name="platform_build" path="build" remote="b2g" revision="1b0db93fb6b870b03467aff50d6419771ba0d88c">
<copyfile dest="Makefile" src="core/root.mk"/>
</project>
<project name="fake-dalvik" path="dalvik" remote="b2g" revision="ca1f327d5acc198bb4be62fa51db2c039032c9ce"/>
- <project name="gaia.git" path="gaia" remote="mozillaorg" revision="27bc9412ca607648bc398b25bb1ae25653b2b278"/>
+ <project name="gaia.git" path="gaia" remote="mozillaorg" revision="4019a15121359c470765dd06e94850dd64cdf8d9"/>
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="9a58f2e395da17c252f61f28900b5b09aeb813bd"/>
<project name="rilproxy" path="rilproxy" remote="b2g" revision="5ef30994f4778b4052e58a4383dbe7890048c87e"/>
<project name="platform_hardware_ril" path="hardware/ril" remote="b2g" revision="cb4604d5a578efd027277059ce3e0f6e3af59bd1"/>
<project name="platform_external_qemu" path="external/qemu" remote="b2g" revision="c72c9278ddc2f442d193474993d36e7f2cfb08c4"/>
<project name="moztt" path="external/moztt" remote="b2g" revision="aa5b7b7f6ed207ea1adc4df11d1d8bdaeabadd85"/>
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="34ea6163f9f0e0122fb0bb03607eccdca31ced7a"/>
<project name="platform_hardware_libhardware_moz" path="hardware/libhardware_moz" remote="b2g" revision="fdf3a143dc777e5f9d33a88373af7ea161d3b440"/>
<!-- Stock Android things -->
--- a/b2g/config/flame-kk/sources.xml
+++ b/b2g/config/flame-kk/sources.xml
@@ -10,17 +10,17 @@
<!--original fetch url was git://codeaurora.org/-->
<remote fetch="https://git.mozilla.org/external/caf" name="caf"/>
<!--original fetch url was https://git.mozilla.org/releases-->
<remote fetch="https://git.mozilla.org/releases" name="mozillaorg"/>
<!-- B2G specific things. -->
<project name="platform_build" path="build" remote="b2g" revision="8d83715f08b7849f16a0dfc88f78d5c3a89c0a54">
<copyfile dest="Makefile" src="core/root.mk"/>
</project>
- <project name="gaia" path="gaia" remote="mozillaorg" revision="27bc9412ca607648bc398b25bb1ae25653b2b278"/>
+ <project name="gaia" path="gaia" remote="mozillaorg" revision="4019a15121359c470765dd06e94850dd64cdf8d9"/>
<project name="fake-libdvm" path="dalvik" remote="b2g" revision="d50ae982b19f42f0b66d08b9eb306be81687869f"/>
<project name="fake-qemu-kernel" path="prebuilts/qemu-kernel" remote="b2g" revision="939b377d55a2f081d94029a30a75d05e5a20daf3"/>
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="9a58f2e395da17c252f61f28900b5b09aeb813bd"/>
<project name="librecovery" path="librecovery" remote="b2g" revision="1b3591a50ed352fc6ddb77462b7b35d0bfa555a3"/>
<project name="moztt" path="external/moztt" remote="b2g" revision="aa5b7b7f6ed207ea1adc4df11d1d8bdaeabadd85"/>
<project name="rilproxy" path="rilproxy" remote="b2g" revision="5ef30994f4778b4052e58a4383dbe7890048c87e"/>
<project name="valgrind" path="external/valgrind" remote="b2g" revision="5f931350fbc87c3df9db8b0ceb37734b8b471593"/>
<project name="vex" path="external/VEX" remote="b2g" revision="48d8c7c950745f1b166b42125e6f0d3293d71636"/>
--- a/b2g/config/gaia.json
+++ b/b2g/config/gaia.json
@@ -1,9 +1,9 @@
{
"git": {
- "git_revision": "27bc9412ca607648bc398b25bb1ae25653b2b278",
+ "git_revision": "4019a15121359c470765dd06e94850dd64cdf8d9",
"remote": "https://git.mozilla.org/releases/gaia.git",
"branch": ""
},
- "revision": "2f649cee836b8510c54124d3be96ef12b3bce66e",
+ "revision": "03c4db27ecf40f61c06113da6ab78710088f8701",
"repo_path": "integration/gaia-central"
}
--- a/b2g/config/nexus-4-kk/sources.xml
+++ b/b2g/config/nexus-4-kk/sources.xml
@@ -10,17 +10,17 @@
<!--original fetch url was git://codeaurora.org/-->
<remote fetch="https://git.mozilla.org/external/caf" name="caf"/>
<!--original fetch url was https://git.mozilla.org/releases-->
<remote fetch="https://git.mozilla.org/releases" name="mozillaorg"/>
<!-- B2G specific things. -->
<project name="platform_build" path="build" remote="b2g" revision="8d83715f08b7849f16a0dfc88f78d5c3a89c0a54">
<copyfile dest="Makefile" src="core/root.mk"/>
</project>
- <project name="gaia" path="gaia" remote="mozillaorg" revision="27bc9412ca607648bc398b25bb1ae25653b2b278"/>
+ <project name="gaia" path="gaia" remote="mozillaorg" revision="4019a15121359c470765dd06e94850dd64cdf8d9"/>
<project name="fake-libdvm" path="dalvik" remote="b2g" revision="d50ae982b19f42f0b66d08b9eb306be81687869f"/>
<project name="fake-qemu-kernel" path="prebuilts/qemu-kernel" remote="b2g" revision="939b377d55a2f081d94029a30a75d05e5a20daf3"/>
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="9a58f2e395da17c252f61f28900b5b09aeb813bd"/>
<project name="librecovery" path="librecovery" remote="b2g" revision="1b3591a50ed352fc6ddb77462b7b35d0bfa555a3"/>
<project name="moztt" path="external/moztt" remote="b2g" revision="aa5b7b7f6ed207ea1adc4df11d1d8bdaeabadd85"/>
<project name="rilproxy" path="rilproxy" remote="b2g" revision="5ef30994f4778b4052e58a4383dbe7890048c87e"/>
<project name="valgrind" path="external/valgrind" remote="b2g" revision="5f931350fbc87c3df9db8b0ceb37734b8b471593"/>
<project name="vex" path="external/VEX" remote="b2g" revision="48d8c7c950745f1b166b42125e6f0d3293d71636"/>
--- a/b2g/config/nexus-4/sources.xml
+++ b/b2g/config/nexus-4/sources.xml
@@ -13,17 +13,17 @@
<remote fetch="https://git.mozilla.org/releases" name="mozillaorg"/>
<!-- B2G specific things. -->
<project name="platform_build" path="build" remote="b2g" revision="660169a3d7e034a892359e39135e8c2785a6ad6f">
<copyfile dest="Makefile" src="core/root.mk"/>
</project>
<project name="rilproxy" path="rilproxy" remote="b2g" revision="5ef30994f4778b4052e58a4383dbe7890048c87e"/>
<project name="fake-libdvm" path="dalvik" remote="b2g" revision="d50ae982b19f42f0b66d08b9eb306be81687869f"/>
<project name="fake-qemu-kernel" path="prebuilts/qemu-kernel" remote="b2g" revision="939b377d55a2f081d94029a30a75d05e5a20daf3"/>
- <project name="gaia" path="gaia" remote="mozillaorg" revision="27bc9412ca607648bc398b25bb1ae25653b2b278"/>
+ <project name="gaia" path="gaia" remote="mozillaorg" revision="4019a15121359c470765dd06e94850dd64cdf8d9"/>
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="9a58f2e395da17c252f61f28900b5b09aeb813bd"/>
<project name="moztt" path="external/moztt" remote="b2g" revision="aa5b7b7f6ed207ea1adc4df11d1d8bdaeabadd85"/>
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="f009c98ba697582c857c5788e5cdf0640e287ae6"/>
<project name="valgrind" path="external/valgrind" remote="b2g" revision="5f931350fbc87c3df9db8b0ceb37734b8b471593"/>
<project name="vex" path="external/VEX" remote="b2g" revision="48d8c7c950745f1b166b42125e6f0d3293d71636"/>
<project name="platform_hardware_libhardware_moz" path="hardware/libhardware_moz" remote="b2g" revision="fdf3a143dc777e5f9d33a88373af7ea161d3b440"/>
<!-- Stock Android things -->
<project groups="linux" name="platform/prebuilts/clang/linux-x86/3.1" path="prebuilts/clang/linux-x86/3.1" revision="5c45f43419d5582949284eee9cef0c43d866e03b"/>
--- a/b2g/config/nexus-5-l/sources.xml
+++ b/b2g/config/nexus-5-l/sources.xml
@@ -10,17 +10,17 @@
<!--original fetch url was git://codeaurora.org/-->
<remote fetch="https://git.mozilla.org/external/caf" name="caf"/>
<!--original fetch url was https://git.mozilla.org/releases-->
<remote fetch="https://git.mozilla.org/releases" name="mozillaorg"/>
<!-- B2G specific things. -->
<project name="platform_build" path="build" remote="b2g" revision="c9d4fe680662ee44a4bdea42ae00366f5df399cf">
<copyfile dest="Makefile" src="core/root.mk"/>
</project>
- <project name="gaia" path="gaia" remote="mozillaorg" revision="27bc9412ca607648bc398b25bb1ae25653b2b278"/>
+ <project name="gaia" path="gaia" remote="mozillaorg" revision="4019a15121359c470765dd06e94850dd64cdf8d9"/>
<project name="fake-libdvm" path="dalvik" remote="b2g" revision="d50ae982b19f42f0b66d08b9eb306be81687869f"/>
<project name="fake-qemu-kernel" path="prebuilts/qemu-kernel" remote="b2g" revision="939b377d55a2f081d94029a30a75d05e5a20daf3"/>
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="9a58f2e395da17c252f61f28900b5b09aeb813bd"/>
<project name="librecovery" path="librecovery" remote="b2g" revision="1b3591a50ed352fc6ddb77462b7b35d0bfa555a3"/>
<project name="moztt" path="external/moztt" remote="b2g" revision="aa5b7b7f6ed207ea1adc4df11d1d8bdaeabadd85"/>
<project name="rilproxy" path="rilproxy" remote="b2g" revision="5ef30994f4778b4052e58a4383dbe7890048c87e"/>
<project name="valgrind" path="external/valgrind" remote="b2g" revision="5f931350fbc87c3df9db8b0ceb37734b8b471593"/>
<project name="vex" path="external/VEX" remote="b2g" revision="48d8c7c950745f1b166b42125e6f0d3293d71636"/>
--- a/browser/base/content/browser-customization.js
+++ b/browser/base/content/browser-customization.js
@@ -55,19 +55,17 @@ var CustomizationHandler = {
PlacesToolbarHelper.customizeChange();
},
_customizationEnding: function(aDetails) {
// Update global UI elements that may have been added or removed
if (aDetails.changed) {
gURLBar = document.getElementById("urlbar");
- gProxyFavIcon = document.getElementById("page-proxy-favicon");
gHomeButton.updateTooltip();
- gIdentityHandler._cacheElements();
XULBrowserWindow.init();
#ifndef XP_MACOSX
updateEditUIVisibility();
#endif
// Hacky: update the PopupNotifications' object's reference to the iconBox,
// if it already exists, since it may have changed if the URL bar was
--- a/browser/base/content/browser-places.js
+++ b/browser/base/content/browser-places.js
@@ -365,27 +365,27 @@ var PlacesCommandHook = {
gURLBar.handleRevert();
// If it was not requested to open directly in "edit" mode, we are done.
if (!aShowEditUI)
return;
// Try to dock the panel to:
// 1. the bookmarks menu button
- // 2. the page-proxy-favicon
+ // 2. the identity icon
// 3. the content area
if (BookmarkingUI.anchor) {
StarUI.showEditBookmarkPopup(itemId, BookmarkingUI.anchor,
"bottomcenter topright");
return;
}
- let pageProxyFavicon = document.getElementById("page-proxy-favicon");
- if (isElementVisible(pageProxyFavicon)) {
- StarUI.showEditBookmarkPopup(itemId, pageProxyFavicon,
+ let identityIcon = document.getElementById("identity-icon");
+ if (isElementVisible(identityIcon)) {
+ StarUI.showEditBookmarkPopup(itemId, identityIcon,
"bottomcenter topright");
} else {
StarUI.showEditBookmarkPopup(itemId, aBrowser, "overlap");
}
}),
// TODO: Replace bookmarkPage code with this function once legacy
// transactions are removed.
@@ -441,27 +441,27 @@ var PlacesCommandHook = {
// If it was not requested to open directly in "edit" mode, we are done.
if (!aShowEditUI)
return;
let node = yield PlacesUIUtils.promiseNodeLikeFromFetchInfo(info);
// Try to dock the panel to:
// 1. the bookmarks menu button
- // 2. the page-proxy-favicon
+ // 2. the identity icon
// 3. the content area
if (BookmarkingUI.anchor) {
StarUI.showEditBookmarkPopup(node, BookmarkingUI.anchor,
"bottomcenter topright");
return;
}
- let pageProxyFavicon = document.getElementById("page-proxy-favicon");
- if (isElementVisible(pageProxyFavicon)) {
- StarUI.showEditBookmarkPopup(node, pageProxyFavicon,
+ let identityIcon = document.getElementById("identity-icon");
+ if (isElementVisible(identityIcon)) {
+ StarUI.showEditBookmarkPopup(node, identityIcon,
"bottomcenter topright");
} else {
StarUI.showEditBookmarkPopup(node, aBrowser, "overlap");
}
}),
_getPageDetails(browser) {
return new Promise(resolve => {
--- a/browser/base/content/browser.js
+++ b/browser/base/content/browser.js
@@ -90,17 +90,16 @@ Object.defineProperty(window, "pktUIMess
XPCOMUtils.defineLazyGetter(this, "gBrowserBundle", function() {
return Services.strings.createBundle('chrome://browser/locale/browser.properties');
});
const nsIWebNavigation = Ci.nsIWebNavigation;
var gLastBrowserCharset = null;
-var gProxyFavIcon = null;
var gLastValidURLStr = "";
var gInPrintPreviewMode = false;
var gContextMenu = null; // nsContextMenu instance
var gMultiProcessBrowser =
window.QueryInterface(Ci.nsIInterfaceRequestor)
.getInterface(Ci.nsIWebNavigation)
.QueryInterface(Ci.nsILoadContext)
.useRemoteTabs;
@@ -2557,21 +2556,17 @@ function UpdatePageProxyState()
}
function SetPageProxyState(aState)
{
BookmarkingUI.onPageProxyStateChanged(aState);
if (!gURLBar)
return;
- if (!gProxyFavIcon)
- gProxyFavIcon = document.getElementById("page-proxy-favicon");
-
gURLBar.setAttribute("pageproxystate", aState);
- gProxyFavIcon.setAttribute("pageproxystate", aState);
// the page proxy state is set to valid via OnLocationChange, which
// gets called when we switch tabs.
if (aState == "valid") {
gLastValidURLStr = gURLBar.value;
gURLBar.addEventListener("input", UpdatePageProxyState, false);
} else if (aState == "invalid") {
gURLBar.removeEventListener("input", UpdatePageProxyState, false);
@@ -6996,49 +6991,26 @@ var gIdentityHandler = {
delete this._overrideService;
return this._overrideService = Cc["@mozilla.org/security/certoverride;1"]
.getService(Ci.nsICertOverrideService);
},
get _identityIconCountryLabel () {
delete this._identityIconCountryLabel;
return this._identityIconCountryLabel = document.getElementById("identity-icon-country-label");
},
- get _identityIcons () {
- delete this._identityIcons;
- return this._identityIcons = document.getElementById("identity-icons");
- },
get _identityIcon () {
delete this._identityIcon;
- return this._identityIcon = document.getElementById("page-proxy-favicon");
+ return this._identityIcon = document.getElementById("identity-icon");
},
get _permissionList () {
delete this._permissionList;
return this._permissionList = document.getElementById("identity-popup-permission-list");
},
/**
- * Rebuild cache of the elements that may or may not exist depending
- * on whether there's a location bar.
- */
- _cacheElements : function() {
- delete this._identityBox;
- delete this._identityIcons;
- delete this._identityIconLabel;
- delete this._identityIconCountryLabel;
- delete this._identityIcon;
- delete this._permissionList;
- this._identityBox = document.getElementById("identity-box");
- this._identityIcons = document.getElementById("identity-icons");
- this._identityIconLabel = document.getElementById("identity-icon-label");
- this._identityIconCountryLabel = document.getElementById("identity-icon-country-label");
- this._identityIcon = document.getElementById("page-proxy-favicon");
- this._permissionList = document.getElementById("identity-popup-permission-list");
- },
-
- /**
* Handler for mouseclicks on the "More Information" button in the
* "identity-popup" panel.
*/
handleMoreInfoClick : function(event) {
displaySecurityInfo();
event.stopPropagation();
this._identityPopup.hidePopup();
},
@@ -7527,17 +7499,17 @@ var gIdentityHandler = {
// Update the popup strings
this.refreshIdentityPopup();
// Add the "open" attribute to the identity box for styling
this._identityBox.setAttribute("open", "true");
// Now open the popup, anchored off the primary chrome element
- this._identityPopup.openPopup(this._identityIcons, "bottomcenter topleft");
+ this._identityPopup.openPopup(this._identityIcon, "bottomcenter topleft");
},
onPopupShown(event) {
if (event.target == this._identityPopup) {
window.addEventListener("focus", this, true);
}
},
@@ -7570,17 +7542,17 @@ var gIdentityHandler = {
let urlString = value + "\n" + gBrowser.contentTitle;
let htmlString = "<a href=\"" + value + "\">" + value + "</a>";
let dt = event.dataTransfer;
dt.setData("text/x-moz-url", urlString);
dt.setData("text/uri-list", value);
dt.setData("text/plain", value);
dt.setData("text/html", htmlString);
- dt.setDragImage(gProxyFavIcon, 16, 16);
+ dt.setDragImage(this._identityIcon, 16, 16);
},
updateSitePermissions: function () {
while (this._permissionList.hasChildNodes())
this._permissionList.removeChild(this._permissionList.lastChild);
let uri = gBrowser.currentURI;
--- a/browser/base/content/browser.xul
+++ b/browser/base/content/browser.xul
@@ -699,17 +699,17 @@
aria-label="&urlbar.loginFillNotificationAnchor.label;"/>
<image id="password-notification-icon" class="notification-anchor-icon" role="button"
aria-label="&urlbar.passwordNotificationAnchor.label;"/>
<image id="webapps-notification-icon" class="notification-anchor-icon" role="button"
aria-label="&urlbar.webappsNotificationAnchor.label;"/>
<image id="plugins-notification-icon" class="notification-anchor-icon" role="button"
aria-label="&urlbar.pluginsNotificationAnchor.label;"/>
<image id="web-notifications-notification-icon" class="notification-anchor-icon" role="button"
- aria-label="&urlbar.webNotsNotificationAnchor2.label;"/>
+ aria-label="&urlbar.webNotsNotificationAnchor3.label;"/>
<image id="webRTC-shareDevices-notification-icon" class="notification-anchor-icon" role="button"
aria-label="&urlbar.webRTCShareDevicesNotificationAnchor.label;"/>
<image id="webRTC-sharingDevices-notification-icon" class="notification-anchor-icon" role="button"
aria-label="&urlbar.webRTCSharingDevicesNotificationAnchor.label;"/>
<image id="webRTC-shareMicrophone-notification-icon" class="notification-anchor-icon" role="button"
aria-label="&urlbar.webRTCShareMicrophoneNotificationAnchor.label;"/>
<image id="webRTC-sharingMicrophone-notification-icon" class="notification-anchor-icon" role="button"
aria-label="&urlbar.webRTCSharingMicrophoneNotificationAnchor.label;"/>
@@ -733,23 +733,21 @@
We only add the identity-box button to the tab order when the location bar
has focus, otherwise pressing F6 focuses it instead of the location bar -->
<box id="identity-box" role="button"
align="center"
aria-label="&urlbar.viewSiteInfo.label;"
onclick="gIdentityHandler.handleIdentityButtonEvent(event);"
onkeypress="gIdentityHandler.handleIdentityButtonEvent(event);"
ondragstart="gIdentityHandler.onDragStart(event);">
- <hbox id="identity-icons"
- consumeanchor="identity-box">
- <image id="tracking-protection-icon"/>
- <image id="page-proxy-favicon"
- onclick="PageProxyClickHandler(event);"
- pageproxystate="invalid"/>
- </hbox>
+ <image id="identity-icon"
+ consumeanchor="identity-box"
+ onclick="PageProxyClickHandler(event);"/>
+ <image id="tracking-protection-icon"/>
+ <image id="connection-icon"/>
<hbox id="identity-icon-labels">
<label id="identity-icon-label" class="plain" flex="1"/>
<label id="identity-icon-country-label" class="plain"/>
</hbox>
</box>
<box id="urlbar-display-box" align="center">
<label class="urlbar-display urlbar-display-switchtab" value="&urlbar.switchToTab.label;"/>
</box>
--- a/browser/base/content/test/general/browser_insecureLoginForms.js
+++ b/browser/base/content/test/general/browser_insecureLoginForms.js
@@ -36,26 +36,27 @@ add_task(function* test_simple() {
waitForInsecureLoginFormsStateChange(browser, 2),
]);
let { gIdentityHandler } = gBrowser.ownerGlobal;
gIdentityHandler._identityBox.click();
document.getElementById("identity-popup-security-expander").click();
if (expectWarning) {
- let identityBoxImage = gBrowser.ownerGlobal
- .getComputedStyle(document.getElementById("page-proxy-favicon"), "")
+ is_element_visible(document.getElementById("connection-icon"));
+ let connectionIconImage = gBrowser.ownerGlobal
+ .getComputedStyle(document.getElementById("connection-icon"), "")
.getPropertyValue("list-style-image");
let securityViewBG = gBrowser.ownerGlobal
.getComputedStyle(document.getElementById("identity-popup-securityView"), "")
.getPropertyValue("background-image");
let securityContentBG = gBrowser.ownerGlobal
.getComputedStyle(document.getElementById("identity-popup-security-content"), "")
.getPropertyValue("background-image");
- is(identityBoxImage,
+ is(connectionIconImage,
"url(\"chrome://browser/skin/identity-mixed-active-loaded.svg\")",
"Using expected icon image in the identity block");
is(securityViewBG,
"url(\"chrome://browser/skin/controlcenter/mcb-disabled.svg\")",
"Using expected icon image in the Control Center main view");
is(securityContentBG,
"url(\"chrome://browser/skin/controlcenter/mcb-disabled.svg\")",
"Using expected icon image in the Control Center subview");
--- a/browser/base/content/test/general/head.js
+++ b/browser/base/content/test/general/head.js
@@ -776,17 +776,18 @@ function assertMixedContentBlockingState
throw new Error("assertMixedContentBlockingState requires a browser and a states object");
}
let {passiveLoaded,activeLoaded,activeBlocked} = states;
let {gIdentityHandler} = tabbrowser.ownerGlobal;
let doc = tabbrowser.ownerDocument;
let identityBox = gIdentityHandler._identityBox;
let classList = identityBox.classList;
- let identityBoxImage = tabbrowser.ownerGlobal.getComputedStyle(doc.getElementById("page-proxy-favicon"), "").
+ let connectionIcon = doc.getElementById("connection-icon");
+ let connectionIconImage = tabbrowser.ownerGlobal.getComputedStyle(connectionIcon, "").
getPropertyValue("list-style-image");
let stateSecure = gIdentityHandler._state & Ci.nsIWebProgressListener.STATE_IS_SECURE;
let stateBroken = gIdentityHandler._state & Ci.nsIWebProgressListener.STATE_IS_BROKEN;
let stateInsecure = gIdentityHandler._state & Ci.nsIWebProgressListener.STATE_IS_INSECURE;
let stateActiveBlocked = gIdentityHandler._state & Ci.nsIWebProgressListener.STATE_BLOCKED_MIXED_ACTIVE_CONTENT;
let stateActiveLoaded = gIdentityHandler._state & Ci.nsIWebProgressListener.STATE_LOADED_MIXED_ACTIVE_CONTENT;
let statePassiveLoaded = gIdentityHandler._state & Ci.nsIWebProgressListener.STATE_LOADED_MIXED_DISPLAY_CONTENT;
@@ -794,47 +795,48 @@ function assertMixedContentBlockingState
is(activeBlocked, !!stateActiveBlocked, "Expected state for activeBlocked matches UI state");
is(activeLoaded, !!stateActiveLoaded, "Expected state for activeLoaded matches UI state");
is(passiveLoaded, !!statePassiveLoaded, "Expected state for passiveLoaded matches UI state");
if (stateInsecure) {
// HTTP request, there should be no MCB classes for the identity box and the non secure icon
// should always be visible regardless of MCB state.
ok(classList.contains("unknownIdentity"), "unknownIdentity on HTTP page");
- is(identityBoxImage, "url(\"chrome://browser/skin/identity-not-secure.svg\")", "Using 'non-secure' icon");
+ is_element_hidden(connectionIcon);
ok(!classList.contains("mixedActiveContent"), "No MCB icon on HTTP page");
ok(!classList.contains("mixedActiveBlocked"), "No MCB icon on HTTP page");
ok(!classList.contains("mixedDisplayContent"), "No MCB icon on HTTP page");
ok(!classList.contains("mixedDisplayContentLoadedActiveBlocked"), "No MCB icon on HTTP page");
} else {
// Make sure the identity box UI has the correct mixedcontent states and icons
is(classList.contains("mixedActiveContent"), activeLoaded,
"identityBox has expected class for activeLoaded");
is(classList.contains("mixedActiveBlocked"), activeBlocked && !passiveLoaded,
"identityBox has expected class for activeBlocked && !passiveLoaded");
is(classList.contains("mixedDisplayContent"), passiveLoaded && !(activeLoaded || activeBlocked),
"identityBox has expected class for passiveLoaded && !(activeLoaded || activeBlocked)");
is(classList.contains("mixedDisplayContentLoadedActiveBlocked"), passiveLoaded && activeBlocked,
"identityBox has expected class for passiveLoaded && activeBlocked");
+ is_element_visible(connectionIcon);
if (activeLoaded) {
- is(identityBoxImage, "url(\"chrome://browser/skin/identity-mixed-active-loaded.svg\")",
+ is(connectionIconImage, "url(\"chrome://browser/skin/identity-mixed-active-loaded.svg\")",
"Using active loaded icon");
}
if (activeBlocked && !passiveLoaded) {
- is(identityBoxImage, "url(\"chrome://browser/skin/identity-mixed-active-blocked.svg\")",
+ is(connectionIconImage, "url(\"chrome://browser/skin/identity-mixed-active-blocked.svg\")",
"Using active blocked icon");
}
if (passiveLoaded && !(activeLoaded || activeBlocked)) {
- is(identityBoxImage, "url(\"chrome://browser/skin/identity-mixed-passive-loaded.svg\")",
+ is(connectionIconImage, "url(\"chrome://browser/skin/identity-mixed-passive-loaded.svg\")",
"Using passive loaded icon");
}
if (passiveLoaded && activeBlocked) {
- is(identityBoxImage, "url(\"chrome://browser/skin/identity-mixed-passive-loaded.svg\")",
+ is(connectionIconImage, "url(\"chrome://browser/skin/identity-mixed-passive-loaded.svg\")",
"Using active blocked and passive loaded icon");
}
}
// Make sure the identity popup has the correct mixedcontent states
gIdentityHandler._identityBox.click();
let popupAttr = doc.getElementById("identity-popup").getAttribute("mixedcontent");
let bodyAttr = doc.getElementById("identity-popup-securityView-body").getAttribute("mixedcontent");
--- a/browser/locales/en-US/chrome/browser/browser.dtd
+++ b/browser/locales/en-US/chrome/browser/browser.dtd
@@ -196,17 +196,17 @@ These should match what Safari and other
<!ENTITY urlbar.defaultNotificationAnchor.label "View a notification">
<!ENTITY urlbar.geolocationNotificationAnchor.label "View the location request">
<!ENTITY urlbar.addonsNotificationAnchor.label "View the add-on install message">
<!ENTITY urlbar.indexedDBNotificationAnchor.label "View the app-offline storage message">
<!ENTITY urlbar.loginFillNotificationAnchor.label "Manage your login information">
<!ENTITY urlbar.passwordNotificationAnchor.label "Check if you want to save your password">
<!ENTITY urlbar.webappsNotificationAnchor.label "View the app install message">
<!ENTITY urlbar.pluginsNotificationAnchor.label "Manage plugin usage on this page">
-<!ENTITY urlbar.webNotsNotificationAnchor2.label "Change whether the site can receive notifications">
+<!ENTITY urlbar.webNotsNotificationAnchor3.label "Change whether you can receive notifications from the site">
<!ENTITY urlbar.webRTCShareDevicesNotificationAnchor.label "Manage sharing your camera and/or microphone with the site">
<!ENTITY urlbar.webRTCSharingDevicesNotificationAnchor.label "You are sharing your camera and/or microphone with the site">
<!ENTITY urlbar.webRTCShareMicrophoneNotificationAnchor.label "Manage sharing your microphone with the site">
<!ENTITY urlbar.webRTCSharingMicrophoneNotificationAnchor.label "You are sharing your microphone with the site">
<!ENTITY urlbar.webRTCShareScreenNotificationAnchor.label "Manage sharing your windows or screen with the site">
<!ENTITY urlbar.webRTCSharingScreenNotificationAnchor.label "You are sharing a window or your screen with the site">
--- a/browser/themes/shared/identity-block/identity-block.inc.css
+++ b/browser/themes/shared/identity-block/identity-block.inc.css
@@ -70,82 +70,100 @@
transition-delay: 0s, 100s, 100s;
}
@conditionalForwardWithUrlbar@:not(:hover) > #forward-button[disabled] + #urlbar > #notification-popup-box[hidden] + #identity-box {
/* when not hovered anymore, trigger a new non-delayed transition to react to the forward button hiding */
padding-inline-start: calc(var(--backbutton-urlbar-overlap) + 4.01px);
}
+/* MAIN IDENTITY ICON */
+
+#identity-icon {
+ width: 16px;
+ height: 16px;
+ list-style-image: url(chrome://browser/skin/identity-icon.svg#normal);
+}
+
+#identity-box:hover > #identity-icon,
+#identity-box[open=true] > #identity-icon {
+ list-style-image: url(chrome://browser/skin/identity-icon.svg#hover);
+}
+
+#urlbar[pageproxystate="valid"] > #identity-box.chromeUI > #identity-icon {
+ list-style-image: url(chrome://branding/content/identity-icons-brand.svg);
+}
+
+#urlbar[pageproxystate="invalid"] > #identity-box > #identity-icon {
+ opacity: 0.3;
+}
+
+#urlbar[actiontype="searchengine"] > #identity-box > #identity-icon {
+ -moz-image-region: inherit;
+ list-style-image: url(chrome://global/skin/icons/autocomplete-search.svg#search-icon);
+ width: 16px;
+ height: 16px;
+ opacity: 1;
+}
+
/* TRACKING PROTECTION ICON */
#tracking-protection-icon {
width: 16px;
height: 16px;
- margin-inline-start: 0;
- margin-inline-end: 2px;
+ margin-inline-start: 2px;
+ margin-inline-end: 0;
list-style-image: url(chrome://browser/skin/tracking-protection-16.svg);
opacity: 1;
}
#tracking-protection-icon[state="loaded-tracking-content"] {
list-style-image: url(chrome://browser/skin/tracking-protection-disabled-16.svg);
}
#tracking-protection-icon[animate] {
transition: margin-left 200ms ease-out, margin-right 200ms ease-out;
}
#tracking-protection-icon:not([state]) {
- margin-inline-start: -18px;
+ margin-inline-end: -18px;
pointer-events: none;
opacity: 0;
/* Only animate the shield in, when it disappears hide it immediately. */
transition: none;
}
-#urlbar[pageproxystate="invalid"] > #identity-box > #identity-icons > #tracking-protection-icon {
+#urlbar[pageproxystate="invalid"] > #identity-box > #tracking-protection-icon {
+ visibility: collapse;
+}
+
+/* CONNECTION ICON */
+
+#connection-icon {
+ width: 16px;
+ height: 16px;
+ margin-inline-start: 2px;
visibility: collapse;
}
-/* MAIN IDENTITY ICON */
-
-#page-proxy-favicon {
- width: 16px;
- height: 16px;
- list-style-image: url(chrome://browser/skin/identity-not-secure.svg);
+#urlbar[pageproxystate="valid"] > #identity-box.verifiedDomain > #connection-icon,
+#urlbar[pageproxystate="valid"] > #identity-box.verifiedIdentity > #connection-icon {
+ list-style-image: url(chrome://browser/skin/identity-secure.svg);
+ visibility: visible;
}
-.chromeUI > #identity-icons > #page-proxy-favicon[pageproxystate="valid"] {
- list-style-image: url(chrome://branding/content/identity-icons-brand.svg);
-}
-
-.verifiedDomain > #identity-icons > #page-proxy-favicon[pageproxystate="valid"],
-.verifiedIdentity > #identity-icons > #page-proxy-favicon[pageproxystate="valid"] {
- list-style-image: url(chrome://browser/skin/identity-secure.svg);
-}
-
-.insecureLoginForms > #identity-icons > #page-proxy-favicon[pageproxystate="valid"],
-.mixedActiveContent > #identity-icons > #page-proxy-favicon[pageproxystate="valid"] {
+#urlbar[pageproxystate="valid"] > #identity-box.insecureLoginForms > #connection-icon,
+#urlbar[pageproxystate="valid"] > #identity-box.mixedActiveContent > #connection-icon {
list-style-image: url(chrome://browser/skin/identity-mixed-active-loaded.svg);
+ visibility: visible;
}
-.weakCipher > #identity-icons > #page-proxy-favicon[pageproxystate="valid"],
-.mixedDisplayContent > #identity-icons > #page-proxy-favicon[pageproxystate="valid"],
-.mixedDisplayContentLoadedActiveBlocked > #identity-icons > #page-proxy-favicon[pageproxystate="valid"] {
+#urlbar[pageproxystate="valid"] > #identity-box.weakCipher > #connection-icon,
+#urlbar[pageproxystate="valid"] > #identity-box.mixedDisplayContent > #connection-icon,
+#urlbar[pageproxystate="valid"] > #identity-box.mixedDisplayContentLoadedActiveBlocked > #connection-icon {
list-style-image: url(chrome://browser/skin/identity-mixed-passive-loaded.svg);
-}
-
-.mixedActiveBlocked > #identity-icons > #page-proxy-favicon[pageproxystate="valid"] {
- list-style-image: url(chrome://browser/skin/identity-mixed-active-blocked.svg);
+ visibility: visible;
}
-#page-proxy-favicon[pageproxystate="invalid"] {
- opacity: 0.3;
+#urlbar[pageproxystate="valid"] > #identity-box.mixedActiveBlocked > #connection-icon {
+ list-style-image: url(chrome://browser/skin/identity-mixed-active-blocked.svg);
+ visibility: visible;
}
-
-#urlbar[actiontype="searchengine"] > #identity-box > #identity-icons > #page-proxy-favicon {
- -moz-image-region: inherit;
- list-style-image: url(chrome://global/skin/icons/autocomplete-search.svg#search-icon);
- width: 16px;
- height: 16px;
- opacity: 1;
-}
new file mode 100755
--- /dev/null
+++ b/browser/themes/shared/identity-block/identity-icon.svg
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- 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/. -->
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
+ width="48" height="16" viewBox="0 0 32 16">
+ <defs>
+ <circle id="shape-circle-base" cx="8" cy="8" r="7" />
+ <g id="shape-i">
+ <circle cx="8" cy="5" r="1" />
+ <rect x="7" y="7" width="2" height="5" rx="1" ry="1" />
+ </g>
+ <mask id="mask-ring-cutout">
+ <rect width="16" height="16" fill="#000" />
+ <use xlink:href="#shape-circle-base" fill="#fff" />
+ <circle cx="8" cy="8" r="6" fill="#000" />
+ </mask>
+ </defs>
+
+ <view id="normal" viewBox="0 0 16 16"/>
+ <g>
+ <use xlink:href="#shape-circle-base" mask="url(#mask-ring-cutout)" fill="#999" />
+ <use xlink:href="#shape-i" fill="#999" />
+ </g>
+
+ <view id="hover" viewBox="16 0 16 16"/>
+ <g transform="translate(16)">
+ <use xlink:href="#shape-circle-base" fill="#4c9ed9" />
+ <use xlink:href="#shape-i" fill="#fff" />
+ </g>
+</svg>
--- a/browser/themes/shared/jar.inc.mn
+++ b/browser/themes/shared/jar.inc.mn
@@ -54,16 +54,17 @@
skin/classic/browser/customizableui/whimsy@2x.png (../shared/customizableui/whimsy@2x.png)
skin/classic/browser/downloads/contentAreaDownloadsView.css (../shared/downloads/contentAreaDownloadsView.css)
skin/classic/browser/drm-icon.svg (../shared/drm-icon.svg)
skin/classic/browser/fullscreen/insecure.svg (../shared/fullscreen/insecure.svg)
skin/classic/browser/fullscreen/secure.svg (../shared/fullscreen/secure.svg)
skin/classic/browser/heartbeat-icon.svg (../shared/heartbeat-icon.svg)
skin/classic/browser/heartbeat-star-lit.svg (../shared/heartbeat-star-lit.svg)
skin/classic/browser/heartbeat-star-off.svg (../shared/heartbeat-star-off.svg)
+ skin/classic/browser/identity-icon.svg (../shared/identity-block/identity-icon.svg)
skin/classic/browser/identity-not-secure.svg (../shared/identity-block/identity-not-secure.svg)
skin/classic/browser/identity-secure.svg (../shared/identity-block/identity-secure.svg)
skin/classic/browser/identity-mixed-active-blocked.svg (../shared/identity-block/identity-mixed-active-blocked.svg)
skin/classic/browser/identity-mixed-passive-loaded.svg (../shared/identity-block/identity-mixed-passive-loaded.svg)
skin/classic/browser/identity-mixed-active-loaded.svg (../shared/identity-block/identity-mixed-active-loaded.svg)
skin/classic/browser/info.svg (../shared/info.svg)
skin/classic/browser/tracking-protection-16.svg (../shared/identity-block/tracking-protection-16.svg)
skin/classic/browser/tracking-protection-disabled-16.svg (../shared/identity-block/tracking-protection-disabled-16.svg)
--- a/devtools/client/framework/gDevTools.jsm
+++ b/devtools/client/framework/gDevTools.jsm
@@ -77,18 +77,17 @@ DevTools.prototype = {
* - visibilityswitch: Property name to allow us to hide this tool from the
* DevTools Toolbox.
* A falsy value indicates that it cannot be hidden.
* - icon: URL pointing to a graphic which will be used as the src for an
* 16x16 img tag (string|required)
* - invertIconForLightTheme: The icon can automatically have an inversion
* filter applied (default is false). All builtin tools are true, but
* addons may omit this to prevent unwanted changes to the `icon`
- * image. See devtools/client/themes/filters.svg#invert for
- * the filter being applied to the images (boolean|optional)
+ * image. filter: invert(1) is applied to the image (boolean|optional)
* - url: URL pointing to a XUL/XHTML document containing the user interface
* (string|required)
* - label: Localized name for the tool to be displayed to the user
* (string|required)
* - hideInOptions: Boolean indicating whether or not this tool should be
shown in toolbox options or not. Defaults to false.
* (boolean)
* - build: Function that takes an iframe, which has been populated with the
--- a/devtools/client/jar.mn
+++ b/devtools/client/jar.mn
@@ -157,20 +157,16 @@ devtools.jar:
skin/images/add.svg (themes/images/add.svg)
skin/images/filters.svg (themes/images/filters.svg)
skin/images/filter-swatch.svg (themes/images/filter-swatch.svg)
skin/images/pseudo-class.svg (themes/images/pseudo-class.svg)
skin/images/controls.png (themes/images/controls.png)
skin/images/controls@2x.png (themes/images/controls@2x.png)
skin/images/animation-fast-track.svg (themes/images/animation-fast-track.svg)
skin/images/performance-icons.svg (themes/images/performance-icons.svg)
- skin/images/newtab.png (themes/images/newtab.png)
- skin/images/newtab@2x.png (themes/images/newtab@2x.png)
- skin/images/newtab-inverted.png (themes/images/newtab-inverted.png)
- skin/images/newtab-inverted@2x.png (themes/images/newtab-inverted@2x.png)
* skin/widgets.css (themes/widgets.css)
skin/images/power.svg (themes/images/power.svg)
skin/images/filetypes/dir-close.svg (themes/images/filetypes/dir-close.svg)
skin/images/filetypes/dir-open.svg (themes/images/filetypes/dir-open.svg)
skin/images/filetypes/globe.svg (themes/images/filetypes/globe.svg)
skin/images/filetypes/store.svg (themes/images/filetypes/store.svg)
skin/images/commandline-icon.png (themes/images/commandline-icon.png)
skin/images/commandline-icon@2x.png (themes/images/commandline-icon@2x.png)
@@ -283,17 +279,16 @@ devtools.jar:
skin/images/dock-bottom@2x.png (themes/images/dock-bottom@2x.png)
skin/images/dock-bottom-minimize@2x.png (themes/images/dock-bottom-minimize@2x.png)
skin/images/dock-bottom-maximize@2x.png (themes/images/dock-bottom-maximize@2x.png)
skin/images/dock-side@2x.png (themes/images/dock-side@2x.png)
* skin/floating-scrollbars.css (themes/floating-scrollbars.css)
skin/floating-scrollbars-light.css (themes/floating-scrollbars-light.css)
* skin/inspector.css (themes/inspector.css)
skin/images/profiler-stopwatch.svg (themes/images/profiler-stopwatch.svg)
- skin/images/profiler-stopwatch-checked.svg (themes/images/profiler-stopwatch-checked.svg)
skin/images/tool-options.svg (themes/images/tool-options.svg)
skin/images/tool-webconsole.svg (themes/images/tool-webconsole.svg)
skin/images/tool-canvas.svg (themes/images/tool-canvas.svg)
skin/images/tool-debugger.svg (themes/images/tool-debugger.svg)
skin/images/tool-debugger-paused.svg (themes/images/tool-debugger-paused.svg)
skin/images/tool-inspector.svg (themes/images/tool-inspector.svg)
skin/images/tool-shadereditor.svg (themes/images/tool-shadereditor.svg)
skin/images/tool-styleeditor.svg (themes/images/tool-styleeditor.svg)
--- a/devtools/client/shared/widgets/spectrum-frame.xhtml
+++ b/devtools/client/shared/widgets/spectrum-frame.xhtml
@@ -14,11 +14,11 @@
body {
margin: 0;
padding: 0;
}
</style>
</head>
<body role="application">
<div id="spectrum"></div>
- <div id="eyedropper-button"></div>
+ <button id="eyedropper-button" class="devtools-button"></button>
</body>
-</html>
\ No newline at end of file
+</html>
--- a/devtools/client/shared/widgets/spectrum.css
+++ b/devtools/client/shared/widgets/spectrum.css
@@ -1,45 +1,24 @@
/* 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/. */
#eyedropper-button {
- background-image: url("chrome://devtools/skin/images/command-eyedropper.png");
- width: 16px;
- height: 16px;
- background-size: 64px 16px;
- background-position: 0 center;
- background-repeat: no-repeat;
- -moz-margin-start: 5px;
- border-radius: 2px;
- cursor: pointer;
+ margin-inline-start: 5px;
}
-.theme-light #eyedropper-button {
- filter: url(chrome://devtools/skin/images/filters.svg#invert);
- border: 1px solid #AAA;
-}
-
-.theme-dark #eyedropper-button {
- border: 1px solid #444;
-}
-
-#eyedropper-button:hover {
- background-position: -16px center;
-}
-#eyedropper-button:hover:active {
- background-position: -32px center;
-}
-#eyedropper-button[checked=true] {
- background-position: -48px center;
+#eyedropper-button::before {
+ background-image: url("chrome://devtools/skin/images/command-eyedropper.png");
+ background-size: 64px 16px;
+ background-position: 0 center;
}
@media (min-resolution: 1.1dppx) {
- #eyedropper-button {
+ #eyedropper-button::before {
background-image: url("chrome://devtools/skin/images/command-eyedropper@2x.png");
}
}
/* Mix-in classes */
.spectrum-checker {
background-color: #eee;
--- a/devtools/client/themes/animationinspector.css
+++ b/devtools/client/themes/animationinspector.css
@@ -128,21 +128,16 @@ body {
.pause-button::before {
background-image: url("images/debugger-pause.png");
}
#rewind-timeline::before {
background-image: url("images/rewind.png");
}
-#element-picker[checked]::before {
- background-position: -48px 0;
- filter: none; /* Icon is blue when checked, don't invert for light theme */
-}
-
.pause-button.paused::before {
background-image: url("images/debugger-play.png");
}
@media (min-resolution: 1.1dppx) {
#element-picker::before {
background-image: url("chrome://devtools/skin/images/command-pick@2x.png");
background-size: 64px;
@@ -399,22 +394,22 @@ body {
.animation-target .node-highlighter {
background: url("chrome://devtools/skin/images/vview-open-inspector.png") no-repeat 0 0;
padding-left: 16px;
margin-right: 5px;
cursor: pointer;
}
.animation-target .node-highlighter:hover {
- background-position: -32px 0;
+ filter: url(images/filters.svg#checked-icon-state);
}
.animation-target .node-highlighter:active,
.animation-target .node-highlighter.selected {
- background-position: -16px 0;
+ filter: url(images/filters.svg#checked-icon-state) brightness(0.9);
}
/* Animation title gutter, contains the name, duration, iteration */
.animation-title {
background-color: var(--theme-toolbar-background);
border-bottom: 1px solid var(--theme-splitter-color);
padding: 1px 4px;
--- a/devtools/client/themes/canvasdebugger.css
+++ b/devtools/client/themes/canvasdebugger.css
@@ -37,20 +37,16 @@
#snapshots-pane .devtools-toolbar {
-moz-border-end: 1px solid var(--theme-splitter-color);
}
#record-snapshot {
list-style-image: url("chrome://devtools/skin/images/profiler-stopwatch.svg");
}
-#record-snapshot[checked] {
- list-style-image: url("chrome://devtools/skin/images/profiler-stopwatch-checked.svg");
-}
-
/* Snapshots items */
.snapshot-item-thumbnail {
image-rendering: -moz-crisp-edges;
background-image: var(--checkerboard-pattern);
background-size: 12px 12px, 12px 12px;
background-position: 0px 0px, 6px 6px;
background-repeat: repeat, repeat;
@@ -98,25 +94,18 @@
}
#snapshots-list .selected label {
/* Text inside a selected item should not be custom colored. */
color: inherit !important;
}
/* Debugging pane controls */
-
-#debugging-controls .devtools-toolbarbutton > .toolbarbutton-icon {
- width: 16px;
- height: 16px;
-}
-
#resume {
list-style-image: url(images/debugger-play.png);
- -moz-image-region: rect(0px,32px,16px,16px);
}
#step-over {
list-style-image: url(images/debugger-step-over.png);
}
#step-in {
list-style-image: url(images/debugger-step-in.png);
@@ -124,40 +113,31 @@
#step-out {
list-style-image: url(images/debugger-step-out.png);
}
@media (min-resolution: 1.1dppx) {
#resume {
list-style-image: url(images/debugger-play@2x.png);
- -moz-image-region: rect(0px,64px,32px,32px);
}
#step-over {
list-style-image: url(images/debugger-step-over@2x.png);
}
#step-in {
list-style-image: url(images/debugger-step-in@2x.png);
}
#step-out {
list-style-image: url(images/debugger-step-out@2x.png);
}
}
-#debugging-controls > toolbarbutton {
- transition: opacity 0.15s ease-in-out;
-}
-
-#debugging-controls > toolbarbutton[disabled=true] {
- opacity: 0.5;
-}
-
#calls-slider {
-moz-padding-end: 24px;
}
#calls-slider .scale-slider {
margin: 0;
}
--- a/devtools/client/themes/commandline.inc.css
+++ b/devtools/client/themes/commandline.inc.css
@@ -47,17 +47,17 @@
}
.developer-toolbar-button > image {
margin: auto 10px;
}
:root[devtoolstheme="light"] #developer-toolbar > toolbarbutton:not([checked=true]) > image,
:root[devtoolstheme="light"] .gclitoolbar-input-node:not([focused=true])::before {
- filter: url("chrome://devtools/skin/images/filters.svg#invert");
+ filter: invert(1);
}
.developer-toolbar-button > .toolbarbutton-icon,
#developer-toolbar-closebutton > .toolbarbutton-icon {
width: 16px;
height: 16px;
}
--- a/devtools/client/themes/debugger.css
+++ b/devtools/client/themes/debugger.css
@@ -57,16 +57,20 @@
/* Sources toolbar */
#sources-toolbar > .devtools-toolbarbutton,
#sources-controls > .devtools-toolbarbutton {
min-width: 32px;
}
+#sources-toolbar .devtools-toolbarbutton:not([label]) {
+ -moz-image-region: rect(0,16px,16px,0);
+}
+
#black-box {
list-style-image: url(images/debugger-blackbox.png);
}
@media (min-resolution: 1.1dppx) {
#black-box {
list-style-image: url(images/debugger-blackbox@2x.png);
}
@@ -81,44 +85,43 @@
list-style-image: url(images/debugger-prettyprint@2x.png);
}
}
#toggle-breakpoints {
list-style-image: url(images/debugger-toggleBreakpoints.png);
}
+#toggle-breakpoints[checked] {
+ -moz-image-region: rect(0,32px,16px,16px) !important;
+}
+
+#toggle-breakpoints[checked] > image {
+ /* This button has a special checked image, don't make it blue */
+ filter: none;
+}
+
@media (min-resolution: 1.1dppx) {
+ #sources-toolbar .devtools-toolbarbutton:not([label]) {
+ -moz-image-region: rect(0,32px,32px,0);
+ }
+
#toggle-breakpoints {
list-style-image: url(images/debugger-toggleBreakpoints@2x.png);
}
+
+ #toggle-breakpoints[checked] {
+ -moz-image-region: rect(0,64px,32px,32px) !important;
+ }
}
#toggle-promise-debugger {
/* TODO Bug 1186119: Add a toggle promise debugger image */
}
-#sources-toolbar .devtools-toolbarbutton:not([label]) {
- -moz-image-region: rect(0px,16px,16px,0px);
-}
-
-#sources-toolbar .devtools-toolbarbutton:not([label])[checked] {
- -moz-image-region: rect(0px,32px,16px,16px);
-}
-
-@media (min-resolution: 1.1dppx) {
- #sources-toolbar .devtools-toolbarbutton:not([label]) {
- -moz-image-region: rect(0px,32px,32px,0px);
- }
-
- #sources-toolbar .devtools-toolbarbutton:not([label])[checked] {
- -moz-image-region: rect(0px,64px,32px,32px);
- }
-}
-
#sources .black-boxed {
color: rgba(128,128,128,0.4);
}
#sources .selected .black-boxed {
color: rgba(255,255,255,0.4);
}
@@ -214,31 +217,21 @@
/* Text inside a selected item should not be custom colored. */
color: inherit !important;
}
/* Tracer */
#trace {
list-style-image: url(images/tracer-icon.png);
- -moz-image-region: rect(0px,16px,16px,0px);
-}
-
-#trace[checked] {
- -moz-image-region: rect(0px,32px,16px,16px);
}
@media (min-resolution: 1.1dppx) {
#trace {
list-style-image: url(images/tracer-icon@2x.png);
- -moz-image-region: rect(0px,32px,32px,0px);
- }
-
- #trace[checked] {
- -moz-image-region: rect(0px,64px,32px,32px);
}
}
#clear-tracer {
/* Make this button as narrow as the text inside it. */
min-width: 1px;
}
@@ -544,52 +537,34 @@
}
.theme-light .dbg-results-line-contents-string[match=true] {
color: var(--theme-body-color);
}
/* Toolbar controls */
-#debugger-toolbar .devtools-toolbarbutton:not([label]) > .toolbarbutton-icon,
-#sources-toolbar .devtools-toolbarbutton:not([label]) > .toolbarbutton-icon {
- width: 16px;
- height: 16px;
-}
-
#resume {
list-style-image: url(images/debugger-pause.png);
- -moz-image-region: rect(0px,16px,16px,0px);
}
#resume[checked] {
list-style-image: url(images/debugger-play.png);
}
@media (min-resolution: 1.1dppx) {
#resume {
list-style-image: url(images/debugger-pause@2x.png);
- -moz-image-region: rect(0px,32px,32px,0px);
}
#resume[checked] {
list-style-image: url(images/debugger-play@2x.png);
- -moz-image-region: rect(0px,64px,32px,32px);
}
}
-#debugger-controls toolbarbutton {
- transition: opacity 0.15s ease-in-out;
-}
-
-#debugger-controls toolbarbutton[disabled] {
- opacity: .5;
- transition: none;
-}
-
#resume[break-on-next] {
background: var(--theme-highlight-lightorange);
}
#step-over {
list-style-image: url(images/debugger-step-over.png);
}
@@ -611,44 +586,31 @@
}
#step-out {
list-style-image: url(images/debugger-step-out@2x.png);
}
}
#instruments-pane-toggle {
- background: none;
- box-shadow: none;
- border: none;
list-style-image: url(images/debugger-collapse.png);
- -moz-image-region: rect(0px,16px,16px,0px);
}
#instruments-pane-toggle[pane-collapsed] {
list-style-image: url(images/debugger-expand.png);
}
-#instruments-pane-toggle:hover {
- -moz-image-region: rect(0px,32px,16px,16px);
-}
-
@media (min-resolution: 1.1dppx) {
#instruments-pane-toggle {
list-style-image: url(images/debugger-collapse@2x.png);
- -moz-image-region: rect(0px,32px,32px,0px);
}
#instruments-pane-toggle[pane-collapsed] {
list-style-image: url(images/debugger-expand@2x.png);
}
-
- #instruments-pane-toggle:hover {
- -moz-image-region: rect(0px,64px,32px,32px);
- }
}
/* Horizontal vs. vertical layout */
#vertical-layout-panes-container {
min-height: 35vh;
max-height: 80vh;
}
deleted file mode 100644
index 6726f282090658b241cf9dde5a566554cd4b3549..0000000000000000000000000000000000000000
GIT binary patch
literal 0
Hc$@<O00001
index 9573fc72d9430189cd685a56d121cbdadb06ed7a..75c9260436248d87df8a630a193a2e33f0542aa4
GIT binary patch
literal 192
zc$@*i06+hUP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0001oNkl<Zc-muN
z7(U?Z_g|;KeE)Tm82t6euQM11fF$0&eanZ<@Yk<j^P(Gq)c_d#`_JFC|NsBzLYF7n
z0FZaSe*eAw$B!RsWE%kW>&4ICeuh$Fz@=~BenyaMz^>1qe`=EHg`bVUK;$Ml5MRCe
u&x0)*K`}zm0HA-*5}lB~{W?F4@(=*;6FEZStfp%K0000<MNUMnLSTZCcvqeP
index 12f7223bcba6404f5fceeeae090537d9dabf11c3..1545db409483cb1c0f43d74fa8805eca7ebdfc1b
GIT binary patch
literal 216
zc%17D@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJ`JOJ0Ar-gYPTR=apdjEHdB8L0
zN~O$k&KRe;2L*N3&S|_h`OZxa*3OMV%0FAbPm&jsiYqE;4-|QN>eZ6ZkwQ!ND{okG
zCYMoZ<r!y>C4YPl>`|G?uygOmYiSOQGxr=hamLa|;mz;TIN9q4jS{z(@TxX)962)S
z0LwYmMs5dhhP^Et(m8Tn_GcXZktpK!`tf1cE`F8|@{{al9yrzvwB!)u^tAcspG=>r
Q2Xrcfr>mdKI;Vst09h?r2LJ#7
index f317997264a8b8b3172ed8d96bebcf4bbe372075..a1957a8df30a62c931a82bd0ac45d80e851b9ac7
GIT binary patch
literal 201
zc$@*r05<=LP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0001xNkl<Zc-muN
z7(U?Z_g|;KeE)Tm82t6euQM11fF$0&eanZ<@Yk<j^P(Gq)c|Dv|NsBFzWw;wjVw>J
z0Y85HQ2YA*_jY74q7C@`?Pn;^j~CGu5^cb@Z$Be|23#WB0I(}Q|I`HXcad!XG!VJJ
z{rKHSk^!$?{pZ0Jji4AIXaLaPXNgWo-+rARMtKMTvMf1~q|hF100000NkvXXu0mjf
DDpy#q
index 091601f5c65085589f02f859b3d10251011b010e..b6892f6c08a32fbef7c89060cd936b39b439b4e0
GIT binary patch
literal 223
zc%17D@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJWu7jMAr-fhC0G|Hh%9K<zhAG*
z{%E$zA?=RB1HMs7i)251eXXy|CUo$6{C=L5&luQ@81Kq_`1LjW-unCX+j%;e>;C;&
z$-AZI`}Ozx{Vtzn<oG$?Fn<64T|7a~`s@l#e{Qe$G^n()Vi0^{V7beZ!S;lE1M>?3
z))K##FX!97=y$mJ1p53x_2TvV_%@a3f3K%ADzfu*vYq6bW%=Ot`KdfWNA)n7Ffa(`
W%|CzMw^b16Vg^rFKbLh*2~7ZduvrHH
index 8288bdfc37719ae15951977b499ee8c35625d93e..5863380b0d373db4f5982ef4fc9a1754d46b9ede
GIT binary patch
literal 108
zc%17D@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`#-1*YAr-fh6C~;$oZdb^Hh%x#
zJAd9Df3H`QWWng6$n#iO+BBg;n!!tFg3IU4((`W^Ffn)(Uo$_-xy=r!ox#)9&t;uc
GLK6UioFbI~
index 53ed141a2cb726197443d51c669bbde60067ae5e..3d38eccd2af098728d1a18ba3755d2ddd5312245
GIT binary patch
literal 151
zc%17D@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJI8PVHkcwMxr)}gsV8Fw&Ihc(v
zrFD(i%^On#zt2qxk$mT%aO88$N^S<FGtd5R{}?4bzyE!m_w!X5E2k|l4&4%<KHHgr
ykww4(Nc4$x$oJaKKO6H`^>WburNs;a8yFZ)N6fmzc(wv)6N9I#pUXO@geCxVjWyK(
index 9189a0a206b1989eb9c6998beead15c3b1ddbf1f..2bde10cb475dbab35236b4a2003a0dcec5e5118b
GIT binary patch
literal 184
zc%17D@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`^`0({Ar-ftUfRvs;vm5GU^m~p
zN6p%Y<XD)QXB%#0Jm_@9gN3`edG7T-gQP7Rg<tX4|2k+BXU@}EHX-OC8$+sX_nKUe
zhp*Yrxp@VrtUdGQEu&G3k-)|K>`(L*svomQq%*9GWtjA(<J)c<rXZ=ATT65emA22m
i`TUop=O<-bW%f9iT@i*d<p+RHVeoYIb6Mw<&;$TPH$$WV
index 5fe68e1d1dc71e9c53cc70391649edf409bebafa..b6b06502e830a8de7e3003d7e6497799784f9180
GIT binary patch
literal 309
zc$@(>0m}Y~P)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F80002|Nkl<Zc-rli
zJxT;Y5QRqs0}(bgF%~1efC?glm~3F?3B*V|fsqH$KnxWJ12I_7GM6xzz^SgkUMO+d
zrNWK2E9nnj{?Yw-)l@2#Wf0|)B-3%%bsHf9K+-0Z??n0npa%g0`tdKY2q52?*(gB3
zgQP8RJ~Okm5CIpF2SnV75b$vR0+K5)X;}de>ob7v#|ZdqOpx`q@B2}JfCorgU_Ol!
z@FW=r3-CpV0Fu59l#e66V3JsGe$2K4N~ll6AbSx*^ob~!X0~2_h)C`MV7vGf1Ip_!
z<-@Yq&`Wl0W}8hZko0|CvPWj#ZAvo`9WhVOXC<ptDl6a*3s0)E%~?-e00000NkvXX
Hu0mjfhERG`
index f2c6c52b9e69ef842671be8b56b5b22d8b25b10f..5cbc7274f071b80e6660f23f3ddd66f1aca7af86
GIT binary patch
literal 195
zc%17D@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`U7jwEAr-goPTI}M<S5X#mARL-
zdjtEy0|(OdHZmUM%W>#&*|6bu!t<@gALONDi)7xkd_OFH_QOFNGwtpf_g7B29K_!c
zp1RE==Reo#a?Pc+5dkNI>>~d%B}fbUC~aHbA(PzHDSxw|oBPUsmnvS)h&Km&oIi8u
tJYD<h`2`{4?CZ?CzZrL#+FZ&qV#*I?lK)zHBOT}}22WQ%mvv4FO#q?2OhNzv
index 4c3cf88fb9a5e78a2562ee91a65e7fb44c3f1d54..345d07cea08f86cd1095c1e5ceb953dc75efddd5
GIT binary patch
literal 323
zc$@)40lfZ+P)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F80003BNkl<Zc-rlj
zJxT;Y5QSG33`E$}#8`~<0;?b*h{*<Ko<NMm6Bu~_H&_f62Lllq&oY-Vn82y7zg}oZ
zajC>)5xbIp@WOt4bU&(kP*ha(n~35;kolx(n$^GLq?BG4Ug{u_Q~~8Jklq34t^<HR
zeE}>C$X9*H$N|8Nq!n;H>cduC01QNK5OLE3z|8RlNY1RJc>&C<GXUN30kGSsk@d1|
z+mQo+8AvK%KJ)@G2bnkn@QDiml0I}4_dTAV4y+gNDXlw{P^Vod+a81H8BtFA;9>qj
zL~;!P8`(!Opxl2@9OvDJR<iRxWG&k|M$*ThlHD@%R`w4`N3_R0KmIORQBl!9>l4A4
Vd`Ig0UFiS-002ovPDHLkV1n=2hMNEY
--- a/devtools/client/themes/images/filters.svg
+++ b/devtools/client/themes/images/filters.svg
@@ -1,20 +1,19 @@
<!-- 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/. -->
<svg height="0" xmlns="http://www.w3.org/2000/svg">
- <filter id="invert" x="0%" y="0%" width="100%" height="100%"
- primitiveUnits="objectBoundingBox">
- <feComponentTransfer>
- <feFuncR type="table" tableValues=".1 0"/>
- <feFuncG type="table" tableValues=".1 0"/>
- <feFuncB type="table" tableValues=".1 0"/>
- </feComponentTransfer>
+ <filter id="checked-icon-state">
+ <feColorMatrix in="SourceGraphic" type="matrix"
+ values="0 0 0 0 0.043
+ 0 0 0 0 0.415
+ 0 0 0 0 0.79
+ 0 0 0 1 0"/>
</filter>
<!-- Web Audio Gradients -->
<linearGradient id="bypass-light" x1="6%" y1="8%" x2="12%" y2="12%" spreadMethod="repeat">
<stop offset="0%" stop-color="#f0f1f2"/> <!-- theme-toolbar-background -->
<stop offset="50%" stop-color="#fff"/>
</linearGradient>
deleted file mode 100644
index 2d29c2cbea688fdf44ba7d1617bd9edd8a04a4c4..0000000000000000000000000000000000000000
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index 6feba0e83eaad385ae512fc611187c10dec6e9d4..0000000000000000000000000000000000000000
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index 32e42b04cce15cb654b44bc882b264bec5efa963..0000000000000000000000000000000000000000
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index ffde5f05086c366c5873e0d5fa383f45982ae002..0000000000000000000000000000000000000000
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
--- a/devtools/client/themes/images/profiler-stopwatch-checked.svg
+++ /dev/null
@@ -1,17 +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/. -->
-<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
- <g fill="#3bace5" fill-rule="evenodd">
- <path d="m8,1c-3.9,0-7,3.1-7,7s3.1,7 7,7c3.9,0 7-3.1 7-7s-3.1-7-7-7zm-.1,12c-2.8,0-5-2.2-5-5 0-2.8 2.2-5 5-5s5,2.2 5,5c0,2.8-2.2,5-5,5z"/>
- <path d="m8,6.9c.6,0 1.1,.5 1.1,1.1 0,.6-.5,1.1-1.1,1.1-.6,0-1.1-.5-1.1-1.1 0-.6 .5-1.1 1.1-1.1z"/>
- <path d="m11.3,4.6l-3.9,2.5 1.5,1.4 2.4-3.9z"/>
- <path opacity=".4" d="m4.6,10c.7,1.2 2,2 3.4,2 1.5,0 2.7-.8 3.4-2h-6.8z"/>
- <g opacity=".3">
- <path d="m7.1,5.1l-.6-1.3-.9,.4 .7,1.3c.2-.1 .5-.3 .8-.4z"/>
- <path d="m9.8,5.6l.7-1.4-.9-.4-.7,1.3c.3,.2 .6,.3 .9,.5z"/>
- <path d="m10.8,7c.1,.3 .2,.7 .2,1h2v-1h-2.2z"/>
- <path d="m5,8c0-.3 .1-.7 .2-1h-2.2l-.1,1h2.1z"/>
- </g>
- </g>
-</svg>
--- a/devtools/client/themes/images/pseudo-class.svg
+++ b/devtools/client/themes/images/pseudo-class.svg
@@ -1,29 +1,20 @@
<!-- 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/. -->
-<svg width="16" height="16" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+<svg width="16" height="16" viewBox="0 0 16 16" color="#babec3" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<defs>
- <style>
- use[id^="pseudo-class"]:not(:target) {
- display: none;
- }
- </style>
<rect id="class-block-maskBG" width="8" height="8" fill="#fff"/>
<rect id="class-block" width="8" height="8" rx="1" ry="1"/>
<mask id="mask-block-solid">
<use xlink:href="#class-block-maskBG"/>
<use xlink:href="#class-block" transform="translate(3 3)" fill="#000"/>
</mask>
- <g id="pseudo-class-shape">
- <rect x=".5" y=".5" width="7" height="7" rx="1" ry="1" mask="url(#mask-block-solid)" fill="none" stroke="currentColor" stroke-width="1"/>
- <use xlink:href="#class-block" mask="url(#mask-block-solid)" fill="currentColor" fill-opacity=".4"/>
- <use xlink:href="#class-block" mask="url(#mask-block-solid)" fill="currentColor" transform="translate(4 4)"/>
- <g transform="translate(8 8)" fill="currentColor">
- <path d="M2.5,0C2.2,0,2,0.2,2,0.5C2,0.8,2.2,1,2.5,1C2.8,1,3,0.8,3,0.5 C3,0.2,2.8,0,2.5,0z M4.5,0C4.2,0,4,0.2,4,0.5C4,0.8,4.2,1,4.5,1C4.8,1,5,0.8,5,0.5C5,0.2,4.8,0,4.5,0z M0.5,6C0.8,6,1,5.8,1,5.5 C1,5.2,0.8,5,0.5,5C0.2,5,0,5.2,0,5.5C0,5.8,0.2,6,0.5,6z M0.5,4C0.8,4,1,3.8,1,3.5C1,3.2,0.8,3,0.5,3C0.2,3,0,3.2,0,3.5 C0,3.8,0.2,4,0.5,4z M7.5,2C7.2,2,7,2.2,7,2.5C7,2.8,7.2,3,7.5,3C7.8,3,8,2.8,8,2.5C8,2.2,7.8,2,7.5,2z M7.5,4C7.2,4,7,4.2,7,4.5 C7,4.8,7.2,5,7.5,5C7.8,5,8,4.8,8,4.5C8,4.2,7.8,4,7.5,4z M5.5,7C5.2,7,5,7.2,5,7.5C5,7.8,5.2,8,5.5,8C5.8,8,6,7.8,6,7.5 C6,7.2,5.8,7,5.5,7z M3.5,7C3.2,7,3,7.2,3,7.5C3,7.8,3.2,8,3.5,8C3.8,8,4,7.8,4,7.5C4,7.2,3.8,7,3.5,7z M0.5,2C0.8,2,1,1.8,1,1.5v-1 C1,0.2,0.8,0,0.5,0C0.2,0,0,0.2,0,0.5v1C0,1.8,0.2,2,0.5,2z M8,0.5C8,0.2,7.8,0,7.5,0h-1C6.2,0,6,0.2,6,0.5C6,0.8,6.2,1,6.5,1h1 C7.8,1,8,0.8,8,0.5z M7.5,6C7.2,6,7,6.2,7,6.5v1C7,7.8,7.2,8,7.5,8C7.8,8,8,7.8,8,7.5v-1C8,6.2,7.8,6,7.5,6z M1.5,7h-1 C0.2,7,0,7.2,0,7.5C0,7.8,0.2,8,0.5,8h1C1.8,8,2,7.8,2,7.5C2,7.2,1.8,7,1.5,7z"/>
- <use xlink:href="#class-block" fill-opacity=".2"/>
- </g>
- </g>
</defs>
- <use xlink:href="#pseudo-class-shape" id="pseudo-class" color="#babec3"/>
- <use xlink:href="#pseudo-class-shape" id="pseudo-class-checked" color="#3089C9"/>
+ <rect x=".5" y=".5" width="7" height="7" rx="1" ry="1" mask="url(#mask-block-solid)" fill="none" stroke="currentColor" stroke-width="1"/>
+ <use xlink:href="#class-block" mask="url(#mask-block-solid)" fill="currentColor" fill-opacity=".4"/>
+ <use xlink:href="#class-block" mask="url(#mask-block-solid)" fill="currentColor" transform="translate(4 4)"/>
+ <g transform="translate(8 8)" fill="currentColor">
+ <path d="M2.5,0C2.2,0,2,0.2,2,0.5C2,0.8,2.2,1,2.5,1C2.8,1,3,0.8,3,0.5 C3,0.2,2.8,0,2.5,0z M4.5,0C4.2,0,4,0.2,4,0.5C4,0.8,4.2,1,4.5,1C4.8,1,5,0.8,5,0.5C5,0.2,4.8,0,4.5,0z M0.5,6C0.8,6,1,5.8,1,5.5 C1,5.2,0.8,5,0.5,5C0.2,5,0,5.2,0,5.5C0,5.8,0.2,6,0.5,6z M0.5,4C0.8,4,1,3.8,1,3.5C1,3.2,0.8,3,0.5,3C0.2,3,0,3.2,0,3.5 C0,3.8,0.2,4,0.5,4z M7.5,2C7.2,2,7,2.2,7,2.5C7,2.8,7.2,3,7.5,3C7.8,3,8,2.8,8,2.5C8,2.2,7.8,2,7.5,2z M7.5,4C7.2,4,7,4.2,7,4.5 C7,4.8,7.2,5,7.5,5C7.8,5,8,4.8,8,4.5C8,4.2,7.8,4,7.5,4z M5.5,7C5.2,7,5,7.2,5,7.5C5,7.8,5.2,8,5.5,8C5.8,8,6,7.8,6,7.5 C6,7.2,5.8,7,5.5,7z M3.5,7C3.2,7,3,7.2,3,7.5C3,7.8,3.2,8,3.5,8C3.8,8,4,7.8,4,7.5C4,7.2,3.8,7,3.5,7z M0.5,2C0.8,2,1,1.8,1,1.5v-1 C1,0.2,0.8,0,0.5,0C0.2,0,0,0.2,0,0.5v1C0,1.8,0.2,2,0.5,2z M8,0.5C8,0.2,7.8,0,7.5,0h-1C6.2,0,6,0.2,6,0.5C6,0.8,6.2,1,6.5,1h1 C7.8,1,8,0.8,8,0.5z M7.5,6C7.2,6,7,6.2,7,6.5v1C7,7.8,7.2,8,7.5,8C7.8,8,8,7.8,8,7.5v-1C8,6.2,7.8,6,7.5,6z M1.5,7h-1 C0.2,7,0,7.2,0,7.5C0,7.8,0.2,8,0.5,8h1C1.8,8,2,7.8,2,7.5C2,7.2,1.8,7,1.5,7z"/>
+ <use xlink:href="#class-block" fill-opacity=".2"/>
+ </g>
</svg>
index 098e256ab8e330887a8765634e056b303ccbd02d..3e8b4db747311a8ac511e3db2cb2dab6a5541ad7
GIT binary patch
literal 203
zc%17D@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`lRRA<Ln?0Fon*_!<jB){T{=Uz
zg5$kHL_~$;?7a;Sc=t3!bUrvZC+U-U<cUdIclC^KziqzW@_nC@=XRx;H!s^xZ4Byj
zxD?L(FYR_u4fB-w)p7!xc{k6SaO!k-D1*yw<&(Buq6`fC7+xPgoXa4&uHjQI+m4PG
z69VOW8zPd@Y}2*gvpHxi-Qs-B;_)PRrHlKbr@QrVG09iPO+F8F9fPN<pUXO@geCw>
CZcoer
index eaac45d9435c7113dd84a12063bcce603d5c1de5..c6fee45f3da3d5d4bdda03779dac7cbcd73337c9
GIT binary patch
literal 330
zc$@)B0k!^#P)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F80003INkl<Zc-rlf
zJxT;Y5QSF+0}(bgF%~1efC?glm~3F?3B*V|fsqH$KnxWJ0};`)%q0vaaO%GoS{7+K
z7!wz^I_VE8eD%KIjVhJOqKPpsi%gGu=Dq(0-_y-oE+U&qc8jE+#P;kVkg}^Nc8;VU
zv+~&i+l!09H-}vyeN4q}0syd%tk<c~K_HKeNKaA1YbtXS=zHBlvb$8`Ch!&G8j4+{
zk+}-=9QKLrDLr--K$Mg8u#kXG3JGLD<Pcb!0s@(?>&7H@i4r_VI0V49QS82eK&EZm
z6<|F>32y}iGDNgNtT$x@a%Kr691&aND=^HCf#k|xU^vnpWPA7((8gIHj}&z}VGakQ
cN~Q7#Ke>N=N2o~Fn*aa+07*qoM6N<$f}fd!TL1t6
--- a/devtools/client/themes/images/timeline-filter.svg
+++ b/devtools/client/themes/images/timeline-filter.svg
@@ -1,26 +1,6 @@
-<?xml version="1.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/. -->
-<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16" viewBox="0 0 16 16">
- <style>
- use:not(:target) {
- display: none;
- }
- use {
- fill: #babec3;
- }
- use[id$="-disabled"] {
- fill-opacity: 0.5;
- }
- use[id$="-open"] {
- fill: #3bace5;
- }
- </style>
- <defs>
- <path id="filter-shape" d="M 2,2 v 3 l 5,4 v 6 h 2 v -6 l 5,-4 v -3 L 14,2 z"/>
- </defs>
- <use id="filter" xlink:href="#filter-shape"/>
- <use id="filter-disabled" xlink:href="#filter-shape"/>
- <use id="filter-open" xlink:href="#filter-shape"/>
+<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
+ <path fill="#babec3" d="M2,2v3l5,4v6h2v-6l5,-4v-3L14,2z"/>
</svg>
index 8229dd7c78f37edcf897d773a9b84bc5be707322..2b5aaf0aa40d8c0d4bd710662dd565dc3420487c
GIT binary patch
literal 290
zc$@(u0p0$IP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0002#Nkl<Zc-qyG
zy$%6E5XS+9MDPZ@h+c#!6-o&~qtIw|bP_Ls7r<j(;o@#*X7?m(wm4SU;uI2-{G0js
z%~$Gw>?+hCMA`ouAV`e`$TLth*IMUaf<9uM6GkS<DNtJjFbaXzp68Wp`oshhiEhmY
zfJZ6|K`nN6Tna(1;$k2*<C@&ZT@iJigK5VNP65cC`%r?~oOHZsU3rViTQ|U{Vf*YA
zGD4_fJfiRW)nqS1xv&oesP?R#OCiY>H!VB?K$|2VV90?1MSF!}fN~ipTo7w!4VUch
oHY5w6rq&I<GmN5!fu(+Bcd8|CN+!v5R{#J207*qoM6N<$f*XW&LI3~&
index de0ded4c8d12508c0cd4846cd794517ebcf20cbf..33c4c7d7f4b5a6836bd35afeb2da842255264ec2
GIT binary patch
literal 469
zc$@*%0V@89P)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F80004;Nkl<Zc-rlj
zPfJxn7{-rPR73<7R9FzLiXb3r6}4{@5cCbA0^GP11Q7uR0Tn^qhzKHzh^imRZ*bA$
zynpAyBLiN}<{r5oJ@<gz2cF%``}}5xcV@DI2D)zLIi3dbO=kPm2*9!GTVgv*X7v#O
zx0?azSmG3bhs^;bt1pFs=RFl*#&9Z9)w#rPMR?)Bww{~4D-BL(MG_~|;2OO{?w`8?
z1hbE6Q0*39E!ld0MQjIk1F+b1Rwj}7oi)w{@s+A3@wKw>pgw;BJn4HEB#XuIqa)mJ
zrVYja0Jv4Dpa|ZO`d<KdD*)`Pwtr+*MdV+IZ95f9AeRAP@hx)yR6ShVKhp|2t4W1>
znFrt=ssCff>q^1ttVsQTC%6Ql9szhj5+_n%-vRPGe@5(!7u;aWtZ|{bZ8qolwG<$*
z&((enYuqEk%Mt+F>c?AfdTQ^x0-QgiyLE;KiDLkUvND<BLlE2OHaP)a<(~lHMUNj6
z9wznW2HLO?fJdxxrWt?&;ts2iHUm&V46(I;v-n1<)q0!_bQ5(3#`4kEp*yYM00000
LNkvXXu0mjfo7Bz>
index db4b0620c4118ace6695af18f663d594170f3b20..6c0ef603c4ff108f36aeba83802311156180bc16
GIT binary patch
literal 136
zc%17D@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6{5@S9Lp07OCoGWPak@TQ<j^kN
zs_F9GU%m=o*KeG1M{IB1%U_&4stFJOU)PVl+H}F-vcc3pM-_RQ!nYo{RKGqeajIGZ
jlcTx77uJIX5&;Yhv&4e!l^f3kSqu!Gu6{1-oD!M<$Q3X`
index ae6fbb21c31c46e94fa7739d3be5a5b64f1ae6b7..d0718a1d657a025137a050d1785b0ef535a907cf
GIT binary patch
literal 168
zc%17D@N?(olHy`uVBq!ia0vp^3LwnE0wix1Z>k4U`JOJ0Ar-gYPTtLXz<|TWc=qvz
zofmx{otvZ_t{Ac)cvgqDf1Uro!qPe^=?OO+bDn(cO#Ssrg!{6a*!>&s4?kXBDl%d7
z4Q-$KY?E#_SG8t}h=~g7Ycs`#xXcm%;Ql~=Vx8MB<%{t%Wz@>%SkHZ5#B8vNvnBjX
R`W&Fu44$rjF6*2UngCykKpp@9
index f575032008eb5a312879954586423c41ecc7a412..b3009981f9b1649d93f1b10de03d6fa4e0a9d74e
GIT binary patch
literal 160
zc%17D@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6(mh=qLp07Gy{O35;2_{|(Q)?O
z&lMc32fHI|W}j5bh?=o~1G_;q&$N#$n-gxu$Ny1M-85_R*9;lIweJcark2iV_;{rC
za{A$t?N*0duKY_~eZxq{X}$6G(@KR4F3&uhD5$3<yH=~{8S|=?knjy(+p>XHGI+ZB
KxvX<aXaWFuF+W=X
index a34c8ede6f8bb66511270fb55caa379d7d5e7944..d0923fd0a477d6155036c1a9aa2197fa5e2e8ee2
GIT binary patch
literal 302
zc$@()0nz@6P)<h;3K|Lk000e1NJLTq001BW001Be1ONa4*>kdg0002>Nkl<Zc-rmG
zu}eZx6vy$q76cJE<>=6mYtj@#OGs1ZSm5N+)KvdQd$a@*tv0l@HbjB&?)N-ji!_Mf
z@<1N);BiF-<&MWe5Z?F9AAZN=t+DTIJ{W{YD{|S9IvI|b6QeIG(BYM9QXENmrsYMt
zIGnWQk}-}%#e)((9P|6+oDug5PMJQA<$Z<wn)M1pk7v?UaH$e|Je7um+Zu_-6I;`)
zH%L7mOI5?0WF8*|6$KCW?7PSNl#M2y?G<ke-U~`9{=3Tschcf%#=B9`=#u*MVQ#qP
zflgE~+IX~o_RyY6o8$j2qmLhXkydzM^71yS36~(=q-pU73IG5A07*qoM6N<$g3myT
ASpWb4
index b68cc5e7dc7b54060db5f48dc879bc16ff3928c4..e9b257e3a06563759153fcb287cf8b81ff909a48
GIT binary patch
literal 177
zc%17D@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6Dm+~rLo|Yqp4!NJC_u#d;&h(_
z93?GBFR9H|h+uf;`B_!q|GqN~5)Eo@8gsRG-RM=F-%-DK8J~*$Ccdmcy&X2n%WMo4
z_5K~Zv#}spdf_zf(|05nxc5Ka^||2%?-jv~@#QxcT1lN~s!01e)%sKtL!~)`K65_v
b>}TA9cPFNOwb&yAbOVE@tDnm{r-UW|Kk!4G
index 5d7640bbe2f04c932eec767ab8d08255af88a9d2..11d86275fee4f21f6041edfb90611f4a53f2b043
GIT binary patch
literal 272
zc$@(c0q_2aP)<h;3K|Lk000e1NJLTq001BW001Be1ONa4*>kdg0002jNkl<ZNXKJf
z7_Q(y^YzH<8?V2<{{Q-m>uatD|7Rpg`(@c1C$IlUf%`9t5v~2E^!3MR+ClL4bz$Nh
z&v@eySi|=lEmyV93*6AV-go^sSY$I%23+-rXuoQU5WD7m{SR2wo(KbOtO6;$R)Z>f
zy%%i2EFuiJ{tTq_ssviFYJv^8PK*J6um8XP5hG-nz~S(b7z6%a|9|5>7O%Yr$<W?_
zYlUFH{=7aP1O5cdq~ec49xMq675>I+z<B|J2K*m2VAKGD2K;BjC=1cyPKHr19034z
W84pFPrznL00000<MNUMnLSTZ1^LUT|
index ee1d7a59e4b2abe40bda3a5ac25071c0d860f9b1..877d195c92cab5ab76c24e36071da46e0acf5d34
GIT binary patch
literal 98
zc%17D@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6G(BA$Lp07OCn)g7{P$ni^!oor
vMN6)Nj~v<uOhmd(r$jo+<_F1L5n*7kxL?|sHMep;P!ofvtDnm{r-UW|y*wO|
index 2b09f01a566a624abcf0aa6b904c61fe0d5f9ce8..207e5376ffa9414425de2ebaec11703e54c25fd0
GIT binary patch
literal 116
zc%17D@N?(olHy`uVBq!ia0vp^3Lwk@BpAX3RW*PVQ%R6tFatx`<g*q)p01~hV@SoV
z<b(xAJL+m5h{POcU|!51-Y>^xFt=6BDd1qjhocFdXAe$T#V*3YAba9EW8f#obs*zB
MUHx3vIVCg!0PXZ35&!@I
--- a/devtools/client/themes/inspector.css
+++ b/devtools/client/themes/inspector.css
@@ -39,49 +39,31 @@
#inspector-searchbox[focused],
#inspector-searchbox[filled] {
max-width: 200px !important;
}
/* Expand/collapse panel toolbar button */
#inspector-pane-toggle {
- background: none;
- box-shadow: none;
- border: none;
list-style-image: url(images/debugger-collapse.png);
- -moz-image-region: rect(0px,16px,16px,0px);
-}
-
-#inspector-pane-toggle > .toolbarbutton-icon {
- width: 16px;
- height: 16px;
}
#inspector-pane-toggle[pane-collapsed] {
list-style-image: url(images/debugger-expand.png);
}
-#inspector-pane-toggle:active {
- -moz-image-region: rect(0px,32px,16px,16px);
-}
-
@media (min-resolution: 1.1dppx) {
#inspector-pane-toggle {
list-style-image: url(images/debugger-collapse@2x.png);
- -moz-image-region: rect(0px,32px,32px,0px);
}
#inspector-pane-toggle[pane-collapsed] {
list-style-image: url(images/debugger-expand@2x.png);
}
-
- #inspector-pane-toggle:active {
- -moz-image-region: rect(0px,64px,32px,32px);
- }
}
/* Tooltip: Events */
#devtools-tooltip-events-container {
margin: -4px; /* Compensate for the .panel-arrowcontent padding. */
max-width: 590px;
overflow-y: auto;
--- a/devtools/client/themes/memory.css
+++ b/devtools/client/themes/memory.css
@@ -110,28 +110,16 @@ html, body, #app, #memory-tool {
}
#filter {
align-self: stretch;
margin: 2px;
}
/**
- * TODO bug 1213100
- * Once we figure out how to store invertable buttons (pseudo element like in
- * this case?) we should add a .invertable class to handle this generally,
- * rather than the definitions in toolbars.css.
- *
- * @see bug 1173397 for another inverted related bug
- */
-.theme-light .devtools-toolbar > .devtools-toolbarbutton.take-snapshot::before {
- filter: url(images/filters.svg#invert);
-}
-
-/**
* Container (sidebar + main panel)
*/
#memory-tool-container {
/**
* Flex: contains two children: .list (sidebar) and #heap-view (main panel),
* which need to be laid out horizontally. The sidebar has a fixed width and
* the main panel needs to flex to fill out all remaining horizontal space.
--- a/devtools/client/themes/netmonitor.css
+++ b/devtools/client/themes/netmonitor.css
@@ -199,17 +199,17 @@ label.requests-menu-status-code {
box.requests-menu-status:not([code]) {
background-color: var(--theme-highlight-red);
border-radius: 0; /* squares */
}
box.requests-menu-status[code="cached"] {
border: 2px solid var(--theme-content-color2);
- background-color: transparent;
+ background-color: transparent;
}
box.requests-menu-status[code^="1"] {
background-color: var(---theme-highlight-blue);
}
box.requests-menu-status[code^="2"] {
background-color: var(--theme-highlight-green);
@@ -394,49 +394,31 @@ box.requests-menu-status[code^="5"] {
.side-menu-widget-item:not(.selected):hover {
background-color: var(--theme-selection-background-semitransparent);
}
/* Network request details */
#details-pane-toggle {
- background: none;
- box-shadow: none;
- border-color: transparent;
list-style-image: url("chrome://devtools/skin/images/debugger-collapse.png");
- -moz-image-region: rect(0px,16px,16px,0px);
-}
-
-#details-pane-toggle > .toolbarbutton-icon {
- width: 16px;
- height: 16px;
}
#details-pane-toggle[pane-collapsed] {
list-style-image: url("chrome://devtools/skin/images/debugger-expand.png");
}
-#details-pane-toggle:active {
- -moz-image-region: rect(0px,32px,16px,16px);
-}
-
@media (min-resolution: 1.1dppx) {
#details-pane-toggle {
list-style-image: url("chrome://devtools/skin/images/debugger-collapse@2x.png");
- -moz-image-region: rect(0px,32px,32px,0px);
}
#details-pane-toggle[pane-collapsed] {
list-style-image: url("chrome://devtools/skin/images/debugger-expand@2x.png");
}
-
- #details-pane-toggle:active {
- -moz-image-region: rect(0px,64px,32px,32px);
- }
}
/* Network request details tabpanels */
.tabpanel-content {
background-color: var(--theme-sidebar-background);
}
--- a/devtools/client/themes/performance.css
+++ b/devtools/client/themes/performance.css
@@ -37,26 +37,17 @@
}
#performance-toolbar-controls-detail-views .toolbarbutton-text {
-moz-padding-start: 4px;
-moz-padding-end: 8px;
}
#filter-button {
- list-style-image: url(images/timeline-filter.svg#filter);
- min-width: 24px;
-}
-
-#filter-button[disabled] {
- list-style-image: url(images/timeline-filter.svg#filter-disabled);
-}
-
-#filter-button[open] {
- list-style-image: url(images/timeline-filter.svg#filter-open);
+ list-style-image: url(images/timeline-filter.svg);
}
#performance-filter-menupopup > menuitem:before {
content: "";
display: block;
width: 8px;
height: 8px;
margin: 0 8px;
@@ -84,20 +75,16 @@
}
/* Recording buttons */
#main-record-button {
list-style-image: url(images/profiler-stopwatch.svg);
}
-#main-record-button[checked] {
- list-style-image: url(images/profiler-stopwatch-checked.svg);
-}
-
#main-record-button .button-icon {
margin: 0;
}
#main-record-button .button-text {
display: none;
}
--- a/devtools/client/themes/ruleview.css
+++ b/devtools/client/themes/ruleview.css
@@ -279,53 +279,32 @@
.ruleview-selectorhighlighter {
background: url("chrome://devtools/skin/images/vview-open-inspector.png") no-repeat 0 0;
padding-left: 16px;
margin-left: 5px;
cursor: pointer;
}
.ruleview-selectorhighlighter:hover {
- background-position: -32px 0;
+ filter: url(images/filters.svg#checked-icon-state);
}
.ruleview-selectorhighlighter:active,
.ruleview-selectorhighlighter.highlighted {
- background-position: -16px 0;
+ filter: url(images/filters.svg#checked-icon-state) brightness(0.9);
}
#ruleview-add-rule-button::before {
background-image: url("chrome://devtools/skin/images/add.svg");
background-size: cover;
}
#pseudo-class-panel-toggle::before {
- background-image: url("chrome://devtools/skin/images/pseudo-class.svg#pseudo-class");
+ background-image: url("chrome://devtools/skin/images/pseudo-class.svg");
background-size: cover;
}
-#pseudo-class-panel-toggle[checked]::before {
- background-image: url("chrome://devtools/skin/images/pseudo-class.svg#pseudo-class-checked");
- filter: none !important;
-}
-/**
- * These buttons are using opacity instead of background color to indicate
- * the state
- */
-#ruleview-add-rule-button,
-#pseudo-class-panel-toggle,
.ruleview-overridden-rule-filter {
opacity: 0.8;
}
-
-#ruleview-add-rule-button:not([disabled]):hover,
-#pseudo-class-panel-toggle:hover,
-#pseudo-class-panel-toggle[checked],
.ruleview-overridden-rule-filter:hover {
opacity: 1;
}
-
-#ruleview-add-rule-button,
-#pseudo-class-panel-toggle,
-#pseudo-class-panel-toggle:hover,
-#pseudo-class-panel-toggle[checked]::before {
- background-color: transparent !important;
-}
--- a/devtools/client/themes/shadereditor.css
+++ b/devtools/client/themes/shadereditor.css
@@ -67,17 +67,17 @@
}
.side-menu-widget-item-checkbox[checked] .checkbox-check {
background-position: 0 0;
}
/* Invert all toggle icons but the one in the active row for light theme */
.theme-light .side-menu-widget-item:not(.selected) .checkbox-check {
- filter: url(images/filters.svg#invert);
+ filter: invert(1);
}
/* Shader source editors */
.editor-label {
padding: 1px 12px;
border-top: 1px solid;
}
--- a/devtools/client/themes/styleeditor.css
+++ b/devtools/client/themes/styleeditor.css
@@ -115,17 +115,17 @@
}
.disabled > .stylesheet-enabled {
background-position: -24px 8px;
}
/* Invert all toggle icons but the one in the active row for light theme */
.theme-light .splitview-nav > li:not(.splitview-active) .stylesheet-enabled {
- filter: url(images/filters.svg#invert);
+ filter: invert(1);
}
.splitview-nav > li > .stylesheet-enabled:focus,
.splitview-nav > li:hover > .stylesheet-enabled {
outline: 0;
}
.stylesheet-linked-file:not(:empty){
--- a/devtools/client/themes/toolbars.css
+++ b/devtools/client/themes/toolbars.css
@@ -49,81 +49,128 @@
border: none !important; /* overrides .checkbox-label-box from checkbox.css */
}
.devtools-toolbar checkbox .checkbox-label-box .checkbox-label {
margin: 0 6px !important; /* overrides .checkbox-label from checkbox.css */
padding: 0;
}
/* Toolbar buttons */
+
.devtools-menulist,
-.devtools-toolbarbutton {
+.devtools-toolbarbutton,
+.devtools-button {
-moz-appearance: none;
- -moz-box-align: center;
background: transparent;
- min-width: 78px;
min-height: 18px;
- padding: 1px;
text-shadow: none;
border: none;
border-radius: 0;
- margin: 2px 3px;
- color: inherit;
+ color: var(--theme-body-color);
transition: background 0.05s ease-in-out;
- color: var(--theme-content-color1);
- background-color: var(--theme-toolbar-background);
+}
+
+.devtools-menulist,
+.devtools-toolbarbutton {
+ -moz-box-align: center;
+ min-width: 78px;
+ padding: 1px;
+ margin: 2px 3px;
}
.devtools-menulist:-moz-focusring,
.devtools-toolbarbutton:-moz-focusring {
outline: 1px dotted hsla(210,30%,85%,0.7);
outline-offset: -4px;
}
+.devtools-toolbarbutton:not([label]) > .toolbarbutton-icon,
+.devtools-button::before {
+ width: 16px;
+ height: 16px;
+ transition: opacity 0.05s ease-in-out;
+}
+
+/* HTML buttons */
+.devtools-button {
+ margin: 0;
+ padding: 0;
+ min-width: 32px;
+ /* The icon is absolutely positioned in the button using ::before */
+ position: relative;
+}
+
+.devtools-button::before {
+ content: "";
+ display: block;
+ position: absolute;
+ left: 50%;
+ top: 50%;
+ margin: -8px 0 0 -8px;
+ background-size: cover;
+ background-repeat: no-repeat;
+ transition: opacity 0.05s ease-in-out;
+}
+
+/* Standalone buttons */
+.devtools-button[standalone],
+.devtools-button[data-standalone],
+.devtools-toolbarbutton[standalone],
+.devtools-toolbarbutton[data-standalone] {
+ border-width: 1px;
+ border-style: solid;
+ min-height: 32px;
+ background-color: var(--theme-toolbar-background);
+}
+
.devtools-toolbarbutton[standalone], .devtools-toolbarbutton[data-standalone] {
-moz-margin-end: 5px;
- border-width: 1px;
- border-style: solid;
}
+
.devtools-toolbarbutton[label][standalone] {
min-height: 2em;
}
+.theme-dark .devtools-menulist,
+.theme-dark .devtools-toolbarbutton,
+.theme-dark .devtools-button {
+ border-color: rgba(0, 0, 0, .4); /* Splitters */
+}
+
+.theme-light .devtools-menulist,
+.theme-light .devtools-toolbarbutton,
+.theme-light .devtools-button {
+ border-color: rgba(170, 170, 170, .5); /* Splitters */
+}
+
+/* Icon button styles */
.devtools-toolbarbutton:not([label]),
.devtools-toolbarbutton[text-as-image] {
min-width: 32px;
}
#toolbox-buttons .devtools-toolbarbutton[text-as-image] {
-moz-padding-start: 5px;
-moz-padding-end: 5px;
min-width: inherit;
}
-/* Command buttons with menupopups should be styled slightly differently -
- no background color and a bit more narrow */
-#toolbox-buttons .devtools-toolbarbutton:not([text-as-image]):not(:hover):not([open=true]) {
- background: transparent;
-}
#toolbox-buttons .devtools-toolbarbutton[type=menu] > .toolbarbutton-menu-dropmarker {
padding: 0 2px;
}
.devtools-toolbarbutton:not([label]) > .toolbarbutton-text {
display: none;
}
-.devtools-toolbar .devtools-toolbarbutton {
- border-width: 0;
-}
-
.devtools-toolbarbutton > .toolbarbutton-icon {
margin: 0;
}
+/* Menu button styles (eg. web console filters) */
.devtools-toolbarbutton[type=menu-button] > .toolbarbutton-menubutton-button {
-moz-appearance: none;
color: inherit;
border-width: 0;
-moz-box-orient: horizontal;
padding: 0;
}
@@ -147,99 +194,95 @@
.devtools-toolbarbutton[type=menu] > .toolbarbutton-menu-dropmarker,
.devtools-toolbarbutton[type=menu-button] > .toolbarbutton-menubutton-dropmarker {
-moz-appearance: none !important;
list-style-image: url("chrome://devtools/skin/images/dropmarker.svg");
-moz-box-align: center;
padding: 0 3px;
}
-.theme-dark .devtools-menulist,
-.theme-dark .devtools-toolbarbutton {
- border-color: rgba(0, 0, 0, .4); /* Splitters */
+/* Icon-only buttons */
+.devtools-button:empty::before,
+.devtools-toolbarbutton:not([label]):not([disabled]) > image {
+ opacity: 0.8;
}
-.theme-light .devtools-menulist,
-.theme-light .devtools-toolbarbutton {
- border-color: rgba(170, 170, 170, .5); /* Splitters */
+
+.devtools-button:hover:empty::before,
+.devtools-button[checked]:empty::before,
+.devtools-button[open]:empty::before,
+.devtools-toolbarbutton:not([label]):hover > image,
+.devtools-toolbarbutton:not([label])[checked=true] > image,
+.devtools-toolbarbutton:not([label])[open=true] > image {
+ opacity: 1;
+}
+
+.devtools-button:disabled,
+.devtools-button[disabled],
+.devtools-toolbarbutton[disabled] {
+ opacity: 0.5 !important;
+}
+
+.devtools-button[checked]:empty::before,
+.devtools-button[open]:empty::before,
+.devtools-toolbarbutton:not([label])[checked=true] > image,
+.devtools-toolbarbutton:not([label])[open=true] > image {
+ filter: url(images/filters.svg#checked-icon-state);
}
/* Text-only buttons */
.theme-light .devtools-toolbarbutton[label]:not([text-as-image]):not([type=menu-button]),
.theme-light .devtools-toolbarbutton[data-text-only],
.theme-light #toolbox-buttons .devtools-toolbarbutton[text-as-image] {
background-color: rgba(170, 170, 170, .2); /* Splitter */
}
.theme-dark .devtools-toolbarbutton[label]:not([text-as-image]):not([type=menu-button]),
.theme-dark .devtools-toolbarbutton[data-text-only],
.theme-dark #toolbox-buttons .devtools-toolbarbutton[text-as-image] {
background-color: rgba(0, 0, 0, .2); /* Splitter */
}
-/* Button States */
-.theme-dark .devtools-toolbarbutton:not([disabled]):hover,
+/* Text-only button states */
+.theme-dark .devtools-button:not(:empty):not([disabled]):hover,
.theme-dark #toolbox-buttons .devtools-toolbarbutton:not([disabled])[text-as-image]:hover,
-.theme-dark .devtools-toolbarbutton:not([disabled])[label]:not([text-as-image]):not([type=menu-button]):hover {
+.theme-dark .devtools-toolbarbutton:not(:-moz-any([checked=true],[disabled],[text-as-image]))[label]:hover {
background: rgba(0, 0, 0, .3); /* Splitters */
}
-.theme-light .devtools-toolbarbutton:not([disabled]):hover,
+.theme-light .devtools-button:not(:empty):not([disabled]):hover,
.theme-light #toolbox-buttons .devtools-toolbarbutton:not([disabled])[text-as-image]:hover,
-.theme-light .devtools-toolbarbutton:not([disabled])[label]:not([text-as-image]):not([type=menu-button]):hover {
+.theme-light .devtools-toolbarbutton:not(:-moz-any([checked=true],[disabled],[text-as-image]))[label]:hover {
background: rgba(170, 170, 170, .3); /* Splitters */
}
-.theme-dark .devtools-toolbarbutton:not([disabled]):hover:active,
+.theme-dark .devtools-button:not(:empty):not([disabled]):hover:active,
.theme-dark #toolbox-buttons .devtools-toolbarbutton:not([disabled])[text-as-image]:hover:active,
-.theme-dark .devtools-toolbarbutton:not([disabled])[label]:not([text-as-image]):not([type=menu-button]):hover:active {
+.theme-dark .devtools-toolbarbutton:not(:-moz-any([checked=true],[disabled],[text-as-image]))[label]:hover:active {
background: rgba(0, 0, 0, .4); /* Splitters */
}
-.theme-light .devtools-toolbarbutton:not([disabled]):hover:active,
+.theme-light .devtools-button:not(:empty):not([disabled]):hover:active,
.theme-light #toolbox-buttons .devtools-toolbarbutton:not([disabled])[text-as-image]:hover:active,
-.theme-light .devtools-toolbarbutton:not([disabled])[label]:not([text-as-image]):not([type=menu-button]):hover:active {
+.theme-light .devtools-toolbarbutton:not(:-moz-any([checked=true],[disabled],[text-as-image]))[label]:hover:active {
background: rgba(170, 170, 170, .4); /* Splitters */
}
-/* Menu type buttons and checked states */
-.theme-dark .devtools-toolbarbutton[checked=true],
-.theme-dark #toolbox-buttons .devtools-toolbarbutton[text-as-image][checked] {
+.theme-dark .devtools-toolbarbutton:not([disabled])[label][checked=true],
+.theme-dark .devtools-toolbarbutton:not([disabled])[label][open],
+.theme-dark .devtools-button:not(:empty)[checked=true],
+.theme-dark #toolbox-buttons .devtools-toolbarbutton[text-as-image][checked=true] {
background: rgba(29, 79, 115, .7); /* Select highlight blue */
color: var(--theme-selection-color);
}
-
-.theme-light .devtools-toolbarbutton[checked=true],
-.theme-light #toolbox-buttons .devtools-toolbarbutton[text-as-image][checked] {
- background: rgba(76, 158, 217, .2); /* Select highlight blue */
-}
-
-.theme-dark .devtools-menulist[open=true],
-.theme-dark .devtools-toolbarbutton[open=true],
-.theme-dark .devtools-toolbarbutton[open=true]:hover,
-.theme-dark .devtools-toolbarbutton[open=true]:hover:active,
-.theme-dark .devtools-toolbarbutton[checked=true]:hover {
- background: rgba(29, 79, 115, .8); /* Select highlight blue */
- color: var(--theme-selection-color);
-}
-
-.theme-light .devtools-menulist[open=true],
-.theme-light .devtools-toolbarbutton[open=true],
-.theme-light .devtools-toolbarbutton[open=true]:hover,
-.theme-light .devtools-toolbarbutton[open=true]:hover:active,
-.theme-light .devtools-toolbarbutton[checked=true]:hover {
- background: rgba(76, 158, 217, .4); /* Select highlight blue */
+.theme-light .devtools-toolbarbutton:not([disabled])[label][checked=true],
+.theme-light .devtools-toolbarbutton:not([disabled])[label][open],
+.theme-light .devtools-button:not(:empty)[checked=true],
+.theme-light #toolbox-buttons .devtools-toolbarbutton[text-as-image][checked=true] {
+ background: rgba(76, 158, 217, .3); /* Select highlight blue */
}
.devtools-option-toolbarbutton {
- -moz-appearance: none;
list-style-image: url("chrome://devtools/skin/images/tool-options.svg");
- background: none;
- opacity: .8;
- border: none;
-}
-
-.devtools-option-toolbarbutton[open=true] {
- opacity: 1;
}
/* Toolbar button groups */
.devtools-toolbarbutton-group > .devtools-toolbarbutton {
margin-left: 1px;
margin-right: 1px;
outline-offset: -3px;
box-shadow: none;
@@ -252,83 +295,16 @@
.devtools-toolbarbutton-group + .devtools-toolbarbutton {
-moz-margin-start: 3px;
}
.devtools-separator + .devtools-toolbarbutton {
-moz-margin-start: 1px;
}
-/* HTML buttons, similar to toolbar buttons, but work in HTML documents */
-
-.devtools-button {
- border: 0 solid var(--theme-splitter-color);
- background: var(--theme-toolbar-background);
- color: var(--theme-body-color);
- margin: 0;
- padding: 0;
- min-width: 32px;
- min-height: 18px;
- /* The icon is absolutely positioned in the button using ::before */
- position: relative;
-}
-
-.devtools-button[standalone], .devtools-button[data-standalone] {
- min-height: 32px;
- border-width: 1px;
-}
-
-/* Button States */
-.theme-dark .devtools-button:not([disabled]):hover {
- background: rgba(0, 0, 0, .3); /* Splitters */
-}
-.theme-light .devtools-button:not([disabled]):hover {
- background: rgba(170, 170, 170, .3); /* Splitters */
-}
-
-.theme-dark .devtools-button:not([disabled]):hover:active {
- background: rgba(0, 0, 0, .4); /* Splitters */
-}
-.theme-light .devtools-button:not([disabled]):hover:active {
- background: rgba(170, 170, 170, .4); /* Splitters */
-}
-
-/* Menu type buttons and checked states */
-.theme-dark .devtools-button[checked] {
- background: rgba(29, 79, 115, .7) !important; /* Select highlight blue */
- color: var(--theme-selection-color);
-}
-
-.theme-light .devtools-button[checked] {
- background: rgba(76, 158, 217, .2) !important; /* Select highlight blue */
-}
-
-.devtools-button::before {
- content: "";
- display: block;
- width: 16px;
- height: 16px;
- position: absolute;
- left: 50%;
- top: 50%;
- margin: -8px 0 0 -8px;
- background-repeat: no-repeat;
-}
-
-.devtools-button[disabled]::before,
-.devtools-button:disabled::before {
- opacity: 0.5;
-}
-
-@media (min-resolution: 1.1dppx) {
- .devtools-button::before {
- background-size: 32px;
- }
-}
-
/* Text input */
.devtools-textinput,
.devtools-searchinput {
-moz-appearance: none;
margin: 1px 3px;
border: 1px solid;
border-radius: 2px;
@@ -995,37 +971,33 @@
* inside of the light theme.
*/
.theme-light .devtools-tab[icon-invertable] > image,
.theme-light #toolbox-dock-buttons > toolbarbutton > image,
.theme-light .command-button-invertable > image,
.theme-light .command-button-invertable:active > image,
.theme-light .devtools-closebutton > image,
.theme-light .devtools-toolbarbutton > image,
-.theme-light .devtools-option-toolbarbutton > image,
+.theme-light .devtools-button::before,
.theme-light #breadcrumb-separator-normal,
.theme-light .scrollbutton-up > .toolbarbutton-icon,
.theme-light .scrollbutton-down > .toolbarbutton-icon,
.theme-light #black-boxed-message-button .button-icon,
-.theme-light .notice-container button .button-icon,
.theme-light #requests-menu-perf-notice-button .button-icon,
.theme-light #requests-menu-network-summary-button .button-icon,
-.theme-light .event-tooltip-debugger-icon,
-.theme-light .devtools-button::before {
- filter: url(images/filters.svg#invert);
+.theme-light #toggle-breakpoints[checked] > image,
+.theme-light .event-tooltip-debugger-icon {
+ filter: invert(1);
}
/* Since selected backgrounds are blue, we want to use the normal
* (light) icons. */
.theme-light .command-button-invertable[checked=true]:not(:active) > image,
.theme-light .devtools-tab[icon-invertable][selected] > image,
-.theme-light .devtools-tab[icon-invertable][highlighted] > image,
-.theme-light #record-snapshot[checked] > image,
-.theme-light #profiler-start[checked] > image,
-.theme-light .notice-container button[checked] .button-icon {
+.theme-light .devtools-tab[icon-invertable][highlighted] > image {
filter: none !important;
}
.theme-light .command-button:hover {
background-color: inherit;
}
.theme-light .command-button:hover:active,
--- a/devtools/client/themes/webaudioeditor.css
+++ b/devtools/client/themes/webaudioeditor.css
@@ -203,31 +203,16 @@ text {
/**
* Inspector toolbar
*/
#audio-node-toolbar .bypass {
list-style-image: url(images/power.svg);
}
-#audio-node-toolbar toolbarbutton[disabled] {
- opacity: 0.5;
- background-color: transparent;
-}
-
-#audio-node-toolbar toolbarbutton[checked] {
- background-color: var(--theme-selection-background);
-}
-
-/* don't invert checked buttons so we can have white icons on light theme */
-#audio-node-toolbar toolbarbutton[checked] > .toolbarbutton-icon {
- filter: none;
-}
-
-
/**
* Responsive Styles
* `.devtools-responsive-container` takes care of most of
* the changing of host types.
*/
@media (max-width: 700px) {
/**
* Override the inspector toggle so it's always open
--- a/devtools/client/themes/webconsole.css
+++ b/devtools/client/themes/webconsole.css
@@ -522,21 +522,22 @@ a {
background: url("chrome://devtools/skin/images/vview-open-inspector.png") no-repeat 0 0;
padding-left: 16px;
margin-left: 5px;
cursor: pointer;
}
.elementNode:hover .open-inspector,
.open-inspector:hover {
- background-position: -32px 0;
+ filter: url(images/filters.svg#checked-icon-state);
}
+.elementNode:hover .open-inspector:active,
.open-inspector:active {
- background-position: -16px 0;
+ filter: url(images/filters.svg#checked-icon-state) brightness(0.9);
}
@media (max-width: 500px) {
.message > .timestamp {
display: none;
}
.hud-console-filter-toolbar .webconsole-filter-button .toolbarbutton-text {
display: none;
--- a/devtools/client/themes/widgets.css
+++ b/devtools/client/themes/widgets.css
@@ -734,93 +734,73 @@
.variable-or-property[safe-getter] > tooltip > label.WebIDL {
-moz-padding-start: 4px;
-moz-border-start: 1px dotted #000;
color: #080;
}
/* Variables and properties editing */
+.variables-view-delete,
+.variables-view-edit,
+.variables-view-open-inspector {
+ width: 16px;
+ height: 16px;
+ background-size: cover;
+ cursor: pointer;
+}
+
+.variables-view-delete:hover,
+.variables-view-edit:hover,
+.variables-view-open-inspector:hover {
+ filter: url(images/filters.svg#checked-icon-state);
+}
+
+.variables-view-delete:active,
+.variables-view-edit:active,
+.variables-view-open-inspector:active {
+ filter: url(images/filters.svg#checked-icon-state) brightness(0.9);
+}
+
+.variable-or-property:focus > .title > .variables-view-delete,
+.variable-or-property:focus > .title > .variables-view-edit,
+.variable-or-property:focus > .title > .variables-view-open-inspector {
+ filter: none;
+}
.variables-view-delete {
- background: url("chrome://devtools/skin/images/vview-delete.png");
- background-size: cover;
- width: 16px;
- height: 16px;
+ background-image: url("chrome://devtools/skin/images/vview-delete.png");
}
@media (min-resolution: 1.1dppx) {
.variables-view-delete {
background-image: url("chrome://devtools/skin/images/vview-delete@2x.png");
}
}
-.variables-view-delete:hover {
- background-position: 16px;
-}
-
-.variables-view-delete:active {
- background-position: 32px;
-}
-
-.variable-or-property:focus > .title > .variables-view-delete {
- background-position: 0px;
-}
-
.variables-view-edit {
- background: url("chrome://devtools/skin/images/vview-edit.png");
- background-size: cover;
- width: 16px;
- height: 16px;
- cursor: pointer;
+ background-image: url("chrome://devtools/skin/images/vview-edit.png");
}
@media (min-resolution: 1.1dppx) {
.variables-view-edit {
background-image: url("chrome://devtools/skin/images/vview-edit@2x.png");
}
}
-.variables-view-edit:hover {
- background-position: 16px;
-}
-
-.variables-view-edit:active {
- background-position: 32px;
-}
-
-.variable-or-property:focus > .title > .variables-view-edit {
- background-position: 0px;
-}
-
.variables-view-open-inspector {
- background: url("chrome://devtools/skin/images/vview-open-inspector.png");
- background-size: cover;
- width: 16px;
- height: 16px;
- cursor: pointer;
+ background-image: url("chrome://devtools/skin/images/vview-open-inspector.png");
}
@media (min-resolution: 1.1dppx) {
.variables-view-open-inspector {
background-image: url("chrome://devtools/skin/images/vview-open-inspector@2x.png");
}
}
-.variables-view-open-inspector:hover {
- background-position: 16px;
-}
-
-.variables-view-open-inspector:active {
- background-position: 32px;
-}
-
-.variable-or-property:focus > .title > .variables-view-open-inspector {
- background-position: 0px;
-}
/* Variables and properties input boxes */
.variable-or-property > .title > .separator + .element-value-input {
-moz-margin-start: -2px !important;
-moz-margin-end: 2px !important;
}
--- a/dom/bluetooth/bluedroid/BluetoothPbapManager.cpp
+++ b/dom/bluetooth/bluedroid/BluetoothPbapManager.cpp
@@ -861,16 +861,17 @@ BluetoothPbapManager::PackPropertiesMask
}
void
BluetoothPbapManager::ReplyToAuthChallenge(const nsAString& aPassword)
{
// Cancel authentication
if (aPassword.IsEmpty()) {
ReplyError(ObexResponseCode::Unauthorized);
+ return;
}
ReplyToConnect(aPassword);
AfterPbapConnected();
}
bool
BluetoothPbapManager::ReplyToPullPhonebook(BlobParent* aActor,
--- a/dom/telephony/test/marionette/manifest.ini
+++ b/dom/telephony/test/marionette/manifest.ini
@@ -20,17 +20,19 @@ qemu = true
[test_crash_emulator.js]
[test_dsds_connection_conflict.js]
[test_dsds_default_service_id.js]
[test_dsds_normal_call.js]
[test_dtmf.js]
[test_emergency.js]
[test_emergency_label.js]
[test_gsm_cdma_incoming_basic_operations.js]
+disabled = Bug 1214537
[test_gsm_cdma_outgoing_basic_operations.js]
+disabled = Bug 1214537
[test_incall_mmi_call_hold.js]
[test_incall_mmi_call_waiting.js]
[test_incall_mmi_conference.js]
[test_incall_mmi_imei.js]
[test_incoming_already_connected.js]
[test_incoming_already_held.js]
[test_incoming_answer_hangup_oncallschanged.js]
[test_incoming_onstatechange.js]
--- a/mobile/android/base/toolbar/BrowserToolbar.java
+++ b/mobile/android/base/toolbar/BrowserToolbar.java
@@ -23,33 +23,37 @@ import org.mozilla.gecko.animation.ViewH
import org.mozilla.gecko.lwt.LightweightTheme;
import org.mozilla.gecko.lwt.LightweightThemeDrawable;
import org.mozilla.gecko.menu.GeckoMenu;
import org.mozilla.gecko.menu.MenuPopup;
import org.mozilla.gecko.tabs.TabHistoryController;
import org.mozilla.gecko.toolbar.ToolbarDisplayLayout.OnStopListener;
import org.mozilla.gecko.toolbar.ToolbarDisplayLayout.OnTitleChangeListener;
import org.mozilla.gecko.toolbar.ToolbarDisplayLayout.UpdateFlags;
+import org.mozilla.gecko.util.Clipboard;
import org.mozilla.gecko.util.ColorUtils;
import org.mozilla.gecko.util.HardwareUtils;
+import org.mozilla.gecko.util.MenuUtils;
import org.mozilla.gecko.widget.themed.ThemedFrameLayout;
import org.mozilla.gecko.widget.themed.ThemedImageButton;
import org.mozilla.gecko.widget.themed.ThemedImageView;
import org.mozilla.gecko.widget.themed.ThemedRelativeLayout;
import android.content.Context;
import android.content.res.Resources;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.StateListDrawable;
import android.text.TextUtils;
import android.util.AttributeSet;
import android.util.Log;
+import android.view.ContextMenu;
import android.view.LayoutInflater;
+import android.view.MenuInflater;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewTreeObserver.OnGlobalLayoutListener;
import android.view.inputmethod.InputMethodManager;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.PopupWindow;
@@ -114,16 +118,17 @@ public abstract class BrowserToolbar ext
private ToolbarProgressView progressBar;
protected final TabCounter tabsCounter;
protected final ThemedFrameLayout menuButton;
protected final ThemedImageView menuIcon;
private MenuPopup menuPopup;
protected final List<View> focusOrder;
+ private OnActivateListener activateListener;
private OnFocusChangeListener focusChangeListener;
private OnStartEditingListener startEditingListener;
private OnStopEditingListener stopEditingListener;
protected final BrowserApp activity;
protected boolean hasSoftMenuButton;
protected UIMode uiMode;
@@ -203,16 +208,59 @@ public abstract class BrowserToolbar ext
shadowPaint.setColor(shadowColor);
shadowPaint.setStrokeWidth(0.0f);
setUIMode(UIMode.DISPLAY);
prefs = new ToolbarPrefs();
urlDisplayLayout.setToolbarPrefs(prefs);
urlEditLayout.setToolbarPrefs(prefs);
+
+ setOnCreateContextMenuListener(new View.OnCreateContextMenuListener() {
+ @Override
+ public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
+ // NOTE: Use MenuUtils.safeSetVisible because some actions might
+ // be on the Page menu
+ MenuInflater inflater = activity.getMenuInflater();
+ inflater.inflate(R.menu.titlebar_contextmenu, menu);
+
+ String clipboard = Clipboard.getText();
+ if (TextUtils.isEmpty(clipboard)) {
+ menu.findItem(R.id.pasteandgo).setVisible(false);
+ menu.findItem(R.id.paste).setVisible(false);
+ }
+
+ Tab tab = Tabs.getInstance().getSelectedTab();
+ if (tab != null) {
+ String url = tab.getURL();
+ if (url == null) {
+ menu.findItem(R.id.copyurl).setVisible(false);
+ menu.findItem(R.id.add_to_launcher).setVisible(false);
+ }
+
+ MenuUtils.safeSetVisible(menu, R.id.subscribe, tab.hasFeeds());
+ MenuUtils.safeSetVisible(menu, R.id.add_search_engine, tab.hasOpenSearch());
+ } else {
+ // if there is no tab, remove anything tab dependent
+ menu.findItem(R.id.copyurl).setVisible(false);
+ menu.findItem(R.id.add_to_launcher).setVisible(false);
+ MenuUtils.safeSetVisible(menu, R.id.subscribe, false);
+ MenuUtils.safeSetVisible(menu, R.id.add_search_engine, false);
+ }
+ }
+ });
+
+ setOnClickListener(new OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ if (activateListener != null) {
+ activateListener.onActivate();
+ }
+ }
+ });
}
@Override
public void onAttachedToWindow() {
super.onAttachedToWindow();
prefs.open();
@@ -321,27 +369,16 @@ public abstract class BrowserToolbar ext
cancelEdit();
return true;
}
return urlDisplayLayout.dismissSiteIdentityPopup();
}
@Override
- public boolean onTouchEvent(MotionEvent event) {
- // If the motion event has occurred below the toolbar (due to the scroll
- // offset), let it pass through to the page.
- if (event != null && event.getY() > getHeight() + ViewHelper.getTranslationY(this)) {
- return false;
- }
-
- return super.onTouchEvent(event);
- }
-
- @Override
protected void onSizeChanged(int w, int h, int oldw, int oldh) {
super.onSizeChanged(w, h, oldw, oldh);
if (h != oldh) {
// Post this to happen outside of onSizeChanged, as this may cause
// a layout change and relayouts within a layout change don't work.
post(new Runnable() {
@Override
@@ -630,18 +667,18 @@ public abstract class BrowserToolbar ext
urlEditLayout.onEditSuggestion(suggestion);
}
public void setTitle(CharSequence title) {
urlDisplayLayout.setTitle(title);
}
- public void setOnActivateListener(OnActivateListener listener) {
- urlDisplayLayout.setOnActivateListener(listener);
+ public void setOnActivateListener(final OnActivateListener listener) {
+ activateListener = listener;
}
public void setOnCommitListener(OnCommitListener listener) {
urlEditLayout.setOnCommitListener(listener);
}
public void setOnDismissListener(OnDismissListener listener) {
urlEditLayout.setOnDismissListener(listener);
--- a/mobile/android/base/toolbar/ToolbarDisplayLayout.java
+++ b/mobile/android/base/toolbar/ToolbarDisplayLayout.java
@@ -10,46 +10,41 @@ import java.util.EnumSet;
import java.util.List;
import org.mozilla.gecko.AboutPages;
import org.mozilla.gecko.AppConstants.Versions;
import org.mozilla.gecko.BrowserApp;
import org.mozilla.gecko.R;
import org.mozilla.gecko.ReaderModeUtils;
import org.mozilla.gecko.SiteIdentity;
+import org.mozilla.gecko.SiteIdentity.MixedMode;
import org.mozilla.gecko.SiteIdentity.SecurityMode;
-import org.mozilla.gecko.SiteIdentity.MixedMode;
import org.mozilla.gecko.SiteIdentity.TrackingMode;
import org.mozilla.gecko.Tab;
-import org.mozilla.gecko.Tabs;
import org.mozilla.gecko.animation.PropertyAnimator;
import org.mozilla.gecko.animation.ViewHelper;
import org.mozilla.gecko.favicons.Favicons;
import org.mozilla.gecko.toolbar.BrowserToolbarTabletBase.ForwardButtonAnimation;
-import org.mozilla.gecko.util.Clipboard;
import org.mozilla.gecko.util.ColorUtils;
import org.mozilla.gecko.util.HardwareUtils;
-import org.mozilla.gecko.util.MenuUtils;
import org.mozilla.gecko.util.StringUtils;
import org.mozilla.gecko.widget.themed.ThemedLinearLayout;
import org.mozilla.gecko.widget.themed.ThemedTextView;
import android.content.Context;
import android.content.res.Resources;
import android.graphics.Bitmap;
import android.os.SystemClock;
import android.text.Spannable;
import android.text.SpannableStringBuilder;
import android.text.TextUtils;
import android.text.style.ForegroundColorSpan;
import android.util.AttributeSet;
import android.util.Log;
-import android.view.ContextMenu;
import android.view.LayoutInflater;
-import android.view.MenuInflater;
import android.view.View;
import android.view.animation.AlphaAnimation;
import android.view.animation.Animation;
import android.view.animation.TranslateAnimation;
import android.widget.Button;
import android.widget.ImageButton;
/**
@@ -141,18 +136,16 @@ public class ToolbarDisplayLayout extend
private PropertyAnimator mForwardAnim;
private final ForegroundColorSpan mUrlColor;
private final ForegroundColorSpan mBlockedColor;
private final ForegroundColorSpan mDomainColor;
private final ForegroundColorSpan mPrivateDomainColor;
- private BrowserToolbar.OnActivateListener mActivateListener;
-
public ToolbarDisplayLayout(Context context, AttributeSet attrs) {
super(context, attrs);
setOrientation(HORIZONTAL);
mActivity = (BrowserApp) context;
LayoutInflater.from(context).inflate(R.layout.toolbar_display_layout, this);
@@ -234,66 +227,16 @@ public class ToolbarDisplayLayout extend
mTitleSlideRight = new TranslateAnimation(-slideWidth, 0, 0, 0);
mTitleSlideRight.setAnimationListener(this);
final int lockAnimDuration = 300;
mLockFadeIn.setDuration(lockAnimDuration);
mTitleSlideLeft.setDuration(lockAnimDuration);
mTitleSlideRight.setDuration(lockAnimDuration);
-
- // Context menu
- mTitle.setOnCreateContextMenuListener(new View.OnCreateContextMenuListener() {
- @Override
- public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
- // NOTE: Use MenuUtils.safeSetVisible because some actions might
- // be on the Page menu
- MenuInflater inflater = mActivity.getMenuInflater();
- inflater.inflate(R.menu.titlebar_contextmenu, menu);
-
- String clipboard = Clipboard.getText();
- if (TextUtils.isEmpty(clipboard)) {
- menu.findItem(R.id.pasteandgo).setVisible(false);
- menu.findItem(R.id.paste).setVisible(false);
- }
-
- Tab tab = Tabs.getInstance().getSelectedTab();
- if (tab != null) {
- String url = tab.getURL();
- if (url == null) {
- menu.findItem(R.id.copyurl).setVisible(false);
- menu.findItem(R.id.add_to_launcher).setVisible(false);
- }
-
- MenuUtils.safeSetVisible(menu, R.id.subscribe, tab.hasFeeds());
- MenuUtils.safeSetVisible(menu, R.id.add_search_engine, tab.hasOpenSearch());
- }
- else {
- // if there is no tab, remove anything tab dependent
- menu.findItem(R.id.copyurl).setVisible(false);
- menu.findItem(R.id.add_to_launcher).setVisible(false);
- MenuUtils.safeSetVisible(menu, R.id.subscribe, false);
- MenuUtils.safeSetVisible(menu, R.id.add_search_engine, false);
- }
- }
- });
-
- // Edit activation
- mTitle.setOnClickListener(new OnClickListener() {
- @Override
- public void onClick(View v) {
- if (mActivateListener != null) {
- mActivateListener.onActivate();
- }
- }
- });
- }
-
- public void setOnActivateListener(BrowserToolbar.OnActivateListener listener) {
- mActivateListener = listener;
}
@Override
public void onDetachedFromWindow() {
super.onDetachedFromWindow();
mIsAttached = false;
}
--- a/testing/marionette/client/marionette/runner/base.py
+++ b/testing/marionette/client/marionette/runner/base.py
@@ -802,18 +802,16 @@ setReq.onerror = function() {
def run_tests(self, tests):
self.reset_test_stats()
self.start_time = time.time()
need_external_ip = True
if not self.marionette:
self.start_marionette()
- if self.emulator:
- self.marionette.emulator.wait_for_homescreen(self.marionette)
# Retrieve capabilities for later use
if not self._capabilities:
self.capabilities
# if we're working against a desktop version, we usually don't need
# an external ip
if self._capabilities['device'] == "desktop":
need_external_ip = False
--- a/testing/marionette/client/marionette/tests/unit/test_chrome_element_css.py
+++ b/testing/marionette/client/marionette/tests/unit/test_chrome_element_css.py
@@ -5,17 +5,17 @@
from marionette import MarionetteTestCase
class TestChromeElementCSS(MarionetteTestCase):
def test_we_can_get_css_value_on_chrome_element(self):
self.marionette.navigate("about:blank")
with self.marionette.using_context("chrome"):
- element = self.marionette.find_element("id", "page-proxy-favicon")
+ element = self.marionette.find_element("id", "identity-icon")
favicon_image = element.value_of_css_property("list-style-image")
- self.assertIn("identity-not-secure.svg", favicon_image)
+ self.assertIn("identity-icon.svg", favicon_image)
element = self.marionette.find_element("id", "identity-box")
background_colour = element.value_of_css_property("background-color")
self.assertEqual("transparent", background_colour)
--- a/testing/mozbase/mozrunner/mozrunner/devices/emulator.py
+++ b/testing/mozbase/mozrunner/mozrunner/devices/emulator.py
@@ -199,33 +199,16 @@ waitFor(
print 'timed out'
# We silently ignore the timeout if it occurs, since
# isSystemMessageListenerReady() isn't available on
# older emulators. 45s *should* be enough of a delay
# to allow telephony API's to work.
pass
print '...done'
- # TODO this function is B2G specific and shouldn't live here
- @uses_marionette
- def wait_for_homescreen(self, marionette):
- print 'waiting for homescreen...'
-
- marionette.set_context(marionette.CONTEXT_CONTENT)
- marionette.execute_async_script("""
-log('waiting for mozbrowserloadend');
-window.addEventListener('mozbrowserloadend', function loaded(aEvent) {
- log('received mozbrowserloadend for ' + aEvent.target.src);
- if (aEvent.target.src.indexOf('ftu') != -1 || aEvent.target.src.indexOf('homescreen') != -1 || aEvent.target.src.indexOf('verticalhome') != -1) {
- window.removeEventListener('mozbrowserloadend', loaded);
- marionetteScriptFinished();
- }
-});""", script_timeout=300000)
- print '...done'
-
def _get_telnet_response(self, command=None):
output = []
assert(self.telnet)
if command is not None:
self.telnet.write('%s\n' % command)
while True:
line = self.telnet.read_until('\n')
output.append(line.rstrip())