Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Register
  • Sign in
  • L Lettercase
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 11
    • Issues 11
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 3
    • Merge requests 3
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • World
  • Design ToolingDesign Tooling
  • Lettercase
  • Merge requests
  • !25

widgets: Use GridView for font rows

  • Review changes

  • Download
  • Email patches
  • Plain diff
Open Ondřej Míchal requested to merge HarryMichal/lettercase:widgets/library-to-view into master Mar 08, 2022
  • Overview 19
  • Commits 13
  • Pipelines 5
  • Changes 6

Due to the use of FlowBox to draw the font row grid the performance of the application suffers. Starting with launch time and ending with overall performance of scrolling. This moves away from FlowBox to GridView to present both System and Explore (Google) fonts.

Another part is the change to the way font rows present each font. Instead of drawing the different styles the row now presents a neutral text (subject to change) that presents the font enough for a user to get an idea what is the font like.

Additional changes have been done (e.g., sorting of fonts in models) that try to make the application simply look better or to make the performance better. Some of these decisions have an adverse affect on the presentation (unsorted font rows) but those should be fixable by further work. Already, the start time went from about 15 seconds down to 5 seconds.

NOTE: There are some graphical glitches while scrolling in the Explore part of the app. That is partially fixed in !24.

Includes !23 and !24

TODO:

  • unbinding of font rows
  • proper handling of not installed fonts - not ideal solution
    • not installed font does not have a font family pango attribute set, leading to a lot of font rows with totally uniform preview text (the attributes are set if a font is installed)
    • a solution could be an alternative state to the preview when the font is not available accompanied by a transition effect showing of the preview after a font is downloaded on demand in the background
  • style fixes

Before: Screenshot_from_2022-03-08_23-04-07

After: Screenshot_from_2022-03-10_02-39-02

Edited Mar 10, 2022 by Ondřej Míchal
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: widgets/library-to-view