[haiku-commits] haiku: hrev52159 - src/servers/app/font docs/interface_guidelines src/kits/network/libnetapi src/servers/app

  • From: Jérôme Duval <jerome.duval@xxxxxxxxx>
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Thu, 2 Aug 2018 06:44:01 -0400 (EDT)

hrev52159 adds 2 changesets to branch 'master'
old head: 20694a04585f349f3815d13c1fbbccee66c782d6
new head: b2acee1cb986b696adfad7daabfe9279949a3e54
overview: 
https://git.haiku-os.org/haiku/log/?qt=range&q=b2acee1cb986+%5E20694a04585f

----------------------------------------------------------------------------

d9eeaa720a72: Server side support for BFont::IsFullAndHalfFixed().
  
  Check a range of characters to see if they have the same width.
  
  Change-Id: I9cef12f78d1e1d01acc6284eae90dbfb86166fc6
  Reviewed-on: https://review.haiku-os.org/47
  Reviewed-by: Adrien Destugues <pulkomandy@xxxxxxxxx>
  Reviewed-by: Jérôme Duval <jerome.duval@xxxxxxxxx>

                       [ Stefano Ceccherini <stefano.ceccherini@xxxxxxxxx> ]

b2acee1cb986: Switch default fixed font from NotoMono to NotoSansMono
  
  Change-Id: Ib9eab5a2e266393b234cf7f4a6934fd58e31c943
  Reviewed-on: https://review.haiku-os.org/48
  Reviewed-by: waddlesplash <waddlesplash@xxxxxxxxx>
  Reviewed-by: Jérôme Duval <jerome.duval@xxxxxxxxx>

                                        [ Humdinger <humdingerb@xxxxxxxxx> ]

----------------------------------------------------------------------------

6 files changed, 29 insertions(+), 7 deletions(-)
docs/interface_guidelines/haiku.css          |  2 +-
src/kits/network/libnetapi/GopherRequest.cpp |  2 +-
src/servers/app/ServerConfig.h               |  2 +-
src/servers/app/font/FontManager.cpp         |  4 ++--
src/servers/app/font/FontStyle.cpp           | 23 ++++++++++++++++++++++-
src/servers/app/font/FontStyle.h             |  3 ++-

############################################################################

Commit:      d9eeaa720a72b494161fc15dfc9286874497af7b
URL:         https://git.haiku-os.org/haiku/commit/?id=d9eeaa720a72
Author:      Stefano Ceccherini <stefano.ceccherini@xxxxxxxxx>
Date:        Fri Feb 21 21:39:26 2014 UTC
Committer:   Jérôme Duval <jerome.duval@xxxxxxxxx>
Commit-Date: Thu Aug  2 10:43:57 2018 UTC

Server side support for BFont::IsFullAndHalfFixed().

Check a range of characters to see if they have the same width.

Change-Id: I9cef12f78d1e1d01acc6284eae90dbfb86166fc6
Reviewed-on: https://review.haiku-os.org/47
Reviewed-by: Adrien Destugues <pulkomandy@xxxxxxxxx>
Reviewed-by: Jérôme Duval <jerome.duval@xxxxxxxxx>

----------------------------------------------------------------------------

diff --git a/src/servers/app/font/FontStyle.cpp 
b/src/servers/app/font/FontStyle.cpp
index 633522c9f7..b3e3c7e2c4 100644
--- a/src/servers/app/font/FontStyle.cpp
+++ b/src/servers/app/font/FontStyle.cpp
@@ -37,7 +37,8 @@ FontStyle::FontStyle(node_ref& nodeRef, const char* path, 
FT_Face face)
        fFamily(NULL),
        fID(0),
        fBounds(0, 0, 0, 0),
-       fFace(_TranslateStyleToFace(face->style_name))
+       fFace(_TranslateStyleToFace(face->style_name)),
+       fFullAndHalfFixed(false)
 {
        fName.Truncate(B_FONT_STYLE_LENGTH);
                // make sure this style can be found using the Be API
@@ -50,6 +51,26 @@ FontStyle::FontStyle(node_ref& nodeRef, const char* path, 
FT_Face face)
        // calculate it because height = ascending + descending + leading
        fHeight.leading = (double)(face->height - face->ascender + 
face->descender)
                / face->units_per_EM;
+
+       if (IsFixedWidth())
+               return;
+
+       // manually check if all applicable chars are the same width
+
+       FT_Int32 loadFlags = FT_LOAD_NO_SCALE | FT_LOAD_TARGET_NORMAL;
+       if (FT_Load_Char(face, (uint32)' ', loadFlags) != 0)
+               return;
+
+       int firstWidth = face->glyph->advance.x;
+       for (uint32 c = ' ' + 1; c <= 0x7e; c++) {
+               if (FT_Load_Char(face, c, loadFlags) != 0)
+                       return;
+
+               if (face->glyph->advance.x != firstWidth)
+                       return;
+       }
+
+       fFullAndHalfFixed = true;
 }
 
 
