Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    TreeGrid SelectionChanged

    Hi,

    We've finally confirmed an issue with the TreeGrid SelectionChanged event. The problem can be seen
    on either IE8 or IE9. It's not reproducible every single time, but if you play around with selections,
    you'll see it ... Actually, it seems to be even more apparent under IE9.

    We are seeing this using SmartClient_v82p_2012-03-26 (LGPL).

    The problem is that the "clicking" of selection checkboxes within a TreeGrid sometimes reverts to
    the value it had prior to the click (as if 2 clicks were digested). You can see the checkbox blink.

    We used the following test bed to reproduce ... If you click, click, click, click again in different TreeGrid
    checkboxes, you'll notice the issue ...

    Code:
    <HTML>
    	<HEAD>
    		<META HTTP-EQUIV="X-UA-Compatible" CONTENT="IE=9" />
    		<LINK REL="shortcut icon" HREF="images/logo/favicon.ico" type="image/x-icon"/>
    		<LINK REL="icon" HREF="images/logo/favicon.ico" type="image/x-icon"/>
    <SCRIPT>
    window.isomorphicDir = 'isomorphic/';
    </SCRIPT>
    
    		<SCRIPT SRC="isomorphic/system/modules/ISC_Core.js"></SCRIPT>
    		<SCRIPT SRC="isomorphic/system/modules/ISC_Foundation.js"></SCRIPT>
    		<SCRIPT SRC="isomorphic/system/modules/ISC_Containers.js"></SCRIPT>
    		<SCRIPT SRC="isomorphic/system/modules/ISC_Grids.js"></SCRIPT>
    		<SCRIPT SRC="isomorphic/system/modules/ISC_Forms.js"></SCRIPT>
    		<SCRIPT SRC="isomorphic/system/modules/ISC_DataBinding.js"></SCRIPT>
    		<SCRIPT SRC="isomorphic/skins/MEI/load_skin.js"></SCRIPT>
    
    		<TITLE>Investigation - selection changed</TITLE>
    	</HEAD>
    
    	<BODY STYLE="overflow:hidden">
    		<SCRIPT>
    		var employeeTree = isc.TreeGrid.create({
    			selectionAppearance:"checkbox",
    		    data: isc.Tree.create({
    		        modelType: "parent",
    		        nameProperty: "Name",
    		        idField: "EmployeeId",
    		        parentIdField: "ReportsTo",
    		        data: [
    		            {EmployeeId:"4", ReportsTo:"1", Name:"Charles Madigen"},
    		            {EmployeeId:"188", ReportsTo:"4", Name:"Rogine Leger"},
    		            {EmployeeId:"189", ReportsTo:"4", Name:"Gene Porter"},
    		            {EmployeeId:"265", ReportsTo:"189", Name:"Olivier Doucet"},
    		            {EmployeeId:"264", ReportsTo:"189", Name:"Cheryl Pearson"}
    		        ]
    		    }),
    		    width: 500,
    		    height: 400
    		});
    
    		employeeTree.getData().openAll();
    
    		</SCRIPT>
    	</BODY>
    </HTML>
    Thanks for looking into this.

    Kind regards,
    Last edited by yavery; 29 Mar 2012, 09:15.

    #2
    Thanks for the report - this had already been fixed in 8.3d and the fix has now been backported to 8.2p. Please retest with a nightly build after tomorrow.

    Comment


      #3
      Hi,

      Just downloaded and installed latest 8.2p (2012-04-02) and I still have this issue. Clearly visible on IE9.

      Can someone please look into this ...

      Thanks,

      Comment


        #4
        Hm - there's a problem with the META tag here - if you run your sample code without that tag, whether in native IE or not, it works fine - no apparent double-clicks, no flashing - we're looking further into it and will update this thread when we have something to add.

        Comment


          #5
          Just noticed it. But when you put it, it fails ... Strange indeed ...

          While you're looking on your side, I'm also looking on my side as to WHY I added that
          line to our code base and see if I really need it.

          Thanks,

          Comment


            #6
            Hi,

            I just finished investigating on my side, and I have some CSS/HTML (non Isomorphic related)
            that uses IE9 features which require true IE9, not IE7 or IE8 compatibility mode.

            Therefore, I must leave that META tag in there, to make sure users are not trying to run my app
            in IE7 or IE8 compatibility mode.

            Does Isomorphic support IE9 other than in IE7/IE8 compatibility mode ?

            Thanks,

            Comment


              #7
              We support using the HTML5 Doctype in IE9 as of 8.2, yes. Using this should be equivalent to your meta tag *plus* enable HTML5 features, but we're looking into whether there's some kind of subtle difference.

              Comment


                #8
                I removed the <META> tag but that doesn't prevent a user from manually setting
                his IE9 browser to which ever compatibility mode he wants, and this is what's breaking ...

                The only mode which doesn't break is "Quirks Mode".

                Please provide a workaround for this issue that works in all cases.

                Thanks,

                Comment


                  #9
                  It turns out, there is actually a SmartClient bug here - or at least, an unexpected behavior we can replicate fairly easily with TreeGrid in IE9 with your META tag (or with the html5 doctype) - we're taking a look and will update this thread when there's something to update it with.

                  Comment


                    #10
                    Great. Thanks for the heads up. I'll be waiting for this one. Thanks!

                    Comment


                      #11
                      Sorry to re-activate this again. My management is asking me for an ETA ? Any idea on the complexity around an eventual fix ?

                      Thanks,

                      Comment


                        #12
                        The issue has been addressed in 8.3d today and will be ported to 8.2p shortly - it should be in before the weekend.

                        Comment


                          #13
                          Great!

                          With this fix, should I be able to put back my <META> tag ?

                          Please advise when it has been back ported to 8.2p and ready for my to download/upgrade.

                          Thanks,
                          Last edited by yavery; 5 Apr 2012, 04:34.

                          Comment


                            #14
                            We've now ported this to the 8.2 branch, so the change should show up in the next nightly build (April 6 or greater).

                            We believe the META tag will be able to be present again with this fix.
                            Please let us know if you do continue to encounter problems

                            Thanks
                            Isomorphic Software

                            Comment


                              #15
                              Hi,

                              Using the 8.2p LGPL from 4/9/2012, the issue with TreeGrid selections seem to now be gone when
                              I put back my META tag, but there are other remaining styling issues ...

                              For example, when the META tag is not there, everything works fine and when I put it in,
                              I have the following issues :

                              - A SelectItem marked as required = true will render its body in BOLD (not only its title)
                              - When there are validation errors, the validation icon aligns to the top

                              I've included different screen shots (see attachments) to show these issues. I've included the following :

                              - IE8 screen captures with our custom skin and META tag present (bad)
                              - IE8 screen captures with Enterprise skin and META tag present (bad)
                              - IE8 screen captures with our custom skin and no META tag present (all good)
                              - IE8 screen captures with Enterprise skin and no META tag present (all good)

                              So the issue does seem to be related with the presence of this META tag under either IE8 or IE9 ... We
                              need this META tag because we want to make sure IE9 renders using full IE9 capabilities as some
                              other parts of our app rely on this ...

                              Code:
                              <META HTTP-EQUIV="X-UA-Compatible" CONTENT="IE=9" />
                              Any idea why this is happening ?

                              Thanks,
                              Attached Files

                              Comment

                              Working...
                              X