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

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

    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

        Issue Links

          Activity

            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