[Laszlo-checkins] r10860 - in openlaszlo/trunk/demos/lzpixmobile: . classes lib resources views

jcrowley@openlaszlo.org jcrowley at openlaszlo.org
Wed Sep 3 09:45:33 PDT 2008


Author: jcrowley
Date: 2008-09-03 09:45:03 -0700 (Wed, 03 Sep 2008)
New Revision: 10860

Added:
   openlaszlo/trunk/demos/lzpixmobile/classes/buddyicon.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/dataman.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/footerbutton.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/library.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/md5.js
   openlaszlo/trunk/demos/lzpixmobile/classes/mobilescroller.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/optionsbutton.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/photo.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/search.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/taglink.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/test/
   openlaszlo/trunk/demos/lzpixmobile/lib/hintedlayout.lzx
   openlaszlo/trunk/demos/lzpixmobile/lib/library.lzx
   openlaszlo/trunk/demos/lzpixmobile/lib/navmanager.lzx
   openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-bkgnd.png
   openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-mdown.png
   openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-mover.png
   openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-mup.png
   openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-separator.png
   openlaszlo/trunk/demos/lzpixmobile/resources/hdr-bkgnd.png
   openlaszlo/trunk/demos/lzpixmobile/resources/header-button-mup.png
   openlaszlo/trunk/demos/lzpixmobile/resources/icon-grid4.png
   openlaszlo/trunk/demos/lzpixmobile/resources/icon-grid9.png
   openlaszlo/trunk/demos/lzpixmobile/resources/icon-header.png
   openlaszlo/trunk/demos/lzpixmobile/resources/icon-pagedown.png
   openlaszlo/trunk/demos/lzpixmobile/resources/icon-pageleft.png
   openlaszlo/trunk/demos/lzpixmobile/resources/icon-pageright.png
   openlaszlo/trunk/demos/lzpixmobile/resources/icon-pageup.png
   openlaszlo/trunk/demos/lzpixmobile/resources/logo.png
   openlaszlo/trunk/demos/lzpixmobile/resources/option-bkgnd.png
   openlaszlo/trunk/demos/lzpixmobile/resources/option-button-mdown.png
   openlaszlo/trunk/demos/lzpixmobile/resources/option-button-mover.png
   openlaszlo/trunk/demos/lzpixmobile/resources/option-button-mup.png
   openlaszlo/trunk/demos/lzpixmobile/resources/resources.lzx
   openlaszlo/trunk/demos/lzpixmobile/resources/taglink_icon.gif
   openlaszlo/trunk/demos/lzpixmobile/resources/taglink_icon2.gif
   openlaszlo/trunk/demos/lzpixmobile/views/clips.lzx
   openlaszlo/trunk/demos/lzpixmobile/views/photodetails.lzx
Removed:
   openlaszlo/trunk/demos/lzpixmobile/classes/albumlayout.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/buddyicon.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/classes.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/clipboard.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/clipboardinterior.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/dataman.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/draggedphotos.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/favorites.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/footerbutton.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/library.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/linkbutton.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/md5.js
   openlaszlo/trunk/demos/lzpixmobile/classes/mobilescroller.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/notes.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/optionsbutton.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/optionsmenuitem.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/photo.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/photocollection.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/pivotlayout.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/search.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/spinner.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/taglink.lzx
   openlaszlo/trunk/demos/lzpixmobile/classes/test/
   openlaszlo/trunk/demos/lzpixmobile/data/
   openlaszlo/trunk/demos/lzpixmobile/lib/hintedlayout.lzx
   openlaszlo/trunk/demos/lzpixmobile/lib/library.lzx
   openlaszlo/trunk/demos/lzpixmobile/lib/navmanager.lzx
   openlaszlo/trunk/demos/lzpixmobile/resources/arrowhelp.png
   openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-bkgnd.png
   openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-mdown.png
   openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-mover.png
   openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-mup.png
   openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-separator.png
   openlaszlo/trunk/demos/lzpixmobile/resources/hdr-bkgnd.png
   openlaszlo/trunk/demos/lzpixmobile/resources/header-button-mup.png
   openlaszlo/trunk/demos/lzpixmobile/resources/icon-grid4.png
   openlaszlo/trunk/demos/lzpixmobile/resources/icon-grid9.png
   openlaszlo/trunk/demos/lzpixmobile/resources/icon-header.png
   openlaszlo/trunk/demos/lzpixmobile/resources/icon-pageleft.png
   openlaszlo/trunk/demos/lzpixmobile/resources/icon-pageright.png
   openlaszlo/trunk/demos/lzpixmobile/resources/logo.png
   openlaszlo/trunk/demos/lzpixmobile/resources/main.lzx
   openlaszlo/trunk/demos/lzpixmobile/resources/option-bkgnd.png
   openlaszlo/trunk/demos/lzpixmobile/resources/option-button-mdown.png
   openlaszlo/trunk/demos/lzpixmobile/resources/option-button-mover.png
   openlaszlo/trunk/demos/lzpixmobile/resources/option-button-mup.png
   openlaszlo/trunk/demos/lzpixmobile/resources/resources.lzx
   openlaszlo/trunk/demos/lzpixmobile/resources/taglink_icon.gif
   openlaszlo/trunk/demos/lzpixmobile/resources/taglink_icon2.gif
   openlaszlo/trunk/demos/lzpixmobile/views/clips.lzx
   openlaszlo/trunk/demos/lzpixmobile/views/optionsmenu.lzx
   openlaszlo/trunk/demos/lzpixmobile/views/photodetails.lzx
Modified:
   openlaszlo/trunk/demos/lzpixmobile/main.lzx
Log:
Change 20080903-laszlo-8 by laszlo at T43-L3XEXMW on 2008-09-03 04:21:13 EDT
    in /home/laszlo/src/svn/openlaszlo/trunk-ocelot
    for http://svn.openlaszlo.org/openlaszlo/trunk

