Merge mozilla-central into services-central

This commit is contained in:
Gregory Szorc 2012-07-10 10:22:21 -07:00
commit 3bd6eb3017
356 changed files with 2219 additions and 1933 deletions

View File

@ -221,3 +221,5 @@ ifeq ($(OS_TARGET)_$(TARGET_XPCOM_ABI),Linux_x86-gcc3)
scheck::
@relcount=`find $(DIST)/bin -name "*.so" | xargs objdump -R | grep R_386_PC32 | wc -l` && if test $$relcount -gt 0; then echo "FAILED: R_386_PC32 relocations detected in a shared library. Did you use a system header without adding it to config/system-headers?"; exit 1; else echo "PASSED"; fi
endif
js/src/Makefile: subsrcdir := js/src

View File

@ -36,9 +36,8 @@ DIRS = \
$(null)
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES =\
MOCHITEST_A11Y_FILES =\
formimage.png \
letters.gif \
moz.png \
@ -74,5 +73,4 @@ _TEST_FILES =\
treeview.js \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,9 +10,8 @@ VPATH = @srcdir@
relativesrcdir = accessible/actions
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES =\
MOCHITEST_A11Y_FILES =\
test_anchors.html \
test_aria.html \
test_general.html \
@ -27,5 +26,4 @@ _TEST_FILES =\
test_treegrid.xul \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,9 +10,8 @@ VPATH = @srcdir@
relativesrcdir = accessible/attributes
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES =\
MOCHITEST_A11Y_FILES =\
test_obj.html \
test_obj_css.html \
test_obj_css.xul \
@ -24,5 +23,4 @@ _TEST_FILES =\
test_xml-roles.html \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,13 +10,11 @@ VPATH = @srcdir@
relativesrcdir = accessible/bounds
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES =\
MOCHITEST_A11Y_FILES =\
test_list.html \
test_select.html \
test_zoom.html \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,13 +10,11 @@ VPATH = @srcdir@
relativesrcdir = accessible/editabletext
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES =\
MOCHITEST_A11Y_FILES =\
editabletext.js \
test_1.html \
test_2.html \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,14 +10,12 @@ VPATH = @srcdir@
relativesrcdir = accessible/elm
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES =\
MOCHITEST_A11Y_FILES =\
test_figure.html \
test_listbox.xul \
test_nsApplicationAcc.html \
test_plugin.html \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,9 +10,8 @@ VPATH = @srcdir@
relativesrcdir = accessible/events
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES =\
MOCHITEST_A11Y_FILES =\
docload_wnd.html \
focus.html \
scroll.html \
@ -62,5 +61,4 @@ _TEST_FILES =\
test_valuechange.html \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,13 +10,11 @@ VPATH = @srcdir@
relativesrcdir = accessible/focus
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES =\
MOCHITEST_A11Y_FILES =\
test_focusedChild.html \
test_takeFocus.html \
test_takeFocus.xul \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,9 +10,8 @@ VPATH = @srcdir@
relativesrcdir = accessible/hittest
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES = \
MOCHITEST_A11Y_FILES = \
test_browser.html \
test_general.html \
test_zoom_tree.xul \
@ -20,5 +19,4 @@ _TEST_FILES = \
zoom_tree.xul \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,13 +10,11 @@ VPATH = @srcdir@
relativesrcdir = accessible/hyperlink
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES =\
MOCHITEST_A11Y_FILES =\
hyperlink.js \
test_general.html \
test_general.xul \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,12 +10,10 @@ VPATH = @srcdir@
relativesrcdir = accessible/hypertext
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES = \
MOCHITEST_A11Y_FILES = \
test_general.html \
test_update.html \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,9 +10,8 @@ VPATH = @srcdir@
relativesrcdir = accessible/name
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES =\
MOCHITEST_A11Y_FILES =\
general.css \
general.xbl \
markup.js \
@ -27,5 +26,4 @@ _TEST_FILES =\
markuprules.xml \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,12 +10,10 @@ VPATH = @srcdir@
relativesrcdir = accessible/pivot
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES = \
MOCHITEST_A11Y_FILES = \
doc_virtualcursor.html \
test_virtualcursor.html \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,9 +10,8 @@ VPATH = @srcdir@
relativesrcdir = accessible/relations
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES =\
MOCHITEST_A11Y_FILES =\
test_bindings.xhtml \
test_embeds.xul \
test_general.html \
@ -23,5 +22,4 @@ _TEST_FILES =\
test_update.html \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -9,13 +9,11 @@ VPATH = @srcdir@
relativesrcdir = accessible/role
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES =\
MOCHITEST_A11Y_FILES =\
test_aria.html \
test_aria.xul \
test_general.html \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,9 +10,8 @@ VPATH = @srcdir@
relativesrcdir = accessible/selectable
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES =\
MOCHITEST_A11Y_FILES =\
test_aria.html \
test_listbox.xul \
test_menu.xul \
@ -21,5 +20,4 @@ _TEST_FILES =\
test_tree.xul \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,9 +10,8 @@ VPATH = @srcdir@
relativesrcdir = accessible/states
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES =\
MOCHITEST_A11Y_FILES =\
test_aria.html \
test_aria_imgmap.html \
test_aria_widgetitems.html \
@ -39,5 +38,4 @@ _TEST_FILES =\
z_frames_update.html \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,9 +10,8 @@ VPATH = @srcdir@
relativesrcdir = accessible/table
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES = \
MOCHITEST_A11Y_FILES = \
test_headers_ariagrid.html \
test_headers_listbox.xul \
test_headers_table.html \
@ -35,5 +34,4 @@ _TEST_FILES = \
test_table_2.html \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,9 +10,8 @@ VPATH = @srcdir@
relativesrcdir = accessible/text
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES = \
MOCHITEST_A11Y_FILES = \
doc.html \
test_doc.html \
test_hypertext.html \
@ -23,5 +22,4 @@ _TEST_FILES = \
test_words.html \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,12 +10,10 @@ VPATH = @srcdir@
relativesrcdir = accessible/textcaret
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES = \
MOCHITEST_A11Y_FILES = \
test_browserui.xul \
test_general.html \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,11 +10,9 @@ VPATH = @srcdir@
relativesrcdir = accessible/textselection
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES = \
MOCHITEST_A11Y_FILES = \
test_general.html \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,9 +10,8 @@ VPATH = @srcdir@
relativesrcdir = accessible/tree
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES =\
MOCHITEST_A11Y_FILES =\
dockids.html \
$(warning test_applicationacc.xul temporarily disabled, see bug 561508) \
test_aria_globals.html \
@ -46,5 +45,4 @@ _TEST_FILES =\
wnd.xul \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,9 +10,8 @@ VPATH = @srcdir@
relativesrcdir = accessible/treeupdate
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES =\
MOCHITEST_A11Y_FILES =\
test_ariadialog.html \
test_canvas.html \
test_colorpicker.xul \
@ -34,5 +33,4 @@ _TEST_FILES =\
test_whitespace.html \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,13 +10,11 @@ VPATH = @srcdir@
relativesrcdir = accessible/value
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES =\
MOCHITEST_A11Y_FILES =\
test_general.html \
test_progress.html \
test_progress.xul \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/a11y/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -31,6 +31,8 @@ DEFINES += \
$(NULL)
ifdef LIBXUL_SDK #{
PREF_JS_EXPORTS += $(srcdir)/profile/channel-prefs.js
include $(topsrcdir)/config/rules.mk
else
# Build a binary bootstrapping with XRE_main
@ -142,8 +144,6 @@ ifndef LIBXUL_SDK
libs:: $(srcdir)/profile/channel-prefs.js
$(NSINSTALL) -D $(DIST)/bin/defaults/pref
$(PYTHON) $(topsrcdir)/config/Preprocessor.py $(PREF_PPFLAGS) $(ACDEFINES) $^ > $(DIST)/bin/defaults/pref/channel-prefs.js
else
PREF_JS_EXPORTS += $(srcdir)/profile/channel-prefs.js
endif
libs:: $(srcdir)/blocklist.xml

View File

@ -1477,7 +1477,9 @@ var gBrowserInit = {
#ifdef MENUBAR_CAN_AUTOHIDE
document.getElementById("appmenu_styleeditor").hidden = false;
#endif
document.getElementById("developer-toolbar-styleeditor").hidden = false;
// We don't show the Style Editor button in the developer toolbar for now.
// See bug 771203
// document.getElementById("developer-toolbar-styleeditor").hidden = false;
}
#ifdef MENUBAR_CAN_AUTOHIDE

View File

