Uploaded image for project: 'Batik'
  1. Batik
  2. BATIK-935

Non-native cursors are imprecise (also, their look could be improved)

    XMLWordPrintableJSON

    Details

      Description

      While testing Batik I noticed a few glitches with cursors.

      Steps to reproduce:
      1. Open Batik Squiggle;
      2. Load the SVG 1.1 test suite regarding cursors [2] (bug's URL);
      3. Slowly move the mouse into the "help" and "move" areas.

      Expected result:
      Cursor behavior would behave the same as a native implementation.

      Actual result:
      I've noticed a few minor issues, namely:

      1. Imprecision. When the mouse enters the (already stated) areas where custom cursors are used (see org.apache.batik.bridge.CursorManager), there's a small, about 1 pixel jump. This seems to be caused by the fact that cursor hot spots seem to be zero-based, while the code assumes 1-based.

      2. The "move" cursor (according to the code, MacOS only) is even size and, therefore, not very precise. An odd-sized cursor is suggested.

      3. The custom help cursor looks bad in Windows. What seems to be happening is that the cursor is scaled according to the hint from "Toolkit.getDefaultToolkit().getBestCursorSize", while the native cursors seem to be smaller than that. I'm not sure if a fix should be attempted.

      4. The "pointer" cursor doesn't use the native cursor: a generic hand-looking cursor is displayed (at least in Windows [2] and Linux [3]). Apparently it is due to a Java limitation, which doesn't contain a native cursor binding to this cursor – I recall from the docs that it's not consistent across platforms, but I haven't got a pointer handy and we can't fix this one, so it doesn't matter much...

      Additional details:
      I had this problem almost fixed in my previous laptop but, unfortunately, something got lost during migration to my current one. The fixes are rather simple and this should be easy to address soon.

      [1] http://www.w3.org/Graphics/SVG/Test/20061213/svggen/interact-cursor-01-f.svg
      [2] Windows XP SP3 + JRE 1.6.0_05 + Batik 1.7 & 1.8pre
      [3] Ubuntu 7.10 + JRE 1.6.0_03 + Batik 1.7

        Attachments

          Activity

            People

            • Assignee:
              batik-dev@xmlgraphics.apache.org Batik Developer's Mailing list
              Reporter:
              helder.magalhaes@gmail.com Helder Magalhães
            • Votes:
              1 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated: