Unsupported HTML objects in SU WebDialog


#1

In my explorations of the Sketchup WebDialog features I have discovered a flaw that may prove to be problematic in the future. Some tags, for example < input type=“color”> do not display in the WebDialog window (I am on a mac running Yosemite). I can’t say I am surprised, as it is a slightly uncommon HTML input type, and it isn’t supported by some browsers (like IE). What I would like to know is if there is some “easy” fix to this problem that doesn’t involve building out my own color selector with JavaScript, or if the best fix for missing support in WebDialog is to build your own functionality in with JS, CSS, and HTML. (Which I am happy to do, but why write unnecessary lines of code? :P)

I have read through the API and ThomThom’s lost manual (https://github.com/thomthom/sketchup-webdialogs-the-lost-manual) and the later is very informative, if you need to know about WebDialog go check it out.

Thanks guys!!


#2

You aren’t going to get far if you try to use tomorrow’s html5 (or html6) in WebDialogs. SketchUp’s web dialogs use the operatings system toolkit’s webview component, which is based on either Internet Explorer or Safari. Embedded Internet Explorer would even default to IE8 mode for compatibility with enterprise applications unless you force it to edge mode (see the lost manual).

That means even if your Safari/webkit supported the color input, it would not be supported on almost all your plugin user’s systems, be it older Safari or Internet Explorer. Instead of re-inventing the wheel, best is to use an html/js toolkit library that hasn’t deprecated old browsers support yet and offers a color chooser (like jscolor, and older versions of jQueryUI). Choose one that requires little or no adjustments/patching to fit your needs.


#3

@kyle, it would be easier if you stated which tags are failing, and or post a working example that uses them…

If your attempting to use a features that won’t run in Safari, then they will also fail in SU, but most things can be achieved…

Pointing a webdialog at “https://html5test.com” or similar will show what’s ‘not’ available…

john


#4

Thanks for the tip! I will look into some sort of framework


#5

Ha, I originally read this and thought “I was very specific when listing my tag in question, did he not read the post” but upon further review it appears that < symbols cancel out whatever is between them, so that my < input type=“color” > was completely ignored. I have since fixed it, sorry for the confusion


#6

Forums that support markup syntax (markdown, bbcode, simple html) usually sanitize posts for security reasons. That’s why there is code markup, that means “display this exactly as provided and don’t attempt to parse/execute it into something that could be dangerous”. That’s also why there is a preview and a formatting toolbar…

Code block markup with ```html keeps things easier to read:

<input type="color" />

Can I use color? 0% in browsers relevant for SketchUp…