Summary: Check in the latest LzPix Mobile into trunk

New Features:

Bugs Fixed: LPP-6915 - Check in the latest LzPix Mobile into trunk

Technical Reviewer: promanik
QA Reviewer: max
Doc Reviewer: (pending)

Documentation:

Release Notes:

Details: This is the latest revision of LzPix Mobile,
    updated to Eloo's specifications.  (They needed it
    to work with 4.0.)  David wanted me to check this
    into trunk.  Many issues have been fixed (see fix
    version LzPix Mobile, which covers many of the bugs
    I fixed).  I also cleaned out all the unused files
    and removed offline functionality.
    
    While I was getting this all ready to check into
    trunk, I figured I'd get it working under SWF9.  It
    does, now, for the most part, with a handful of
    little issues here and there.  (For instance, for
    some reason, it's only displaying eight images
    instead of the nine you get under SWF8 and DHTML.)
    I'll go through with a QA pass tomorrow and file
    the various bugs I find.

Tests: Run LzPix Mobile in SWF8, SWF9 and DHTML.  It
    should now actually function as you'd expect, and
    compile under each runtime.  Compare it to the
    unmodified version of LzPix Mobile, which currently
    barely works the last time I checked.  (e.g. No
    matter what image you click, it always only selects
    the first one.)
    
    (I'm not entirely sure I worked all the SVN stuff
    right, since I had to do a lot of swapping out of
    files and directories.  If it doesn't work, let me
    know and I'll try to fix it.)



Deleted: openlaszlo/trunk/demos/lzpixmobile/classes/albumlayout.lzx

Deleted: openlaszlo/trunk/demos/lzpixmobile/classes/buddyicon.lzx

Added: openlaszlo/trunk/demos/lzpixmobile/classes/buddyicon.lzx


Property changes on: openlaszlo/trunk/demos/lzpixmobile/classes/buddyicon.lzx
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Deleted: openlaszlo/trunk/demos/lzpixmobile/classes/classes.lzx

Deleted: openlaszlo/trunk/demos/lzpixmobile/classes/clipboard.lzx

Deleted: openlaszlo/trunk/demos/lzpixmobile/classes/clipboardinterior.lzx

Deleted: openlaszlo/trunk/demos/lzpixmobile/classes/dataman.lzx

Added: openlaszlo/trunk/demos/lzpixmobile/classes/dataman.lzx


Property changes on: openlaszlo/trunk/demos/lzpixmobile/classes/dataman.lzx
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Deleted: openlaszlo/trunk/demos/lzpixmobile/classes/draggedphotos.lzx

Deleted: openlaszlo/trunk/demos/lzpixmobile/classes/favorites.lzx

Deleted: openlaszlo/trunk/demos/lzpixmobile/classes/footerbutton.lzx

Added: openlaszlo/trunk/demos/lzpixmobile/classes/footerbutton.lzx


Property changes on: openlaszlo/trunk/demos/lzpixmobile/classes/footerbutton.lzx
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Deleted: openlaszlo/trunk/demos/lzpixmobile/classes/library.lzx

Added: openlaszlo/trunk/demos/lzpixmobile/classes/library.lzx


Property changes on: openlaszlo/trunk/demos/lzpixmobile/classes/library.lzx
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Deleted: openlaszlo/trunk/demos/lzpixmobile/classes/linkbutton.lzx

Deleted: openlaszlo/trunk/demos/lzpixmobile/classes/md5.js

Added: openlaszlo/trunk/demos/lzpixmobile/classes/md5.js


Property changes on: openlaszlo/trunk/demos/lzpixmobile/classes/md5.js
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Deleted: openlaszlo/trunk/demos/lzpixmobile/classes/mobilescroller.lzx

Added: openlaszlo/trunk/demos/lzpixmobile/classes/mobilescroller.lzx


Property changes on: openlaszlo/trunk/demos/lzpixmobile/classes/mobilescroller.lzx
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Deleted: openlaszlo/trunk/demos/lzpixmobile/classes/notes.lzx

Deleted: openlaszlo/trunk/demos/lzpixmobile/classes/optionsbutton.lzx

Added: openlaszlo/trunk/demos/lzpixmobile/classes/optionsbutton.lzx


Property changes on: openlaszlo/trunk/demos/lzpixmobile/classes/optionsbutton.lzx
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Deleted: openlaszlo/trunk/demos/lzpixmobile/classes/optionsmenuitem.lzx

Deleted: openlaszlo/trunk/demos/lzpixmobile/classes/photo.lzx

Added: openlaszlo/trunk/demos/lzpixmobile/classes/photo.lzx


Property changes on: openlaszlo/trunk/demos/lzpixmobile/classes/photo.lzx
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Deleted: openlaszlo/trunk/demos/lzpixmobile/classes/photocollection.lzx

Deleted: openlaszlo/trunk/demos/lzpixmobile/classes/pivotlayout.lzx

Deleted: openlaszlo/trunk/demos/lzpixmobile/classes/search.lzx

Added: openlaszlo/trunk/demos/lzpixmobile/classes/search.lzx


Property changes on: openlaszlo/trunk/demos/lzpixmobile/classes/search.lzx
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Deleted: openlaszlo/trunk/demos/lzpixmobile/classes/spinner.lzx

Deleted: openlaszlo/trunk/demos/lzpixmobile/classes/taglink.lzx

Added: openlaszlo/trunk/demos/lzpixmobile/classes/taglink.lzx


Property changes on: openlaszlo/trunk/demos/lzpixmobile/classes/taglink.lzx
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Deleted: openlaszlo/trunk/demos/lzpixmobile/lib/hintedlayout.lzx

Added: openlaszlo/trunk/demos/lzpixmobile/lib/hintedlayout.lzx


Property changes on: openlaszlo/trunk/demos/lzpixmobile/lib/hintedlayout.lzx
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Deleted: openlaszlo/trunk/demos/lzpixmobile/lib/library.lzx

Added: openlaszlo/trunk/demos/lzpixmobile/lib/library.lzx


Property changes on: openlaszlo/trunk/demos/lzpixmobile/lib/library.lzx
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Deleted: openlaszlo/trunk/demos/lzpixmobile/lib/navmanager.lzx

Added: openlaszlo/trunk/demos/lzpixmobile/lib/navmanager.lzx


Property changes on: openlaszlo/trunk/demos/lzpixmobile/lib/navmanager.lzx
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Modified: openlaszlo/trunk/demos/lzpixmobile/main.lzx
===================================================================
--- openlaszlo/trunk/demos/lzpixmobile/main.lzx	2008-09-03 16:28:55 UTC (rev 10859)
+++ openlaszlo/trunk/demos/lzpixmobile/main.lzx	2008-09-03 16:45:03 UTC (rev 10860)
@@ -3,113 +3,140 @@
 * Copyright 2001-2008 Laszlo Systems, Inc.  All Rights Reserved.          *
 * Use is subject to license terms.                                        *
 * X_LZ_COPYRIGHT_END ******************************************************-->
+<canvas  width="240" height="320" proxied="true" title="LzPix Mobile">
 
-<canvas  width="1000" height="320" proxied="true" title="LzPix Mobile">
-
     <!-- resources -->
     <include href="resources/resources.lzx" />
-    
+
     <!-- classes -->
-    <include href="lib/" />    
-    <include href="classes/" />    
-    
-    <!-- attributes -->
-    <attribute name="ismobile"  value="true" />
-    
-    <!-- a flag used to restrict access only to local files -->
-    <attribute name="isoffline" value="false" />
+    <include href="lib/" />
+    <include href="classes/" />
 
-    
     <!-- VIEWS -->
-    
+
     <!-- container: this view is setup to match the canvas size
                     unless the canvas size is smaller than 240x320 -->
-    <view name="container" id="container" bgcolor="0x000000" 
-          width="${Math.min(parent.width,240)}" 
+    <view name="container" id="container" bgcolor="0x000000"
+          width="${Math.min(parent.width,240)}"
           height="${Math.max(parent.height,320)}" clip="true">
 
         <attribute name="lastphoto" value="null" />
         <attribute name="details" value="false" />
-    
+
         <method name="showDetails" args="screen">
-            if ( this.details ) {
-                this.hideDetails();
+            <![CDATA[
+            if ( this.details && clips.visible == false) {
+                this.hideDetails(false);
             } else {
                 // assign lastphoto to details screen
                 photodetails.setPhoto( this.lastphoto );
 
                 // animate to details screen
                 footer.showTools( false );
+                footer.showArrowHelp(true);
                 this.content.hideanim.doStart();
-                photodetails.showDetails( screen );             
+                photodetails.showDetails( screen );
                 if ( !photodetails.visible ) photodetails.showanim.doStart()
             }
             this.details = true;
+            ]]>
         </method>
-        
-        <method name="hideDetails">
+
+        <method name="hideDetails" args="searched">
+            <![CDATA[
             if (! this.details) return;
             this.content.showanim.doStart();
             photodetails.hideanim.doStart();
+            footer.showDetailTools(false);
+            footer.showArrowHelp(false);
             footer.showTools( true );
-            navmanager.focus( this.lastphoto ) ;
+            gContent.setAttribute('y', this.header.height + 10);
+            if(typeof searched == 'undefined' || !searched){
+                canvas.highlight.show(this.lastphoto, 0);
+                navmanager.focus( this.lastphoto, false ) ;
+            }
             this.details = false;
+            ]]>
         </method>
 
         <!-- content: only contains the collection of photos from a flickr serach -->
-        <view name="content" id="gContent" x="10" 
-              width="${parent.width - 20}" 
-              height="${parent.height - 120}" 
-              y="${parent.header.height + 10}"  
-              datapath="photods:/rsp/photos">  
-              
+        <view name="content" id="gContent" x="10"
+              width="${parent.width - 20}"
+              height="${parent.height - 120}"
+              y="${parent.header.height + 10}"
+              datapath="photods:/rsp/photos">
+
             <attribute name="start" value="0" type="number" />
             <attribute name="pagesize" value="9" type="number" />
             <attribute name="length" value="0" type="number" />
             <attribute name="scale" value="100" type="number"/>
+            <attribute name="firstrun" type="boolean" value="true"/>
+            <attribute name="showimage" type="boolean" value="false"/>
+            <attribute name="didzoom" type="boolean" value="false"/>
             <animator name="showanim" attribute="opacity" to="1" duration="300" start="false" onstart="parent.setAttribute('visible', true)"/>
             <animator name="hideanim" attribute="opacity" to="0" duration="300" start="false" onstop="parent.setAttribute('visible', false)"/>
             <animator name="zoominanim" attribute="scale" to="170" duration="300" start="false" onstop="parent.update()"/>
             <animator name="zoomoutanim" attribute="scale" to="100" duration="300" start="false" onstop="parent.update()"/>
-            <animator name="leftanim" attribute="x" to="${- this.parent.width}" duration="300" start="false" onstop="parent.update()"/>
-            <animator name="rightanim" attribute="x" to="${this.parent.width}" duration="300" start="false" onstop="parent.update()"/>
+            <animator name="leftanim" attribute="x" to="${- this.parent.width - 45}" duration="300" start="false" onstop="parent.update()"/>
+            <animator name="rightanim" attribute="x" to="${this.parent.width + 25}" duration="300" start="false" onstop="parent.update()"/>
             <hintedlayout name="lay" xspacing="28" yspacing="20"/>
-            <replicator name="repl">
-                <photo width="${54 * gContent.scale * .01}">
-                    <handler name="onfocused" >
-                        container.setAttribute('lastphoto', this);
-                        header_txt.setText( this.text );
-                    </handler>
-                    <handler name="onmouseup" >
-                        container.showDetails( 'photo' )
-                    </handler>
-                </photo>
-            </replicator>
+            <photo width="${54 * gContent.scale * .01}" name="repl" datapath="photo[1-9]">
+                <handler name="onfocused" >
+                    container.setAttribute('lastphoto', this);
+                    header_txt.setText( this.text );
+                </handler>
+                <handler name="onmousedown">
+                    canvas.highlight.show(this, 0);
+                    container.setAttribute('lastphoto', this);
+                    header_txt.setText(this.text);
+                </handler>
+                <handler name="onmouseup" >
+                    container.showDetails( 'photo' );
+                </handler>
+                <handler name="ondata">
+                    <![CDATA[
+                    //Select the first image, but only do it if this is after startup.
+                    if(parent.lay.first == this && parent.subviews[0] == this && parent.firstrun == true){
+                        navmanager.focus(this, false);
+                        parent.setAttribute('firstrun', false);
+                    }
+                    ]]>
+                </handler>
+            </photo>
 
             <method name="zoomin">
+                this.setAttribute('didzoom', true);
+                canvas.highlight.hide();
                 this.pagesize = 4;
-                this.zoominanim.doStart()
+                this.zoominanim.doStart();
             </method>
             <method name="zoomout">
+                this.setAttribute('didzoom', true);
+                canvas.highlight.hide();
                 this.pagesize = 9;
-                this.zoomoutanim.doStart()
+                this.zoomoutanim.doStart();
             </method>
             <method name="forward">
-                var s = this.start + this.pagesize;
-                if (s > this.length - 1) s = this.length - 1;
-                if (s != this.start) {
-                    this.start = s;
-                    this.leftanim.doStart();
+                if(clips.visible != true){
+                    navmanager.focus(footforward, false);
+                    var s = this.start + this.pagesize;
+                    if (s > this.length - 1) s = this.length - 1;
+                    if (s != this.start) {
+                        this.start = s;
+                        this.leftanim.doStart();
+                    }
                 }
             </method>
-            
             <method name="back">
                 <![CDATA[
-                var s = this.start - this.pagesize;
-                if (s < 0) s = 0;
-                if (s != this.start) {
-                    this.start = s;
-                    this.rightanim.doStart();
+                if(clips.visible != true){
+                    navmanager.focus(footback, false);
+                    var s = this.start - this.pagesize;
+                    if (s < 0) s = 0;
+                    if (s != this.start) {
+                        this.start = s;
+                        this.rightanim.doStart();
+                    }
                 }
                 ]]>
             </method>
@@ -117,186 +144,362 @@
             <handler name="ondata">
                 // listen for photos from gdataman
                 this.start = 0;
-                this.update();
-                navmanager.focus(lay.first);
+                this.update(0);
+                navmanager.focus(lay.first, false);
             </handler>
 
             <method name="update" args="start">
                 <![CDATA[
                 this.setX(10);
-                c = this.datapath.xpathQuery('photo');
+                var c = this.datapath.xpathQuery('photo');
                 this.length = c.length;
                 if (this.length) {
                     c = c.splice(this.start, this.pagesize);
-                    this.repl.setNodes(c);
+                    var dpstring = 'photods:/rsp/photos/photo['+(this.start+1)+'-'+(this.start+this.pagesize)+']';
+                    this.repl.setAttribute('datapath', dpstring);
                 }
                 header_txt.setText('loading page ' + (Math.floor(this.start / this.pagesize) + 1) + ' of ' + (Math.floor(this.length / this.pagesize) + 1))
-                lay.update();
+                lay.doupdate(null);
+                if(this.didzoom == true && typeof container.lastphoto != 'undefined'){
+                    if(container.lastphoto.visible == true){
+                        canvas.highlight.show(container.lastphoto, 0);
+                        navmanager.refocus(container.lastphoto, false);
+                    } else {
+                        navmanager.focus(lay.first, false);
+                    }
+                    this.setAttribute('didzoom', false);
+                }
                 ]]>
             </method>
-        </view>  
-        
+        </view>
+
         <include href="views/photodetails.lzx" />
-        
+
         <!-- header -->
         <view name="header" width="${parent.width}"  >
             <view name="label" id="header_label" bgcolor="0xbac0f8" width="100%" height="44"  />
             <text name="txt" id="header_txt" width="100%" x="4" y="26"/>
-            
-            <search name="searchbox" id="sbox" width="100%" height="20" x="0">
-            </search>
 
+            <search name="searchbox" id="sbox" width="100%" height="20" x="0"/>
+
             <view name="bkgnd" resource="hdr_bkgnd_rsc" stretches="width" width="100%" />
-            <view name="logo"  resource="logo_rsc" x="4" y="3" /> 
-            <optionsbutton name="searchbtn" text="Search Flickr" x="${parent.width - width}" width="90" y="2" onclick="parent.searchbox.toggle()"/>
-            
+            <view name="logo"  resource="logo_rsc" x="4" y="3" />
+            <optionsbutton name="searchbtn" text="Search Flickr" x="${parent.width - width}" width="90"
+                y="2" onclick="parent.searchbox.toggle()">
+                <method name="handlekeydown" args="k" >
+                    <![CDATA[
+                    // Prevents the cursor from focusing on anything above the frame.
+                    switch( k ) {
+                        case 38: // up arrow
+                            navmanager.focus(this, false);
+                            return true;
+                        case 37: // left arrow
+                            navmanager.focus(this, false);
+                            return true;
+                        default:
+                            return false;    
+                    }
+                    ]]>
+                </method>
+            </optionsbutton>
         </view>
-            
+
         <!-- footer -->
         <view name="footer" id="footer" width="100%" y="${parent.height - height}"  >
             <attribute name="toolsheight" value="31" />
-            <attribute name="istools" value="true" />
-            
-            <view name="arrowhelp" bgcolor="0xbac0f8" height="18" width="${parent.width}" >
-                <view resource="arrowhelp_rsc" x="${parent.width - width}" />
+
+            <view name="arrowhelp" bgcolor="0xbac0f8" height="$once{parent.toolsheight}" width="${parent.width}"
+                  visible="false">
+                <animator name="showanim" attribute="height" to="${footer.toolsheight}" duration="300" start="false" onstart="parent.setAttribute('visible', true)"/>
+                <animator name="hideanim" attribute="height" to="0" duration="300" start="false" onstop="parent.setAttribute('visible', false)"/>
+                <simplelayout axis="x"/>
+                <footerbutton name="cl" text="Clips" width="60">
+                    <handler name="onmouseup">
+                        clips.setAttribute('visible', true);
+                        clips.open_anm.doStart();
+                        highlight.hide();
+                    </handler>
+                </footerbutton>
+                <footerbutton name="atc" text="Add to Clips" width="90">
+                    <handler name="onmouseup">
+                        clipdrop.drop_in();
+                    </handler>
+                </footerbutton>
+                <footerbutton name="si" id="si" text="Info" width="45">
+                    <handler name="onmouseup">
+                        if(photodetails.visible){
+                            if(navmanager.focused.id == "fullview" || navmanager.focused.id == "clipsmainbtn" ||
+                                  navmanager.focused.id == this.id){
+                                footer.showArrowHelp(false);
+                                footer.showDetailTools(true);
+                                photodetails.showDetails('info');
+                                mscroll.setAttribute('currentpage', 0);
+                                navmanager.focus(footer.detailtools.nx, false);
+                            } else {
+                                photodetails.showDetails('photo');
+                            }
+                        } else {
+                            photodetails.showDetails('photo');
+                        }
+                    </handler>
+                </footerbutton>
+                <footerbutton name="bk" text="Back" width="45">
+                    <handler name="onmouseup">
+                        <![CDATA[
+                        container.hideDetails(false);
+                        var gotmatch = false;
+                        if(container.lastphoto.parent.parent == clips){
+                            for(var i = 0; i < gContent.subviews.length; i++){
+                                if(gContent.subviews[i].lasturl == container.lastphoto.lasturl){
+                                    container.lastphoto = gContent.subviews[i];
+                                    gotmatch = true;
+                                }
+                            }
+                            if(gotmatch != true){
+                                container.lastphoto = gContent.subviews[0];
+                            }
+                        }
+                        canvas.highlight.show(container.lastphoto, 0);
+                        navmanager.focus(container.lastphoto, false);
+                        ]]>
+                    </handler>
+                </footerbutton>
             </view>
-            
+
             <view name="tools" width="100%" clip="true" height="$once{parent.toolsheight}"  >
                 <animator name="showanim" attribute="height" to="${footer.toolsheight}" duration="300" start="false" onstart="parent.setAttribute('visible', true)"/>
                 <animator name="hideanim" attribute="height" to="0" duration="300" start="false" onstop="parent.setAttribute('visible', false)"/>
                 <simplelayout  axis="x" />
-                <footerbutton  text="Clips" width="60" id="clipsmainbtn" 
-                               onmouseup="clips.setAttribute('visible',  true ); 
+                <footerbutton  text="Clips" width="60" id="clipsmainbtn"
+                               onmouseup="clips.setAttribute('visible', true );
                                           clips.open_anm.doStart();
                                           highlight.hide()" />
-                <footerbutton  width="60" iconresource="icon_grid4_rsc"     onmouseup="gContent.zoomin()"/>
-                <footerbutton  width="60" iconresource="icon_grid9_rsc"     onmouseup="gContent.zoomout()"/>
-                <footerbutton  width="30" iconresource="icon_pageleft_rsc"  onmouseup="gContent.back()"/>
-                <footerbutton  width="30" iconresource="icon_pageright_rsc" onmouseup="gContent.forward()"/>
+                <footerbutton  width="50" iconresource="icon_grid4_rsc"     onmouseup="gContent.zoomin()"/>
+                <footerbutton  width="50" iconresource="icon_grid9_rsc"     onmouseup="gContent.zoomout()"/>
+                <footerbutton  width="40" iconresource="icon_pageleft_rsc"  onmouseup="gContent.back()" id="footback"/>
+                <footerbutton  width="40" iconresource="icon_pageright_rsc" onmouseup="gContent.forward()" id="footforward"/>
             </view>
-            
-            <view width="100%" y="${Math.max(parent.tools.height,18)}" >
-                <simplelayout axis="x" />
-                <optionsbutton id="button_options" text="OPTIONS" width="${parent.width/2.0}" >
-                    <handler name="onclick" > <![CDATA[
-                        var isopen =  optionsmenu.visible;
-                        if ( isopen )  {
-                             optionsmenu.toggle( ); //close optionsmenu;
-                        } else {
-                            // now only show the optionsmenu if a photo is the focus or if the photodetails panel is already opened
-                            var fv = navmanager.focused;
-                            var photoISfocus =  fv instanceof lz.photo;
-                            var showoptionsmenu = true;                           
-                            
-                            if (  photodetails.visible )  {
-                                // assign the photo associated with the photodetails to the optionsMenu
-                                optionsmenu.setPhoto( container.lastphoto );
-                            } else if ( photoISfocus ) {
-                                // assign photo to optionsmenu AND photodetails
-                                optionsmenu.setPhoto( fv );
-                                photodetails.setPhoto( fv );
-                            
-                            } else {
-                                showoptionsmenu = false;
-                            }
-                                              
-                            // show the optionsmenu if allowed               
-                            if ( showoptionsmenu ) {
-                                optionsmenu.toggle( );
-                            }
-                         }
-                    ]]></handler>
-                </optionsbutton>
-                <optionsbutton id="button_exit" text="EXIT"  width="${parent.width/2.0}"  >
-                    <handler name="onclick" >
-                         Debug.write("button_exit","onclick");
+            <view name="detailtools" clip="true" height="0" width="${parent.width}" visible="false">
+                <animator name="showanim" attribute="height" to="${footer.toolsheight}" duration="300" start="false" onstart="parent.setAttribute('visible', true)"/>
+                <animator name="hideanim" attribute="height" to="0" duration="300" start="false" onstop="parent.setAttribute('visible', false)"/>
+                <simplelayout axis="x"/>
+                <footerbutton name="si" text="Show Image" width="95">
+                    <handler name="onmouseup">
+                        <![CDATA[
+                        photodetails.showDetails('photo');
+                        footer.showDetailTools( false );
+                        footer.showArrowHelp(true);
+                        canvas.highlight.show(si, 0);
+                        navmanager.focus(si, false);
+                        mscroll.setAttribute('currentpage', 0);
+                        ]]>
                     </handler>
-                </optionsbutton>
+                </footerbutton>
+                <footerbutton name="pr" id="pr" iconresource="icon_pageup_rsc" width="50">
+                    <handler name="onmousedown">
+                        canvas.highlight.show(this, 0);
+                    </handler>
+                    <handler name="onmouseup">
+                        <![CDATA[
+                        if(mscroll.currentpage > 0){
+                            mscroll.setAttribute('currentpage', mscroll.currentpage - 1);
+                            photodetails.container.setFocus();
+                            canvas.highlight.show(this, 0);
+                            navmanager.focus(this, false);
+                        }
+                        ]]>
+                    </handler>
+                    <method name="handlekeydown" args="k" >
+                        <![CDATA[
+                        switch( k ) {
+                            case 38: // up arrow
+                                this.onmouseup.sendEvent();
+                                return true;
+                            case 40: // down arrow
+                                nx.onmouseup.sendEvent();
+                                return true;
+                            default:
+                                return false;    
+                        }
+                        ]]>
+                    </method>
+                </footerbutton>
+                <footerbutton name="nx" id="nx" iconresource="icon_pagedown_rsc" width="50">
+                    <handler name="onmousedown">
+                        canvas.highlight.show(this, 0);
+                    </handler>
+                    <handler name="onmouseup">
+                        <![CDATA[
+                        if(mscroll.currentpage < mscroll.totalpages){
+                            mscroll.setAttribute('currentpage', mscroll.currentpage + 1);
+                            photodetails.container.setFocus();
+                        }
+                        canvas.highlight.show(this,0);
+                        navmanager.focus(this, false);
+                        ]]>
+                    </handler>
+                    <method name="handlekeydown" args="k" >
+                        <![CDATA[
+                        switch( k ) {
+                            case 38: // up arrow
+                                pr.onmouseup.sendEvent();
+                                return true;
+                            case 40: // down arrow
+                                this.onmouseup.sendEvent();
+                                return true;
+                            default:
+                                return false;    
+                        }
+                        ]]>
+                    </method>
+                </footerbutton>
+                <footerbutton name="bk" text="Back" width="45">
+                    <handler name="onmouseup">
+                        <![CDATA[
+                        container.hideDetails(false)
+                        ]]>
+                    </handler>
+                </footerbutton>
             </view>
-            
+
             <method name="showTools" args="show" >
                 if ( show ) {
-                    this.tools.showanim.doStart()
+                    this.tools.showanim.doStart();
                 } else {
                     this.tools.hideanim.doStart();
                 }
             </method>
+            <method name="showDetailTools" args="show" >
+                if ( show ) {
+                    this.detailtools.showanim.doStart();
+                } else {
+                    this.detailtools.hideanim.doStart();
+                }
+            </method>
+            <method name="showArrowHelp" args="show">
+                if ( show ) {
+                    this.arrowhelp.showanim.doStart();
+                } else {
+                    this.arrowhelp.hideanim.doStart();
+                }
+            </method>
         </view>
-    
+
     </view>
 
-    <include href="views/clips.lzx" />
-
-    <!-- the options menu is actiavted by the spacebar when demoing on a PC -->
-    <include href="views/optionsmenu.lzx" />
-    
-    
     <!-- HANDLERS AND METHODS -->
-    
-    <!-- canvas.setAttribute('ismobile',1) -->    
-    <handler name="onwidth" >
-        <![CDATA[
-        if ( width  <= 240 ) this.setAttribute('ismobile', true)
-        else this.setAttribute('ismobile', false);
-        ]]>
-    </handler>
 
-
-    <method name="handlekeydown" args="k" >
-        <![CDATA[
-        switch( k ) {
-            case 32: //spacebar key
-                button_options.onclick.sendEvent();
-                return true;
-            case 27: //esc key
-                button_exit.onclick.sendEvent();
-                return true;
-            default:
-                return false;    
-        }
-        ]]>
-    </method>
-
-
     <!-- hilite managed by navmanager -->
-    <drawview name="highlight" visible="false">
+    <drawview name="highlight" visible="false" width="0" height="0">
         <handler name="oncontext" method="redraw"/>
         <handler name="onwidth" method="redraw"/>
         <handler name="onheight" method="redraw"/>
-        <method name="redraw">
+        <method name="redraw" args="v">
             if (! this.context) return;
             this.strokeStyle = 0xffcc00;
             this.lineWidth = 4;
             this.clear();
-            this.beginPath()
-            this.rect(0, 0, this.width, this.height); 
+            this.beginPath();
+            this.rect(0, 0, this.width, this.height);
             this.stroke();
         </method>
-        <handler name="onfocused" reference="navmanager" method="show"/>
+        <handler name="onfocused" reference="navmanager" method="showdel"/>
         <method name="hide">
             this.setAttribute('visible', false);
         </method>
+        <method name="showdel" args="v">
+            this.show(v, null);
+        </method>
         <method name="show" args="v, speed">
+            <![CDATA[
+            // Use 0 for speed to eliminate animations.
             if (v == null) {
                 this.hide();
             } else {
-                if (speed == null) speed = 300
+                if (speed == null) speed = 150;
                 this.setAttribute('visible', true);
-                if ( v['getCanvasFocusRect'] ) f_rect = v.getCanvasFocusRect();
-                else  {
-                    f_rect = [ v.getAttributeRelative('x', canvas),
+                if ( v['getCanvasFocusRect'] ){
+                    var f_rect = v.getCanvasFocusRect();
+                } else {
+                    var f_rect = [ v.getAttributeRelative('x', canvas),
                             v.getAttributeRelative('y', canvas),
                             v.getAttributeRelative('width',canvas),
                             v.getAttributeRelative('height',canvas) ]
                 }
+                // Ensures that the rectangle isn't outside the canvas.
+                if(f_rect[0] < 0){
+                    f_rect[0] = 0;
+                }
+                if(f_rect[1] < 0){
+                    f_rect[1] = 0;
+                }
+                if(f_rect[2] + f_rect[0] > container.width){
+                    f_rect[2] = container.width - f_rect[0];
+                }
+                if(f_rect[3] + f_rect[1] > container.height){
+                    f_rect[3] = container.height - f_rect[1];
+                }
 
-                this.animate('x', f_rect[0] , speed);
-                this.animate('y', f_rect[1], speed);
-                this.animate('width', f_rect[2], speed);
-                this.animate('height', f_rect[3], speed);
+                if(speed == 0){
+                    this.setAttribute('x', f_rect[0]);
+                    this.setAttribute('y', f_rect[1]);
+                    this.setAttribute('width', f_rect[2]);
+                    this.setAttribute('height', f_rect[3]);
+                } else {
+                    this.animate('x', f_rect[0] , speed);
+                    this.animate('y', f_rect[1], speed);
+                    this.animate('width', f_rect[2], speed);
+                    this.animate('height', f_rect[3], speed);
+                }
             }
+            ]]>
         </method>
     </drawview>
     
+    <include href="views/clips.lzx" />
     
+    <photo id="clipdrop" width="${fullview.width}" height="${fullview.height}"
+        x="${fullview.x + photodetails.x}" y="${fullview.y + photodetails.y}" visible="false" opacity=".5">
+        <attribute name="to_x" type="number" value="0"/>
+        <attribute name="to_y" type="number" value="0"/>
+        <handler name="oninit">
+            this.intparent.setAttribute('visible', false);
+        </handler>
+        <method name="refresh">
+            this.setAttribute('visible', false);
+            this.intparent.setAttribute('visible', false);
+            this.setAttribute('width', fullview.width);
+            this.setAttribute('height', fullview.height);
+            this.setAttribute('x', fullview.x + photodetails.x);
+            this.setAttribute('y', fullview.y + photodetails.y);
+        </method>
+        <method name="drop_in">
+            var clength = clips.content.subviews.length;
+            this.setAttribute('opacity', .5);
+            this.setAttribute('visible', true);
+            this.intparent.setAttribute('visible', true);
+            if(clips.content.subviews[0].visible == false){
+                var cxpos = 0;
+            } else {
+                var cxpos = (clength % 3) * (54 + 28);
+            }
+            var cypos = Math.floor(clength / 3) * (54 + 20);
+            this.setAttribute('to_x', clips.x + clips.content.x + cxpos);
+            this.setAttribute('to_y', 150 + cypos);
+            clips.bringToFront();
+            this.bringToFront();
+            this.dropin.doStart();
+        </method>
+        <animatorgroup name="dropin" process="sequential" start="false" onstop="clipdrop.refresh(); clips.drop_shut.doStart()">
+            <animatorgroup name="shrink" process="simultaneous" start="false" onstop="clips.setAttribute('visible', true); clips.drop_open.doStart()">
+                <animator attribute="width" to="54" duration="700" start="false"/>
+                <animator attribute="x" to="${(container.width / 2) - 27}" duration="700" start="false"/>
+                <animator attribute="y" to="50" duration="700" start="false"/>
+            </animatorgroup>
+            <animatorgroup name="drop" process="simultaneous" start="false" onstop="clips.addPhoto(container.lastphoto)">
+                <animator attribute="x" to="${parent.parent.parent.to_x}" duration="700" start="false"/>
+                <animator attribute="y" to="${parent.parent.parent.to_y}" duration="700" start="false"/>
+            </animatorgroup>
+        </animatorgroup>
+    </photo>
 </canvas>

Deleted: openlaszlo/trunk/demos/lzpixmobile/resources/arrowhelp.png

Deleted: openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-bkgnd.png

Added: openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-bkgnd.png


Property changes on: openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-bkgnd.png
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + application/octet-stream

Deleted: openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-mdown.png

Added: openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-mdown.png


Property changes on: openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-mdown.png
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + application/octet-stream

Deleted: openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-mover.png

Added: openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-mover.png


Property changes on: openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-mover.png
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + application/octet-stream

Deleted: openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-mup.png

Added: openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-mup.png


Property changes on: openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-mup.png
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + application/octet-stream

Deleted: openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-separator.png

Added: openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-separator.png


Property changes on: openlaszlo/trunk/demos/lzpixmobile/resources/footer-button-separator.png
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + application/octet-stream

Deleted: openlaszlo/trunk/demos/lzpixmobile/resources/hdr-bkgnd.png

Added: openlaszlo/trunk/demos/lzpixmobile/resources/hdr-bkgnd.png


Property changes on: openlaszlo/trunk/demos/lzpixmobile/resources/hdr-bkgnd.png
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + application/octet-stream

Deleted: openlaszlo/trunk/demos/lzpixmobile/resources/header-button-mup.png

Added: openlaszlo/trunk/demos/lzpixmobile/resources/header-button-mup.png


Property changes on: openlaszlo/trunk/demos/lzpixmobile/resources/header-button-mup.png
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + application/octet-stream

Deleted: openlaszlo/trunk/demos/lzpixmobile/resources/icon-grid4.png

Added: openlaszlo/trunk/demos/lzpixmobile/resources/icon-grid4.png


Property changes on: openlaszlo/trunk/demos/lzpixmobile/resources/icon-grid4.png
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + application/octet-stream

Deleted: openlaszlo/trunk/demos/lzpixmobile/resources/icon-grid9.png

Added: openlaszlo/trunk/demos/lzpixmobile/resources/icon-grid9.png


Property changes on: openlaszlo/trunk/demos/lzpixmobile/resources/icon-grid9.png
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + application/octet-stream

Deleted: openlaszlo/trunk/demos/lzpixmobile/resources/icon-header.png

Added: openlaszlo/trunk/demos/lzpixmobile/resources/icon-header.png


Property changes on: openlaszlo/trunk/demos/lzpixmobile/resources/icon-header.png
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + application/octet-stream

Added: openlaszlo/trunk/demos/lzpixmobile/resources/icon-pagedown.png


Property changes on: openlaszlo/trunk/demos/lzpixmobile/resources/icon-pagedown.png
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + application/octet-stream

Deleted: openlaszlo/trunk/demos/lzpixmobile/resources/icon-pageleft.png

Added: openlaszlo/trunk/demos/lzpixmobile/resources/icon-pageleft.png


Property changes on: openlaszlo/trunk/demos/lzpixmobile/resources/icon-pageleft.png
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + application/octet-stream

Deleted: openlaszlo/trunk/demos/lzpixmobile/resources/icon-pageright.png

Added: openlaszlo/trunk/demos/lzpixmobile/resources/icon-pageright.png


Property changes on: openlaszlo/trunk/demos/lzpixmobile/resources/icon-pageright.png
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + application/octet-stream

Added: openlaszlo/trunk/demos/lzpixmobile/resources/icon-pageup.png


Property changes on: openlaszlo/trunk/demos/lzpixmobile/resources/icon-pageup.png
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + application/octet-stream

Deleted: openlaszlo/trunk/demos/lzpixmobile/resources/logo.png

Added: openlaszlo/trunk/demos/lzpixmobile/resources/logo.png


Property changes on: openlaszlo/trunk/demos/lzpixmobile/resources/logo.png
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + application/octet-stream

Deleted: openlaszlo/trunk/demos/lzpixmobile/resources/main.lzx

Deleted: openlaszlo/trunk/demos/lzpixmobile/resources/option-bkgnd.png

Added: openlaszlo/trunk/demos/lzpixmobile/resources/option-bkgnd.png


Property changes on: openlaszlo/trunk/demos/lzpixmobile/resources/option-bkgnd.png
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + application/octet-stream

Deleted: openlaszlo/trunk/demos/lzpixmobile/resources/option-button-mdown.png

Added: openlaszlo/trunk/demos/lzpixmobile/resources/option-button-mdown.png


Property changes on: openlaszlo/trunk/demos/lzpixmobile/resources/option-button-mdown.png
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + application/octet-stream

Deleted: openlaszlo/trunk/demos/lzpixmobile/resources/option-button-mover.png

Added: openlaszlo/trunk/demos/lzpixmobile/resources/option-button-mover.png


Property changes on: openlaszlo/trunk/demos/lzpixmobile/resources/option-button-mover.png
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + application/octet-stream

Deleted: openlaszlo/trunk/demos/lzpixmobile/resources/option-button-mup.png

Added: openlaszlo/trunk/demos/lzpixmobile/resources/option-button-mup.png


Property changes on: openlaszlo/trunk/demos/lzpixmobile/resources/option-button-mup.png
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + application/octet-stream

Deleted: openlaszlo/trunk/demos/lzpixmobile/resources/resources.lzx

Added: openlaszlo/trunk/demos/lzpixmobile/resources/resources.lzx


Property changes on: openlaszlo/trunk/demos/lzpixmobile/resources/resources.lzx
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Deleted: openlaszlo/trunk/demos/lzpixmobile/resources/taglink_icon.gif

Added: openlaszlo/trunk/demos/lzpixmobile/resources/taglink_icon.gif


Property changes on: openlaszlo/trunk/demos/lzpixmobile/resources/taglink_icon.gif
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + application/octet-stream

Deleted: openlaszlo/trunk/demos/lzpixmobile/resources/taglink_icon2.gif

Added: openlaszlo/trunk/demos/lzpixmobile/resources/taglink_icon2.gif


Property changes on: openlaszlo/trunk/demos/lzpixmobile/resources/taglink_icon2.gif
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + application/octet-stream

Deleted: openlaszlo/trunk/demos/lzpixmobile/views/clips.lzx

Added: openlaszlo/trunk/demos/lzpixmobile/views/clips.lzx


Property changes on: openlaszlo/trunk/demos/lzpixmobile/views/clips.lzx
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Deleted: openlaszlo/trunk/demos/lzpixmobile/views/optionsmenu.lzx

Deleted: openlaszlo/trunk/demos/lzpixmobile/views/photodetails.lzx

Added: openlaszlo/trunk/demos/lzpixmobile/views/photodetails.lzx


Property changes on: openlaszlo/trunk/demos/lzpixmobile/views/photodetails.lzx
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native



More information about the Laszlo-checkins mailing list