@ -98,11 +98,11 @@ Cell.prototype = {
* Handles all cell events.
*/
handleEvent: function Cell_handleEvent(aEvent) {
// We're not responding to external drag/drop events
// We're not responding to external drag/drop events
// when our parent window is in private browsing mode.
if (inPrivateBrowsingMode && !gDrag.draggedSite)
if (inPrivateBrowsingMode() && !gDrag.draggedSite)
return;
if (aEvent.type != "dragexit" && !gDrag.isValid(aEvent))
return;

View File

@ -22,19 +22,6 @@ let {
blockedLinks: gBlockedLinks
} = NewTabUtils;
let chromeWin = window.QueryInterface(Ci.nsIInterfaceRequestor)
.getInterface(Ci.nsIWebNavigation)
.QueryInterface(Ci.nsIDocShellTreeItem)
.rootTreeItem
.QueryInterface(Ci.nsIInterfaceRequestor)
.getInterface(Ci.nsIDOMWindow)
.wrappedJSObject;
let inPrivateBrowsingMode = false;
if ("gPrivateBrowsingUI" in chromeWin)
inPrivateBrowsingMode = chromeWin.gPrivateBrowsingUI.privateWindow;
XPCOMUtils.defineLazyGetter(this, "gStringBundle", function() {
return Services.strings.
createBundle("chrome://browser/locale/newTab.properties");
@ -42,6 +29,21 @@ XPCOMUtils.defineLazyGetter(this, "gStringBundle", function() {
function newTabString(name) gStringBundle.GetStringFromName('newtab.' + name);
function inPrivateBrowsingMode() {
let chromeWin = window.QueryInterface(Ci.nsIInterfaceRequestor)
.getInterface(Ci.nsIWebNavigation)
.QueryInterface(Ci.nsIDocShellTreeItem)
.rootTreeItem
.QueryInterface(Ci.nsIInterfaceRequestor)
.getInterface(Ci.nsIDOMWindow)
.wrappedJSObject;
if ("gPrivateBrowsingUI" in chromeWin)
return chromeWin.gPrivateBrowsingUI.privateWindow;
return false;
}
const HTML_NAMESPACE = "http://www.w3.org/1999/xhtml";
#include batch.js

View File

@ -13,9 +13,8 @@ DIRS += \
$(NULL)
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES = \
MOCHITEST_FILES = \
test_feed_discovery.html \
feed_discovery.html \
test_bug395533.html \
@ -44,7 +43,7 @@ _TEST_FILES = \
# test_contextmenu.html is disabled on Linux due to bug 513558
ifneq (gtk2,$(MOZ_WIDGET_TOOLKIT))
_TEST_FILES += \
MOCHITEST_FILES += \
audio.ogg \
test_contextmenu.html \
subtst_contextmenu.html \
@ -271,8 +270,7 @@ _BROWSER_FILES += \
endif
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/tests/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk
libs:: $(_BROWSER_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)

View File

@ -9,12 +9,10 @@ VPATH = @srcdir@
relativesrcdir = browser/components/downloads/test/browser
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_BROWSER_FILES = \
MOCHITEST_BROWSER_FILES = \
browser_basic_functionality.js \
head.js \
$(NULL)
libs:: $(_BROWSER_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -17,9 +17,7 @@ DIRS = \
chrome \
$(NULL)
include $(topsrcdir)/config/rules.mk
_TEST_FILES = bug408328-data.xml \
MOCHITEST_FILES = bug408328-data.xml \
bug368464-data.xml \
test_bug494328.html \
bug494328-data.xml \
@ -30,5 +28,4 @@ _TEST_FILES = bug408328-data.xml \
valid-unsniffable-feed.xml \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/tests/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,23 +10,18 @@ VPATH = @srcdir@
relativesrcdir = browser/components/feeds/test/chrome
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
# sample_feed.atom was copied from toolkit/components/places/tests/chrome
_HTTP_FILES = \
MOCHITEST_FILES = \
sample_feed.atom \
$(NULL)
_CHROME_FILES = \
MOCHITEST_CHROME_FILES = \
test_423060.xul \
test_bug368464.html \
test_bug408328.html \
test_maxSniffing.html \
$(NULL)
libs:: $(_HTTP_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/tests/$(relativesrcdir)
libs:: $(_CHROME_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/chrome/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -9,9 +9,8 @@ VPATH = @srcdir@
relativesrcdir = browser/components/places/tests/browser
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_BROWSER_TEST_FILES = \
MOCHITEST_BROWSER_FILES = \
head.js \
browser_0_library_left_pane_migration.js \
browser_library_left_pane_fixnames.js \
@ -45,5 +44,4 @@ _BROWSER_TEST_FILES = \
browser_library_downloads.js \
$(NULL)
libs:: $(_BROWSER_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -9,9 +9,8 @@ VPATH = @srcdir@
relativesrcdir = browser/components/places/tests/chrome
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_CHROME_TEST_FILES = \
MOCHITEST_CHROME_FILES = \
test_treeview_date.xul \
test_bug485100-change-case-loses-tag.xul \
test_bug427633_no_newfolder_if_noip.xul \
@ -23,5 +22,4 @@ _CHROME_TEST_FILES = \
test_bug631374_tags_selector_scroll.xul \
$(NULL)
libs:: $(_CHROME_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/chrome/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -9,9 +9,8 @@ VPATH = @srcdir@
relativesrcdir = browser/components/privatebrowsing/test/browser
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_BROWSER_TEST_FILES = \
MOCHITEST_BROWSER_FILES = \
head.js \
browser_console_clear.js \
browser_privatebrowsing_certexceptionsui.js \
@ -67,11 +66,10 @@ _BROWSER_TEST_FILES = \
# Turn off private browsing tests that perma-timeout on Linux.
ifneq (Linux,$(OS_ARCH))
_BROWSER_TEST_FILES += \
MOCHITEST_BROWSER_FILES += \
browser_privatebrowsing_beforeunload.js \
browser_privatebrowsing_cookieacceptdialog.js \
$(NULL)
endif
libs:: $(_BROWSER_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -9,9 +9,8 @@ VPATH = @srcdir@
relativesrcdir = browser/components/search/test
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_BROWSER_TEST_FILES = browser_405664.js \
MOCHITEST_BROWSER_FILES = browser_405664.js \
browser_addEngine.js \
browser_contextmenu.js \
testEngine.xml \
@ -25,5 +24,4 @@ _BROWSER_TEST_FILES = browser_405664.js \
test.html \
$(NULL)
libs:: $(_BROWSER_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -9,14 +9,13 @@ VPATH = @srcdir@
relativesrcdir = browser/components/sessionstore/test
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
# browser_506482.js is disabled because of frequent failures (bug 538672)
# browser_526613.js is disabled because of frequent failures (bug 534489)
# browser_589246.js is disabled for leaking browser windows (bug 752467)
# browser_580512.js is disabled for leaking browser windows (bug 752467)
_BROWSER_TEST_FILES = \
MOCHITEST_BROWSER_FILES = \
head.js \
browser_form_restore_events.js \
browser_form_restore_events_sample.html \
@ -138,11 +137,10 @@ _BROWSER_TEST_FILES = \
$(NULL)
ifneq ($(OS_ARCH),Darwin)
_BROWSER_TEST_FILES += \
MOCHITEST_BROWSER_FILES += \
browser_597071.js \
browser_625016.js \
$(NULL)
endif
libs:: $(_BROWSER_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -13,11 +13,9 @@ include $(DEPTH)/config/autoconf.mk
MODULE = test_browser_shell
XPCSHELL_TESTS = unit
include $(topsrcdir)/config/rules.mk
_BROWSER_TEST_FILES = browser_420786.js \
MOCHITEST_BROWSER_FILES = browser_420786.js \
browser_633221.js \
$(NULL)
libs:: $(_BROWSER_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -9,11 +9,9 @@ VPATH = @srcdir@
relativesrcdir = browser/components/test
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_BROWSER_TEST_FILES = \
MOCHITEST_BROWSER_FILES = \
browser_bug538331.js \
$(NULL)
libs:: $(_BROWSER_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,9 +10,8 @@ VPATH = @srcdir@
relativesrcdir = browser/devtools/commandline/test
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_BROWSER_TEST_FILES = \
MOCHITEST_BROWSER_FILES = \
browser_gcli_break.js \
browser_gcli_commands.js \
browser_gcli_edit.js \
@ -24,7 +23,7 @@ _BROWSER_TEST_FILES = \
head.js \
$(NULL)
_BROWSER_TEST_PAGES = \
MOCHITEST_BROWSER_FILES += \
browser_gcli_break.html \
browser_gcli_inspect.html \
resources_inpage.js \
@ -33,8 +32,4 @@ _BROWSER_TEST_PAGES = \
resources.html \
$(NULL)
libs:: $(_BROWSER_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)
libs:: $(_BROWSER_TEST_PAGES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -9,9 +9,8 @@ VPATH = @srcdir@
relativesrcdir = browser/devtools/debugger/test
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_BROWSER_TEST_FILES = \
MOCHITEST_BROWSER_TESTS = \
browser_dbg_createRemote.js \
browser_dbg_createChrome.js \
browser_dbg_debugger-tab-switch.js \
@ -61,7 +60,7 @@ _BROWSER_TEST_FILES = \
head.js \
$(NULL)
_BROWSER_TEST_PAGES = \
MOCHITEST_BROWSER_PAGES = \
browser_dbg_tab1.html \
browser_dbg_tab2.html \
browser_dbg_debuggerstatement.html \
@ -78,8 +77,6 @@ _BROWSER_TEST_PAGES = \
browser_dbg_pause-exceptions.html \
$(NULL)
libs:: $(_BROWSER_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)
MOCHITEST_BROWSER_FILES_PARTS = MOCHITEST_BROWSER_TESTS MOCHITEST_BROWSER_PAGES
libs:: $(_BROWSER_TEST_PAGES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -214,12 +214,13 @@ InsideOutBox.prototype =
this.selectObjectBox(objectBox, forceOpen);
if (makeBoxVisible) {
this.openObjectBox(objectBox);
if (scrollIntoView) {
// We want to center the label of the element, not the whole tag
// (which includes all of its children, and is vertically huge).
LayoutHelpers.scrollIntoViewIfNeeded(objectBox.firstElementChild);
}
}
if (scrollIntoView) {
// We want to center the label of the element, not the whole tag
// (which includes all of its children, and is vertically huge).
LayoutHelpers.scrollIntoViewIfNeeded(objectBox.firstElementChild);
}
return objectBox;
},
@ -340,6 +341,141 @@ InsideOutBox.prototype =
}
},
/**
* Returns the next object box in the tree for navigation purposes.
*/
nextObjectBox: function IOBox_nextObjectBox(aBoxObject)
{
let candidate;
let boxObject = aBoxObject || this.selectedObjectBox;
if (!boxObject)
return this.rootObjectBox;
// If expanded, return the first child.
let isOpen = this.view.hasClass(boxObject, "open");
let childObjectBox = this.getChildObjectBox(boxObject);
if (isOpen && childObjectBox && childObjectBox.firstChild) {
candidate = childObjectBox.firstChild;
} else {
// Otherwise we get the next available sibling.
while (boxObject) {
if (boxObject.nextSibling) {
boxObject = boxObject.nextSibling;
break;
}
boxObject = this.getParentObjectBox(boxObject);
}
candidate = boxObject;
}
// If the node is not an element (comments or text nodes), we
// jump to the next line.
if (candidate &&
candidate.repObject.nodeType != candidate.repObject.ELEMENT_NODE) {
return this.nextObjectBox(candidate);
}
return candidate;
},
/**
* Returns the next object in the tree for navigation purposes.
*/
nextObject: function IOBox_nextObject()
{
let next = this.nextObjectBox();
return next ? next.repObject : null;
},
/**
* Returns the object that is below the selection.
*
* @param aDistance Number of lines to jump.
*/
farNextObject: function IOBox_farPreviousProject(aDistance)
{
let boxObject = this.selectedObjectBox;
while (aDistance-- > 0) {
let newBoxObject = this.nextObjectBox(boxObject);
if (!newBoxObject) {
break;
}
boxObject = newBoxObject;
}
return boxObject ? boxObject.repObject : null;
},
/**
* Returns the last visible child box of an object box.
*/
lastVisible: function IOBox_lastVisibleChild(aNode)
{
if (!this.view.hasClass(aNode, "open"))
return aNode;
let childBox = this.getChildObjectBox(aNode);
if (!childBox || !childBox.lastChild)
return aNode;
return this.lastVisible(childBox.lastChild);
},
/**
* Returns the previous object box in the tree for navigation purposes.
*/
previousObjectBox: function IOBox_previousObjectBox(aBoxObject)
{
let boxObject = aBoxObject || this.selectedObjectBox;
if (!boxObject)
return this.rootObjectBox;
let candidate;
let sibling = boxObject.previousSibling;
if (sibling) {
candidate = this.lastVisible(sibling);
} else {
candidate = this.getParentObjectBox(boxObject);
}
// If the node is not an element (comments or text nodes), we
// jump to the previous line.
if (candidate &&
candidate.repObject.nodeType != candidate.repObject.ELEMENT_NODE) {
return this.previousObjectBox(candidate);
}
return candidate;
},
/**
* Returns the previous object in the tree for navigation purposes.
*/
previousObject: function IOBox_previousObject()
{
let boxObject = this.previousObjectBox();
return boxObject ? boxObject.repObject : null;
},
/**
* Returns the object that is above the selection.
*
* @param aDistance Number of lines to jump.
*/
farPreviousObject: function IOBox_farPreviousProject(aDistance)
{
let boxObject = this.selectedObjectBox;
while (aDistance-- > 0) {
let newBoxObject = this.previousObjectBox(boxObject);
if (!newBoxObject) {
break;
}
boxObject = newBoxObject;
if (boxObject === this.rootObjectBox)
break;
}
return boxObject ? boxObject.repObject : null;
},
/**
* Open the ancestors of the given object box.
* @param aObjectBox

View File

@ -5,11 +5,13 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
const Cu = Components.utils;
const Ci = Components.interfaces;
Cu.import("resource:///modules/domplate.jsm");
Cu.import("resource:///modules/InsideOutBox.jsm");
Cu.import("resource://gre/modules/Services.jsm");
Cu.import("resource:///modules/inspector.jsm");
Cu.import("resource:///modules/devtools/LayoutHelpers.jsm");
var EXPORTED_SYMBOLS = ["TreePanel", "DOMHelpers"];
@ -80,6 +82,8 @@ TreePanel.prototype = {
this.ioBox = new InsideOutBox(this, this.treePanelDiv);
this.ioBox.createObjectBox(this.IUI.win.document.documentElement);
this.treeLoaded = true;
this._boundTreeKeyPress = this.onTreeKeyPress.bind(this);
this.treeIFrame.addEventListener("keypress", this._boundTreeKeyPress.bind(this), true);
this.treeIFrame.addEventListener("click", this.onTreeClick.bind(this), false);
this.treeIFrame.addEventListener("dblclick", this.onTreeDblClick.bind(this), false);
this.treeIFrame.focus();
@ -182,6 +186,7 @@ TreePanel.prototype = {
this.treePanelDiv.ownerPanel = null;
let parent = this.treePanelDiv.parentNode;
parent.removeChild(this.treePanelDiv);
this.treeIFrame.removeEventListener("keypress", this._boundTreeKeyPress, true);
delete this.treePanelDiv;
delete this.treeBrowserDocument;
}
@ -272,8 +277,7 @@ TreePanel.prototype = {
if (this.IUI.inspecting) {
this.IUI.stopInspecting(true);
} else {
this.IUI.select(node, true, false);
this.IUI.highlighter.highlight(node);
this.navigate(node);
}
}
}
@ -316,6 +320,52 @@ TreePanel.prototype = {
}
},
navigate: function TP_navigate(node)
{
if (!node)
return;
this.ioBox.select(node, false, false, true);
if (this.IUI.highlighter.isNodeHighlightable(node)) {
this.IUI.select(node, true, false, "treepanel");
this.IUI.highlighter.highlight(node);
}
},
onTreeKeyPress: function TP_onTreeKeyPress(aEvent)
{
let handled = true;
switch(aEvent.keyCode) {
case Ci.nsIDOMKeyEvent.DOM_VK_LEFT:
this.ioBox.contractObjectBox(this.ioBox.selectedObjectBox);
break;
case Ci.nsIDOMKeyEvent.DOM_VK_RIGHT:
this.ioBox.expandObjectBox(this.ioBox.selectedObjectBox);
break;
case Ci.nsIDOMKeyEvent.DOM_VK_UP:
this.navigate(this.ioBox.previousObject());
break;
case Ci.nsIDOMKeyEvent.DOM_VK_DOWN:
this.navigate(this.ioBox.nextObject());
break;
case Ci.nsIDOMKeyEvent.DOM_VK_PAGE_UP:
this.navigate(this.ioBox.farPreviousObject(10));
break;
case Ci.nsIDOMKeyEvent.DOM_VK_PAGE_DOWN:
this.navigate(this.ioBox.farNextObject(10));
break;
case Ci.nsIDOMKeyEvent.DOM_VK_HOME:
this.navigate(this.ioBox.rootObject);
break;
default:
handled = false;
}
if (handled) {
aEvent.stopPropagation();
aEvent.preventDefault();
}
},
/**
* Starts the editor for an attribute name or value.
* @param aAttrObj
@ -542,10 +592,10 @@ TreePanel.prototype = {
* @param aNode the DOM node in the content document to select.
* @param aScroll boolean scroll to the visible node?
*/
select: function TP_select(aNode, aScroll)
select: function TP_select(aNode, aScroll, aFrom)
{
if (this.ioBox) {
this.ioBox.select(aNode, true, true, aScroll);
this.ioBox.select(aNode, true, aFrom != "treepanel", aScroll);
} else {
this.pendingSelection = { node: aNode, scroll: aScroll };
}

View File

@ -440,7 +440,7 @@ InspectorUI.prototype = {
/**
* Toggle the TreePanel.
*/
toggleHTMLPanel: function TP_toggleHTMLPanel()
toggleHTMLPanel: function IUI_toggleHTMLPanel()
{
if (this.treePanel.isOpen()) {
this.treePanel.close();
@ -653,15 +653,10 @@ InspectorUI.prototype = {
setupNavigationKeys: function IUI_setupNavigationKeys()
{
// UI elements that are arrow keys sensitive:
// - highlighter veil;
// - content window (when the highlighter `veil is pointer-events:none`;
// - the Inspector toolbar.
this.onKeypress = this.onKeypress.bind(this);
this.highlighter.highlighterContainer.addEventListener("keypress",
this.onKeypress, true);
this.win.addEventListener("keypress", this.onKeypress, true);
this.toolbar.addEventListener("keypress", this.onKeypress, true);
},
@ -670,9 +665,6 @@ InspectorUI.prototype = {
*/
removeNavigationKeys: function IUI_removeNavigationKeys()
{
this.highlighter.highlighterContainer.removeEventListener("keypress",
this.onKeypress, true);
this.win.removeEventListener("keypress", this.onKeypress, true);
this.toolbar.removeEventListener("keypress", this.onKeypress, true);
},
@ -857,7 +849,7 @@ InspectorUI.prototype = {
this.breadcrumbs.update();
this.chromeWin.Tilt.update(aNode);
this.treePanel.select(aNode, aScroll);
this.treePanel.select(aNode, aScroll, aFrom);
this._notifySelected(aFrom);
},
@ -1924,7 +1916,7 @@ HTMLBreadcrumbs.prototype = {
let classesLabel = this.IUI.chromeDoc.createElement("label");
classesLabel.className = "inspector-breadcrumbs-classes plain";
let pseudosLabel = this.IUI.chromeDoc.createElement("label");
pseudosLabel.className = "inspector-breadcrumbs-pseudo-classes plain";
@ -2153,6 +2145,7 @@ HTMLBreadcrumbs.prototype = {
};
button.onclick = (function _onBreadcrumbsRightClick(aEvent) {
button.focus();
if (aEvent.button == 2) {
this.openSiblingMenu(button, aNode);
}

View File

@ -42,6 +42,8 @@ _BROWSER_FILES = \
browser_inspector_pseudoClass_menu.js \
browser_inspector_destroyselection.html \
browser_inspector_destroyselection.js \
browser_inspector_treePanel_navigation.html \
browser_inspector_treePanel_navigation.js \
head.js \
$(NULL)

View File

@ -42,6 +42,8 @@ function test()
// Test that navigating around without a selected node gets us to the
// body element.
node = doc.querySelector("body");
let bc = InspectorUI.breadcrumbs;
bc.nodeHierarchy[bc.currentIndex].button.focus();
EventUtils.synthesizeKey("VK_RIGHT", { });
});
}

View File

@ -0,0 +1,26 @@
<!DOCTYPE html>
<html class="html">
<meta charset=utf-8 />
<body class="body">
<div class="node0">
<p class="node1">line1</p>
<p class="node2">line2</p>
<p class="node3">line3</p>
<!-- A comment -->
<p class="node4">line4
<span class="node5">line5</span>
<span class="node6">line6</span>
<!-- A comment -->
<a class="node7">line7<span class="node8">line8</span></a>
<span class="node9">line9</span>
<span class="node10">line10</span>
<span class="node11">line11</span>
<a class="node12">line12<span class="node13">line13</span></a>
</p>
<p class="node14">line14</p>
<p class="node15">line15</p>
</div>
</body>
</html>

View File

@ -0,0 +1,103 @@
/* Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/ */
function test() {
waitForExplicitFinish();
let doc;
let keySequence = "right down right ";
keySequence += "down down down down right ";
keySequence += "down down down right ";
keySequence += "down down down down down right ";
keySequence += "down down down down down ";
keySequence += "up up up left down home ";
keySequence += "pagedown left down down pageup pageup left down";
keySequence = keySequence.split(" ");
let keySequenceRes = "body node0 node0 ";
keySequenceRes += "node1 node2 node3 node4 node4 ";
keySequenceRes += "node5 node6 node7 node7 ";
keySequenceRes += "node8 node9 node10 node11 node12 node12 ";
keySequenceRes += "node13 node14 node15 node15 node15 ";
keySequenceRes += "node14 node13 node12 node12 node14 html ";
keySequenceRes += "node7 node7 node9 node10 body html html html";
keySequenceRes = keySequenceRes.split(" ");
gBrowser.selectedTab = gBrowser.addTab();
gBrowser.selectedBrowser.addEventListener("load", function onload() {
gBrowser.selectedBrowser.removeEventListener("load", onload, true);
doc = content.document;
waitForFocus(setupTest, content);
}, true);
content.location = "http://mochi.test:8888/browser/browser/devtools/highlighter/test/browser_inspector_treePanel_navigation.html";
function setupTest() {
Services.obs.addObserver(runTests, InspectorUI.INSPECTOR_NOTIFICATIONS.OPENED, false);
InspectorUI.toggleInspectorUI();
}
function runTests() {
Services.obs.removeObserver(runTests, InspectorUI.INSPECTOR_NOTIFICATIONS.OPENED);
Services.obs.addObserver(startNavigation, InspectorUI.INSPECTOR_NOTIFICATIONS.TREEPANELREADY, false);
InspectorUI.select(doc.body, true, true, true);
InspectorUI.toggleHTMLPanel();
}
function startNavigation() {
Services.obs.removeObserver(startNavigation, InspectorUI.INSPECTOR_NOTIFICATIONS.TREEPANELREADY);
nextStep(0);
}
function nextStep(cursor) {
let key = keySequence[cursor];
let className = keySequenceRes[cursor];
switch(key) {
case "right":
EventUtils.synthesizeKey("VK_RIGHT", {});
break;
case "down":
EventUtils.synthesizeKey("VK_DOWN", {});
break;
case "left":
EventUtils.synthesizeKey("VK_LEFT", {});
break;
case "up":
EventUtils.synthesizeKey("VK_UP", {});
break;
case "pageup":
EventUtils.synthesizeKey("VK_PAGE_UP", {});
break;
case "pagedown":
EventUtils.synthesizeKey("VK_PAGE_DOWN", {});
break;
case "home":
EventUtils.synthesizeKey("VK_HOME", {});
break;
}
executeSoon(function() {
if (cursor >= keySequence.length) {
Services.obs.addObserver(finishUp, InspectorUI.INSPECTOR_NOTIFICATIONS.CLOSED, false);
InspectorUI.closeInspectorUI();
} else {
let node = InspectorUI.treePanel.ioBox.selectedObjectBox.repObject;
is(node.className, className, "[" + cursor + "] right node selected: " + className);
nextStep(cursor + 1);
}
});
}
function finishUp() {
Services.obs.removeObserver(finishUp, InspectorUI.INSPECTOR_NOTIFICATIONS.CLOSED);
doc = null;
gBrowser.removeCurrentTab();
finish();
}
}

View File

@ -112,11 +112,13 @@ function ResponsiveUI(aWindow, aTab)
// Events
this.tab.addEventListener("TabClose", this);
this.tabContainer.addEventListener("TabSelect", this);
this.mainWindow.addEventListener("keypress", this.bound_onKeypress, true);
this.mainWindow.document.addEventListener("keypress", this.bound_onKeypress, false);
this.buildUI();
this.checkMenus();
this.inspectorWasOpen = this.mainWindow.InspectorUI.isInspectorOpen;
try {
if (Services.prefs.getBoolPref("devtools.responsiveUI.rotate")) {
this.rotate();
@ -140,6 +142,10 @@ ResponsiveUI.prototype = {
* Destroy the nodes. Remove listeners. Reset the style.
*/
close: function RUI_unload() {
if (this.closing)
return;
this.closing = true;
this.unCheckMenus();
// Reset style of the stack.
let style = "max-width: none;" +
@ -154,7 +160,7 @@ ResponsiveUI.prototype = {
this.saveCurrentPreset();
// Remove listeners.
this.mainWindow.removeEventListener("keypress", this.bound_onKeypress, true);
this.mainWindow.document.removeEventListener("keypress", this.bound_onKeypress, false);
this.menulist.removeEventListener("select", this.bound_presetSelected, true);
this.tab.removeEventListener("TabClose", this);
this.tabContainer.removeEventListener("TabSelect", this);
@ -195,9 +201,17 @@ ResponsiveUI.prototype = {
onKeypress: function RUI_onKeypress(aEvent) {
if (aEvent.keyCode == this.mainWindow.KeyEvent.DOM_VK_ESCAPE &&
this.mainWindow.gBrowser.selectedBrowser == this.browser) {
aEvent.preventDefault();
aEvent.stopPropagation();
this.close();
// If the inspector wasn't open at first but is open now,
// we don't want to close the Responsive Mode on Escape.
// We let the inspector close first.
let isInspectorOpen = this.mainWindow.InspectorUI.isInspectorOpen;
if (this.inspectorWasOpen || !isInspectorOpen) {
aEvent.preventDefault();
aEvent.stopPropagation();
this.close();
}
}
},

View File

@ -9,9 +9,8 @@ VPATH = @srcdir@
relativesrcdir = browser/devtools/scratchpad/test
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_BROWSER_TEST_FILES = \
MOCHITEST_BROWSER_FILES = \
browser_scratchpad_initialization.js \
browser_scratchpad_contexts.js \
browser_scratchpad_tab_switch.js \
@ -35,5 +34,4 @@ _BROWSER_TEST_FILES = \
browser_scratchpad_bug_651942_recent_files.js \
head.js \
libs:: $(_BROWSER_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,9 +10,8 @@ VPATH = @srcdir@
relativesrcdir = browser/devtools/shared/test
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_BROWSER_TEST_FILES = \
MOCHITEST_BROWSER_FILES = \
browser_browser_basic.js \
browser_promise_basic.js \
browser_require_basic.js \
@ -24,7 +23,7 @@ _BROWSER_TEST_FILES = \
head.js \
$(NULL)
_BROWSER_TEST_PAGES = \
MOCHITEST_BROWSER_FILES += \
browser_templater_basic.html \
browser_toolbar_basic.html \
browser_toolbar_webconsole_errors_count.html \
@ -32,8 +31,4 @@ _BROWSER_TEST_PAGES = \
browser_layoutHelpers_iframe.html \
$(NULL)
libs:: $(_BROWSER_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)
libs:: $(_BROWSER_TEST_PAGES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -9,9 +9,8 @@ VPATH = @srcdir@
relativesrcdir = browser/devtools/sourceeditor/test
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_BROWSER_TEST_FILES = \
MOCHITEST_BROWSER_FILES = \
browser_sourceeditor_initialization.js \
browser_bug684862_paste_html.js \
browser_bug687573_vscroll.js \
@ -33,5 +32,4 @@ _BROWSER_TEST_FILES = \
browser_bug729960_block_bracket_jump.js \
head.js \
libs:: $(_BROWSER_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,9 +10,8 @@ VPATH = @srcdir@
relativesrcdir = browser/devtools/styleinspector/test
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_BROWSER_TEST_FILES = \
MOCHITEST_BROWSER_FILES = \
browser_styleinspector.js \
browser_bug683672.js \
browser_styleinspector_bug_672746_default_styles.js \
@ -40,7 +39,7 @@ _BROWSER_TEST_FILES = \
head.js \
$(NULL)
_BROWSER_TEST_PAGES = \
MOCHITEST_BROWSER_FILES += \
browser_bug683672.html \
browser_bug705707_is_content_stylesheet.html \
browser_bug705707_is_content_stylesheet_imported.css \
@ -52,8 +51,4 @@ _BROWSER_TEST_PAGES = \
browser_bug722196_identify_media_queries.html \
$(NULL)
libs:: $(_BROWSER_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)
libs:: $(_BROWSER_TEST_PAGES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -9,13 +9,12 @@ VPATH = @srcdir@
relativesrcdir = browser/devtools/tilt/test
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_BROWSER_TEST_FILES = head.js
MOCHITEST_BROWSER_FILES = head.js
# browser_tilt* disabled on Linux due to bug 759157
ifneq (gtk2,$(MOZ_WIDGET_TOOLKIT))
_BROWSER_TEST_FILES += \
MOCHITEST_BROWSER_FILES += \
browser_tilt_01_lazy_getter.js \
browser_tilt_02_notifications-seq.js \
browser_tilt_02_notifications.js \
@ -62,5 +61,4 @@ _BROWSER_TEST_FILES += \
$(NULL)
endif
libs:: $(_BROWSER_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -9,9 +9,8 @@ VPATH = @srcdir@
relativesrcdir = browser/devtools/webconsole/test
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_BROWSER_TEST_FILES = \
MOCHITEST_BROWSER_FILES = \
browser_webconsole_notifications.js \
browser_webconsole_message_node_id.js \
browser_webconsole_bug_580030_errors_after_page_reload.js \
@ -113,7 +112,7 @@ _BROWSER_TEST_FILES = \
head.js \
$(NULL)
_BROWSER_TEST_PAGES = \
MOCHITEST_BROWSER_FILES += \
test-console.html \
test-network.html \
test-network-request.html \
@ -184,8 +183,4 @@ _BROWSER_TEST_PAGES = \
test-for-of.html \
$(NULL)
libs:: $(_BROWSER_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)
libs:: $(_BROWSER_TEST_PAGES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -9,13 +9,11 @@ VPATH = @srcdir@
relativesrcdir = browser/extensions/pdfjs/test
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_BROWSER_TEST_FILES = \
MOCHITEST_BROWSER_FILES = \
browser_pdfjs_main.js \
browser_pdfjs_savedialog.js \
file_pdfjs_test.pdf \
$(NULL)
libs:: $(_BROWSER_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -274,10 +274,6 @@
list-style-image: url("chrome://browser/skin/devtools/debugger-step-out.png");
}
#step-over {
list-style-image: url("chrome://browser/skin/devtools/debugger-step-over.png");
}
#debugger-controls > toolbarbutton {
border-width: 0;
-moz-border-end-width: 1px;

View File

@ -274,10 +274,6 @@
list-style-image: url("chrome://browser/skin/devtools/debugger-step-out.png");
}
#step-over {
list-style-image: url("chrome://browser/skin/devtools/debugger-step-over.png");
}
#debugger-controls > toolbarbutton {
border-width: 0;
-moz-border-end-width: 1px;

View File

@ -277,10 +277,6 @@
list-style-image: url("chrome://browser/skin/devtools/debugger-step-out.png");
}
#step-over {
list-style-image: url("chrome://browser/skin/devtools/debugger-step-over.png");
}
#debugger-controls > toolbarbutton {
border-width: 0;
-moz-border-end-width: 1px;

View File

@ -442,10 +442,11 @@ int do_relocation_section(Elf *elf, unsigned int rel_type, unsigned int rel_type
relhack_entry.r_offset = relhack_entry.r_info = 0;
relhack->push_back(relhack_entry);
relhackcode->insertAfter(section);
unsigned int old_end = section->getOffset() + section->getSize();
relhackcode->insertBefore(section);
relhack->insertAfter(relhackcode);
unsigned int old_end = section->getOffset() + section->getSize();
section->rels.assign(new_rels.begin(), new_rels.end());
section->shrink(new_rels.size() * section->getEntSize());
ElfLocation *init = new ElfLocation(relhackcode, relhackcode->getEntryPoint());
@ -454,7 +455,7 @@ int do_relocation_section(Elf *elf, unsigned int rel_type, unsigned int rel_type
if (dyn->getValueForType(Rel_Type::d_tag_count))
dyn->setValueForType(Rel_Type::d_tag_count, new ElfPlainValue(0));
if (relhack->getOffset() + relhack->getSize() >= old_end) {
if (section->getOffset() + section->getSize() >= old_end) {
fprintf(stderr, "No gain. Skipping\n");
return -1;
}

View File

@ -360,6 +360,23 @@ public:
markDirty();
}
void insertBefore(ElfSection *section, bool dirty = true) {
if (previous != NULL)
previous->next = next;
if (next != NULL)
next->previous = previous;
next = section;
if (section != NULL) {
previous = section->previous;
section->previous = this;
} else
previous = NULL;
if (previous != NULL)
previous->next = this;
if (dirty)
markDirty();
}
void markDirty() {
if (link != NULL)
shdr.sh_link = -1;

View File

@ -10,9 +10,8 @@ VPATH = @srcdir@
relativesrcdir = caps/tests/mochitest
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES = test_bug423375.html \
MOCHITEST_FILES = test_bug423375.html \
test_bug246699.html \
test_bug292789.html \
test_bug470804.html \
@ -25,5 +24,4 @@ test_bug292789.html : % : %.in
GARBAGE += test_bug292789.html
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/tests/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -667,4 +667,6 @@ MOZ_PACKAGE_JSSHELL = @MOZ_PACKAGE_JSSHELL@
MOZ_LINKER_EXTRACT = @MOZ_LINKER_EXTRACT@
MOZ_PER_WINDOW_PRIVATE_BROWSING = @MOZ_PER_WINDOW_PRIVATE_BROWSING@
include $(topsrcdir)/config/baseconfig.mk

View File

@ -0,0 +1,60 @@
# -*- makefile -*-
# vim:set ts=8 sw=8 sts=8 noet:
#
# 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/.
ifndef INCLUDED_TESTS_MOCHITEST_MK #{
ifdef relativesrcdir
mochitestdir = $(DEPTH)/_tests/testing/mochitest/$1/$(relativesrcdir)
else
mochitestdir = $(DEPTH)/_tests/testing/mochitest/$1/$(subst $(topsrcdir),,$(srcdir))
endif
define mochitest-libs-rule-template
libs:: $$($(1))
$$(INSTALL) $$(foreach f,$$^,"$$(f)") $$(call mochitestdir,$(2))
endef
# Provide support for modules with such a large number of tests that
# installing them with a single $(INSTALL) invocation would overflow
# command-line length limits on some operating systems.
ifdef MOCHITEST_FILES_PARTS
ifdef MOCHITEST_FILES
$(error You must define only one of MOCHITEST_FILES_PARTS or MOCHITEST_FILES)
endif
$(foreach part,$(MOCHITEST_FILES_PARTS),$(eval $(call mochitest-libs-rule-template,$(part),tests)))
endif
ifdef MOCHITEST_FILES
$(eval $(call mochitest-libs-rule-template,MOCHITEST_FILES,tests))
endif
ifdef MOCHITEST_CHROME_FILES
$(eval $(call mochitest-libs-rule-template,MOCHITEST_CHROME_FILES,chrome))
endif
ifdef MOCHITEST_BROWSER_FILES_PARTS
ifdef MOCHITEST_BROWSER_FILES
$(error You must define only one of MOCHITEST_BROWSER_FILES_PARTS or MOCHITEST_BROWSER_FILES)
endif
$(foreach part,$(MOCHITEST_BROWSER_FILES_PARTS),$(eval $(call mochitest-libs-rule-template,$(part),browser)))
endif
ifdef MOCHITEST_BROWSER_FILES
$(eval $(call mochitest-libs-rule-template,MOCHITEST_BROWSER_FILES,browser))
endif
ifdef MOCHITEST_A11Y_FILES
$(eval $(call mochitest-libs-rule-template,MOCHITEST_A11Y_FILES,a11y))
endif
ifdef MOCHITEST_WEBAPPRT_CHROME_FILES
$(eval $(call mochitest-libs-rule-template,MOCHITEST_WEBAPPRT_CHROME_FILES,webapprtChrome))
endif
INCLUDED_TESTS_MOCHITEST_MK := 1
endif #} INCLUDED_TESTS_MOCHITEST_MK

View File

@ -89,6 +89,10 @@ ifndef INCLUDED_TESTS_XPCSHELL_MK #{
include $(topsrcdir)/config/makefiles/xpcshell.mk
endif #}
ifndef INCLUDED_TESTS_MOCHITEST_MK #{
include $(topsrcdir)/config/makefiles/mochitest.mk
endif #}
ifdef CPP_UNIT_TESTS
# Compile the tests to $(DIST)/bin. Make lots of niceties available by default
@ -1161,7 +1165,7 @@ ifndef NO_SUBMAKEFILES_RULE
ifdef SUBMAKEFILES
# VPATH does not work on some machines in this case, so add $(srcdir)
$(SUBMAKEFILES): % : $(srcdir)/%.in
$(PERL) $(AUTOCONF_TOOLS)/make-makefile -t $(topsrcdir) -d $(DEPTH) $@
$(if $(subsrcdir),cd $(subsrcdir) && )$(PERL) $(AUTOCONF_TOOLS)/make-makefile -t $(topsrcdir)$(addprefix /,$(subsrcdir)) -d $(DEPTH) $(@:$(subsrcdir)/%=%)
endif
endif

View File

@ -4297,8 +4297,8 @@ case "${target}" in
MOZ_TREE_FREETYPE=1
MOZ_MEMORY=1
MOZ_RAW=1
MOZ_WEBRTC=
;;
esac
MOZ_ARG_ENABLE_STRING(application,
@ -5248,6 +5248,25 @@ if test "$NS_PRINTING"; then
AC_DEFINE(NS_PRINT_PREVIEW)
fi
dnl Turn off webrtc for OS's we don't handle yet, but allow
dnl --enable-webrtc to override. Can disable for everything in
dnl the master list above.
if test -n "$MOZ_WEBRTC"; then
case "$target" in
*-android*|*-linuxandroid*)
dnl Make sure doesn't get matched by *-linux*
MOZ_WEBRTC=
;;
*-linux*|*-mingw*|*-darwin*)
dnl Leave enabled
;;
*)
dnl default to disabled for all others
MOZ_WEBRTC=
;;
esac
fi
dnl ========================================================
dnl = Disable WebRTC code
dnl ========================================================
@ -8375,6 +8394,7 @@ AC_SUBST(MOZ_OS2_TOOLS)
AC_SUBST(MOZ_POST_DSO_LIB_COMMAND)
AC_SUBST(MOZ_POST_PROGRAM_COMMAND)
AC_SUBST(MOZ_LINKER_EXTRACT)
AC_SUBST(MOZ_PER_WINDOW_PRIVATE_BROWSING)
dnl ========================================================
dnl = Mac bundle name prefix

View File

@ -0,0 +1,16 @@
<!DOCTYPE html>
<script>
var root = document.documentElement;
while(root.firstChild) { root.removeChild(root.firstChild); }
var div = document.createElement("div");
root.appendChild(div);
document.addEventListener("DOMNodeRemoved", function() {
root.appendChild(document.createTextNode("some mutation"));
}, false);
var range = document.createRange();
range.setStart(root, 0);
range.setEnd(root, root.childNodes.length);
range.deleteContents();
</script>

View File

@ -109,6 +109,7 @@ load 713417-2.html
load 715056.html
load 741163-1.html
load 766426.html
load 771639.html
asserts(0-1) load 752226-1.html
asserts(0-1) load 752226-2.html
HTTP(..) load xhr_abortinprogress.html

View File

@ -6097,7 +6097,7 @@ nsDocument::AdoptNode(nsIDOMNode *aAdoptedNode, nsIDOMNode **aResult)
}
}
nsIDocument *oldDocument = adoptedNode->OwnerDoc();
nsCOMPtr<nsIDocument> oldDocument = adoptedNode->OwnerDoc();
bool sameDocument = oldDocument == this;
JSContext *cx = nsnull;

View File

@ -296,6 +296,7 @@ nsFrameLoader::nsFrameLoader(Element* aOwner, bool aNetworkCreated)
, mRemoteFrame(false)
, mClipSubdocument(true)
, mClampScrollPosition(true)
, mRemoteBrowserInitialized(false)
, mCurrentRemoteFrame(nsnull)
, mRemoteBrowser(nsnull)
, mRenderMode(RENDER_MODE_DEFAULT)
@ -913,9 +914,10 @@ nsFrameLoader::ShowRemoteFrame(const nsIntSize& size)
EnsureMessageManager();
nsCOMPtr<nsIObserverService> os = services::GetObserverService();
if (OwnerIsBrowserFrame() && os) {
if (OwnerIsBrowserFrame() && os && !mRemoteBrowserInitialized) {
os->NotifyObservers(NS_ISUPPORTS_CAST(nsIFrameLoader*, this),
"remote-browser-frame-shown", NULL);
mRemoteBrowserInitialized = true;
}
} else {
nsRect dimensions;
@ -2241,4 +2243,12 @@ nsFrameLoader::SetRemoteBrowser(nsITabParent* aTabParent)
MOZ_ASSERT(!mRemoteBrowser);
MOZ_ASSERT(!mCurrentRemoteFrame);
mRemoteBrowser = static_cast<TabParent*>(aTabParent);
EnsureMessageManager();
nsCOMPtr<nsIObserverService> os = services::GetObserverService();
if (OwnerIsBrowserFrame() && os) {
mRemoteBrowserInitialized = true;
os->NotifyObservers(NS_ISUPPORTS_CAST(nsIFrameLoader*, this),
"remote-browser-frame-shown", NULL);
}
}

View File

@ -330,6 +330,7 @@ private:
bool mRemoteFrame : 1;
bool mClipSubdocument : 1;
bool mClampScrollPosition : 1;
bool mRemoteBrowserInitialized : 1;
// XXX leaking
nsCOMPtr<nsIObserver> mChildHost;

View File

@ -3565,7 +3565,7 @@ nsGenericElement::InternalGetExistingAttrNameFromQName(const nsAString& aStr) co
}
nsresult
nsGenericElement::CopyInnerTo(nsGenericElement* aDst) const
nsGenericElement::CopyInnerTo(nsGenericElement* aDst)
{
PRUint32 i, count = mAttrsAndChildren.AttrCount();
for (i = 0; i < count; ++i) {

View File

@ -774,7 +774,7 @@ protected:
* Copy attributes and state to another element
* @param aDest the object to copy to
*/
nsresult CopyInnerTo(nsGenericElement* aDest) const;
nsresult CopyInnerTo(nsGenericElement* aDest);
/**
* Internal hook for converting an attribute name-string to an atomized name
@ -1000,7 +1000,7 @@ _elementName::Clone(nsINodeInfo *aNodeInfo, nsINode **aResult) const \
} \
\
nsCOMPtr<nsINode> kungFuDeathGrip = it; \
nsresult rv = CopyInnerTo(it); \
nsresult rv = const_cast<_elementName*>(this)->CopyInnerTo(it); \
if (NS_SUCCEEDED(rv)) { \
kungFuDeathGrip.swap(*aResult); \
} \
@ -1021,7 +1021,7 @@ _elementName::Clone(nsINodeInfo *aNodeInfo, nsINode **aResult) const \
\
nsCOMPtr<nsINode> kungFuDeathGrip = it; \
nsresult rv = it->Init(); \
rv |= CopyInnerTo(it); \
rv |= const_cast<_elementName*>(this)->CopyInnerTo(it); \
if (NS_SUCCEEDED(rv)) { \
kungFuDeathGrip.swap(*aResult); \
} \

View File

@ -1453,6 +1453,11 @@ ValidateCurrentNode(nsRange* aRange, RangeSubtreeIterator& aIter)
{
bool before, after;
nsCOMPtr<nsIDOMNode> domNode = aIter.GetCurrentNode();
if (!domNode) {
// We don't have to worry that the node was removed if it doesn't exist,
// e.g., the iterator is done.
return true;
}
nsCOMPtr<nsINode> node = do_QueryInterface(domNode);
MOZ_ASSERT(node);

View File

@ -33,11 +33,10 @@ ifneq ($(OS_ARCH),Darwin)
XPCSHELL_TESTS += unit_ipc
endif
include $(topsrcdir)/config/rules.mk
# Split files arbitrarily in two groups to not run into too-long command lines
# which break on Windows (see bug 563151)
_TEST_FILES1 = \
MOCHITEST_FILES_A = \
responseIdentical.sjs \
test_bug5141.html \
test_bug51034.html \
@ -258,7 +257,7 @@ _TEST_FILES1 = \
test_bug744830.html \
$(NULL)
_TEST_FILES2 = \
MOCHITEST_FILES_B = \
test_bug459424.html \
bug461735-redirect1.sjs \
bug461735-redirect2.sjs \
@ -557,14 +556,17 @@ _TEST_FILES2 = \
test_XHR_parameters.html \
$(NULL)
_CHROME_FILES = \
MOCHITEST_CHROME_FILES = \
test_bug357450.js \
$(NULL)
MOCHITEST_FILES_PARTS = $(foreach s,A B,MOCHITEST_FILES_$(s))
# This test fails on the Mac for some reason
ifneq (,$(filter gtk2 windows,$(MOZ_WIDGET_TOOLKIT)))
_TEST_FILES2 += test_copyimage.html \
MOCHITEST_FILES_C = test_copyimage.html \
$(NULL)
MOCHITEST_FILES_PARTS += MOCHITEST_FILES_C
endif
# Disabled for now. Mochitest isn't reliable enough for these.
@ -575,19 +577,9 @@ endif
# test_bug503473.html \
# file_bug503473-frame.sjs \
_BROWSER_TEST_FILES = \
MOCHITEST_BROWSER_FILES = \
browser_bug593387.js \
$(NULL)
libs:: $(_TEST_FILES1)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/tests/$(relativesrcdir)
libs:: $(_TEST_FILES2)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/tests/$(relativesrcdir)
libs:: $(_BROWSER_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir)
libs:: $(_CHROME_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/chrome/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -9,13 +9,12 @@ VPATH = @srcdir@
relativesrcdir = content/base/test/chrome
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES = \
MOCHITEST_FILES = \
bug421622-referer.sjs \
$(NULL)
_CHROME_FILES = \
MOCHITEST_CHROME_FILES = \
test_bug206691.xul \
test_bug391728.html \
file_bug391728.html \
@ -46,8 +45,4 @@ _CHROME_FILES = \
test_bug682305.html \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/tests/$(relativesrcdir)
libs:: $(_CHROME_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/chrome/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,11 +10,10 @@ VPATH = @srcdir@
relativesrcdir = content/base/test/websocket_hybi
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
#### MODULE = content
_TEST_FILES = \
MOCHITEST_FILES = \
test_send-arraybuffer.html \
test_send-blob.html \
file_check-binary-messages_wsh.py \
@ -23,7 +22,4 @@ _TEST_FILES = \
file_binary-frames_wsh.py \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/tests/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -11,8 +11,7 @@ relativesrcdir = content/canvas/test
DIRS += webgl crossorigin
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES_0 = \
MOCHITEST_FILES = \
test_canvas.html \
image_transparent50.png \
image_redtransparent.png \
@ -61,7 +60,7 @@ _TEST_FILES_0 = \
ifneq (1_Linux,$(MOZ_SUITE)_$(OS_ARCH))
# This test fails in Suite on Linux for some reason, disable it there
_TEST_FILES_0 += test_2d.composite.uncovered.image.destination-atop.html
MOCHITEST_FILES += test_2d.composite.uncovered.image.destination-atop.html
endif
# xor and lighter aren't well handled by cairo; they mostly work, but we don't want
@ -81,13 +80,13 @@ endif
# Tests that fail on Mac (possibly because spec is underdefined?). Bug 407105
ifneq ($(MOZ_WIDGET_TOOLKIT),cocoa)
# XXX vlad don't test these anywhere, cairo behaviour changed
_TEST_FILES_0 += \
MOCHITEST_FILES += \
test_2d.line.join.parallel.html \
$(NULL)
# This is an issue with Quartz's handling of radial gradients and some numeric
# imprecision that results in errors here.
_TEST_FILES_0 += \
MOCHITEST_FILES += \
test_2d.gradient.radial.inside2.html \
test_2d.gradient.radial.inside3.html \
test_2d.gradient.radial.outside1.html \
@ -99,7 +98,7 @@ _TEST_FILES_0 += \
# destination bounds seem to have problems with the BEVEL/SQUARE join/cap combo.
# The joins are rendered as if with MITER; the correct behaviour is also seen
# if BUTT is used instead of SQUARE.
_TEST_FILES_0 += test_2d.line.cap.closed.html
MOCHITEST_FILES += test_2d.line.cap.closed.html
endif
@ -107,7 +106,7 @@ endif
ifeq ($(MOZ_WIDGET_TOOLKIT),cocoa)
# still need bug numbers
_TEST_FILES_0 += \
MOCHITEST_FILES += \
test_2d.composite.uncovered.fill.source-in.html \
test_2d.composite.uncovered.fill.destination-in.html \
test_2d.composite.uncovered.fill.source-out.html \
@ -119,15 +118,15 @@ _TEST_FILES_0 += \
$(NULL)
# still need bug numbers
_TEST_FILES_0 += \
MOCHITEST_FILES += \
test_2d.gradient.radial.outside2.html \
test_2d.gradient.radial.outside3.html \
$(NULL)
# still need bug numbers
_TEST_FILES_0 += test_2d.path.arc.shape.3.html
MOCHITEST_FILES += test_2d.path.arc.shape.3.html
_TEST_FILES_0 += test_2d.path.rect.selfintersect.html
MOCHITEST_FILES += test_2d.path.rect.selfintersect.html
endif
# These tests only pass on Mac OS X >= 10.5; see bug 450114
@ -147,5 +146,4 @@ endif
# test_2d.path.rect.zero.6.html
# split up into groups to work around command-line length limits
libs:: $(_TEST_FILES_0)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/tests/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,8 +10,7 @@ VPATH = @srcdir@
relativesrcdir = content/canvas/test/crossorigin
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES = \
MOCHITEST_FILES = \
image-allow-credentials.png \
image-allow-credentials.png^headers^ \
image-allow-star.png \
@ -23,5 +22,4 @@ _TEST_FILES = \
test_video_crossorigin.html \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/tests/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -10,8 +10,7 @@ VPATH = @srcdir@
relativesrcdir = content/canvas/test/webgl
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES = \
MOCHITEST_FILES = \
test_webgl_conformance_test_suite.html \
00_test_list.txt \
failing_tests_linux.txt \
@ -20,8 +19,9 @@ _TEST_FILES = \
failing_tests_android.txt \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/tests/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk
libs::
$(TAR) -cf - -C $(srcdir) \
resources \
conformance \

View File

@ -282,7 +282,9 @@ nsEventListenerManager::AddEventListener(nsIDOMEventListener *aListener,
aTypeAtom == nsGkAtoms::ontouchcancel)) {
mMayHaveTouchEventListener = true;
nsPIDOMWindow* window = GetInnerWindowForTarget();
if (window)
// we don't want touchevent listeners added by scrollbars to flip this flag
// so we ignore listeners created with system event flag
if (window && !(aFlags & NS_EVENT_FLAG_SYSTEM_EVENT))
window->SetHasTouchEventListeners();
} else if (aTypeAtom == nsGkAtoms::onmouseenter ||
aTypeAtom == nsGkAtoms::onmouseleave) {

View File

@ -10,11 +10,10 @@ VPATH = @srcdir@
relativesrcdir = content/events/test
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
# Disabled due to timeouts.
# test_bug563329.html
_TEST_FILES = \
MOCHITEST_FILES = \
test_bug226361.xhtml \
bug226361_iframe.xhtml \
test_bug238987.html \
@ -90,25 +89,25 @@ _TEST_FILES = \
#bug 585630
ifneq (mobile,$(MOZ_BUILD_APP))
_TEST_FILES += \
MOCHITEST_FILES += \
test_dragstart.html \
$(NULL)
endif
# bug 565245
ifneq (Linux,$(OS_ARCH))
_TEST_FILES += \
MOCHITEST_FILES += \
test_bug493251.html \
$(NULL)
endif
ifeq (android,$(MOZ_WIDGET_TOOLKIT))
_TEST_FILES += \
MOCHITEST_FILES += \
test_bug603008.html \
$(NULL)
endif
_CHROME_FILES = \
MOCHITEST_CHROME_FILES = \
test_bug336682_2.xul \
test_bug336682.js \
test_bug350471.xul \
@ -127,8 +126,4 @@ _CHROME_FILES = \
test_eventctors.xul \
$(NULL)
libs:: $(_TEST_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/tests/$(relativesrcdir)
libs:: $(_CHROME_FILES)
$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/chrome/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk

View File

@ -124,7 +124,7 @@ public:
nsIAtom* aPrefix, const nsAString& aValue,
bool aNotify);
virtual nsresult Clone(nsINodeInfo *aNodeInfo, nsINode **aResult) const;
nsresult CopyInnerTo(nsGenericElement* aDest) const;
nsresult CopyInnerTo(nsGenericElement* aDest);
/*
* Helpers called by various users of Canvas

View File

@ -345,7 +345,7 @@ public:
*/
bool GetPlayedOrSeeked() const { return mHasPlayedOrSeeked; }
nsresult CopyInnerTo(nsGenericElement* aDest) const;
nsresult CopyInnerTo(nsGenericElement* aDest);
/**
* Sets the Accept header on the HTTP channel to the required

View File

@ -275,7 +275,7 @@ nsGenericHTMLElement::DOMQueryInterface(nsIDOMHTMLElement *aElement,
// No closing bracket, because NS_INTERFACE_MAP_END does that for us.
nsresult
nsGenericHTMLElement::CopyInnerTo(nsGenericElement* aDst) const
nsGenericHTMLElement::CopyInnerTo(nsGenericElement* aDst)
{
nsresult rv;
PRInt32 i, count = GetAttrCount();

View File

@ -71,7 +71,7 @@ public:
void **aInstancePtr);
// From nsGenericElement
nsresult CopyInnerTo(nsGenericElement* aDest) const;
nsresult CopyInnerTo(nsGenericElement* aDest);
// Implementation for nsIDOMElement
NS_METHOD SetAttribute(const nsAString& aName,

View File

@ -228,7 +228,7 @@ nsGenericHTMLFrameElement::DestroyContent()
}
nsresult
nsGenericHTMLFrameElement::CopyInnerTo(nsGenericElement* aDest) const
nsGenericHTMLFrameElement::CopyInnerTo(nsGenericElement* aDest)
{
nsresult rv = nsGenericHTMLElement::CopyInnerTo(aDest);
NS_ENSURE_SUCCESS(rv, rv);

View File

@ -53,7 +53,7 @@ public:
bool aNotify);
virtual void DestroyContent();
nsresult CopyInnerTo(nsGenericElement* aDest) const;
nsresult CopyInnerTo(nsGenericElement* aDest);
// nsIDOMHTMLElement
NS_IMETHOD GetTabIndex(PRInt32 *aTabIndex);

View File

@ -124,7 +124,7 @@ nsHTMLCanvasElement::SetAttr(PRInt32 aNameSpaceID, nsIAtom* aName,
}
nsresult
nsHTMLCanvasElement::CopyInnerTo(nsGenericElement* aDest) const
nsHTMLCanvasElement::CopyInnerTo(nsGenericElement* aDest)
{
nsresult rv = nsGenericHTMLElement::CopyInnerTo(aDest);
NS_ENSURE_SUCCESS(rv, rv);

View File

@ -523,7 +523,7 @@ nsHTMLImageElement::GetNaturalWidth(PRUint32* aNaturalWidth)
}
nsresult
nsHTMLImageElement::CopyInnerTo(nsGenericElement* aDest) const
nsHTMLImageElement::CopyInnerTo(nsGenericElement* aDest)
{
if (aDest->OwnerDoc()->IsStaticDocument()) {
CreateStaticImageClone(static_cast<nsHTMLImageElement*>(aDest));

View File

@ -95,7 +95,7 @@ public:
virtual nsEventStates IntrinsicState() const;
virtual nsresult Clone(nsINodeInfo *aNodeInfo, nsINode **aResult) const;
nsresult CopyInnerTo(nsGenericElement* aDest) const;
nsresult CopyInnerTo(nsGenericElement* aDest);
void MaybeLoadImage();
virtual nsXPCClassInfo* GetClassInfo();

View File

@ -644,7 +644,7 @@ nsHTMLInputElement::Clone(nsINodeInfo *aNodeInfo, nsINode **aResult) const
nsRefPtr<nsHTMLInputElement> it =
new nsHTMLInputElement(ni.forget(), NOT_FROM_PARSER);
nsresult rv = CopyInnerTo(it);
nsresult rv = const_cast<nsHTMLInputElement*>(this)->CopyInnerTo(it);
NS_ENSURE_SUCCESS(rv, rv);
switch (mType) {

View File

@ -3321,7 +3321,7 @@ already_AddRefed<nsILoadGroup> nsHTMLMediaElement::GetDocumentLoadGroup()
}
nsresult
nsHTMLMediaElement::CopyInnerTo(nsGenericElement* aDest) const
nsHTMLMediaElement::CopyInnerTo(nsGenericElement* aDest)
{
nsresult rv = nsGenericHTMLElement::CopyInnerTo(aDest);
NS_ENSURE_SUCCESS(rv, rv);

View File

@ -190,7 +190,7 @@ nsHTMLMenuItemElement::Clone(nsINodeInfo *aNodeInfo, nsINode **aResult) const
nsCOMPtr<nsINodeInfo> ni = aNodeInfo;
nsRefPtr<nsHTMLMenuItemElement> it =
new nsHTMLMenuItemElement(ni.forget(), NOT_FROM_PARSER);
nsresult rv = CopyInnerTo(it);
nsresult rv = const_cast<nsHTMLMenuItemElement*>(this)->CopyInnerTo(it);
if (NS_SUCCEEDED(rv)) {
switch (mType) {
case CMD_TYPE_CHECKBOX:

View File

@ -115,7 +115,7 @@ public:
virtual nsresult Clone(nsINodeInfo *aNodeInfo, nsINode **aResult) const;
nsresult CopyInnerTo(nsGenericElement* aDest) const;
nsresult CopyInnerTo(nsGenericElement* aDest);
void StartObjectLoad() { StartObjectLoad(true); }
@ -550,7 +550,7 @@ nsHTMLObjectElement::DestroyContent()
}
nsresult
nsHTMLObjectElement::CopyInnerTo(nsGenericElement* aDest) const
nsHTMLObjectElement::CopyInnerTo(nsGenericElement* aDest)
{
nsresult rv = nsGenericHTMLFormElement::CopyInnerTo(aDest);
NS_ENSURE_SUCCESS(rv, rv);

View File

@ -434,7 +434,7 @@ nsHTMLOptionElement::Initialize(nsISupports* aOwner,
}
nsresult
nsHTMLOptionElement::CopyInnerTo(nsGenericElement* aDest) const
nsHTMLOptionElement::CopyInnerTo(nsGenericElement* aDest)
{
nsresult rv = nsGenericHTMLElement::CopyInnerTo(aDest);
NS_ENSURE_SUCCESS(rv, rv);

View File

@ -73,7 +73,7 @@ public:
virtual nsresult Clone(nsINodeInfo *aNodeInfo, nsINode **aResult) const;
nsresult CopyInnerTo(nsGenericElement* aDest) const;
nsresult CopyInnerTo(nsGenericElement* aDest);
virtual nsXPCClassInfo* GetClassInfo();

View File

@ -179,7 +179,7 @@ nsHTMLScriptElement::Clone(nsINodeInfo *aNodeInfo, nsINode **aResult) const
new nsHTMLScriptElement(ni.forget(), NOT_FROM_PARSER);
nsCOMPtr<nsINode> kungFuDeathGrip = it;
nsresult rv = CopyInnerTo(it);
nsresult rv = const_cast<nsHTMLScriptElement*>(this)->CopyInnerTo(it);
NS_ENSURE_SUCCESS(rv, rv);
// The clone should be marked evaluated if we are.

View File

@ -107,7 +107,7 @@ public:
virtual nsresult Clone(nsINodeInfo *aNodeInfo, nsINode **aResult) const;
nsresult CopyInnerTo(nsGenericElement* aDest) const;
nsresult CopyInnerTo(nsGenericElement* aDest);
void StartObjectLoad() { StartObjectLoad(true); }
@ -509,7 +509,7 @@ nsHTMLSharedObjectElement::DestroyContent()
}
nsresult
nsHTMLSharedObjectElement::CopyInnerTo(nsGenericElement* aDest) const
nsHTMLSharedObjectElement::CopyInnerTo(nsGenericElement* aDest)
{
nsresult rv = nsGenericHTMLElement::CopyInnerTo(aDest);
NS_ENSURE_SUCCESS(rv, rv);

Some files were not shown because too many files have changed in this diff Show More