Skip to main content
edited body to show code samples.
Source Link
Daniel Ballinger
  • 103k
  • 40
  • 275
  • 601
  1. A simple HTML page that is about 1200px high to force some scrolling. https://downloads.fuseit.com/Utils/debug/basic.html

    A simple HTML page that is about 1200px high to force some scrolling. https://downloads.fuseit.com/Utils/debug/basic.html
  2. A Connected App using the simple HTML page for the Start URL, Canvas App URL, and Callback URL. The Canvas App Settings are using an Access Method of Signed Request and the Locations are Visualforce Page and LightningComponent CanvasAppSetup

    A Connected App using the simple HTML page for the Start URL, Canvas App URL, and Callback URL. The Canvas App Settings are using an Access Method of Signed Request and the Locations are Visualforce Page and LightningComponent CanvasAppSetup
  3. A Visualforce page referencing the canvas app. The height needs to be sufficient to see the whole iframed page as we won't be calling the Canvas resize code.

    apex:page
    <apex:CanvasApp developerName="ChromeScrollTest" height="1200px" maxHeight="infinite" maxWidth="infinite" border="1"/> </apex:page>

    A Visualforce page referencing the canvas app. The height needs to be sufficient to see the whole iframed page as we won't be calling the Canvas resize code.

vf:

<apex:page>   
  <apex:CanvasApp developerName="ChromeScrollTest" height="1200px" maxHeight="infinite" maxWidth="infinite" border="1"/>
</apex:page>
  1. A Lightning component referencing the canvas app. Again, defining the height.

    <aura:component implements="force:appHostable,flexipage:availableForAllPageTypes" access="global" > <force:canvasApp developerName="ChromeScrollTest" height="1200px"/> </aura:component>

    A Lightning component referencing the canvas app. Again, defining the height.

cmp:

<aura:component implements="force:appHostable,flexipage:availableForAllPageTypes" access="global" >
    <div class="canvas-container">
        <force:canvasApp developerName="ChromeScrollTest" height="1200px"/>
    </div>
</aura:component>
  1. A simple HTML page that is about 1200px high to force some scrolling. https://downloads.fuseit.com/Utils/debug/basic.html

  2. A Connected App using the simple HTML page for the Start URL, Canvas App URL, and Callback URL. The Canvas App Settings are using an Access Method of Signed Request and the Locations are Visualforce Page and LightningComponent CanvasAppSetup

  3. A Visualforce page referencing the canvas app. The height needs to be sufficient to see the whole iframed page as we won't be calling the Canvas resize code.

    apex:page
    <apex:CanvasApp developerName="ChromeScrollTest" height="1200px" maxHeight="infinite" maxWidth="infinite" border="1"/> </apex:page>

  4. A Lightning component referencing the canvas app. Again, defining the height.

    <aura:component implements="force:appHostable,flexipage:availableForAllPageTypes" access="global" > <force:canvasApp developerName="ChromeScrollTest" height="1200px"/> </aura:component>

  1. A simple HTML page that is about 1200px high to force some scrolling. https://downloads.fuseit.com/Utils/debug/basic.html
  2. A Connected App using the simple HTML page for the Start URL, Canvas App URL, and Callback URL. The Canvas App Settings are using an Access Method of Signed Request and the Locations are Visualforce Page and LightningComponent CanvasAppSetup
  3. A Visualforce page referencing the canvas app. The height needs to be sufficient to see the whole iframed page as we won't be calling the Canvas resize code.

vf:

<apex:page>   
  <apex:CanvasApp developerName="ChromeScrollTest" height="1200px" maxHeight="infinite" maxWidth="infinite" border="1"/>
</apex:page>
  1. A Lightning component referencing the canvas app. Again, defining the height.

cmp:

<aura:component implements="force:appHostable,flexipage:availableForAllPageTypes" access="global" >
    <div class="canvas-container">
        <force:canvasApp developerName="ChromeScrollTest" height="1200px"/>
    </div>
</aura:component>
Added an example for those that want to play at home
Source Link
Daniel Ballinger
  • 103k
  • 40
  • 275
  • 601

After much effort on my part I've created a simpler reproduction of the bug. The parts are as follows:

  1. A simple HTML page that is about 1200px high to force some scrolling. https://downloads.fuseit.com/Utils/debug/basic.html

  2. A Connected App using the simple HTML page for the Start URL, Canvas App URL, and Callback URL. The Canvas App Settings are using an Access Method of Signed Request and the Locations are Visualforce Page and LightningComponent CanvasAppSetup

  3. A Visualforce page referencing the canvas app. The height needs to be sufficient to see the whole iframed page as we won't be calling the Canvas resize code.

    apex:page
    <apex:CanvasApp developerName="ChromeScrollTest" height="1200px" maxHeight="infinite" maxWidth="infinite" border="1"/> </apex:page>

  4. A Lightning component referencing the canvas app. Again, defining the height.

    <aura:component implements="force:appHostable,flexipage:availableForAllPageTypes" access="global" > <force:canvasApp developerName="ChromeScrollTest" height="1200px"/> </aura:component>

Then just load either the Visualforce page or the Lightning Component (embedded in an app) and observe the rendering issues.

Updated simple example using Visualforce


After much effort on my part I've created a simpler reproduction of the bug. The parts are as follows:

  1. A simple HTML page that is about 1200px high to force some scrolling. https://downloads.fuseit.com/Utils/debug/basic.html

  2. A Connected App using the simple HTML page for the Start URL, Canvas App URL, and Callback URL. The Canvas App Settings are using an Access Method of Signed Request and the Locations are Visualforce Page and LightningComponent CanvasAppSetup

  3. A Visualforce page referencing the canvas app. The height needs to be sufficient to see the whole iframed page as we won't be calling the Canvas resize code.

    apex:page
    <apex:CanvasApp developerName="ChromeScrollTest" height="1200px" maxHeight="infinite" maxWidth="infinite" border="1"/> </apex:page>

  4. A Lightning component referencing the canvas app. Again, defining the height.

    <aura:component implements="force:appHostable,flexipage:availableForAllPageTypes" access="global" > <force:canvasApp developerName="ChromeScrollTest" height="1200px"/> </aura:component>

Then just load either the Visualforce page or the Lightning Component (embedded in an app) and observe the rendering issues.

Updated simple example using Visualforce

added 156 characters in body
Source Link
Daniel Ballinger
  • 103k
  • 40
  • 275
  • 601

One workaround for this is to have the user manually change the magnification to 110%. The change seems to force chrome to render the selects correctly.

One workaround for this is to have the user manually change the magnification to 110%. The change seems to force chrome to render the selects correctly.

Added support case # 20069320 for primary issue with HTML select positions.
Source Link
Daniel Ballinger
  • 103k
  • 40
  • 275
  • 601
Loading
Added work around for the webkit repainting on scroll issue.
Source Link
Daniel Ballinger
  • 103k
  • 40
  • 275
  • 601
Loading
Update for Chrome 69
Source Link
Daniel Ballinger
  • 103k
  • 40
  • 275
  • 601
Loading
Tweeted twitter.com/StackSalesforce/status/1025260441906364416
Source Link
Daniel Ballinger
  • 103k
  • 40
  • 275
  • 601
Loading