diff --git a/src/servers/app/font/FontStyle.h b/src/servers/app/font/FontStyle.h
index b64542b824..5103afa82a 100644
--- a/src/servers/app/font/FontStyle.h
+++ b/src/servers/app/font/FontStyle.h
@@ -82,7 +82,7 @@ class FontStyle : public ReferenceCounting, public Hashable {
        \return false (for now)
 */
                bool                    IsFullAndHalfFixed() const
-                                                       { return false; };
+                                                       { return 
fFullAndHalfFixed; };
 
 /*!
        \fn bool FontStyle::IsScalable(void)
@@ -171,6 +171,7 @@ class FontStyle : public ReferenceCounting, public Hashable 
{
 
                font_height             fHeight;
                uint16                  fFace;
+               bool                    fFullAndHalfFixed;
 };
 
 #endif // FONT_STYLE_H_

############################################################################

Revision:    hrev52159
Commit:      b2acee1cb986b696adfad7daabfe9279949a3e54
URL:         https://git.haiku-os.org/haiku/commit/?id=b2acee1cb986
Author:      Humdinger <humdingerb@xxxxxxxxx>
Date:        Sat Nov 25 19:41:07 2017 UTC
Committer:   Jérôme Duval <jerome.duval@xxxxxxxxx>
Commit-Date: Thu Aug  2 10:43:57 2018 UTC

Switch default fixed font from NotoMono to NotoSansMono

Change-Id: Ib9eab5a2e266393b234cf7f4a6934fd58e31c943
Reviewed-on: https://review.haiku-os.org/48
Reviewed-by: waddlesplash <waddlesplash@xxxxxxxxx>
Reviewed-by: Jérôme Duval <jerome.duval@xxxxxxxxx>

----------------------------------------------------------------------------

diff --git a/docs/interface_guidelines/haiku.css 
b/docs/interface_guidelines/haiku.css
index cdd108d91d..ed5c6a99a7 100644
--- a/docs/interface_guidelines/haiku.css
+++ b/docs/interface_guidelines/haiku.css
@@ -12,7 +12,7 @@
 }
 cmdsynopsis, code, command, computeroutput, envar, filename, keycode, keysym,
 literal, option, parameter, sgmltag, systemitem {
-       font-family: "Noto Mono", Courier, "Courier New", monospace, fixed;
+       font-family: "Noto Sans Mono", Courier, "Courier New", monospace, fixed;
 }
 term {
   font-weight: bold;
diff --git a/src/kits/network/libnetapi/GopherRequest.cpp 
b/src/kits/network/libnetapi/GopherRequest.cpp
index 8b4bf68555..16122279bd 100644
--- a/src/kits/network/libnetapi/GopherRequest.cpp
+++ b/src/kits/network/libnetapi/GopherRequest.cpp
@@ -143,7 +143,7 @@ static const char *kStyleSheet = "\n"
 "body#gopher span {\n"
 "      margin-left: 1em;\n"
 "      padding-left: 2em;\n"
-"      font-family: 'Noto Mono', Courier, monospace;\n"
+"      font-family: 'Noto Sans Mono', Courier, monospace;\n"
 "      word-wrap: break-word;\n"
 "      white-space: pre-wrap; }\n"
 "\n"
diff --git a/src/servers/app/ServerConfig.h b/src/servers/app/ServerConfig.h
index 6416516848..51427c55dd 100644
--- a/src/servers/app/ServerConfig.h
+++ b/src/servers/app/ServerConfig.h
@@ -35,7 +35,7 @@
 #define FALLBACK_BOLD_FONT_FAMILY "Swis721 BT"
 #define DEFAULT_BOLD_FONT_STYLE "Bold"
 #define DEFAULT_BOLD_FONT_SIZE 12.0f
-#define DEFAULT_FIXED_FONT_FAMILY "Noto Mono"
+#define DEFAULT_FIXED_FONT_FAMILY "Noto Sans Mono"
 #define FALLBACK_FIXED_FONT_FAMILY "Courier10 BT"
 #define DEFAULT_FIXED_FONT_STYLE "Regular"
 #define DEFAULT_FIXED_FONT_SIZE 12.0f
diff --git a/src/servers/app/font/FontManager.cpp 
b/src/servers/app/font/FontManager.cpp
index 088b23f81c..e6dc920bb8 100644
--- a/src/servers/app/font/FontManager.cpp
+++ b/src/servers/app/font/FontManager.cpp
@@ -342,8 +342,8 @@ FontManager::_LoadRecentFontMappings()
                _AddDefaultMapping("Noto Sans", "Bold", veraFontPath.Path());
 
                veraFontPath.SetTo(ttfontsPath.Path());
-               veraFontPath.Append("NotoMono-Regular.ttf");
-               _AddDefaultMapping("Noto Mono", "Regular", veraFontPath.Path());
+               veraFontPath.Append("NotoSansMono-Regular.ttf");
+               _AddDefaultMapping("Noto Sans Mono", "Regular", 
veraFontPath.Path());
 
                return true;
        }


Other related posts: