Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8127586

Group.impl_pickLocal() does not report the right result ?

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Not an Issue
    • Icon: P3 P3
    • fx2.1
    • fx2.1
    • javafx

      Scene Builder uses Group.impl_pickLocal() to identify which selection handles or ring are below the mouse.

      We found a case where it seems that this routine does not report the correct result.

      To reproduce:
      1) start Scene Builder and load the attached test.fxml
           => the design is composed of two anchor panes and a button
           => the button is resized to fit its parent anchor pane
      2) Select the button
           => you should have something like in Snapshot1.png
           => above the Button, Scene Builder has drawn:
                   1) an orange ring
                   2) the selection handles (blue frame with height white&blue rectangles)
      3) If you move the mouse over the bottom middle handle, SB displays the resize cursor : see SnapshotResize.png
      4) If you move the mouse downward, the resize cursor should remain until the mouse is outside of the selection handles
           => Issue : the cursor changes as soon as the mouse is in lower half of the selection handle : see SnapshotWrongCursor.png
           => After investigation it seems that Group.impl_pickLocal() returns the "orange ring" in place of the "selection handle" object

      SnapshotAnnotated.pdf displays a zoom of the situation :
      1) when the mouse is on A, Group.impl_pickLocal() returns the selection handle object (the white rectangle with blue border)
      2) when the mouse is on B, Group.impl_pickLocal() returns the orange ring (an transparent path with a wide orange border
      *drawn outside*)
      3) any position above the dotted line is treated as A
      4) any position below the dotted line is treated as B

      => it is like if the orange ring, although drawn *behind the handle", was considered as *above the handle" by impl_pickLocal()
      => may be use of StrokeType.OUTSIDE for drawing the orange ring has some influence ?

        1. Snapshot1.png
          66 kB
          Eric Le Ponner
        2. SnapshotAnnotated.pdf
          25 kB
          Eric Le Ponner
        3. SnapshotResize.png
          26 kB
          Eric Le Ponner
        4. SnapshotWrongCursor.png
          25 kB
          Eric Le Ponner
        5. test.fxml
          0.7 kB
          Eric Le Ponner

            lnerad Ľubomír Nerád (Inactive)
            eleponn Eric Le Ponner
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported: