diff --git a/README.md b/README.md
index 72da6acd..b737f084 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-# h5ai v0.10.1 · a beautified Apache index
+# h5ai v0.10.2 · a beautified Apache index
h5ai aims to make browsing files on a Apache HTTP server more comfortable.
See the [live demo](http://larsjung.de/h5ai/sample).
@@ -20,6 +20,12 @@ please respect their rights.
## Changelog
+### v0.10.2
+*2011-07-26*
+
+* improved tree scrollbar
+
+
### v0.10.1
*2011-07-24*
diff --git a/build.properties b/build.properties
index 8235b751..af6a9b0d 100644
--- a/build.properties
+++ b/build.properties
@@ -3,7 +3,7 @@ custom = true
# project
project.name = h5ai
-project.version = 0.10.1
+project.version = 0.10.2
# src
diff --git a/src/h5ai/css/inc/tree.less b/src/h5ai/css/inc/tree.less
index beb81e60..b97c32a4 100644
--- a/src/h5ai/css/inc/tree.less
+++ b/src/h5ai/css/inc/tree.less
@@ -6,14 +6,14 @@
top: 0;
overflow: auto;
font-size: 0.85em;
- padding: 16px 32px 16px 16px;
+ padding: 16px 16px 16px 16px;
background-color: rgb(241,241,241);
border: 2px solid rgb(210,210,210);
border-left: none;
.border-radius ( 0 15px 15px 0 );
> .scrollbar {
- margin: 12px;
+ margin: 12px 12px 12px 0;
width: 6px;
background-color: rgb(210,210,210);
.border-radius( 3px );
diff --git a/src/h5ai/js/inc/path.js b/src/h5ai/js/inc/path.js
index 2620906d..956bd463 100644
--- a/src/h5ai/js/inc/path.js
+++ b/src/h5ai/js/inc/path.js
@@ -232,16 +232,16 @@ var Path = function ( pathCache, folder, tableRow ) {
$a.click( $.proxy( function() { this.onClick( "crumb" ); }, this ) );
$a.hover( $.proxy( function() { this.onHoverIn( "crumb" ); }, this ), $.proxy( function() { this.onHoverOut( "crumb" ); }, this ) );
$html.append( $a );
-
+
if ( this.isDomain ) {
$html.addClass( "domain" );
$a.find( "img" ).attr( "src", "/h5ai/images/home.png" );
};
-
+
if ( this.isCurrentFolder ) {
$html.addClass( "current" );
};
-
+
if ( !isNaN( this.status ) ) {
if ( this.status === 200 ) {
$( "" ).appendTo( $a );
@@ -339,6 +339,7 @@ var Path = function ( pathCache, folder, tableRow ) {
this.status = status;
this.content = content;
this.treeOpen = true;
+ $( "#tree" ).get( 0 ).updateScrollbar( true );
this.updateTreeHtml( function() {
$( "#tree" ).get( 0 ).updateScrollbar();
} );
@@ -346,12 +347,14 @@ var Path = function ( pathCache, folder, tableRow ) {
} else if ( $indicator.hasClass( "open" ) ) {
this.treeOpen = false;
$indicator.removeClass( "open" );
+ $( "#tree" ).get( 0 ).updateScrollbar( true );
$html.find( "> ul.content" ).slideUp( function() {
$( "#tree" ).get( 0 ).updateScrollbar();
} );
} else {
this.treeOpen = true;
$indicator.addClass( "open" );
+ $( "#tree" ).get( 0 ).updateScrollbar( true );
$html.find( "> ul.content" ).slideDown( function() {
$( "#tree" ).get( 0 ).updateScrollbar();
} );
diff --git a/src/h5ai/js/inc/tree.js b/src/h5ai/js/inc/tree.js
index 6fff30a3..19cc6c44 100644
--- a/src/h5ai/js/inc/tree.js
+++ b/src/h5ai/js/inc/tree.js
@@ -179,8 +179,16 @@ var Tree = function ( pathCache, h5ai ) {
var $wrapper = $element.find( "> .wrapper" );
var $content = $wrapper.find( "> .content" );
var mouseOffsetY = 0;
+ var updateId = undefined;
+
+ var update = function ( repeat ) {
+ if ( updateId !== undefined && !repeat ) {
+ clearInterval( updateId );
+ updateId = undefined;
+ } else if ( updateId === undefined && repeat ) {
+ updateId = setInterval( function() { update( true ); }, 50 );
+ };
- var update = function () {
$wrapper.css( "height", $element.height() );
var visibleHeight = $element.height();
var contentHeight = $content.outerHeight();
@@ -189,9 +197,8 @@ var Tree = function ( pathCache, h5ai ) {
var visVertFrac = Math.min( visibleHeight / contentHeight, 1 );
if ( visVertFrac < 1 ) {
- $wrapper.css( "padding-right", $scrollbar.outerWidth( true ) );
$scrollbar
- .show()
+ .fadeIn( 50 )
.css( {
height: $element.innerHeight() + $scrollbar.height() - $scrollbar.outerHeight( true )
} );
@@ -201,8 +208,7 @@ var Tree = function ( pathCache, h5ai ) {
height: $scrollbar.height() * visVertFrac
} );
} else {
- $wrapper.css( "padding-right", 0 );
- $scrollbar.hide()
+ $scrollbar.fadeOut( 50 );
};
};
var scroll = function ( event ) {
@@ -222,6 +228,7 @@ var Tree = function ( pathCache, h5ai ) {
$element.get( 0 ).updateScrollbar = update;
$wrapper
.css( {
+ "padding-right": $scrollbar.outerWidth( true ),
height: $element.height(),
overflow: "hidden"
} );
diff --git a/target/dot.htaccess b/target/dot.htaccess
index ec13f286..01cecdef 100644
--- a/target/dot.htaccess
+++ b/target/dot.htaccess
@@ -1,5 +1,5 @@
################################
-# h5ai 0.10.1
+# h5ai 0.10.2
# customized .htaccess
################################
@@ -62,7 +62,7 @@
IndexOrderDefault Ascending Name
- IndexOptions Type=text/html;h5ai=0.10.1
+ IndexOptions Type=text/html;h5ai=0.10.2
IndexOptions Charset=UTF-8
IndexOptions FancyIndexing
IndexOptions HTMLTable
diff --git a/target/h5ai/css/main.css b/target/h5ai/css/main.css
index 0d5b2932..63ce6358 100644
--- a/target/h5ai/css/main.css
+++ b/target/h5ai/css/main.css
@@ -1 +1 @@
-html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}ins{background-color:#ff9;color:#000;text-decoration:none}mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}body{font:13px/1.231 sans-serif;*font-size:small}select,input,textarea,button{font:99% sans-serif}pre,code,kbd,samp{font-family:monospace,sans-serif}a:hover,a:active{outline:0}ul,ol{margin-left:2em}ol{list-style-type:decimal}nav ul,nav li{margin:0;list-style:none;list-style-image:none}small{font-size:85%}strong,th{font-weight:bold}td{vertical-align:top}sub,sup{font-size:75%;line-height:0;position:relative}sup{top:-0.5em}sub{bottom:-0.25em}pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word;padding:15px}textarea{overflow:auto}.ie6 legend,.ie7 legend{margin-left:-7px}input[type="radio"]{vertical-align:text-bottom}input[type="checkbox"]{vertical-align:bottom}.ie7 input[type="checkbox"]{vertical-align:baseline}.ie6 input{vertical-align:text-bottom}label,input[type="button"],input[type="submit"],input[type="image"],button{cursor:pointer}button,input,select,textarea{margin:0}input:invalid,textarea:invalid{border-radius:1px;-moz-box-shadow:0 0 5px red;-webkit-box-shadow:0 0 5px red;box-shadow:0 0 5px red}.no-boxshadow input:invalid,.no-boxshadow textarea:invalid{background-color:#f0dddd}::-moz-selection{background:#ff5e99;color:#fff;text-shadow:none}::selection{background:#ff5e99;color:#fff;text-shadow:none}a:link{-webkit-tap-highlight-color:#ff5e99}button{width:auto;overflow:visible}.ie7 img{-ms-interpolation-mode:bicubic}body,select,input,textarea{color:#444}h1,h2,h3,h4,h5,h6{font-weight:bold}a,a:active,a:visited{color:#607890}a:hover{color:#036}.ir{display:block;text-indent:-999em;overflow:hidden;background-repeat:no-repeat;text-align:left;direction:ltr}.hidden{display:none;visibility:hidden}.visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.visuallyhidden.focusable:active,.visuallyhidden.focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.invisible{visibility:hidden}.clearfix:before,.clearfix:after{content:"\0020";display:block;height:0;overflow:hidden}.clearfix:after{clear:both}.clearfix{zoom:1}@media print{*{background:transparent!important;color:black!important;text-shadow:none!important;filter:none!important;-ms-filter:none!important}a,a:visited{color:#444!important;text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}@page{margin:.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}}html.js .jsDisabledFallback{display:none}html.no-js body>nav ul{display:none}body{font-family:Ubuntu,sans-serif;font-size:16px;color:#555;margin:80px 30px}body>nav{position:fixed;z-index:1;width:100%;left:0;top:0;font-size:.85em;background-color:#f1f1f1;border-bottom:2px solid #d2d2d2}body>nav span.jsDisabledFallback{display:block;height:30px;line-height:30px;padding:0 10px;color:#999}body>nav a,body>nav a:active,body>nav a:visited{color:#555;cursor:pointer;text-decoration:none;opacity:.7;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:block;height:30px;line-height:30px;padding:0 10px}body>nav a:hover,body>nav a:active:hover,body>nav a:visited:hover,body>nav a.hover,body>nav a:active.hover,body>nav a:visited.hover{color:#e80;background-color:rgba(255,255,255,0.5);opacity:1.0}body>nav .current a{background-color:rgba(255,255,255,0.5);opacity:1.0}body>nav img{width:16px;height:16px;vertical-align:bottom;padding:0 6px 6px 0}body>nav .crumb{float:left;border-right:1px solid #e7e7e7}body>nav .crumb .hint{margin-left:8px;font-style:italic;color:#999}body>nav .crumb img.hint{width:10px;height:10px;vertical-align:baseline;padding:0}body>nav .view{float:right;border-left:1px solid #e7e7e7}#content{max-width:960px;margin:0 auto}#content>header{display:none;padding-bottom:10px;margin-bottom:80px;border-bottom:2px dashed #ddd}#content>footer{display:none;padding-top:10px;margin-top:80px;border-top:2px dashed #ddd}#table table{display:block;width:100%;border-collapse:collapse}#table table th,#table table td{padding:3px 6px;text-align:left;border:0}#table table th{padding-bottom:18px;opacity:.4;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}#table table th:hover,#table table th:hover a{color:#555;cursor:pointer;opacity:.9}#table table th a,#table table th a:visited{color:#555;font-weight:normal}#table table th a img,#table table th a:visited img{width:12px;height:12px;padding:0 8px}#table table td{border:1px solid #ddd;border-left:none;border-right:0}#table table td:nth-child(1),#table table th:nth-child(1){text-align:center;width:16px}#table table td:nth-child(1) img,#table table th:nth-child(1) img{width:16px;height:16px;padding-top:2px}#table table td:nth-child(2),#table table th:nth-child(2){width:682px;max-width:682px;overflow:hidden;white-space:nowrap}#table table td:nth-child(3),#table table th:nth-child(3){text-align:right;width:160px;min-width:160px;white-space:nowrap}#table table td:nth-child(4),#table table th:nth-child(4){text-align:right;width:70px;min-width:70px;white-space:nowrap}#extended.details-view{display:none}#extended.details-view ul{margin:0;padding:0;list-style:none}#extended.details-view ul li{position:relative;white-space:nowrap;clear:both}#extended.details-view ul li.header a,#extended.details-view ul li.header a:active,#extended.details-view ul li.header a:visited{padding-bottom:18px;color:#555;text-decoration:none;opacity:.4;cursor:pointer;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}#extended.details-view ul li.header a:hover,#extended.details-view ul li.header a:active:hover,#extended.details-view ul li.header a:visited:hover{color:#555;opacity:.9}#extended.details-view ul li.header a img,#extended.details-view ul li.header a:active img,#extended.details-view ul li.header a:visited img{width:12px;height:12px;padding:0 8px}#extended.details-view ul li.entry{border-bottom:1px solid #ddd}#extended.details-view ul li.entry a,#extended.details-view ul li.entry a:active,#extended.details-view ul li.entry a:visited{display:block;color:#555;text-decoration:none;cursor:pointer}#extended.details-view ul li.entry a:hover,#extended.details-view ul li.entry a:active:hover,#extended.details-view ul li.entry a:visited:hover,#extended.details-view ul li.entry a.hover,#extended.details-view ul li.entry a:active.hover,#extended.details-view ul li.entry a:visited.hover{background-color:#f6f6f6;color:#e80}#extended.details-view ul li.entry.error a,#extended.details-view ul li.entry.error a:active,#extended.details-view ul li.entry.error a:visited{color:#aaa}#extended.details-view ul li.entry.error a .label .hint,#extended.details-view ul li.entry.error a:active .label .hint,#extended.details-view ul li.entry.error a:visited .label .hint{margin-left:12px;font-size:.9em;color:#c55}#extended.details-view ul li.entry.error a:hover,#extended.details-view ul li.entry.error a:active:hover,#extended.details-view ul li.entry.error a:visited:hover,#extended.details-view ul li.entry.error a.hover,#extended.details-view ul li.entry.error a:active.hover,#extended.details-view ul li.entry.error a:visited.hover{opacity:1;background-color:#f6f6f6;color:#e80}#extended.details-view ul li .icon,#extended.details-view ul li .label,#extended.details-view ul li .date,#extended.details-view ul li .size{padding:6px}#extended.details-view ul li .icon{display:inline-block;position:absolute;left:0;top:2px;width:16px}#extended.details-view ul li .icon img{width:16px;height:16px}#extended.details-view ul li .icon.big{display:none}#extended.details-view ul li .label{display:block;margin:0 270px 0 24px;overflow:hidden;white-space:nowrap;text-align:left}#extended.details-view ul li .date{position:absolute;right:100px;top:0;text-align:right;width:160px;white-space:nowrap}#extended.details-view ul li .size{position:absolute;right:0;top:0;text-align:right;width:80px;white-space:nowrap}#extended.details-view .empty{text-align:center;margin:50px 0;color:#ddd;font-size:5em;font-weight:bold}#extended.icons-view{display:none;padding:3px;border:1px solid #eee;border-radius:15px}#extended.icons-view ul{margin:0;padding:0;list-style:none}#extended.icons-view ul li.header{display:none}#extended.icons-view ul li.entry{float:left}#extended.icons-view ul li.entry a,#extended.icons-view ul li.entry a:active,#extended.icons-view ul li.entry a:visited{display:block;margin:8px;padding:8px;width:100px;height:120px;float:left;text-align:center;text-decoration:none;overflow:hidden;border-radius:5px;color:#555;cursor:pointer;border:2px solid rgba(0,0,0,0)}#extended.icons-view ul li.entry a:hover,#extended.icons-view ul li.entry a:active:hover,#extended.icons-view ul li.entry a:visited:hover,#extended.icons-view ul li.entry a.hover,#extended.icons-view ul li.entry a:active.hover,#extended.icons-view ul li.entry a:visited.hover{color:#e80;border-color:#eee;background-color:#f6f6f6}#extended.icons-view ul li.entry a .icon,#extended.icons-view ul li.entry a:active .icon,#extended.icons-view ul li.entry a:visited .icon{display:block}#extended.icons-view ul li.entry a .icon img,#extended.icons-view ul li.entry a:active .icon img,#extended.icons-view ul li.entry a:visited .icon img{width:48px;height:48px;margin-bottom:8px}#extended.icons-view ul li.entry a .icon.small,#extended.icons-view ul li.entry a:active .icon.small,#extended.icons-view ul li.entry a:visited .icon.small{display:none}#extended.icons-view ul li.entry a .label,#extended.icons-view ul li.entry a:active .label,#extended.icons-view ul li.entry a:visited .label{display:block;word-wrap:break-word}#extended.icons-view ul li.entry a .date,#extended.icons-view ul li.entry a:active .date,#extended.icons-view ul li.entry a:visited .date,#extended.icons-view ul li.entry a .size,#extended.icons-view ul li.entry a:active .size,#extended.icons-view ul li.entry a:visited .size{display:none}#extended.icons-view ul li.entry.error a,#extended.icons-view ul li.entry.error a:active,#extended.icons-view ul li.entry.error a:visited{color:#aaa;text-decoration:none}#extended.icons-view ul li.entry.error a .label .hint,#extended.icons-view ul li.entry.error a:active .label .hint,#extended.icons-view ul li.entry.error a:visited .label .hint{padding:0 6px;font-size:.9em;color:#c55}#extended.icons-view ul li.entry.error a:hover,#extended.icons-view ul li.entry.error a:active:hover,#extended.icons-view ul li.entry.error a:visited:hover,#extended.icons-view ul li.entry.error a.hover,#extended.icons-view ul li.entry.error a:active.hover,#extended.icons-view ul li.entry.error a:visited.hover{color:#e80;border-color:#eee;background-color:#f6f6f6}#extended.icons-view .empty{padding:16px;height:120px;text-align:center;color:#ddd;font-size:5em;font-weight:bold}#tree{position:fixed;display:none;left:0;top:0;overflow:auto;font-size:.85em;padding:16px 32px 16px 16px;background-color:#f1f1f1;border:2px solid #d2d2d2;border-left:none;-moz-border-radius:0 15px 15px 0;-webkit-border-radius:0 15px 15px 0;border-radius:0 15px 15px 0}#tree>.scrollbar{margin:12px;width:6px;background-color:#d2d2d2;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}#tree>.scrollbar .drag{background-color:#b4b4b4;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}#tree>.scrollbar.dragOn .drag{background-color:#969696}#tree .entry .blank,#tree .entry .indicator{display:inline-block;width:16px;height:25px;float:left}#tree .entry .indicator{opacity:.7;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;cursor:pointer}#tree .entry .indicator:hover{opacity:1}#tree .entry .indicator img{position:relative;left:0;top:3px;width:12px;height:12px;vertical-align:bottom;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}#tree .entry .indicator.open img{-moz-transform:rotate(90deg);-o-transform:rotate(90deg);-webkit-transform:rotate(90deg);transform:rotate(90deg)}#tree .entry .indicator.unknown{opacity:.3}#tree .entry>a,#tree .entry>a:active,#tree .entry>a.visited{margin-left:16px;padding:4px 6px;border:1px solid rgba(0,0,0,0);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;display:block;color:#555;text-decoration:none;opacity:.7}#tree .entry>a:hover,#tree .entry>a:active:hover,#tree .entry>a.visited:hover,#tree .entry>a.hover,#tree .entry>a:active.hover,#tree .entry>a.visited.hover{color:#e80;background-color:rgba(255,255,255,0.5);opacity:1}#tree .entry>a .label,#tree .entry>a:active .label,#tree .entry>a.visited .label{display:inline-block}#tree .entry>a .icon,#tree .entry>a:active .icon,#tree .entry>a.visited .icon{display:inline-block;width:20px}#tree .entry>a .icon img,#tree .entry>a:active .icon img,#tree .entry>a.visited .icon img{width:16px;height:16px;vertical-align:bottom}#tree .entry>a .hint,#tree .entry>a:active .hint,#tree .entry>a.visited .hint{display:inline-block;margin-left:12px;font-size:.9em;color:#ccc}#tree .entry>a .hint img,#tree .entry>a:active .hint img,#tree .entry>a.visited .hint img{width:10px;height:10px;vertical-align:baseline}#tree .entry.file{display:none}#tree .entry.current>a,#tree .entry.current>a:active,#tree .entry.current>a:visited{border:1px solid #ddd;background-color:rgba(255,255,255,0.5);opacity:1}#tree .entry.error>a,#tree .entry.error>a:active,#tree .entry.error>a:visited{color:#999}#tree .entry.error>a:hover,#tree .entry.error>a:active:hover,#tree .entry.error>a:visited:hover,#tree .entry.error>a.hover,#tree .entry.error>a:active.hover,#tree .entry.error>a:visited.hover{color:#e80}#tree .entry.error .hint{color:#c55}#tree .entry .content{list-style:none;margin-left:20px}body>footer{position:fixed;z-index:1;width:100%;left:0;bottom:0;padding:10px 0;background-color:#f1f1f1;border-top:2px solid #d2d2d2;color:#999;font-size:.85em;text-align:center}body>footer a,body>footer a:active,body>footer a:visited{color:#555;text-decoration:none;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}body>footer a:hover,body>footer a:active:hover,body>footer a:visited:hover{color:#e80}#html5{position:absolute;left:6px;bottom:6px;opacity:.4;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}#html5 img{width:20px;height:20px}#html5:hover{opacity:.8}
\ No newline at end of file
+html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}ins{background-color:#ff9;color:#000;text-decoration:none}mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}body{font:13px/1.231 sans-serif;*font-size:small}select,input,textarea,button{font:99% sans-serif}pre,code,kbd,samp{font-family:monospace,sans-serif}a:hover,a:active{outline:0}ul,ol{margin-left:2em}ol{list-style-type:decimal}nav ul,nav li{margin:0;list-style:none;list-style-image:none}small{font-size:85%}strong,th{font-weight:bold}td{vertical-align:top}sub,sup{font-size:75%;line-height:0;position:relative}sup{top:-0.5em}sub{bottom:-0.25em}pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word;padding:15px}textarea{overflow:auto}.ie6 legend,.ie7 legend{margin-left:-7px}input[type="radio"]{vertical-align:text-bottom}input[type="checkbox"]{vertical-align:bottom}.ie7 input[type="checkbox"]{vertical-align:baseline}.ie6 input{vertical-align:text-bottom}label,input[type="button"],input[type="submit"],input[type="image"],button{cursor:pointer}button,input,select,textarea{margin:0}input:invalid,textarea:invalid{border-radius:1px;-moz-box-shadow:0 0 5px red;-webkit-box-shadow:0 0 5px red;box-shadow:0 0 5px red}.no-boxshadow input:invalid,.no-boxshadow textarea:invalid{background-color:#f0dddd}::-moz-selection{background:#ff5e99;color:#fff;text-shadow:none}::selection{background:#ff5e99;color:#fff;text-shadow:none}a:link{-webkit-tap-highlight-color:#ff5e99}button{width:auto;overflow:visible}.ie7 img{-ms-interpolation-mode:bicubic}body,select,input,textarea{color:#444}h1,h2,h3,h4,h5,h6{font-weight:bold}a,a:active,a:visited{color:#607890}a:hover{color:#036}.ir{display:block;text-indent:-999em;overflow:hidden;background-repeat:no-repeat;text-align:left;direction:ltr}.hidden{display:none;visibility:hidden}.visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.visuallyhidden.focusable:active,.visuallyhidden.focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.invisible{visibility:hidden}.clearfix:before,.clearfix:after{content:"\0020";display:block;height:0;overflow:hidden}.clearfix:after{clear:both}.clearfix{zoom:1}@media print{*{background:transparent!important;color:black!important;text-shadow:none!important;filter:none!important;-ms-filter:none!important}a,a:visited{color:#444!important;text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}@page{margin:.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}}html.js .jsDisabledFallback{display:none}html.no-js body>nav ul{display:none}body{font-family:Ubuntu,sans-serif;font-size:16px;color:#555;margin:80px 30px}body>nav{position:fixed;z-index:1;width:100%;left:0;top:0;font-size:.85em;background-color:#f1f1f1;border-bottom:2px solid #d2d2d2}body>nav span.jsDisabledFallback{display:block;height:30px;line-height:30px;padding:0 10px;color:#999}body>nav a,body>nav a:active,body>nav a:visited{color:#555;cursor:pointer;text-decoration:none;opacity:.7;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:block;height:30px;line-height:30px;padding:0 10px}body>nav a:hover,body>nav a:active:hover,body>nav a:visited:hover,body>nav a.hover,body>nav a:active.hover,body>nav a:visited.hover{color:#e80;background-color:rgba(255,255,255,0.5);opacity:1.0}body>nav .current a{background-color:rgba(255,255,255,0.5);opacity:1.0}body>nav img{width:16px;height:16px;vertical-align:bottom;padding:0 6px 6px 0}body>nav .crumb{float:left;border-right:1px solid #e7e7e7}body>nav .crumb .hint{margin-left:8px;font-style:italic;color:#999}body>nav .crumb img.hint{width:10px;height:10px;vertical-align:baseline;padding:0}body>nav .view{float:right;border-left:1px solid #e7e7e7}#content{max-width:960px;margin:0 auto}#content>header{display:none;padding-bottom:10px;margin-bottom:80px;border-bottom:2px dashed #ddd}#content>footer{display:none;padding-top:10px;margin-top:80px;border-top:2px dashed #ddd}#table table{display:block;width:100%;border-collapse:collapse}#table table th,#table table td{padding:3px 6px;text-align:left;border:0}#table table th{padding-bottom:18px;opacity:.4;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}#table table th:hover,#table table th:hover a{color:#555;cursor:pointer;opacity:.9}#table table th a,#table table th a:visited{color:#555;font-weight:normal}#table table th a img,#table table th a:visited img{width:12px;height:12px;padding:0 8px}#table table td{border:1px solid #ddd;border-left:none;border-right:0}#table table td:nth-child(1),#table table th:nth-child(1){text-align:center;width:16px}#table table td:nth-child(1) img,#table table th:nth-child(1) img{width:16px;height:16px;padding-top:2px}#table table td:nth-child(2),#table table th:nth-child(2){width:682px;max-width:682px;overflow:hidden;white-space:nowrap}#table table td:nth-child(3),#table table th:nth-child(3){text-align:right;width:160px;min-width:160px;white-space:nowrap}#table table td:nth-child(4),#table table th:nth-child(4){text-align:right;width:70px;min-width:70px;white-space:nowrap}#extended.details-view{display:none}#extended.details-view ul{margin:0;padding:0;list-style:none}#extended.details-view ul li{position:relative;white-space:nowrap;clear:both}#extended.details-view ul li.header a,#extended.details-view ul li.header a:active,#extended.details-view ul li.header a:visited{padding-bottom:18px;color:#555;text-decoration:none;opacity:.4;cursor:pointer;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}#extended.details-view ul li.header a:hover,#extended.details-view ul li.header a:active:hover,#extended.details-view ul li.header a:visited:hover{color:#555;opacity:.9}#extended.details-view ul li.header a img,#extended.details-view ul li.header a:active img,#extended.details-view ul li.header a:visited img{width:12px;height:12px;padding:0 8px}#extended.details-view ul li.entry{border-bottom:1px solid #ddd}#extended.details-view ul li.entry a,#extended.details-view ul li.entry a:active,#extended.details-view ul li.entry a:visited{display:block;color:#555;text-decoration:none;cursor:pointer}#extended.details-view ul li.entry a:hover,#extended.details-view ul li.entry a:active:hover,#extended.details-view ul li.entry a:visited:hover,#extended.details-view ul li.entry a.hover,#extended.details-view ul li.entry a:active.hover,#extended.details-view ul li.entry a:visited.hover{background-color:#f6f6f6;color:#e80}#extended.details-view ul li.entry.error a,#extended.details-view ul li.entry.error a:active,#extended.details-view ul li.entry.error a:visited{color:#aaa}#extended.details-view ul li.entry.error a .label .hint,#extended.details-view ul li.entry.error a:active .label .hint,#extended.details-view ul li.entry.error a:visited .label .hint{margin-left:12px;font-size:.9em;color:#c55}#extended.details-view ul li.entry.error a:hover,#extended.details-view ul li.entry.error a:active:hover,#extended.details-view ul li.entry.error a:visited:hover,#extended.details-view ul li.entry.error a.hover,#extended.details-view ul li.entry.error a:active.hover,#extended.details-view ul li.entry.error a:visited.hover{opacity:1;background-color:#f6f6f6;color:#e80}#extended.details-view ul li .icon,#extended.details-view ul li .label,#extended.details-view ul li .date,#extended.details-view ul li .size{padding:6px}#extended.details-view ul li .icon{display:inline-block;position:absolute;left:0;top:2px;width:16px}#extended.details-view ul li .icon img{width:16px;height:16px}#extended.details-view ul li .icon.big{display:none}#extended.details-view ul li .label{display:block;margin:0 270px 0 24px;overflow:hidden;white-space:nowrap;text-align:left}#extended.details-view ul li .date{position:absolute;right:100px;top:0;text-align:right;width:160px;white-space:nowrap}#extended.details-view ul li .size{position:absolute;right:0;top:0;text-align:right;width:80px;white-space:nowrap}#extended.details-view .empty{text-align:center;margin:50px 0;color:#ddd;font-size:5em;font-weight:bold}#extended.icons-view{display:none;padding:3px;border:1px solid #eee;border-radius:15px}#extended.icons-view ul{margin:0;padding:0;list-style:none}#extended.icons-view ul li.header{display:none}#extended.icons-view ul li.entry{float:left}#extended.icons-view ul li.entry a,#extended.icons-view ul li.entry a:active,#extended.icons-view ul li.entry a:visited{display:block;margin:8px;padding:8px;width:100px;height:120px;float:left;text-align:center;text-decoration:none;overflow:hidden;border-radius:5px;color:#555;cursor:pointer;border:2px solid rgba(0,0,0,0)}#extended.icons-view ul li.entry a:hover,#extended.icons-view ul li.entry a:active:hover,#extended.icons-view ul li.entry a:visited:hover,#extended.icons-view ul li.entry a.hover,#extended.icons-view ul li.entry a:active.hover,#extended.icons-view ul li.entry a:visited.hover{color:#e80;border-color:#eee;background-color:#f6f6f6}#extended.icons-view ul li.entry a .icon,#extended.icons-view ul li.entry a:active .icon,#extended.icons-view ul li.entry a:visited .icon{display:block}#extended.icons-view ul li.entry a .icon img,#extended.icons-view ul li.entry a:active .icon img,#extended.icons-view ul li.entry a:visited .icon img{width:48px;height:48px;margin-bottom:8px}#extended.icons-view ul li.entry a .icon.small,#extended.icons-view ul li.entry a:active .icon.small,#extended.icons-view ul li.entry a:visited .icon.small{display:none}#extended.icons-view ul li.entry a .label,#extended.icons-view ul li.entry a:active .label,#extended.icons-view ul li.entry a:visited .label{display:block;word-wrap:break-word}#extended.icons-view ul li.entry a .date,#extended.icons-view ul li.entry a:active .date,#extended.icons-view ul li.entry a:visited .date,#extended.icons-view ul li.entry a .size,#extended.icons-view ul li.entry a:active .size,#extended.icons-view ul li.entry a:visited .size{display:none}#extended.icons-view ul li.entry.error a,#extended.icons-view ul li.entry.error a:active,#extended.icons-view ul li.entry.error a:visited{color:#aaa;text-decoration:none}#extended.icons-view ul li.entry.error a .label .hint,#extended.icons-view ul li.entry.error a:active .label .hint,#extended.icons-view ul li.entry.error a:visited .label .hint{padding:0 6px;font-size:.9em;color:#c55}#extended.icons-view ul li.entry.error a:hover,#extended.icons-view ul li.entry.error a:active:hover,#extended.icons-view ul li.entry.error a:visited:hover,#extended.icons-view ul li.entry.error a.hover,#extended.icons-view ul li.entry.error a:active.hover,#extended.icons-view ul li.entry.error a:visited.hover{color:#e80;border-color:#eee;background-color:#f6f6f6}#extended.icons-view .empty{padding:16px;height:120px;text-align:center;color:#ddd;font-size:5em;font-weight:bold}#tree{position:fixed;display:none;left:0;top:0;overflow:auto;font-size:.85em;padding:16px 16px 16px 16px;background-color:#f1f1f1;border:2px solid #d2d2d2;border-left:none;-moz-border-radius:0 15px 15px 0;-webkit-border-radius:0 15px 15px 0;border-radius:0 15px 15px 0}#tree>.scrollbar{margin:12px 12px 12px 0;width:6px;background-color:#d2d2d2;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}#tree>.scrollbar .drag{background-color:#b4b4b4;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}#tree>.scrollbar.dragOn .drag{background-color:#969696}#tree .entry .blank,#tree .entry .indicator{display:inline-block;width:16px;height:25px;float:left}#tree .entry .indicator{opacity:.7;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;cursor:pointer}#tree .entry .indicator:hover{opacity:1}#tree .entry .indicator img{position:relative;left:0;top:3px;width:12px;height:12px;vertical-align:bottom;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}#tree .entry .indicator.open img{-moz-transform:rotate(90deg);-o-transform:rotate(90deg);-webkit-transform:rotate(90deg);transform:rotate(90deg)}#tree .entry .indicator.unknown{opacity:.3}#tree .entry>a,#tree .entry>a:active,#tree .entry>a.visited{margin-left:16px;padding:4px 6px;border:1px solid rgba(0,0,0,0);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;display:block;color:#555;text-decoration:none;opacity:.7}#tree .entry>a:hover,#tree .entry>a:active:hover,#tree .entry>a.visited:hover,#tree .entry>a.hover,#tree .entry>a:active.hover,#tree .entry>a.visited.hover{color:#e80;background-color:rgba(255,255,255,0.5);opacity:1}#tree .entry>a .label,#tree .entry>a:active .label,#tree .entry>a.visited .label{display:inline-block}#tree .entry>a .icon,#tree .entry>a:active .icon,#tree .entry>a.visited .icon{display:inline-block;width:20px}#tree .entry>a .icon img,#tree .entry>a:active .icon img,#tree .entry>a.visited .icon img{width:16px;height:16px;vertical-align:bottom}#tree .entry>a .hint,#tree .entry>a:active .hint,#tree .entry>a.visited .hint{display:inline-block;margin-left:12px;font-size:.9em;color:#ccc}#tree .entry>a .hint img,#tree .entry>a:active .hint img,#tree .entry>a.visited .hint img{width:10px;height:10px;vertical-align:baseline}#tree .entry.file{display:none}#tree .entry.current>a,#tree .entry.current>a:active,#tree .entry.current>a:visited{border:1px solid #ddd;background-color:rgba(255,255,255,0.5);opacity:1}#tree .entry.error>a,#tree .entry.error>a:active,#tree .entry.error>a:visited{color:#999}#tree .entry.error>a:hover,#tree .entry.error>a:active:hover,#tree .entry.error>a:visited:hover,#tree .entry.error>a.hover,#tree .entry.error>a:active.hover,#tree .entry.error>a:visited.hover{color:#e80}#tree .entry.error .hint{color:#c55}#tree .entry .content{list-style:none;margin-left:20px}body>footer{position:fixed;z-index:1;width:100%;left:0;bottom:0;padding:10px 0;background-color:#f1f1f1;border-top:2px solid #d2d2d2;color:#999;font-size:.85em;text-align:center}body>footer a,body>footer a:active,body>footer a:visited{color:#555;text-decoration:none;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}body>footer a:hover,body>footer a:active:hover,body>footer a:visited:hover{color:#e80}#html5{position:absolute;left:6px;bottom:6px;opacity:.4;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}#html5 img{width:20px;height:20px}#html5:hover{opacity:.8}
\ No newline at end of file
diff --git a/target/h5ai/footer.html b/target/h5ai/footer.html
index 90a6e199..faf3af0a 100644
--- a/target/h5ai/footer.html
+++ b/target/h5ai/footer.html
@@ -11,7 +11,7 @@
- h5ai 0.10.1
+ h5ai 0.10.2
Faenza icons
diff --git a/target/h5ai/header.html b/target/h5ai/header.html
index 767b387d..52ce6bb8 100644
--- a/target/h5ai/header.html
+++ b/target/h5ai/header.html
@@ -3,7 +3,7 @@