diff --git a/mozilla/content/shared/public/nsXULAtomList.h b/mozilla/content/shared/public/nsXULAtomList.h index 35139950c72..271533f03c9 100644 --- a/mozilla/content/shared/public/nsXULAtomList.h +++ b/mozilla/content/shared/public/nsXULAtomList.h @@ -52,6 +52,7 @@ XUL_ATOM(toolbar, "toolbar") XUL_ATOM(toolbaritem, "toolbaritem") XUL_ATOM(toolbox, "toolbox") XUL_ATOM(image, "image") +XUL_ATOM(description, "description") // The tree atoms XUL_ATOM(tree, "tree") // The start of a tree view diff --git a/mozilla/layout/base/nsCSSFrameConstructor.cpp b/mozilla/layout/base/nsCSSFrameConstructor.cpp index 440f4af590c..650290a2069 100644 --- a/mozilla/layout/base/nsCSSFrameConstructor.cpp +++ b/mozilla/layout/base/nsCSSFrameConstructor.cpp @@ -5528,9 +5528,15 @@ nsCSSFrameConstructor::ConstructXULFrame(nsIPresShell* aPresShell, rv = NS_NewOutlinerColFrame(aPresShell, &newFrame); } // TEXT CONSTRUCTION - else if (aTag == nsXULAtoms::text) { - processChildren = PR_TRUE; + else if (aTag == nsXULAtoms::text || aTag == nsHTMLAtoms::label || + aTag == nsXULAtoms::description) { isReplaced = PR_TRUE; + if (aTag == nsHTMLAtoms::label || aTag == nsXULAtoms::description) { + nsAutoString value; + if (aContent->GetAttribute(kNameSpaceID_None, nsHTMLAtoms::value, value) == + NS_CONTENT_ATTR_NOT_THERE) + return NS_OK; + } rv = NS_NewTextBoxFrame(aPresShell, &newFrame); } // End of TEXT CONSTRUCTION logic diff --git a/mozilla/layout/html/style/src/nsCSSFrameConstructor.cpp b/mozilla/layout/html/style/src/nsCSSFrameConstructor.cpp index 440f4af590c..650290a2069 100644 --- a/mozilla/layout/html/style/src/nsCSSFrameConstructor.cpp +++ b/mozilla/layout/html/style/src/nsCSSFrameConstructor.cpp @@ -5528,9 +5528,15 @@ nsCSSFrameConstructor::ConstructXULFrame(nsIPresShell* aPresShell, rv = NS_NewOutlinerColFrame(aPresShell, &newFrame); } // TEXT CONSTRUCTION - else if (aTag == nsXULAtoms::text) { - processChildren = PR_TRUE; + else if (aTag == nsXULAtoms::text || aTag == nsHTMLAtoms::label || + aTag == nsXULAtoms::description) { isReplaced = PR_TRUE; + if (aTag == nsHTMLAtoms::label || aTag == nsXULAtoms::description) { + nsAutoString value; + if (aContent->GetAttribute(kNameSpaceID_None, nsHTMLAtoms::value, value) == + NS_CONTENT_ATTR_NOT_THERE) + return NS_OK; + } rv = NS_NewTextBoxFrame(aPresShell, &newFrame); } // End of TEXT CONSTRUCTION logic diff --git a/mozilla/themes/modern/global/global.css b/mozilla/themes/modern/global/global.css index eb254775b67..cb5869f12f8 100644 --- a/mozilla/themes/modern/global/global.css +++ b/mozilla/themes/modern/global/global.css @@ -184,6 +184,12 @@ statusbarpanel { padding: 0px; } +/* ::::: Descriptions and Labels ::::::: */ + +description[disabled="true"], label[disabled="true"] { + color: #8C99AB; +} + /* ::::: miscellaneous ::::: */ .tooltip-label { diff --git a/mozilla/xpfe/global/resources/content/bindings/text.xml b/mozilla/xpfe/global/resources/content/bindings/text.xml index 0d2077b6e67..78e1493c3e3 100644 --- a/mozilla/xpfe/global/resources/content/bindings/text.xml +++ b/mozilla/xpfe/global/resources/content/bindings/text.xml @@ -5,7 +5,41 @@ xmlns:html="http://www.w3.org/1999/xhtml" xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> - + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - diff --git a/mozilla/xpfe/global/resources/content/xul.css b/mozilla/xpfe/global/resources/content/xul.css index 6313889e7cc..320587bfa0b 100644 --- a/mozilla/xpfe/global/resources/content/xul.css +++ b/mozilla/xpfe/global/resources/content/xul.css @@ -442,31 +442,32 @@ progressmeter { -moz-binding: url("chrome://global/content/bindings/progressmeter.xml#progressmeter"); } -/********** text **********/ +/********** label **********/ + +/* XXXdwh and are deprecated. */ text, spring { display: inline; } -html { +label, description, html { display: block; } -text[for] { +description { + -moz-binding: url("chrome://global/content/bindings/text.xml#text-base"); +} + +label { -moz-binding: url("chrome://global/content/bindings/text.xml#text-label"); } -text[editable="true"] { - -moz-user-select: text; +label[control] { + -moz-binding: url("chrome://global/content/bindings/text.xml#label-control"); } -text[editable="true"], -text[editable="true"][mode="display"] { - -moz-binding: url("chrome://global/content/bindings/text.xml#text-editable-display"); -} - -text[editable="true"][mode="edit"] { - -moz-binding: url("chrome://global/content/bindings/text.xml#text-editable-edit"); +text[for] { + -moz-binding: url("chrome://global/content/bindings/text.xml#text-for"); } /********** textbox **********/