[Laszlo-checkins] r13187 - in openlaszlo/branches/4.2: . lps/components/base

ptw@openlaszlo.org ptw at openlaszlo.org
Thu Mar 5 11:12:50 PST 2009


Author: ptw
Date: 2009-03-05 11:12:49 -0800 (Thu, 05 Mar 2009)
New Revision: 13187

Modified:
   openlaszlo/branches/4.2/
   openlaszlo/branches/4.2/lps/components/base/baselist.lzx
Log:
Merged revisions 13186 via svnmerge from 
http://svn.openlaszlo.org/openlaszlo/trunk

.......
  r13186 | ptw | 2009-03-05 13:50:51 -0500 (Thu, 05 Mar 2009) | 25 lines
  
  Change 20090305-ptw-g by ptw at dueling-banjos.home on 2009-03-05 09:56:18 EST
      in /Users/ptw/OpenLaszlo/trunk-3
      for http://svn.openlaszlo.org/openlaszlo/trunk
  
  Summary: Make shift-arrow extend list selection
  
  Bugs Fixed: LPP-7768  List range (shift) selection should be similar to other standards
  
  Technical Reviewer: a.bargull at intensis.de,hminsky (pending,Message-ID: <8c61fad60903050938g6a0774c6i555e87919dec0d78 at mail.gmail.com>)
  QA Reviewer: antun (pending)
  
  Details:
      Be careful to keep the current item highlited after you may a
      keyboard selection.  If the hilight is lost, restore it to the
      last selected item for keyboard navigation.  If you navigate with
      the arrow key and rangeSelect key, extend the selection.
  
      NOTE: this does _not_ address LPP-798.  That will be addressed at
      a later date.
  
  Tests:
      Fiddle around with the multi-select list example and be pleased by
      how it works.
.......



Property changes on: openlaszlo/branches/4.2
___________________________________________________________________
Name: svnmerge-integrated
   - /openlaszlo/branches/4.1:1-10153 /openlaszlo/branches/devildog:1-8432 /openlaszlo/branches/pagan-deities:1-7955,8825,10756-10920,10922-10928,10930-10935,11151,11207,11554 /openlaszlo/branches/paperpie:1-6504,6506-6574,6576-7135,7137-7235 /openlaszlo/branches/wafflecone:1-5746,5818-6068,6070-6205,6207-6213,6216-6265,6267-6368,6370-6431,6433-6450,6497,6509,6661,7097,7872 /openlaszlo/trunk:1-12154,12172-12175,12177-12185,12187-12194,12196,12201,12208,12229,12251-12252,12254-12255,12257-12258,12260,12262-12266,12268-12269,12271-12275,12278-12285,12303,12318-12323,12340-12348,12352,12354-12358,12360-12361,12363,12365-12367,12369-12371,12375-12378,12380-12389,12391,12394-12396,12399-12400,12402-12403,12406-12416,12419-12422,12424-12429,12431-12433,12435,12437-12441,12443,12445,12447,12449-12451,12453-12454,12457-12460,12464,12466-12475,12477-12480,12482-12490,12493-12495,12499-12502,12507-12510,12512,12514-12520,12522,12525-12531,12534-12540,12542,12545,12548-12554,12557-12561,12564,12566-12568,12571,12574-12576,12578,12580,12583-12584,12586-12587,12589,12592-12596,12598-12600,12602-12609,12611-12615,12617,12619-12621,12623,12625,12628-12631,12633-12635,12637,12639,12642,12644,12647-12653,12656,12658,12660,12662-12666,12668-12694,12696,12698-12704,12708-12710,12712-12721,12723-12729,12731-12742,12745-12752,12754-12784,12786-12791,12793-12798,12800-12801,12803,12805-12808,12810-12812,12814,12816-12821,12825-12833,12835-12837,12839-12841,12847,12849-12850,12852-12859,12863-12883,12885-12895,12897-12906,12908-12915,12917-12922,12924-12934,12937-12940,12943-12944,12946-12947,12950-12952,12955-12964,12966-12969,12971,12973-12977,12979-12993,12997-12999,13001-13003,13006-13007,13010-13015,13017-13020,13022-13024,13026-13031,13033,13035-13037,13039-13040,13043,13046-13052,13055-13060,13062-13069,13071-13072,13074,13076-13085,13087-13093,13095-13101,13103-13104,13106,13108-13110,13112,13114-13120,13122,13125-13126,13129,13132-13136,13139-13140,13142,13147,13157-13158,13163,13167,13176
   + /openlaszlo/branches/4.1:1-10153 /openlaszlo/branches/devildog:1-8432 /openlaszlo/branches/pagan-deities:1-7955,8825,10756-10920,10922-10928,10930-10935,11151,11207,11554 /openlaszlo/branches/paperpie:1-6504,6506-6574,6576-7135,7137-7235 /openlaszlo/branches/wafflecone:1-5746,5818-6068,6070-6205,6207-6213,6216-6265,6267-6368,6370-6431,6433-6450,6497,6509,6661,7097,7872 /openlaszlo/trunk:1-12154,12172-12175,12177-12185,12187-12194,12196,12201,12208,12229,12251-12252,12254-12255,12257-12258,12260,12262-12266,12268-12269,12271-12275,12278-12285,12303,12318-12323,12340-12348,12352,12354-12358,12360-12361,12363,12365-12367,12369-12371,12375-12378,12380-12389,12391,12394-12396,12399-12400,12402-12403,12406-12416,12419-12422,12424-12429,12431-12433,12435,12437-12441,12443,12445,12447,12449-12451,12453-12454,12457-12460,12464,12466-12475,12477-12480,12482-12490,12493-12495,12499-12502,12507-12510,12512,12514-12520,12522,12525-12531,12534-12540,12542,12545,12548-12554,12557-12561,12564,12566-12568,12571,12574-12576,12578,12580,12583-12584,12586-12587,12589,12592-12596,12598-12600,12602-12609,12611-12615,12617,12619-12621,12623,12625,12628-12631,12633-12635,12637,12639,12642,12644,12647-12653,12656,12658,12660,12662-12666,12668-12694,12696,12698-12704,12708-12710,12712-12721,12723-12729,12731-12742,12745-12752,12754-12784,12786-12791,12793-12798,12800-12801,12803,12805-12808,12810-12812,12814,12816-12821,12825-12833,12835-12837,12839-12841,12847,12849-12850,12852-12859,12863-12883,12885-12895,12897-12906,12908-12915,12917-12922,12924-12934,12937-12940,12943-12944,12946-12947,12950-12952,12955-12964,12966-12969,12971,12973-12977,12979-12993,12997-12999,13001-13003,13006-13007,13010-13015,13017-13020,13022-13024,13026-13031,13033,13035-13037,13039-13040,13043,13046-13052,13055-13060,13062-13069,13071-13072,13074,13076-13085,13087-13093,13095-13101,13103-13104,13106,13108-13110,13112,13114-13120,13122,13125-13126,13129,13132-13136,13139-13140,13142,13147,13157-13158,13163,13167,13176,13186

Modified: openlaszlo/branches/4.2/lps/components/base/baselist.lzx
===================================================================
--- openlaszlo/branches/4.2/lps/components/base/baselist.lzx	2009-03-05 18:50:51 UTC (rev 13186)
+++ openlaszlo/branches/4.2/lps/components/base/baselist.lzx	2009-03-05 19:12:49 UTC (rev 13187)
@@ -137,9 +137,22 @@
         <method name="_dokeydown" args="kc">
             <![CDATA[
             /* select item on 'space' key */
-            if (kc == 32 && this._hiliteview is lz.view && this._hiliteview.enabled) {
-               this._hiliteview.setAttribute('selected', true);
-              // this._hiliteview.setHilite(false);
+            var s = this._hiliteview;
+
+            if (s == null) {
+                s = getSelection();
+                // [2009-03-05 ptw] If you lost the highlight because
+                // you extended the selection, you want to pick up from
+                // there
+                if (this.multiselect) s = s[s.length - 1];
+            }
+
+            if (kc == 32) {
+               if (s is lz.view && s.enabled) {
+                 s.setAttribute('selected', true);
+                 // [2009-03-05 ptw] Don't lose the hilite because you selected
+                 s.setHilite(true);
+               }
                return;
             }
 
@@ -149,13 +162,6 @@
             */
             if (kc >= 37 && kc <= 40) {
                 this.setAttribute( 'doesenter', true );
-                var s = this._hiliteview;
-
-                if (s == null) {
-                    s = getSelection();
-                    if (this.multiselect) s = s[0];
-                }
-
                 var next;
                 if (kc == 39  || kc == 40) {
                     next = _selector.getNextSubview(s);
@@ -163,9 +169,13 @@
                 if (kc == 37  || kc == 38) {
                     next = _selector.getNextSubview(s, -1);
                 }
-                if (  this._hiliteview != 0 && this._hiliteview is lz.view  ) {
-                    this._hiliteview.setHilite(false);
+                if ( s is lz.view  ) {
+                    s.setHilite(false);
                 }
+                // If shift is down, extend the selection
+                if (next.enabled && _selector.isRangeSelect(next)) {
+                  next.setAttribute('selected', true);
+                }
                 next.setHilite(true);
                 this._hiliteview = next;
              }
@@ -490,7 +500,7 @@
     </class>
 </library>
 <!-- * X_LZ_COPYRIGHT_BEGIN ***************************************************
-* Copyright 2001-2008 Laszlo Systems, Inc.  All Rights Reserved.              *
+* Copyright 2001-2009 Laszlo Systems, Inc.  All Rights Reserved.              *
 * Use is subject to license terms.                                            *
 * X_LZ_COPYRIGHT_END ****************************************************** -->
 <!-- @LZX_VERSION@                                                         -->



More information about the Laszlo-checkins mailing list