Uploaded image for project: 'ZK'
  1. ZK
  2. ZK-2997

Combobox Dropdown Positioning Anomaly

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: Normal Normal
    • None
    • 7.0.3, 8.0.0
    • None
    • Running under ZK CE (does not occur under EE) with server push enabled (does not occur when not enabled).

    • ZK 8.0.1 S3

      Under certain circumstances, on the initial dropdown of a combobox, the popup position is initially fine, then after a short delay is repositioned to the top of the combobox.

      To recreate, run the attached index.zul under ZK CE. Click the "cbo" button to create a combobox. Open the combobox dropdown and then adjust the browser height just slightly beyond the bottom of the popup. Now click the "cbo" button again to recreate the combobox. Note that the dropdown behavior is as expected. Now click the "off" button to turn on server push. Click the "cbo" button again to create a new combobox. Now open its dropdown. Note that after a slight delay, the popup jumps from the bottom of the combobox to the top. However, after closing and re-opening the dropdown, the behavior is as expected.

      I have tracked this behavior to the "response" method of the combobox widget in zul.inp.wpd. Since the _shallSyncPopupPosition flag has been set, this causes the popup position to be reset to "before_start". The _shallSyncPopupPosition flag gets set in the "_checkPopupPosition" method, which is using the wrong popup dimensions for the calculation. I'm not clear why the widget depends on server push to begin with. Its behavior should be the same regardless of whether or not server push is enabled.

            wenninghsu wenninghsu
            martindk martindk
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved:

                Estimated:
                Original Estimate - 0 minutes
                0m
                Remaining:
                Remaining Estimate - 0 minutes
                0m
                Logged:
                Time Spent - 3 hours, 5 minutes
                3h 5m