Uploaded image for project: 'Snowstorm'
  1. Snowstorm
  2. STORM-1844

Block and Ignore buttons on llDialog() menus overlap when there is only one button

    Details

    • Type: Defect
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: Active
    • Labels:
      None
    • Environment:
      Second Life 3.3.2 (253960) Apr 16 2012 09:15:39 (Second Life Development)

      Windows 7
    • Test Plan:
      Hide

      Test using the script in the description

      Test again using this line

      llDialog(llDetectedKey(0), "Foo", ["OK"], "2");
      

      Test again using this line

      llDialog(llDetectedKey(0), "Foo", ["OK"], "2", "3");
      

      ETA: I created a test script which shows from 1 to 12 buttons in a short interval (just start again by clicking the object that script is in):

      // Test script for
      //STORM-1844: Block and Ignore buttons on llDialog() menus overlap
      //when there is only one button
      integer button_count;
      integer BUTTON_COUNT_MIN = 1;
      integer BUTTON_COUNT_MAX = 12;
      start_dialogs()
      {
          button_count = BUTTON_COUNT_MIN;
          create_test_dialog(button_count);
      }
      create_test_dialog(integer btn_cnt)
      {
          list l_buttons;
          integer i_cnt;
          for (i_cnt = 0; i_cnt < btn_cnt; i_cnt++)
          {
              l_buttons = l_buttons + ["buttontext"];
          }
          button_count++;
          llDialog(llGetOwner(), "Testing design of block and ignore button.", l_buttons, 1);
          llSleep(1);
          if (button_count <= BUTTON_COUNT_MAX)
          {
              create_test_dialog(button_count);
          }
      }
      default
      {
          state_entry() {
              start_dialogs();
          }
          touch_start(integer touched)
          {
              llResetScript();
          }
      }
      

      Show
      Test using the script in the description Test again using this line llDialog(llDetectedKey(0), "Foo", ["OK"], "2"); Test again using this line llDialog(llDetectedKey(0), "Foo", ["OK"], "2", "3"); ETA: I created a test script which shows from 1 to 12 buttons in a short interval (just start again by clicking the object that script is in): // Test script for //STORM-1844: Block and Ignore buttons on llDialog() menus overlap //when there is only one button integer button_count; integer BUTTON_COUNT_MIN = 1; integer BUTTON_COUNT_MAX = 12; start_dialogs() { button_count = BUTTON_COUNT_MIN; create_test_dialog(button_count); } create_test_dialog(integer btn_cnt) { list l_buttons; integer i_cnt; for (i_cnt = 0; i_cnt < btn_cnt; i_cnt++) { l_buttons = l_buttons + ["buttontext"]; } button_count++; llDialog(llGetOwner(), "Testing design of block and ignore button.", l_buttons, 1); llSleep(1); if (button_count <= BUTTON_COUNT_MAX) { create_test_dialog(button_count); } } default { state_entry() { start_dialogs(); } touch_start(integer touched) { llResetScript(); } }
    • Release Vehicles/Components:
      Viewer

      Description

      To reproduce, put this script in an object:

      Create a prim and put the following script in it:

      default
      {
          touch_start(integer total_number)
          {
              llDialog(llDetectedKey(0), "Foo", ["OK"], 1);
          }
      }

      Click on the object

      Observe: Block and Ignore Buttons overlap

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                latif.khalifa Latif Khalifa
                Extended Group Visibility:
                jira-users
              • Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: