ash_typography.cc 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. // Copyright 2017 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #include "ash/public/cpp/ash_typography.h"
  5. namespace ash {
  6. void ApplyAshFontStyles(int context,
  7. int style,
  8. ui::ResourceBundle::FontDetails& details) {
  9. switch (context) {
  10. case CONTEXT_SEARCH_RESULT_VIEW_INLINE_ANSWER_DETAILS:
  11. break;
  12. case CONTEXT_LAUNCHER_NUDGE_LABEL:
  13. details.size_delta = 1;
  14. break;
  15. case CONTEXT_SHARESHEET_BUBBLE_SMALL:
  16. details.size_delta = -2;
  17. break;
  18. case CONTEXT_SHARESHEET_BUBBLE_BODY_SECONDARY:
  19. details.size_delta = 1;
  20. break;
  21. case CONTEXT_SEARCH_RESULT_CATEGORY_LABEL:
  22. details.size_delta = 1;
  23. break;
  24. case CONTEXT_LAUNCHER_BUTTON:
  25. case CONTEXT_SHARESHEET_BUBBLE_BODY:
  26. case CONTEXT_CALENDAR_DATE:
  27. case CONTEXT_SEARCH_RESULT_VIEW:
  28. details.size_delta = 2;
  29. break;
  30. case CONTEXT_SHARESHEET_BUBBLE_TITLE:
  31. details.typeface = "Google Sans";
  32. details.size_delta = 4;
  33. break;
  34. case CONTEXT_TRAY_POPUP_BUTTON:
  35. details.weight = gfx::Font::Weight::MEDIUM;
  36. break;
  37. case CONTEXT_CALENDAR_LABEL:
  38. details.size_delta = 6;
  39. break;
  40. case CONTEXT_HEADLINE_OVERSIZED:
  41. details.size_delta = 15;
  42. break;
  43. case CONTEXT_SEARCH_RESULT_BIG_TITLE:
  44. details.size_delta = 24;
  45. break;
  46. case CONTEXT_SEARCH_RESULT_BIG_TITLE_SUPERSCRIPT:
  47. details.size_delta = 6;
  48. }
  49. switch (style) {
  50. case STYLE_HIGHLIGHT:
  51. details.weight = gfx::Font::Weight::BOLD;
  52. break;
  53. case STYLE_SHARESHEET:
  54. DCHECK(context == CONTEXT_SHARESHEET_BUBBLE_TITLE ||
  55. context == CONTEXT_SHARESHEET_BUBBLE_BODY ||
  56. context == CONTEXT_SHARESHEET_BUBBLE_BODY_SECONDARY ||
  57. context == CONTEXT_SHARESHEET_BUBBLE_SMALL);
  58. details.weight = gfx::Font::Weight::MEDIUM;
  59. break;
  60. case STYLE_CLASSIC_LAUNCHER:
  61. // Classic launcher uses default font styling.
  62. break;
  63. case STYLE_PRODUCTIVITY_LAUNCHER:
  64. // TODO(https://crbug.com/1197600): Use font "Google Sans Text" when it is
  65. // available on Chrome OS. For now, use the default font for consistency.
  66. break;
  67. }
  68. }
  69. } // namespace ash