Skip to content

Commit

Permalink
gfx: Map sans-serif to Helvetica on Mac, DejaVu Sans on Linux, and
Browse files Browse the repository at this point in the history
Roboto on Android.

This matches what I believe the OS native defaults to be.

Partially addresses servo#9487.
  • Loading branch information
pcwalton committed May 9, 2016
1 parent 508c328 commit 2ac9747
Show file tree
Hide file tree
Showing 5 changed files with 22 additions and 7 deletions.
3 changes: 2 additions & 1 deletion components/gfx/font_cache_thread.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ use ipc_channel::router::ROUTER;
use mime::{TopLevel, SubLevel};
use net_traits::{AsyncResponseTarget, LoadContext, PendingAsyncLoad, ResourceThread, ResponseAction};
use platform::font_context::FontContextHandle;
use platform::font_list::SANS_SERIF_FONT_FAMILY;
use platform::font_list::for_each_available_family;
use platform::font_list::for_each_variation;
use platform::font_list::last_resort_font_families;
Expand Down Expand Up @@ -120,7 +121,7 @@ fn populate_generic_fonts() -> HashMap<FontFamily, LowercaseString> {
let mut generic_fonts = HashMap::with_capacity(5);

append_map(&mut generic_fonts, FontFamily::Serif, "Times New Roman");
append_map(&mut generic_fonts, FontFamily::SansSerif, "Arial");
append_map(&mut generic_fonts, FontFamily::SansSerif, SANS_SERIF_FONT_FAMILY);
append_map(&mut generic_fonts, FontFamily::Cursive, "Apple Chancery");
append_map(&mut generic_fonts, FontFamily::Fantasy, "Papyrus");
append_map(&mut generic_fonts, FontFamily::Monospace, "Menlo");
Expand Down
10 changes: 10 additions & 0 deletions components/gfx/platform/freetype/font_list.rs
Original file line number Diff line number Diff line change
Expand Up @@ -157,3 +157,13 @@ pub fn last_resort_font_families() -> Vec<String> {
"Arial".to_owned()
)
}

#[cfg(target_os = "android")]
pub static SANS_SERIF_FONT_FAMILY: &'static str = "Roboto";

#[cfg(target_os = "linux")]
pub static SANS_SERIF_FONT_FAMILY: &'static str = "DejaVu Sans";

#[cfg(target_os = "windows")]
pub static SANS_SERIF_FONT_FAMILY: &'static str = "Arial";

4 changes: 4 additions & 0 deletions components/gfx/platform/macos/font_list.rs
Original file line number Diff line number Diff line change
Expand Up @@ -41,3 +41,7 @@ pub fn system_default_family(_generic_name: &str) -> Option<String> {
pub fn last_resort_font_families() -> Vec<String> {
vec!("Arial Unicode MS".to_owned(), "Arial".to_owned())
}

#[cfg(target_os = "macos")]
pub static SANS_SERIF_FONT_FAMILY: &'static str = "Helvetica";

Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
[word-break-normal-bo-000.htm]
type: reftest
expected:
if os == "linux": FAIL
expected: FAIL
Original file line number Diff line number Diff line change
Expand Up @@ -4,16 +4,17 @@
<meta charset="utf-8">
<title>input selection incremental reference</title>
<style>
body {
font: 16px sans-serif;
}
.selection {
color: white;
background: rgba(176, 214, 255, 1.0);
}
div {
font: 16px sans-serif;
display: inline-block;
}
</style>
</head>
<body>
<span class="selection">H</span>ello
<div><span class="selection">H</span>ello</div>
</body>
</html>

0 comments on commit 2ac9747

Please sign in to comment.