Unable to add component to "2nd level" drawer

  • 1
  • Problem
  • Updated 2 years ago
  • Acknowledged
When a page contains a table that contains a drawer, and the drawer container a table that contains a drawer, when editing the 2nd level drawer, the designer does not accept components to be dragged on to the drawer.  Instead, it drops them on the 1st level drawer.  

In short, it appears that the popup that is on top of the popup is not the "droppable target"

Notes
1) This repros in IE & Chrome
2) This was not a problem in previous releases of Skuid although I don't know when it started

Steps to reproduce:
1) Create page using XML below
2) Open the drawer popup on the Table that is on the base page
3) Open the drawer popup for the table that is in the 1st drawer
4) Try to drag a component from the toolbox on to the 2nd level drawer

Expected Behavior
Component is droppable on the 2nd level drawer

Actual Behavior
No indication is provided that the component is droppable on 2nd level drawer.  If you release the mouse button on top of the 2nd level drawer, the components gets "dropped" on to the first level drawer

Sample Page XML
<skuidpage unsavedchangeswarning="yes" personalizationmode="server" showsidebar="true" showheader="true" tabtooverride="Account">   <models>
      <model id="Account" limit="100" query="true" createrowifnonefound="false" sobject="Account">
         <fields>
            <field id="Name"/>
            <field id="CreatedDate"/>
         </fields>
         <conditions/>
         <actions/>
      </model>
   </models>
   <components>
      <pagetitle model="Account" uniqueid="sk-mkm4K-68">
         <maintitle>
            <template>{{Model.labelPlural}}</template>
         </maintitle>
         <subtitle>
            <template>Home</template>
         </subtitle>
         <actions>
            <action type="savecancel"/>
         </actions>
      </pagetitle>
      <skootable showconditions="true" showsavecancel="false" searchmethod="server" searchbox="true" showexportbuttons="false" pagesize="10" createrecords="true" model="Account" mode="read" uniqueid="sk-mkm4K-69">
         <fields>
            <field id="Name" allowordering="true"/>
            <field id="CreatedDate" allowordering="true"/>
         </fields>
         <rowactions>
            <action type="multi" label="Run multiple actions" icon="sk-icon-magic">
               <actions>
                  <action type="drawer">
                     <drawer title="Drawer Area" width="90%" closehandle="true">
                        <components>
                           <skootable showconditions="true" showsavecancel="true" showerrorsinline="true" searchmethod="server" searchbox="true" showexportbuttons="false" pagesize="10" createrecords="true" model="Account" buttonposition="" mode="read" uniqueid="sk-mktEv-97">
                              <fields/>
                              <rowactions>
                                 <action type="multi" label="Run multiple actions" icon="sk-icon-magic">
                                    <actions>
                                       <action type="drawer">
                                          <drawer title="Drawer Area" width="90%" closehandle="true">
                                             <components/>
                                          </drawer>
                                       </action>
                                    </actions>
                                 </action>
                              </rowactions>
                              <massactions usefirstitemasdefault="true"/>
                              <views>
                                 <view type="standard"/>
                              </views>
                           </skootable>
                        </components>
                     </drawer>
                  </action>
               </actions>
            </action>
         </rowactions>
         <massactions usefirstitemasdefault="true"/>
         <views>
            <view type="standard"/>
         </views>
      </skootable>
   </components>
   <resources>
      <labels/>
      <css/>
      <javascript/>
   </resources>
   <styles>
      <styleitem type="background" bgtype="none"/>
   </styles>
</skuidpage>
Photo of Barry Schnell

Barry Schnell, Champion

  • 18,076 Points 10k badge 2x thumb

Posted 3 years ago

  • 1
Photo of Rob Hatch

Rob Hatch, Official Rep

  • 44,006 Points 20k badge 2x thumb
Thanks for reporting this.   It has also always been a problem with multiple popups.  But then again - who would EVER build a system where popups generated popups...  Ack...

There is a workaround.   There are two drawer builder definition popups.  These are draggable and so you can move one above the other,  or expose the first drawer (after opening the second one) and close it.   As long as the drop zones are not overlapping -you can drop content on the second drawer or popup. 
Photo of Barry Schnell

Barry Schnell, Champion

  • 18,076 Points 10k badge 2x thumb
Thanks Rob.  I was able to workaround the issue by moving the 2nd level drawer outside of the 1st level drawer.  Prior to this, I was having to manually modify XML and creating component config from scratch is not an fun thing to do ;)

This workaround works for me.  That said, is this issue on the backlog to be fixed at some point (lower priority likely)?
Photo of Karen Waldschmitt

Karen Waldschmitt, Official Rep

  • 8,240 Points 5k badge 2x thumb
Barry~

Yes, this issue is in the backlog to be fixed at some point.

Thanks!
Karen