Screenshot widget 1.0
This widget is designed to take a screenshot of the entire viewport of the WebApp window. Widgets and all. It then prompts the user to open or save it as an image file. Note: this wdget requires PHP.
Screenshot widget at kevinsagis/ScreenshotDemo · GitHub
Widget demo at: ArcGIS Web Application
Why is Screenshot useful? Maybe your users want to see "exactly what you are seeing" which was my user request. This is powered by html2canvas, canvas to blob, and filesaver.js, Credits in documentation.
Status: 1.0 beta 1 -- Screenshot works now, as in this link. Note sometimes minor graphical oddities like the button's CSS but these limitations are well explained by the html2canvas author Niklas. Also, minor caveat, at small-scale levels, i.e. zoomed out farther than 20,000, sometimes esri basemap tiles will not load. this appears to be a caveat with html2canvas and sporadic. Report results back. For our purposes this widget now works great! I may turn it into a 'feedback' widget in the future.
I am using this proxy: brcontainer/html2canvas-php-proxy · GitHub
Note as this uses PHP. There are also Python and ASP.NET proxies. These do not work inside WebApp Builder! WebApp Builder runs on node.js. PHP will run inside node.js but only after you install some other libraries. The simple solution I elected to follow is to put this widget into your application after Downloading it out of WebApp Builder, and tweak it after downloading, if desired.