mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-12 04:45:45 +00:00
Bug 1141055 - fix in-content 'Content' pane preference initialization so rebuildFonts *actually* doesn't break, r=jaws
--HG-- extra : rebase_source : 4d67938084a11a8fb7182e8f152e3ee9e6d6b1ad
This commit is contained in:
parent
8ad8fe3a4e
commit
763f2024ac
@ -99,6 +99,11 @@ var gContentPane = {
|
|||||||
*/
|
*/
|
||||||
_rebuildFonts: function ()
|
_rebuildFonts: function ()
|
||||||
{
|
{
|
||||||
|
var preferences = document.getElementById("contentPreferences");
|
||||||
|
// Ensure preferences are "visible" to ensure bindings work.
|
||||||
|
preferences.hidden = false;
|
||||||
|
// Force flush:
|
||||||
|
preferences.clientHeight;
|
||||||
var langGroupPref = document.getElementById("font.language.group");
|
var langGroupPref = document.getElementById("font.language.group");
|
||||||
this._selectDefaultLanguageGroup(langGroupPref.value,
|
this._selectDefaultLanguageGroup(langGroupPref.value,
|
||||||
this._readDefaultFontTypeForLanguage(langGroupPref.value) == "serif");
|
this._readDefaultFontTypeForLanguage(langGroupPref.value) == "serif");
|
||||||
@ -115,6 +120,7 @@ var gContentPane = {
|
|||||||
const kFontNameListFmtSansSerif = "font.name-list.sans-serif.%LANG%";
|
const kFontNameListFmtSansSerif = "font.name-list.sans-serif.%LANG%";
|
||||||
const kFontSizeFmtVariable = "font.size.variable.%LANG%";
|
const kFontSizeFmtVariable = "font.size.variable.%LANG%";
|
||||||
|
|
||||||
|
var preferences = document.getElementById("contentPreferences");
|
||||||
var prefs = [{ format : aIsSerif ? kFontNameFmtSerif : kFontNameFmtSansSerif,
|
var prefs = [{ format : aIsSerif ? kFontNameFmtSerif : kFontNameFmtSansSerif,
|
||||||
type : "fontname",
|
type : "fontname",
|
||||||
element : "defaultFont",
|
element : "defaultFont",
|
||||||
@ -127,11 +133,6 @@ var gContentPane = {
|
|||||||
type : "int",
|
type : "int",
|
||||||
element : "defaultFontSize",
|
element : "defaultFontSize",
|
||||||
fonttype : null }];
|
fonttype : null }];
|
||||||
var preferences = document.getElementById("contentPreferences");
|
|
||||||
// Ensure preferences are "visible" to ensure bindings work.
|
|
||||||
preferences.hidden = false;
|
|
||||||
// Force flush:
|
|
||||||
preferences.clientHeight;
|
|
||||||
for (var i = 0; i < prefs.length; ++i) {
|
for (var i = 0; i < prefs.length; ++i) {
|
||||||
var preference = document.getElementById(prefs[i].format.replace(/%LANG%/, aLanguageGroup));
|
var preference = document.getElementById(prefs[i].format.replace(/%LANG%/, aLanguageGroup));
|
||||||
if (!preference) {
|
if (!preference) {
|
||||||
|
@ -5,6 +5,7 @@ support-files =
|
|||||||
privacypane_tests_perwindow.js
|
privacypane_tests_perwindow.js
|
||||||
|
|
||||||
[browser_advanced_update.js]
|
[browser_advanced_update.js]
|
||||||
|
[browser_basic_rebuild_fonts_test.js]
|
||||||
[browser_bug410900.js]
|
[browser_bug410900.js]
|
||||||
[browser_bug731866.js]
|
[browser_bug731866.js]
|
||||||
[browser_bug795764_cachedisabled.js]
|
[browser_bug795764_cachedisabled.js]
|
||||||
|
@ -0,0 +1,26 @@
|
|||||||
|
Services.prefs.setBoolPref("browser.preferences.inContent", true);
|
||||||
|
Services.prefs.setBoolPref("browser.preferences.instantApply", true);
|
||||||
|
|
||||||
|
registerCleanupFunction(function() {
|
||||||
|
Services.prefs.clearUserPref("browser.preferences.inContent");
|
||||||
|
Services.prefs.clearUserPref("browser.preferences.instantApply");
|
||||||
|
});
|
||||||
|
|
||||||
|
add_task(function() {
|
||||||
|
yield openPreferencesViaOpenPreferencesAPI("paneContent", null, {leaveOpen: true});
|
||||||
|
let doc = gBrowser.contentDocument;
|
||||||
|
var langGroup = Services.prefs.getComplexValue("font.language.group", Ci.nsIPrefLocalizedString).data
|
||||||
|
is(doc.getElementById("font.language.group").value, langGroup,
|
||||||
|
"Language group should be set correctly.");
|
||||||
|
|
||||||
|
let defaultFontType = Services.prefs.getCharPref("font.default." + langGroup);
|
||||||
|
let fontFamily = Services.prefs.getCharPref("font.name." + defaultFontType + "." + langGroup);
|
||||||
|
let fontFamilyField = doc.getElementById("defaultFont");
|
||||||
|
is(fontFamilyField.value, fontFamily, "Font family should be set correctly.");
|
||||||
|
|
||||||
|
let defaultFontSize = Services.prefs.getIntPref("font.size.variable." + langGroup);
|
||||||
|
let fontSizeField = doc.getElementById("defaultFontSize");
|
||||||
|
is(fontSizeField.value, defaultFontSize, "Font size should be set correctly.");
|
||||||
|
|
||||||
|
gBrowser.removeCurrentTab();
|
||||||
|
});
|
Loading…
Reference in New Issue
Block a user