sketchucation logo sketchucation
    • Login
    ℹ️ Licensed Extensions | FredoBatch, ElevationProfile, FredoSketch, LayOps, MatSim and Pic2Shape will require license from Sept 1st More Info

    WebDialog help - hide scrollbars

    Scheduled Pinned Locked Moved Developers' Forum
    31 Posts 7 Posters 5.7k Views 7 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • thomthomT Offline
      thomthom
      last edited by

      I use STRICT doctype and <body scroll="no">. Since this is for an application I don't care that it's not standard.

      Thomas Thomassen — SketchUp Monkey & Coding addict
      List of my plugins and link to the CookieWare fund

      1 Reply Last reply Reply Quote 0
      • chrisglasierC Offline
        chrisglasier
        last edited by

        @thomthom said:

        I use STRICT doctype and <body scroll="no">. Since this is for an application I don't care that it's not standard.

        Don't you think in good time such application may well need web connectivity, say, to get or set remote data? Making things comply with today's standards could save future hassles for following generations.

        With TBA interfaces we can analyse what is to be achieved so that IT can help with automation to achieve it.

        1 Reply Last reply Reply Quote 0
        • thomthomT Offline
          thomthom
          last edited by

          I'm a strong proponent of webstandards. But I'm also pragmatic - this is to work around an SU bug where the scrollbar argument in SU's Webdialog class doesn't take effect.
          It's not something that will cause problems for future plugins - if future SU corrects the bug, then this little attribute don't do much.

          Thomas Thomassen — SketchUp Monkey & Coding addict
          List of my plugins and link to the CookieWare fund

          1 Reply Last reply Reply Quote 0
          • chrisglasierC Offline
            chrisglasier
            last edited by

            @thomthom said:

            I'm a strong proponent of webstandards. But I'm also pragmatic - this is to work around an SU bug where the scrollbar argument in SU's Webdialog class doesn't take effect.
            It's not something that will cause problems for future plugins - if future SU corrects the bug, then this little attribute don't do much.

            Ok no big deal except I am working on the API webdialog (which will include snippets). It seems there is a conflict between this:

            
            body{
            border;0px; 
            margin;0px; 
            overflow;hidden   }
            

            and STRICT doctype, so shouldn't the solution be within HTML compliance and standards and not within Sketchup webdialogs?

            It would be useful for me to understand.

            Chris

            With TBA interfaces we can analyse what is to be achieved so that IT can help with automation to achieve it.

            1 Reply Last reply Reply Quote 0
            • thomthomT Offline
              thomthom
              last edited by

              I don't know why the overflow with STRICT doctype within a Webdialog doesn't work - it's how you do it with websites.

              @chrisglasier said:

              so shouldn't the solution be within HTML compliance and standards and not within Sketchup webdialogs?

              Seeing that the Webdialog has a scroll property for it's creating of the ruby class I'd expect that the scrollbars should be set from ruby. I think that the embedded IE control has a scroll property which developers who wish to embed HTML content can set to a fixed override. Why this argument isn't adhered to, I don't know.

              I wonder if the SU dev team has been made aware of the scrollnar bug.
              Was it so that this is PC only - that it works as expected on Mac?

              Thomas Thomassen — SketchUp Monkey & Coding addict
              List of my plugins and link to the CookieWare fund

              1 Reply Last reply Reply Quote 0
              • chrisglasierC Offline
                chrisglasier
                last edited by

                Thanks Thomas. BTW I think it therapeutic to use a STRICT doctype then abuse it by doing something non-standard - appeals to cynical Brits like me!

                With TBA interfaces we can analyse what is to be achieved so that IT can help with automation to achieve it.

                1 Reply Last reply Reply Quote 0
                • thomthomT Offline
                  thomthom
                  last edited by

                  @chrisglasier said:

                  Thanks Thomas. BTW I think it therapeutic to use a STRICT doctype then abuse it by doing something non-standard - appeals to cynical Brits like me!

                  It's make the standard conformant me twitch. x_X

                  Thomas Thomassen — SketchUp Monkey & Coding addict
                  List of my plugins and link to the CookieWare fund

                  1 Reply Last reply Reply Quote 0
                  • thomthomT Offline
                    thomthom
                    last edited by

                    Ah!
                    There is a standard conformant way!

                    html
                    {
                      overflow; hidden;
                    }
                    

                    When removing scoll="no" and adding that to the CSS the scrollbars disappeared in STRICT mode.

                    Armed with that, you could sub-class the Webdialog class and tap into it's .new method and pass on the scroll argument to the webdialog when it's ready. Unless you're fine with just having it defined in the CSS and ignore the Ruby argument.
                    I was going to make a wrapper for myself, that took care of the matter where the size is only being read the first time it's created. At the moment, if you try to change the size arguments for a non-resizable webdialog they won't take effect unless you purge the saved settings.

                    Thomas Thomassen — SketchUp Monkey & Coding addict
                    List of my plugins and link to the CookieWare fund

                    1 Reply Last reply Reply Quote 0
                    • chrisglasierC Offline
                      chrisglasier
                      last edited by

                      Good and noted! And used here.

                      With TBA interfaces we can analyse what is to be achieved so that IT can help with automation to achieve it.

                      1 Reply Last reply Reply Quote 0
                      • thomthomT Offline
                        thomthom
                        last edited by

                        I don't know why I didn't try that before. I know that when switching between STRICT and quicks the behaviour of HTML and BODY changes.
                        Glad we finally worked it out.

                        Thomas Thomassen — SketchUp Monkey & Coding addict
                        List of my plugins and link to the CookieWare fund

                        1 Reply Last reply Reply Quote 0
                        • thomthomT Offline
                          thomthom
                          last edited by

                          @newone said:

                          One more thing: JS statement element.selected = true; did not worked on my native SU instalation. After I updated my Internet Explorer from 6 to 7, it did worked... how is this possible, because in SU I still have IE4 ?

                          You don't have IE4 in SU. You have whatever is installed on the system.
                          That's one of the reason I would prefer is SU used a standalone web-frame that isn't linked to the system.

                          Thomas Thomassen — SketchUp Monkey & Coding addict
                          List of my plugins and link to the CookieWare fund

                          1 Reply Last reply Reply Quote 0
                          • N Offline
                            NewOne
                            last edited by

                            @thomthom said:

                            You don't have IE4 in SU. You have whatever is installed on the system.
                            That's one of the reason I would prefer is SU used a standalone web-frame that isn't linked to the system.

                            Please run this.

                            
                            @my_dialog = UI;;WebDialog.new('Check Version', false,"",400, 100, 300, 300, true)
                            
                            html = '<html>
                            <body>
                            
                            <script type="text/javascript">
                            var browser=navigator.appName;
                            var b_version=navigator.appVersion;
                            var version=parseFloat(b_version);
                            
                            document.write("Browser name; "+ browser);
                            document.write("<br />");
                            document.write("Browser version; "+ version);
                            </script>
                            
                            </body>
                            </html>'
                            
                            @my_dialog.set_html(html)
                            
                            @my_dialog.show{}
                            @my_dialog.bring_to_front
                            
                            

                            IE version.png

                            1 Reply Last reply Reply Quote 0
                            • thomthomT Offline
                              thomthom
                              last edited by

                              You can't rely on navigator.appVersion. Since IE4 and up it has always reported 4 for legacy support reasons. You must parse the navigator.userAgent string.
                              http://javascript.gakaa.com/navigator-appversion.aspx

                              JavaScript - Browser detect

                              favicon

                              (www.quirksmode.org)

                              Thomas Thomassen — SketchUp Monkey & Coding addict
                              List of my plugins and link to the CookieWare fund

                              1 Reply Last reply Reply Quote 0
                              • N Offline
                                NewOne
                                last edited by

                                If so, why does it renders buttons so old-way? 😞

                                1 Reply Last reply Reply Quote 0
                                • thomthomT Offline
                                  thomthom
                                  last edited by

                                  IE is quick to do weird stuff to form control. In general - form controls in any browser is unpredictable.

                                  If it'd been rendering like IE4 it would be permanently stuck in Quicks mode. Standard mode in IE wasn't introduced until IE6.

                                  Thomas Thomassen — SketchUp Monkey & Coding addict
                                  List of my plugins and link to the CookieWare fund

                                  1 Reply Last reply Reply Quote 0
                                  • Dan RathbunD Offline
                                    Dan Rathbun
                                    last edited by

                                    @newone said:

                                    If so, why does it renders buttons so old-way?

                                    Sometimes Standards Compliant mode on MSIE turns MS Common Controls back to the old 'unthemed' set (they look like old Win 3.x ugly controls.)

                                    See my post in the other WebDialog thread for a META tag that goes in the HEAD section.
                                    Sometimes it can turn the 'XP themed' ver 6 controls back on.
                                    I don't know if they work in Strict mode, but the tag should work for Tranistional mode.

                                    http://forums.sketchucation.com/viewtopic.php?f=180&t=22698#p196706

                                    I'm not here much anymore.

                                    1 Reply Last reply Reply Quote 0
                                    • 1
                                    • 2
                                    • 1 / 2
                                    • First post
                                      Last post
                                    Buy SketchPlus
                                    Buy SUbD
                                    Buy WrapR
                                    Buy eBook
                                    Buy Modelur
                                    Buy Vertex Tools
                                    Buy SketchCuisine
                                    Buy FormFonts

                                    Advertisement