sketchucation logo sketchucation
    • Login
    ⚠️ Attention | Having issues with Sketchucation Tools 5? Report Here

    WebDialog encoding bug found!

    Scheduled Pinned Locked Moved Developers' Forum
    44 Posts 10 Posters 2.1k Views 10 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.
    • Dan RathbunD Offline
      Dan Rathbun
      last edited by

      With the two changes on SU2014.

      Before hitting ENTER:
      WebDialog_param_encoding_fix2_before_enter.png

      .. but when I click in the text control, and hit the END key, the ruby console shows:
      %(#004000)[return using add_action_callback "lid1,\xC3\xA9lan \xE5\x8B\xA2\xE3\x81\x84 Schwung \xD0\xB8\xD0\xBC\xD0\xBF\xD1\x83\xD0\xBB\xD1\x8C\xD1\x81" return using get_element_value => élan 勢い Schwung импульс]


      After hitting ENTER:
      WebDialog_param_encoding_fix2_after_enter.png

      .. and then the Ruby console shows:
      %(#004000)[return using add_action_callback "lid1,\\u00E9lan \\u52E2\\u3044 Schwung \\u0438\\u043C\\u043F\\u0443\\u043B\\u044C\\u0441" return using get_element_value => \u00E9lan \u52E2\u3044 Schwung \u0438\u043C\u043F\u0443\u043B\u044C\u0441]

      ❓

      I'm not here much anymore.

      1 Reply Last reply Reply Quote 0
      • D Offline
        driven
        last edited by

        thanks dan

        @unknownuser said:

        You need a platform code branch and use element.innerText= on PC.

        innerText works on mac, so I'll just change that...

        can you run with the tweak...
        and see if they show in the dialog...

        the extra // in your console return confuses me. I had to add more to escape ruby escaping javascript...

        john

        learn from the mistakes of others, you may not live long enough to make them all yourself...

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

          OK, that latest tweek, after hitting enter:
          WebDialog_param_encoding_fix3_after_enter.png

          And the console, after hitting enter:
          %(#004000)[load "test/show_encoding_issue.rb" true return using add_action_callback "lid1,\\u00E9lan \\u52E2\\u3044 Schwung \\u0438\\u043C\\u043F\\u0443\\u043B\\u044C\\u0441" return using get_element_value => \u00E9lan \u52E2\u3044 Schwung \u0438\u043C\u043F\u0443\u043B\u044C\u0441]

          BTW.. if the WebDialog has focus after hitting ENTER, and I need to use the ALT key (for ALT+PrintScreen to copy the active window image to the clipboard, so I can save it from Paint.NET,) there is a whole bunch of repeated console output, like 15 times while I held the ALT key down.

          I'm not here much anymore.

          1 Reply Last reply Reply Quote 0
          • D Offline
            driven
            last edited by

            yeh it works...

            @dan rathbun said:

            BTW.. if the WebDialog has focus after hitting ENTER, and I need to use the ALT key (for ALT+PrintScreen to copy the active window image to the clipboard, so I can save it from Paint.NET,) there is a whole bunch of repeated console output, like 15 times while I held the ALT key down.

            with this should I just add a screen grab and dump it to desktop?

                @dlg2.write_image(File.join((File.expand_path("~")), "Desktop", "dlg_test.png"))
            
            

            auto acquired image...
            what's the PC equiv...
            EDIT: for completeness I'll add the unmodified pair back into the mix after sleep...
            thanks again dan
            john

            learn from the mistakes of others, you may not live long enough to make them all yourself...

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

              @driven said:

              ... should I just add a screen grab and dump it to desktop?

              NO.

              Replace the %(#8000BF)[onkeydown=] with:
              %(#8000BF)[onkeyup=" if (event.keyCode == 13) { this.value=unicodeLiteral(this.value); trans_L8(); }"]

              Notice that I enclose BOTH the following statements within a "curly block", so that the test only fires when ENTER key is released (after being pressed.)
              The condition will not even be tested while any key is down, including any modifier key.

              I'm not here much anymore.

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

                FYI: I am one of those who hates programs putting stuff on MY Desktop.

                I'm not here much anymore.

                1 Reply Last reply Reply Quote 0
                • D Offline
                  driven
                  last edited by

                  @dan rathbun said:

                  FYI: I am one of those who hates programs putting stuff on MY Desktop.

                  so do I so I added it as a button...
                  NEW VERSION...
                  I split the input method to make it function the same in all versions of SU...
                  I can't get the raw code too display in the dialog, so here it is for v2014, the others are similarly wrong...
                  EDIT: made a small adjustment to get 'fixed' to display correctly [puts v p]

                  true
                  return using add_action_callback [id,value] 
                  "\xE2\x88\x9A\xC2\xA9lan \xC3\x82\xC3\xA3\xC2\xA2\xE2\x80\x9E\xC3\x85\xC3\x91 Schwung \xE2\x80\x93\xE2\x88\x8F\xE2\x80\x93\xC2\xBA\xE2\x80\x93\xC3\xB8\xE2\x80\x94\xC3\x89\xE2\x80\x93\xC2\xAA\xE2\x80\x94\xC3\xA5\xE2\x80\x94\xC3\x85"
                  return using get_element_value => élan 勢い Schwung импульс
                  return using add_action_callback [id,value_fixed] 
                  \u00E9lan \u52E2\u3044 Schwung \u0438\u043C\u043F\u0443\u043B\u044C\u0441
                  return using get_element_value fixed => \u00E9lan \u52E2\u3044 Schwung \u0438\u043C\u043F\u0443\u043B\u044C\u0441
                  

                  encoding_issue_14.0.4899.pngencoding_issue_13.0.4811.pngencoding_issue_8.0.16845.png

                  Please test the new script...with puts fix

                  john

                  learn from the mistakes of others, you may not live long enough to make them all yourself...

                  1 Reply Last reply Reply Quote 0
                  • TIGT Offline
                    TIG Moderator
                    last edited by

                    Here are my PC results.
                    Win7 IE11.
                    Note how v2014 misses platform ?
                    Only the v8 Russian text seems to have a problem on get_element_value ??


                    2014.png


                    2013.png


                    8.PNG

                    TIG

                    1 Reply Last reply Reply Quote 0
                    • G Offline
                      Garry K
                      last edited by

                      Here you go.
                      I've got SU 7 Free, SU 8 Free, SU 2013 Trial, SU 2014 Trial


                      Capture1_.JPG


                      Capture2_.JPG


                      Capture3_.JPG


                      Capture4_.JPG

                      1 Reply Last reply Reply Quote 0
                      • G Offline
                        Garry K
                        last edited by

                        Sorry - missed clicking the button for SU 7


                        Capture1_.JPG

                        1 Reply Last reply Reply Quote 0
                        • D Offline
                          driven
                          last edited by

                          Thanks Tig and Garry,

                          from your images it appears that v8 had an issue with the standard call but shows correctly if SU is handed a Unicode charset string with it's separators gsub'd.

                          The ongoing v2014 (PC) handles both standard or 'fixed', where my mac's fail.

                          I'll write up a bug report for this, and at least I can now carry on with my language translator...

                          The only conditions, in this script, are for the 'extra' system info, which I won't need...

                          @garry, if you click into the text field, then hit return and then click the button, you'll see the default results as well...

                          I had to split them onto Two buttons for v8 to use the same code as the others...

                          john

                          learn from the mistakes of others, you may not live long enough to make them all yourself...

                          1 Reply Last reply Reply Quote 0
                          • fredo6F Offline
                            fredo6
                            last edited by

                            Here are my results on SU14, Windows 7 64-bits, IE11

                            1) When starting Sketchup

                            Driven encoding UTF - Fredo - 0.png

                            2) After putting the focus in the field and typing Enter

                            Driven encoding UTF - Fredo.png

                            Fredo

                            1 Reply Last reply Reply Quote 0
                            • D Offline
                              driven
                              last edited by

                              Thanks Fredo,

                              I updated the script since then to shows both the default and fixed returns...

                              the default shows with the return from the input box and the button shows the 'fix' i.e. Unicode literals with separators fixed...

                              on the PC it appears v8 may have an issue with the 'default' return for 'get_element_value' some of these chars, and mac has issues on all versions, but the Unicode literals appear to work on all, so far...

                              Thanks for taking the time.

                              john
                              here is a rbz version...

                              learn from the mistakes of others, you may not live long enough to make them all yourself...

                              1 Reply Last reply Reply Quote 0
                              • fredo6F Offline
                                fredo6
                                last edited by

                                Driven,

                                Here is the result with the updated script

                                1) Initial state
                                Encoding issue before.png

                                2) After hitting the button
                                Encoding issue after Enter in the field.png

                                Fredo

                                1 Reply Last reply Reply Quote 0
                                • G Offline
                                  greatoe
                                  last edited by

                                  Sketchup 2014
                                  Mac 10.9.2
                                  testing text in Simplified Chinese

                                  encoding_issue_14.0.4899.png

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

                                  Advertisement