Uploaded image for project: 'NetBeans'
  1. NetBeans
  2. NETBEANS-1238

HiDPI icons in tabcontrol and openide.awt modules for Windows LAF

VotersWatch issueWatchersLinkUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    Description

      On Windows 10, each monitor may be configured with an arbitrary scaling factor, such as 125%, 150%, 200%, or even 300%. For instance, high-density laptop displays are typically set to a scaling of 200% by default. On Java 9 and 10, Swing handles this "HiDPI" scaling automatically, making the UI take up more pixels without looking smaller, and without any changes in the client application. This makes bitmap icons blurry or ragged, however.

      To look good on HiDPI displays on Windows 10, the various icons that are part of NetBeans' window system must be made scalable to arbitrary resolutions. This includes, for instance, the "X" button that is used to close tabs, the "_" button that collapses a sidebar, or the ">>" button that shows hidden toolbar icons. These icons reside in the tabcontrol and openide.awt modules.

      Attachments

        1. NETBEANS-1238 After patch.png
          467 kB
          Eirik Bakke
        2. NETBEANS-1238 Before patch.png
          453 kB
          Eirik Bakke
        3. VectorIconTester output.png
          792 kB
          Eirik Bakke

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            Unassigned Unassigned
            ebakke Eirik Bakke
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0h
                0h
                Logged:
                Time Spent - 20m
                20m

                Slack

                  Issue deployment