1
0
mirror of https://github.com/lrsjng/h5ai.git synced 2025-08-29 00:30:04 +02:00

Compare commits

..

72 Commits

Author SHA1 Message Date
Lars Jung
ec1077153b Merge branch 'develop' 2014-08-16 13:20:10 +02:00
Lars Jung
a7794230cf Prepare release. 2014-08-16 13:19:46 +02:00
Lars Jung
9b5f6f3cad Tabs to spaces. 2014-08-15 22:07:53 +02:00
Lars Jung
49403ed07c Update readme. 2014-08-15 17:20:20 +02:00
Lars Jung
8f93d78dd8 Update readme. 2014-08-15 17:04:05 +02:00
Lars Jung
b8dec0e9aa Update types. 2014-08-12 20:58:38 +02:00
Lars Jung
4b50274bb2 Update readme. 2014-08-12 00:37:38 +02:00
Lars Jung
a1f00bf5f5 Test. 2014-08-12 00:29:55 +02:00
Lars Jung
0b15f55689 Test. 2014-08-11 23:49:23 +02:00
Lars Jung
ee312bdfa2 Update package dev deps. 2014-08-10 22:10:43 +02:00
Lars Jung
425e2bd54f Update readme. 2014-08-10 21:15:45 +02:00
Lars Jung
4014e4b852 Split vid types. 2014-08-09 00:42:46 +02:00
Lars Jung
0aa438f859 Optimize SVG images. 2014-08-08 21:16:43 +02:00
Lars Jung
19a8337e9e Optimize SVG images. 2014-08-08 13:43:13 +02:00
Lars Jung
48b4b25317 Add cmd check caching. 2014-08-07 21:22:06 +02:00
Lars Jung
dfd0e65651 Update readme. 2014-08-07 00:20:56 +02:00
Lars Jung
1cdefa8492 Update readme. 2014-08-07 00:08:41 +02:00
Lars Jung
98b2a2af09 Improve cmd checks. 2014-08-04 21:58:16 +02:00
Lars Jung
237ae10be1 Minor changes. 2014-08-04 19:22:40 +02:00
Lars Jung
a58b78d11a Remove unused code. 2014-08-04 17:10:33 +02:00
Lars Jung
72d8152df5 Replace SyntaxHighlighter wiht Prism. 2014-08-04 17:06:39 +02:00
Lars Jung
2668c28737 Update build process. 2014-08-04 14:41:08 +02:00
Lars Jung
103824aa89 Update Moment.js. 2014-08-04 02:49:46 +02:00
Lars Jung
18c8709fd3 Update readme. 2014-08-04 02:32:41 +02:00
Lars Jung
aa7dd8a75f Replace underscore with lodash. 2014-08-04 02:22:43 +02:00
Lars Jung
dad7cb26d5 Update changelog. 2014-08-04 01:55:11 +02:00
Lars Jung
ca505bf637 Update jQuery.mousewheel. 2014-08-04 01:53:42 +02:00
Lars Jung
b7c180355f Update jQuery.qrcode. 2014-08-04 01:37:31 +02:00
Lars Jung
80d0952d1f Update modulejs. 2014-08-04 01:26:11 +02:00
Lars Jung
c777a9f949 Fix. 2014-08-03 21:46:10 +02:00
Lars Jung
7ecefa554a Replace markdown with marked. 2014-08-03 21:12:40 +02:00
Lars Jung
114c63cfd7 Update readme. 2014-08-03 20:49:46 +02:00
Lars Jung
ac5c914077 Update readme. 2014-08-03 20:17:37 +02:00
Lars Jung
247ac2de07 Update readme. 2014-08-03 20:15:31 +02:00
Lars Jung
58a676d789 Update readme. 2014-08-03 19:39:59 +02:00
Lars Jung
2b1258bea0 Update readme. 2014-08-03 02:04:05 +02:00
Lars Jung
3211722492 Update readme. 2014-08-03 02:03:06 +02:00
Lars Jung
f1574f3efb Update readme. 2014-08-03 02:02:04 +02:00
Lars Jung
2eb8caebc0 Merge pull request #330 from TobleMiner/develop
Changed password input to type "password"
2014-08-03 01:57:45 +02:00
Lars Jung
5cea5d76d2 Outsources themes. 2014-08-03 01:27:57 +02:00
Lars Jung
f29a1df3f9 Remove true type fonts. 2014-08-03 00:16:06 +02:00
TobleMiner
cae5e67557 Changed password input to type "password" 2014-08-01 20:28:15 +02:00
Lars Jung
072c2e3718 Update readme. 2014-07-29 22:23:14 +02:00
Lars Jung
45e2ebe6f4 Update readme. 2014-07-29 22:16:15 +02:00
Lars Jung
551da05c6c Update readme. 2014-07-27 16:49:41 +02:00
Lars Jung
49603c6f80 Fix 32bit size calculation, remove test value. 2014-07-13 13:25:01 +02:00
Lars Jung
1275afcf33 Change doctype 5 to doctype html. 2014-07-11 15:01:01 +02:00
Lars Jung
f9e7e5f9c2 Add filesize fallback for large files and 32bit PHP. 2014-07-09 02:40:23 +02:00
Lars Jung
d33b0156fc Fix server detection. 2014-07-05 02:58:15 +02:00
Lars Jung
258fcf29c9 Update info page. 2014-07-03 02:59:05 +02:00
Lars Jung
30993e40f6 Add tests to the info page. 2014-07-03 00:13:54 +02:00
Lars Jung
82d3b5040e Remove JSON shim. 2014-07-02 22:54:59 +02:00
Lars Jung
9cc6ca0df7 Update info page. 2014-07-02 22:39:01 +02:00
Lars Jung
b5e6f9b860 Update info page. 2014-07-02 22:15:57 +02:00
Lars Jung
ccd98fb113 Remove tracking pixel. 2014-07-02 21:26:02 +02:00
Lars Jung
06d9a8af85 Fix lighttpd recognition. Add support button. 2014-07-02 15:06:28 +02:00
Lars Jung
36150bdbef Set version 0.25.2+ 2014-07-01 22:37:01 +02:00
Lars Jung
7b2070b2bd Merge branch 'develop' 2014-07-01 22:35:45 +02:00
Lars Jung
e0aafa5f47 Prepare release. 2014-07-01 22:35:32 +02:00
Lars Jung
75ced2d18c Update changelog. 2014-07-01 21:39:32 +02:00
Lars Jung
d6695da97d Fix managed check. 2014-07-01 20:24:10 +02:00
Lars Jung
b4a1bb1218 Refactor PHP. 2014-07-01 03:21:54 +02:00
Lars Jung
903b29c4c0 Refactor PHP. 2014-07-01 03:03:41 +02:00
Lars Jung
8fd393d34a Refactor PHP. 2014-06-30 03:15:27 +02:00
Lars Jung
122546eae1 Minor tweaks. 2014-06-30 00:14:48 +02:00
Lars Jung
49d0c968b9 Fix default folder download (still strange for shell-tar). 2014-06-29 21:11:40 +02:00
Lars Jung
b40ae3480f Fix typos. 2014-06-29 18:26:40 +02:00
Lars Jung
96480a5c50 Add optional info page protection. 2014-06-29 17:51:00 +02:00
Lars Jung
db4932b9ce Replace PHP short open tag, as it might be turned off in PHP < 5.4.0. 2014-06-28 19:21:29 +02:00
Lars Jung
d4c6b33ed5 Some fixes. 2014-06-26 12:42:09 +02:00
Lars Jung
daa1d255e2 More fixes on Google Universal Analytics. 2014-06-25 19:30:49 +02:00
Lars Jung
bb7ed02c12 Set version to 0.25.1 2014-06-25 02:57:04 +02:00
328 changed files with 15489 additions and 41335 deletions

3
.gitignore vendored
View File

@@ -1,6 +1,5 @@
build
local
*.sublime-*
node_modules
test

View File

@@ -2,6 +2,32 @@
**h5ai** uses [semantic versioning](http://semver.org/).
## v0.26.0 - *2014-08-16*
* removes True Type fonts
* outsources themes to [h5ai-themes](https://github.com/lrsjng/h5ai-themes)
* adds filesize fallback for large files and 32bit PHP
* fixes server detection
* adds config file tests to info page
* removes JSON shim
* adds caching of command checks
* updates `jQuery.mousewheel` to 3.1.12
* updates `jQuery.qrcode` to 0.8.0
* replaces `markdown` with [`marked`](https://github.com/chjj/marked) 0.3.2
* updates `modulejs` to 0.4.5
* updates `Moment.js` to 2.8.1
* replaces `underscore` with [`Lo-Dash`](https://github.com/lodash/lodash) 2.4.1
* replaces `SyntaxHighlighter` with [`Prism`](http://prismjs.com) 2014-08-04
## v0.25.2 - *2014-07-01*
* adds optional info page protection
* fixes `short_open_tag` issues for PHP < 5.4.0
* fixes default folder download (`alwaysVisible` option)
* minor fixes
## v0.25.1 - *2014-06-25*
* fixes broken paths for filenames containing '+' characters
@@ -29,13 +55,13 @@
* fixes QR code URI origin (issue [#287](https://github.com/lrsjng/h5ai/issues/287))
* replaces PHP backtick operator with `exec`
* removes server side file manipulation extensions `dropbox`, `delete` and `rename`
* updates H5BP to 4.3.0
* updates jQuery to 2.1.1
* updates json2.js to 2014-02-04
* updates markdown-js to 0.5.0
* updates Modernizr to 2.8.2
* updates Moment.js to 2.6.0
* updates Underscore.js to 1.6.0
* updates `H5BP` to 4.3.0
* updates `jQuery` to 2.1.1
* updates `json2.js` to 2014-02-04
* updates `markdown-js` to 0.5.0
* updates `Modernizr` to 2.8.2
* updates `Moment.js` to 2.6.0
* updates `Underscore.js` to 1.6.0
* language updates (`bg`, `ko`, `pt`, `sl`, `sv`, `zh-cn`)
@@ -80,12 +106,12 @@
* now uses scalable images for the interface
* fixes filter (ignore parent folder, display of `no match`)
* lots of small fixes
* updates H5BP to 4.2.0
* updates jQuery to 2.0.3
* updates jQuery.mousewheel to 3.1.3
* updates Moment.js to 2.1.0
* updates markdown-js to 0.4.0-9c21acdf08
* updates json2.js to 2013-05-26
* updates `H5BP` to 4.2.0
* updates `jQuery` to 2.0.3
* updates `jQuery.mousewheel` to 3.1.3
* updates `Moment.js` to 2.1.0
* updates `markdown-js` to 0.4.0-9c21acdf08
* updates `json2.js` to 2013-05-26
* adds `uk` translation by Viktor Matveenko
* updates to `pl` translation by Mark

View File

@@ -1,19 +0,0 @@
Copyright (c) 2014 Lars Jung, http://larsjung.de
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
of the Software, and to permit persons to whom the Software is furnished to do
so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@@ -1,27 +1,30 @@
# h5ai
**h5ai** is a modern HTTP web server index for Apache httpd, lighttpd, nginx and Cherokee.
The preferred way to report a bug or make a feature request is to
create [a new issue](https://github.com/lrsjng/h5ai/issues/new) on GitHub!
[![license][license-img]][gh] [![web][web-img]][web] [![github][gh-img]][gh]
A modern HTTP web server index for Apache httpd, lighttpd, nginx and Cherokee.
For bug reports and feature requests please use [issues][gh-issues].
## Install
**Note:** please don't use files from the `src` folder for installation,
they need to be preprocessed to work correctly!
You'll find a preprocessed package, as well as detailed installation
instructions on the [project page](http://larsjung.de/h5ai/).
Do **not** install any files from the `src` folder, they need to be
preprocessed to work correctly! Find a preprocessed package and detailed
install instructions on the [project page][web].
## Build
There are repositories for the latest [releases](http://release.larsjung.de/h5ai/) and [dev builds](http://release.larsjung.de/h5ai/dev/).
But if you want to build **h5ai** yourself you need to install the build tool [fQuery](http://larsjung.de/fquery/) first:
There are installation ready packages for the latest [releases][release] and
[dev builds][develop]. But if you want to build **h5ai** yourself you need to
install the build tool [fQuery][fquery] first:
> npm install -g fquery
> npm install -g fquery@0.11.0
This will install fQuery and its command line tool `makejs`. Run `makejs --help` to see if everything
worked fine. To clone and build the project run the following commands.
You'll find a new directory `build` including a fresh zipball.
This will globally install fQuery and its command line tool `makejs`. Run
`makejs --help` to see if everything worked fine. To clone and build the
project run the following commands, this will create a new folder `build`
including a fresh zipball.
> git clone git://github.com/lrsjng/h5ai.git
> cd h5ai
@@ -30,21 +33,54 @@ You'll find a new directory `build` including a fresh zipball.
## License
**h5ai** is provided under the terms of the [MIT License](https://github.com/lrsjng/h5ai/blob/develop/LICENSE.md).
The MIT License (MIT)
It profits from these great projects:
[Evolvere Icon Theme](http://franksouza183.deviantart.com/art/Evolvere-Icon-theme-440718295)&nbsp;(CC BY-NC-ND 3.0),
[Faenza Icons](http://tiheum.deviantart.com/art/Faenza-Icons-173323228)&nbsp;(GPL),
[Gnome Symbolic Icon Theme](https://git.gnome.org/browse/gnome-icon-theme-symbolic/)&nbsp;(CC BY-SA 3.0),
[HTML5 ★ Boilerplate](http://html5boilerplate.com)&nbsp;(MIT),
Copyright (c) 2014 Lars Jung (http://larsjung.de)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
## References
**h5ai** profits from these great projects:
[GNOME&nbsp;Symbolic&nbsp;Icons](https://github.com/GNOME/gnome-icon-theme-symbolic)&nbsp;(CC BY-SA 3.0),
[HTML5&nbsp;★&nbsp;Boilerplate](http://html5boilerplate.com)&nbsp;(MIT),
[jQuery](http://jquery.com)&nbsp;(MIT),
[jQuery.fracs](http://larsjung.de/fracs/)&nbsp;(MIT),
[jQuery.mousewheel](https://github.com/brandonaaron/jquery-mousewheel)&nbsp;(MIT),
[jQuery.qrcode](http://larsjung.de/qrcode/)&nbsp;(MIT),
[jQuery.scrollpanel](http://larsjung.de/scrollpanel/)&nbsp;(MIT),
[markdown-js](https://github.com/evilstreak/markdown-js)&nbsp;(MIT),
[Lo-Dash](http://lodash.com)&nbsp;(MIT),
[marked](https://github.com/chjj/marked)&nbsp;(MIT),
[Modernizr](http://www.modernizr.com)&nbsp;(MIT/BSD),
[modulejs](http://larsjung.de/modulejs/)&nbsp;(MIT),
[Moment.js](http://momentjs.com)&nbsp;(MIT),
[SyntaxHighlighter](http://alexgorbatchev.com/SyntaxHighlighter/)&nbsp;(MIT/GPL),
[Underscore.js](http://underscorejs.org)&nbsp;(MIT)
[Prism](http://prismjs.com)&nbsp;(MIT)
[web]: http://larsjung.de/h5ai/
[gh]: https://github.com/lrsjng/h5ai
[gh-issues]: https://github.com/lrsjng/h5ai/issues
[release]: http://release.larsjung.de/h5ai/
[develop]: http://release.larsjung.de/h5ai/develop/
[fquery]: http://larsjung.de/fquery/
[license-img]: http://img.shields.io/badge/license-MIT-a0a060.svg?style=flat-square
[web-img]: http://img.shields.io/badge/web-larsjung.de/h5ai-a0a060.svg?style=flat-square
[gh-img]: http://img.shields.io/badge/github-lrsjng/h5ai-a0a060.svg?style=flat-square

View File

@@ -4,163 +4,163 @@
module.exports = function (make) {
var path = require('path'),
var path = require('path'),
pkg = require('./package.json'),
pkg = require('./package.json'),
root = path.resolve(__dirname),
src = path.join(root, 'src'),
build = path.join(root, 'build'),
root = path.resolve(__dirname),
src = path.join(root, 'src'),
build = path.join(root, 'build'),
$ = make.fQuery,
mapSrc = $.map.p(src, build).s('.less', '.css').s('.jade', ''),
mapRoot = $.map.p(root, path.join(build, '_h5ai'));
$ = make.fQuery,
mapSrc = $.map.p(src, build).s('.less', '.css').s('.jade', ''),
mapRoot = $.map.p(root, path.join(build, '_h5ai'));
make.version('>=0.10.0');
make.defaults('build');
make.version('>=0.10.0');
make.defaults('build');
make.before(function () {
make.before(function () {
var moment = make.moment();
var moment = make.moment();
make.env = {
pkg: pkg,
stamp: moment.format('YYYY-MM-DD HH:mm:ss')
};
make.env = {
pkg: pkg,
stamp: moment.format('YYYY-MM-DD HH:mm:ss')
};
$.info({ method: 'before', message: pkg.version + ' ' + make.env.stamp });
});
$.info({ method: 'before', message: pkg.version + ' ' + make.env.stamp });
});
make.target('check-version', [], 'add git info to dev builds').async(function (done, fail) {
make.target('check-version', [], 'add git info to dev builds').async(function (done, fail) {
if (!/\+$/.test(pkg.version)) {
done();
return;
}
if (!pkg.develop) {
done();
return;
}
$.git(root, function (err, result) {
$.git(root, function (err, result) {
pkg.version += result.buildSuffix;
$.info({ method: 'check-version', message: 'version set to ' + pkg.version });
done();
});
});
pkg.version += '+' + result.buildSuffix;
$.info({ method: 'check-version', message: 'version set to ' + pkg.version });
done();
});
});
make.target('clean', [], 'delete build folder').sync(function () {
make.target('clean', [], 'delete build folder').sync(function () {
$.DELETE(build);
});
$.DELETE(build);
});
make.target('lint', [], 'lint all JavaScript files with JSHint').sync(function () {
make.target('lint', [], 'lint all JavaScript files with JSHint').sync(function () {
var jshint = {
// Enforcing Options
bitwise: true,
curly: true,
eqeqeq: true,
forin: true,
latedef: true,
newcap: true,
noempty: true,
plusplus: true,
trailing: true,
undef: true,
var jshint = {
// Enforcing Options
bitwise: true,
curly: true,
eqeqeq: true,
forin: true,
latedef: true,
newcap: true,
noempty: true,
plusplus: true,
trailing: true,
undef: true,
// Environments
browser: true
},
globals = {
'modulejs': true
};
// Environments
browser: true
},
globals = {
'modulejs': true
};
$(src + '/_h5ai/client/js: **/*.js, ! lib/**')
.jshint(jshint, globals);
});
$(src + '/_h5ai/client/js: **/*.js, ! lib/**')
.jshint(jshint, globals);
});
make.target('build', ['check-version'], 'build all updated files').sync(function () {
make.target('build', ['check-version'], 'build all updated files').sync(function () {
var header = '/* ' + pkg.name + ' ' + pkg.version + ' - ' + pkg.url + ' */';
var header = '/* ' + pkg.name + ' ' + pkg.version + ' - ' + pkg.url + ' */';
$(src + ': _h5ai/client/js/*.js')
.newerThan(mapSrc, $(src + ': _h5ai/client/js/**'))
.includify()
.uglifyjs({header: header})
.WRITE(mapSrc);
$(src + ': _h5ai/client/js/*.js')
.newerThan(mapSrc, $(src + ': _h5ai/client/js/**'))
.includify()
.uglifyjs({header: header})
.WRITE(mapSrc);
$(src + ': _h5ai/client/css/*.less')
.newerThan(mapSrc, $(src + ': _h5ai/client/css/**'))
.less()
.cssmin({header: header})
.WRITE(mapSrc);
$(src + ': _h5ai/client/css/*.less')
.newerThan(mapSrc, $(src + ': _h5ai/client/css/**'))
.less()
.cssmin({header: header})
.WRITE(mapSrc);
$(src + ': **/*.jade')
.newerThan(mapSrc)
.handlebars(make.env)
.jade()
.WRITE(mapSrc);
$(src + ': **/*.jade')
.newerThan(mapSrc)
.handlebars(make.env)
.jade()
.WRITE(mapSrc);
$(src + ': **, ! _h5ai/client/js/**, ! _h5ai/client/css/**, ! **/*.jade')
.newerThan(mapSrc)
.handlebars(make.env)
.WRITE(mapSrc);
$(src + ': **, ! _h5ai/client/js/**, ! _h5ai/client/css/**, ! **/*.jade')
.newerThan(mapSrc)
.handlebars(make.env)
.WRITE(mapSrc);
$(src + ': _h5ai/client/css/fonts/**')
.newerThan(mapSrc)
.WRITE(mapSrc);
$(src + ': _h5ai/client/css/fonts/**')
.newerThan(mapSrc)
.WRITE(mapSrc);
$(root + ': *.md')
.newerThan(mapRoot)
.WRITE(mapRoot);
});
$(root + ': *.md')
.newerThan(mapRoot)
.WRITE(mapRoot);
});
make.target('build-uncompressed', ['check-version'], 'build all updated files without compression').sync(function () {
make.target('build-uncompressed', ['check-version'], 'build all updated files without compression').sync(function () {
$(src + ': _h5ai/client/js/*.js')
.newerThan(mapSrc, $(src + ': _h5ai/client/js/**'))
.includify()
// .uglifyjs()
.WRITE(mapSrc);
$(src + ': _h5ai/client/js/*.js')
.newerThan(mapSrc, $(src + ': _h5ai/client/js/**'))
.includify()
// .uglifyjs()
.WRITE(mapSrc);
$(src + ': _h5ai/client/css/*.less')
.newerThan(mapSrc, $(src + ': _h5ai/client/css/**'))
.less()
// .cssmin()
.WRITE(mapSrc);
$(src + ': _h5ai/client/css/*.less')
.newerThan(mapSrc, $(src + ': _h5ai/client/css/**'))
.less()
// .cssmin()
.WRITE(mapSrc);
$(src + ': **/*.jade')
.newerThan(mapSrc)
.handlebars(make.env)
.jade()
.WRITE(mapSrc);
$(src + ': **/*.jade')
.newerThan(mapSrc)
.handlebars(make.env)
.jade()
.WRITE(mapSrc);
$(src + ': **, ! _h5ai/client/js/**, ! _h5ai/client/css/**, ! **/*.jade')
.newerThan(mapSrc)
.handlebars(make.env)
.WRITE(mapSrc);
$(src + ': **, ! _h5ai/client/js/**, ! _h5ai/client/css/**, ! **/*.jade')
.newerThan(mapSrc)
.handlebars(make.env)
.WRITE(mapSrc);
$(src + ': _h5ai/client/css/fonts/**')
.newerThan(mapSrc)
.WRITE(mapSrc);
$(src + ': _h5ai/client/css/fonts/**')
.newerThan(mapSrc)
.WRITE(mapSrc);
$(root + ': *.md')
.newerThan(mapRoot)
.WRITE(mapRoot);
});
$(root + ': *.md')
.newerThan(mapRoot)
.WRITE(mapRoot);
});
make.target('release', ['clean', 'build'], 'create a zipball').async(function (done, fail) {
make.target('release', ['clean', 'build'], 'create a zipball').async(function (done, fail) {
$(build + ': **').shzip({
target: path.join(build, pkg.name + '-' + pkg.version + '.zip'),
dir: build,
callback: done
});
});
$(build + ': **').shzip({
target: path.join(build, pkg.name + '-' + pkg.version + '.zip'),
dir: build,
callback: done
});
});
};

View File

@@ -1,12 +1,22 @@
{
"name": "h5ai",
"version": "0.25.1",
"version": "0.26.0",
"develop": false,
"description": "a modern HTTP web server index",
"url": "http://larsjung.de/h5ai/",
"author": "Lars Jung",
"homepage": "http://larsjung.de/h5ai/",
"bugs": "https://github.com/lrsjng/h5ai/issues",
"author": "Lars Jung <lrsjng@gmail.com> (http://larsjung.de)",
"license": "MIT",
"repository": {
"type": "git",
"url": "https://github.com/lrsjng/h5ai.git"
},
"scripts": {
"test": "mocha --recursive test"
},
"devDependencies": {
"lodash": "~2.4.1",
"mocha": "~1.21.3",
"zombie": "~2.0.0-alpha31"
}
}

View File

@@ -68,31 +68,31 @@ AddDefaultCharset utf-8
ExpiresActive on
ExpiresDefault "access plus 1 month"
# CSS
# CSS
ExpiresByType text/css "access plus 1 week"
# Data interchange
# Data interchange
ExpiresByType application/json "access plus 0 seconds"
ExpiresByType application/xml "access plus 0 seconds"
ExpiresByType text/xml "access plus 0 seconds"
# Favicon (cannot be renamed!)
# Favicon (cannot be renamed!)
ExpiresByType image/x-icon "access plus 1 week"
# HTML components (HTCs)
# HTML components (HTCs)
ExpiresByType text/x-component "access plus 1 month"
# HTML
# HTML
ExpiresByType text/html "access plus 0 seconds"
# JavaScript
# JavaScript
ExpiresByType application/javascript "access plus 1 week"
# Manifest files
# Manifest files
ExpiresByType application/x-web-app-manifest+json "access plus 0 seconds"
ExpiresByType text/cache-manifest "access plus 0 seconds"
# Media
# Media
ExpiresByType audio/ogg "access plus 1 month"
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"
@@ -101,11 +101,11 @@ AddDefaultCharset utf-8
ExpiresByType video/ogg "access plus 1 month"
ExpiresByType video/webm "access plus 1 month"
# Web feeds
# Web feeds
ExpiresByType application/atom+xml "access plus 1 hour"
ExpiresByType application/rss+xml "access plus 1 hour"
# Web fonts
# Web fonts
ExpiresByType application/font-woff "access plus 1 month"
ExpiresByType application/vnd.ms-fontobject "access plus 1 month"
ExpiresByType application/x-font-ttf "access plus 1 month"

View File

@@ -1,6 +1,6 @@
----------------------
Ubuntu Font Family
======================
----------------------
Ubuntu Font Family
======================
The Ubuntu Font Family are a set of matching new libre/open fonts in
development during 2010--2011. The development is being funded by
@@ -12,4 +12,4 @@ Both the final font Truetype/OpenType files and the design files used
to produce the font family are distributed under an open licence and
you are expressly encouraged to experiment, modify, share and improve.
http://font.ubuntu.com/
http://font.ubuntu.com/

View File

@@ -1,73 +1,73 @@
#bottombar {
position: fixed;
z-index: 5;
width: 100%;
height: 18px;
left: 0;
bottom: 0;
padding: 6px 0 8px 0;
background-color: @col-widget-back;
border-top: @border-widget;
position: fixed;
z-index: 5;
width: 100%;
height: 18px;
left: 0;
bottom: 0;
padding: 6px 0 8px 0;
background-color: @col-widget-back;
border-top: @border-widget;
color: #999;
text-align: center;
color: #999;
text-align: center;
a, a:active, a:visited {
color: #555;
text-decoration: none;
.transition(all 0.2s ease-in-out);
opacity: 0.7;
a, a:active, a:visited {
color: #555;
text-decoration: none;
.transition(all 0.2s ease-in-out);
opacity: 0.7;
&:hover {
color: @col-hover;
opacity: 1;
}
}
.left {
position: absolute;
left: 0;
display: block;
padding: 0 8px;
}
.center {
display: block;
}
.right {
position: absolute;
right: 0;
display: block;
padding: 0 8px;
}
.noJsMsg {
color: @col-error;
margin-left: 16px;
}
.noBrowserMsg {
color: @col-error;
margin-left: 16px;
a, a:active, a:visited {
color: @col-error;
text-decoration: underline;
opacity: 1;
&:hover {
color: @col-hover;
}
}
}
.status {
.sep {
display: inline-block;
padding: 0 6px;
&:hover {
color: @col-hover;
opacity: 1;
}
}
.left {
position: absolute;
left: 0;
display: block;
padding: 0 8px;
}
.center {
display: block;
}
.right {
position: absolute;
right: 0;
display: block;
padding: 0 8px;
}
.noJsMsg {
color: @col-error;
margin-left: 16px;
}
.noBrowserMsg {
color: @col-error;
margin-left: 16px;
a, a:active, a:visited {
color: @col-error;
text-decoration: underline;
opacity: 1;
&:hover {
color: @col-hover;
}
}
}
.status {
.sep {
display: inline-block;
padding: 0 6px;
&:before {
content: '·'
}
}
&.default {
}
&.dynamic {
display: none;
}
}
&:before {
content: '·'
}
}
&.default {
}
&.dynamic {
display: none;
}
}
}

View File

@@ -1,34 +1,34 @@
#content {
max-width: 960px;
margin: 50px auto;
font-size: 15px;
max-width: 960px;
margin: 50px auto;
font-size: 15px;
}
#content-header, #content-footer {
color: #333;
color: #333;
a, a:active, a:visited {
color: @col-link;
text-decoration: none;
cursor: pointer;
a, a:active, a:visited {
color: @col-link;
text-decoration: none;
cursor: pointer;
&:hover {
color: #555;
}
}
&:hover {
color: #555;
}
}
pre, code {
font-family: @font-family-mono;
}
pre, code {
font-family: @font-family-mono;
}
}
#content-header {
padding-bottom: 12px;
margin-bottom: 32px;
padding-bottom: 12px;
margin-bottom: 32px;
}
#content-footer {
padding-top: 12px;
margin-top: 32px;
padding-top: 12px;
margin-top: 32px;
}

View File

@@ -1,32 +1,32 @@
#view .context-menu {
display: block;
position: absolute;
right: 0;
top: 0;
background-color: @col-widget-back;
border: @border-widget;
color: #999;
z-index: 10;
font-size: 0.9em;
display: block;
position: absolute;
right: 0;
top: 0;
background-color: @col-widget-back;
border: @border-widget;
color: #999;
z-index: 10;
font-size: 0.9em;
ul {
margin: 0;
padding: 0;
list-style: none;
text-align: left;
ul {
margin: 0;
padding: 0;
list-style: none;
text-align: left;
li {
padding: 8px 12px 10px 12px;
white-space: nowrap;
border-top: @border-widget-sep;
.transition(all 0.2s ease-in-out);
li {
padding: 8px 12px 10px 12px;
white-space: nowrap;
border-top: @border-widget-sep;
.transition(all 0.2s ease-in-out);
&:hover {
color: @col-hover;
background-color: @col-widget-back-hover;
}
}
}
&:hover {
color: @col-hover;
background-color: @col-widget-back-hover;
}
}
}
}

View File

@@ -1,10 +1,10 @@
#download {
display: none;
.topbar-right;
.transition(all 0.2s ease-in-out);
display: none;
.topbar-right;
.transition(all 0.2s ease-in-out);
&.failed {
background-color: rgba(255,0,0,0.5);
}
&.failed {
background-color: rgba(255,0,0,0.5);
}
}

View File

@@ -1,71 +1,71 @@
#fallback {
display: none;
max-width: 960px;
margin: 80px auto;
display: none;
max-width: 960px;
margin: 80px auto;
table {
display: block;
width: 100%;
border-collapse: collapse;
table {
display: block;
width: 100%;
border-collapse: collapse;
th, td {
padding: 6px;
text-align: left;
border: none;
}
th {
padding-bottom: 18px;
color: #555;
font-weight: normal;
opacity: 0.4;
}
td {
border-bottom: 1px solid @col-border;
overflow: hidden;
white-space: nowrap;
font-size: 15px;
th, td {
padding: 6px;
text-align: left;
border: none;
}
th {
padding-bottom: 18px;
color: #555;
font-weight: normal;
opacity: 0.4;
}
td {
border-bottom: 1px solid @col-border;
overflow: hidden;
white-space: nowrap;
font-size: 15px;
a, a:active, a:visited {
display: block;
color: #555;
text-decoration: none;
cursor: pointer;
a, a:active, a:visited {
display: block;
color: #555;
text-decoration: none;
cursor: pointer;
&:hover {
color: @col-hover;
}
}
}
.fb-i {
width: 24px;
&:hover {
color: @col-hover;
}
}
}
.fb-i {
width: 24px;
img {
width: 24px;
height: 24px;
}
}
.fb-n {
width: 682px;
max-width: 682px;
}
.fb-d {
text-align: right;
width: 160px;
min-width: 160px;
}
.fb-s {
text-align: right;
width: 70px;
min-width: 70px;
}
}
img {
width: 24px;
height: 24px;
}
}
.fb-n {
width: 682px;
max-width: 682px;
}
.fb-d {
text-align: right;
width: 160px;
min-width: 160px;
}
.fb-s {
text-align: right;
width: 70px;
min-width: 70px;
}
}
}
html.no-js, html.no-browser {
#fallback {
display: block;
}
#fallback {
display: block;
}
}

View File

@@ -1,19 +1,19 @@
#filter {
.topbar-right;
.topbar-right;
input {
border: none;
font-family: @font-family;
color: @col;
background-color: rgba(0,0,0,0);
width: 30px;
outline: none;
}
input {
border: none;
font-family: @font-family;
color: @col;
background-color: rgba(0,0,0,0);
width: 30px;
outline: none;
}
&.current {
input {
width: 150px;
}
}
&.current {
input {
width: 150px;
}
}
}

View File

@@ -1,56 +1,56 @@
@font-face {
font-family: 'Ubuntu';
font-style: normal;
font-weight: 300;
src: local('Ubuntu Light'), local('Ubuntu-Light'), url(fonts/Ubuntu-L.woff) format('woff'), url(fonts/Ubuntu-L.ttf) format('ttf');
font-family: 'Ubuntu';
font-style: normal;
font-weight: 300;
src: local('Ubuntu Light'), local('Ubuntu-Light'), url(fonts/Ubuntu-L.woff) format('woff');
}
@font-face {
font-family: 'Ubuntu';
font-style: normal;
font-weight: 700;
src: local('Ubuntu Bold'), local('Ubuntu-Bold'), url(fonts/Ubuntu-B.woff) format('woff'), url(fonts/Ubuntu-B.ttf) format('ttf');
font-family: 'Ubuntu';
font-style: normal;
font-weight: 700;
src: local('Ubuntu Bold'), local('Ubuntu-Bold'), url(fonts/Ubuntu-B.woff) format('woff');
}
@font-face {
font-family: 'Ubuntu';
font-style: italic;
font-weight: 300;
src: local('Ubuntu Light Italic'), local('Ubuntu-LightItalic'), url(fonts/Ubuntu-LI.woff) format('woff'), url(fonts/Ubuntu-LI.ttf) format('ttf');
font-family: 'Ubuntu';
font-style: italic;
font-weight: 300;
src: local('Ubuntu Light Italic'), local('Ubuntu-LightItalic'), url(fonts/Ubuntu-LI.woff) format('woff');
}
@font-face {
font-family: 'Ubuntu';
font-style: italic;
font-weight: 700;
src: local('Ubuntu Bold Italic'), local('Ubuntu-BoldItalic'), url(fonts/Ubuntu-BI.woff) format('woff'), url(fonts/Ubuntu-BI.ttf) format('ttf');
font-family: 'Ubuntu';
font-style: italic;
font-weight: 700;
src: local('Ubuntu Bold Italic'), local('Ubuntu-BoldItalic'), url(fonts/Ubuntu-BI.woff) format('woff');
}
@font-face {
font-family: 'Ubuntu Mono';
font-style: normal;
font-weight: 400;
src: local('Ubuntu Mono'), local('UbuntuMono-Regular'), url(fonts/UbuntuMono-R.woff) format('woff'), url(fonts/UbuntuMono-R.ttf) format('ttf');
font-family: 'Ubuntu Mono';
font-style: normal;
font-weight: 400;
src: local('Ubuntu Mono'), local('UbuntuMono-Regular'), url(fonts/UbuntuMono-R.woff) format('woff');
}
@font-face {
font-family: 'Ubuntu Mono';
font-style: normal;
font-weight: 700;
src: local('Ubuntu Mono Bold'), local('UbuntuMono-Bold'), url(fonts/UbuntuMono-B.woff) format('woff'), url(fonts/UbuntuMono-B.ttf) format('ttf');
font-family: 'Ubuntu Mono';
font-style: normal;
font-weight: 700;
src: local('Ubuntu Mono Bold'), local('UbuntuMono-Bold'), url(fonts/UbuntuMono-B.woff) format('woff');
}
@font-face {
font-family: 'Ubuntu Mono';
font-style: italic;
font-weight: 400;
src: local('Ubuntu Mono Italic'), local('UbuntuMono-Italic'), url(fonts/UbuntuMono-RI.woff) format('woff'), url(fonts/UbuntuMono-RI.ttf) format('ttf');
font-family: 'Ubuntu Mono';
font-style: italic;
font-weight: 400;
src: local('Ubuntu Mono Italic'), local('UbuntuMono-Italic'), url(fonts/UbuntuMono-RI.woff) format('woff');
}
@font-face {
font-family: 'Ubuntu Mono';
font-style: italic;
font-weight: 700;
src: local('Ubuntu Mono Bold Italic'), local('UbuntuMono-BoldItalic'), url(fonts/Ubuntu-BI.woff) format('woff'), url(fonts/Ubuntu-BI.ttf) format('ttf');
font-family: 'Ubuntu Mono';
font-style: italic;
font-weight: 700;
src: local('Ubuntu Mono Bold Italic'), local('UbuntuMono-BoldItalic'), url(fonts/Ubuntu-BI.woff) format('woff');
}

View File

@@ -36,35 +36,35 @@
::selection { background: #68A9FF; color: #fff; text-shadow: none; }
.transition (@transition) {
-webkit-transition: @transition;
transition: @transition;
-webkit-transition: @transition;
transition: @transition;
}
.transform (@transform) {
-webkit-transform: @transform;
-ms-transform: @transform;
transform: @transform;
zoom: 1;
-webkit-transform: @transform;
-ms-transform: @transform;
transform: @transform;
zoom: 1;
}
html {
min-height: 100%;
overflow: auto;
overflow-y: scroll;
min-height: 100%;
overflow: auto;
overflow-y: scroll;
&.js .noJsMsg {
display: none;
}
&.browser .noBrowserMsg {
display: none;
}
&.js .noJsMsg {
display: none;
}
&.browser .noBrowserMsg {
display: none;
}
}
body {
font-family: @font-family;
font-size: 13px;
font-weight: @font-weight;
color: @col;
background-color: @col-back;
margin: 30px;
font-family: @font-family;
font-size: 13px;
font-weight: @font-weight;
color: @col;
background-color: @col-back;
margin: 30px;
}

View File

@@ -1,103 +1,147 @@
body#h5ai-info {
font-family: @font-family;
margin: 2em auto 4em auto;
font-size: 20px;
color: @col;
max-width: 600px;
text-align: center;
font-family: @font-family;
margin: 2em auto 4em auto;
font-size: 20px;
color: @col;
max-width: 600px;
text-align: center;
a, a:active, a:visited {
color: @col;
text-decoration: none;
.transition(all 0.2s ease-in-out);
a, a:active, a:visited {
color: @col;
text-decoration: none;
.transition(all 0.2s ease-in-out);
&:hover {
color: @col-hover;
}
}
&:hover {
color: @col-hover;
}
}
code {
margin: 0 0.2em;
padding: 2px 4px;
border-radius: 4px;
font-family: @font-family-mono;
letter-spacing: 0.1em;
background-color: @col-widget-back;
border: @border-widget;
}
h1 {
font-size: 3.6em;
margin: 0;
}
h2 {
font-size: 1.15em;
margin: 2.6em 0 0 0;
}
.build-version {
display: block;
}
.build-stamp {
display: block;
margin-top: 0.3em;
font-size: 0.6em;
color: #aaa;
}
.idx-file {
margin-top: 1em;
font-size: 0.6em;
display: block;
color: #aaa;
}
code {
margin: 0 0.2em;
padding: 2px 4px;
border-radius: 4px;
font-family: @font-family-mono;
letter-spacing: 0.1em;
background-color: @col-widget-back;
border: @border-widget;
}
h1 {
font-size: 3.6em;
margin: 0;
}
h2 {
font-size: 1.15em;
margin: 2.6em 0 0 0;
}
p {
line-height: 1.6em;
}
p + p {
margin-top: 1.2em;
}
li {
margin-top: 0.6em;
line-height: 1.4em;
}
#support {
margin: 12px auto 24px auto;
padding: 6px 18px;
width: 164px;
font-size: 12px;
background: @col-widget-back;
border: @border-widget;
border-radius: 4px;
#tests {
display: inline-block;
list-style-type: none;
text-align: left;
margin: 0;
padding: 0;
.paypal {
margin: 6px 0 0 0;
}
}
.test {
.label {
display: inline-block;
width: 370px;
}
.result {
display: inline-block;
width: 70px;
text-align: right;
font-weight: bold;
color: #aaa;
&.passed {
color: #5a5;
}
&.failed {
color: #a55;
}
}
.info {
margin: 4px 0 12px 12px;
font-size: 0.7em;
color: #aaa;
width: 370px;
line-height: 1.2em;
}
}
}
#login-wrapper {
font-size: 14px;
}
#bottombar {
font-size: 13px;
}
#pass {
-moz-appearance: none;
-ms-appearance: none;
-webkit-appearance: none;
font-family: @font-family;
font-weight: @font-weight;
color: @col;
background: @col-widget-back-highlight;
border: @border-widget;
outline: none;
display: inline-block;
width: 200px;
height: 27px;
padding: 0 6px;
margin: 8px;
}
#login, #logout {
display: inline-block;
padding: 4px 16px;
margin: 8px;
background-color: @col-widget-back;
border: @border-widget;
cursor: pointer;
color: @col;
cursor: pointer;
text-decoration: none;
.transition(all 0.2s ease-in-out);
&:hover, &.hover {
background-color: @col-widget-back-highlight;
color: @col-hover;
}
}
#hint {
margin: 12px auto;
width: 360px;
color: @col;
font-size: 12px;
}
#tests-wrapper {
margin: 96px 0;
}
#tests {
display: inline-block;
list-style-type: none;
text-align: left;
margin: 0;
padding: 0;
.test {
margin: 12px 0 0 0;
padding: 6px;
.label {
display: inline-block;
width: 250px;
}
.result {
display: inline-block;
width: 250px;
text-align: right;
font-weight: bold;
&.passed {
color: #5a5;
}
&.failed {
color: #a55;
}
}
.info {
margin: 4px 0 12px 12px;
font-size: 0.7em;
color: #aaa;
width: 460px;
line-height: 1.2em;
}
}
}
#bottombar {
font-size: 13px;
}
}

View File

@@ -1,14 +1,14 @@
#notify {
position: fixed;
left: 50%;
top: 3px;
width: 200px;
margin-left: -100px;
z-index: 100;
padding: 2px 6px 2px 6px;
color: #fff;
background-color: rgba(0, 0, 0, 0.2);
border-radius: 4px;
text-align: center;
position: fixed;
left: 50%;
top: 3px;
width: 200px;
margin-left: -100px;
z-index: 100;
padding: 2px 6px 2px 6px;
color: #fff;
background-color: rgba(0, 0, 0, 0.2);
border-radius: 4px;
text-align: center;
}

View File

@@ -1,9 +1,9 @@
#pv-aud-audio {
position: absolute;
position: absolute;
max-width: 100%;
max-height: 100%;
max-width: 100%;
max-height: 100%;
box-shadow: 0 0 8px 2px rgba(0, 0, 0, 0.3);
box-shadow: 0 0 8px 2px rgba(0, 0, 0, 0.3);
}

View File

@@ -2,17 +2,17 @@
@check-white: #f8f8f8;
@check-black: #e8e8e8;
#pv-img-image {
position: absolute;
position: absolute;
max-width: 100%;
max-height: 100%;
max-width: 100%;
max-height: 100%;
background-color: @check-white;
background-image:
-webkit-linear-gradient(45deg, @check-black 25%, transparent 25%, transparent 75%, @check-black 75%, @check-black),
-webkit-linear-gradient(45deg, @check-black 25%, transparent 25%, transparent 75%, @check-black 75%, @check-black);
background-size: 60px 60px;
background-position: 0 0, 30px 30px;
background-color: @check-white;
background-image:
-webkit-linear-gradient(45deg, @check-black 25%, transparent 25%, transparent 75%, @check-black 75%, @check-black),
-webkit-linear-gradient(45deg, @check-black 25%, transparent 25%, transparent 75%, @check-black 75%, @check-black);
background-size: 60px 60px;
background-position: 0 0, 30px 30px;
box-shadow: 0 0 8px 2px rgba(0, 0, 0, 0.3);
box-shadow: 0 0 8px 2px rgba(0, 0, 0, 0.3);
}

View File

@@ -1,123 +1,174 @@
#pv-txt-text {
max-width: 960px;
text-align: left;
background-color: #fff;
margin: 0 auto;
padding: 8px;
overflow: auto;
max-width: 960px;
text-align: left;
background-color: #fff;
margin: 0 auto;
padding: 8px;
overflow: auto;
box-shadow: 0 0 8px 2px rgba(0, 0, 0, 0.3);
box-shadow: 0 0 8px 2px rgba(0, 0, 0, 0.3);
&.highlighted {
word-break: break-all;
&.highlighted {
// word-break: break-all;
tr:hover {
background-color: rgba(0,0,0,0.05);
code {
font-family: @font-family-mono;
font-size: 16px;
line-height: 1.2em;
}
.nr {
color: #333;
}
}
a, a:active, a:visited {
color: #2080FF;
text-decoration: none;
cursor: pointer;
td {
vertical-align: top;
font-family: @font-family-mono;
font-size: 16px;
line-height: 1.2em;
color: #999;
word-break: normal;
&:hover {
color: #68A9FF;
}
}
&.nr {
text-align: right;
padding: 0 8px 0 4px;
}
.token.comment,
.token.prolog,
.token.doctype,
.token.cdata {
color: #aaa;
}
&.line {
width: 100%;
padding: 0 4px 0 8px;
}
.token.punctuation {
color: #999;
}
code {
font-family: @font-family-mono;
font-size: 16px;
line-height: 1.2em;
}
}
.namespace {
opacity: .7;
}
.plain {
color: #000;
}
.comments {
color: #008200;
}
.string {
color: #1111ff;
}
.keyword {
color: #006699;
font-weight: bold;
}
.preprocessor {
color: #999;
}
.variable {
color: #aa7700;
}
.value {
color: #009900;
}
.functions {
color: #ff1493;
}
.constants {
color: #0066cc;
}
.script {
color: #006699;
font-weight: bold;
}
.color1 {
color: #999;
}
.color2 {
color: #ff1493;
}
.color3 {
color: #ff1111;
}
.token.property,
.token.tag,
.token.boolean,
.token.number,
.token.constant,
.token.symbol {
color: #905;
}
a, a:active, a:visited {
color: #2080FF;
text-decoration: none;
cursor: pointer;
.token.selector,
.token.attr-name,
.token.string,
.token.builtin {
color: #690;
}
&:hover {
color: #68A9FF;
}
}
}
.token.operator,
.token.entity,
.token.url,
.language-css .token.string,
.style .token.string,
.token.variable {
color: #a67f59;
background: hsla(0,0%,100%,.5);
}
.token.atrule,
.token.attr-value,
.token.keyword {
color: #07a;
}
.token.function {
color: #DD4A68;
}
.token.regex,
.token.important {
color: #e90;
}
.token.important {
font-weight: bold;
}
.token.entity {
cursor: help;
}
// pre.line-numbers {
// position: relative;
// padding-left: 3.8em;
// counter-reset: linenumber;
// }
// pre.line-numbers > code {
// position: relative;
// }
// .line-numbers .line-numbers-rows {
// position: absolute;
// pointer-events: none;
// top: 0;
// font-size: 100%;
// left: -3.8em;
// width: 3em; /* works for line-numbers below 1000 lines */
// letter-spacing: -1px;
// border-right: 1px solid #999;
// -webkit-user-select: none;
// -moz-user-select: none;
// -ms-user-select: none;
// user-select: none;
// }
// .line-numbers-rows > span {
// pointer-events: none;
// display: block;
// counter-increment: linenumber;
// }
// .line-numbers-rows > span:before {
// content: counter(linenumber);
// color: #999;
// display: block;
// padding-right: 0.8em;
// text-align: right;
// }
// .token.tab:not(:empty):before,
// .token.cr:before,
// .token.lf:before {
// color: hsl(24, 20%, 85%);
// }
// .token.tab:not(:empty):before {
// content: '▸';
// }
// .token.cr:before {
// content: '␍';
// }
// .token.lf:before {
// // content: '␊';
// content: '¶';
// }
// .token a {
// color: inherit;
// }
}
&.markdown {
font-size: 16px;
padding: 8px 24px;
&.markdown {
font-size: 16px;
padding: 8px 24px;
a, a:active, a:visited {
color: #2080FF;
text-decoration: none;
cursor: pointer;
a, a:active, a:visited {
color: #2080FF;
text-decoration: none;
cursor: pointer;
&:hover {
color: #68A9FF;
}
}
&:hover {
color: #68A9FF;
}
}
pre, code {
font-family: @font-family-mono;
}
code {
color: #008200;
}
}
pre, code {
font-family: @font-family-mono;
}
code {
color: #008200;
}
}
}

View File

@@ -1,14 +1,14 @@
#pv-vid-video {
position: absolute;
position: absolute;
max-width: 100%;
max-height: 100%;
max-width: 100%;
max-height: 100%;
box-shadow: 0 0 8px 2px rgba(0, 0, 0, 0.3);
box-shadow: 0 0 8px 2px rgba(0, 0, 0, 0.3);
}
#pv-vid-video:-webkit-full-screen {
top: auto !important;
left: auto !important;
top: auto !important;
left: auto !important;
}

View File

@@ -1,154 +1,154 @@
#pv-overlay {
display: none;
position: fixed;
left: 0;
top: 0;
right: 0;
bottom: 0;
z-index: 100;
display: none;
position: fixed;
left: 0;
top: 0;
right: 0;
bottom: 0;
z-index: 100;
background-color: rgba(0,0,0,0.5);
.transition(background-color 0.3s ease-in-out);
background-color: rgba(0,0,0,0.5);
.transition(background-color 0.3s ease-in-out);
text-align: center;
text-align: center;
}
#pv-overlay.fullscreen {
background-color: #111;
background-color: #111;
}
#pv-content {
position: absolute;
position: absolute;
}
#pv-spinner {
position: absolute;
position: absolute;
img {
width: 100px;
height: 100px;
margin: -50px -50px;
}
img {
width: 100px;
height: 100px;
margin: -50px -50px;
}
}
#pv-prev-area, #pv-next-area {
position: absolute;
top: 50%;
cursor: pointer;
position: absolute;
top: 50%;
cursor: pointer;
img {
width: 48px;
height: 48px;
margin: -36px 0;
padding: 12px;
opacity: 0.5;
}
img {
width: 48px;
height: 48px;
margin: -36px 0;
padding: 12px;
opacity: 0.5;
}
&:hover, &.hover {
img {
background-color: rgba(27,27,27,0.8);
opacity: 1;
}
}
&:hover, &.hover {
img {
background-color: rgba(27,27,27,0.8);
opacity: 1;
}
}
}
#pv-prev-area {
left: 0;
img {
border-top-right-radius: 8px;
border-bottom-right-radius: 8px;
padding-left: 48px;
}
left: 0;
img {
border-top-right-radius: 8px;
border-bottom-right-radius: 8px;
padding-left: 48px;
}
}
#pv-next-area {
right: 0;
img {
border-top-left-radius: 8px;
border-bottom-left-radius: 8px;
padding-right: 48px;
}
right: 0;
img {
border-top-left-radius: 8px;
border-bottom-left-radius: 8px;
padding-right: 48px;
}
}
#pv-buttons {
list-style: none;
list-style-image: none;
margin: 0;
padding: 0;
list-style: none;
list-style-image: none;
margin: 0;
padding: 0;
img {
position: relative;
top: -2px;
width: 16px;
height: 16px;
}
img + span, img + input {
margin-left: 6px;
}
input {
background-color: rgba(255,255,255,0.1);
border: none;
color: #ccc;
}
img {
position: relative;
top: -2px;
width: 16px;
height: 16px;
}
img + span, img + input {
margin-left: 6px;
}
input {
background-color: rgba(255,255,255,0.1);
border: none;
color: #ccc;
}
.bar-label {
display: block;
color: #ccc;
height: 30px;
line-height: 30px;
padding: 0 10px;
opacity: 0.7;
.transition(all 0.2s ease-in-out);
}
.bar-label {
display: block;
color: #ccc;
height: 30px;
line-height: 30px;
padding: 0 10px;
opacity: 0.7;
.transition(all 0.2s ease-in-out);
}
.bar-highlight {
background-color: rgba(255,255,255,0.1);
opacity: 1.0;
}
.bar-highlight {
background-color: rgba(255,255,255,0.1);
opacity: 1.0;
}
@bar-sep-border: 1px solid rgba(255,255,255,0.08);
@bar-sep-border: 1px solid rgba(255,255,255,0.08);
.bar-button {
.bar-label;
cursor: pointer;
&:hover, &.hover {
.bar-highlight;
}
}
.bar-button {
.bar-label;
cursor: pointer;
&:hover, &.hover {
.bar-highlight;
}
}
.bar-left {
float: left;
border-right: @bar-sep-border;
}
.bar-left {
float: left;
border-right: @bar-sep-border;
}
.bar-right {
float: right;
border-left: @bar-sep-border;
}
.bar-right {
float: right;
border-left: @bar-sep-border;
}
}
#pv-bottombar {
position: fixed;
z-index: 5;
width: 100%;
height: 32px;
left: 0;
bottom: 0;
background-color: rgb(27,27,27);
border-top: 1px solid rgb(45,45,45);
position: fixed;
z-index: 5;
width: 100%;
height: 32px;
left: 0;
bottom: 0;
background-color: rgb(27,27,27);
border-top: 1px solid rgb(45,45,45);
}
#pv-overlay.fullscreen {
#pv-bottombar {
opacity: 0.5;
}
#pv-bottombar {
opacity: 0.5;
}
}
@media only screen and (max-width: 700px) {
#pv-prev-area, #pv-next-area, #pv-close-area {
display: none !important;
display: none !important;
}
}

View File

@@ -1,16 +1,16 @@
#qrcode {
display: none;
position: fixed;
right: 16px;
bottom: 50px;
z-index: 10;
display: none;
position: fixed;
right: 16px;
bottom: 50px;
z-index: 10;
background-color: @col-widget-back;
border: @border-widget;
padding: 8px;
background-color: @col-widget-back;
border: @border-widget;
padding: 8px;
canvas {
display: block;
}
canvas {
display: block;
}
}

View File

@@ -1,56 +1,56 @@
@media only screen and (max-width: 700px) {
#topbar {
.crumb {
display: none;
}
.current {
display: block;
}
.crumb {
display: none;
}
.current {
display: block;
}
}
#view.view-details {
.header .label, .item .label {
margin-right: 80px !important;
}
.header .date, .item .date {
display: none;
}
.header .label, .item .label {
margin-right: 80px !important;
}
.header .date, .item .date {
display: none;
}
}
#view.view-icons {
padding: 0;
padding: 0;
}
#bottombar {
.center {
display: none;
}
.center {
display: none;
}
}
}
@media only screen and (max-width: 500px) {
body {
margin: 8px;
margin: 8px;
}
#tree {
display: none !important;
display: none !important;
}
}
@media print {
a[href]:after {
content: "";
content: "";
}
#topbar {
position: static;
margin-bottom: 2em;
.view, #download {
display: none;
}
position: static;
margin-bottom: 2em;
.view, #download {
display: none;
}
}
#bottombar {
position: static;
margin-top: 2em;
position: static;
margin-top: 2em;
}
#tree, #sidebar {
display: none !important;
display: none !important;
}
}

View File

@@ -1,125 +1,125 @@
#sidebar {
position: fixed;
right: -220px;
width: 200px;
top: 31px;
height: 100%;
z-index: 3;
overflow: auto;
padding: 8px;
background-color: @col-widget-back;
border-left: @border-widget;
position: fixed;
right: -220px;
width: 200px;
top: 31px;
height: 100%;
z-index: 3;
overflow: auto;
padding: 8px;
background-color: @col-widget-back;
border-left: @border-widget;
}
#settings {
.block {
display: block;
margin: 12px 0;
}
.block {
display: block;
margin: 12px 0;
}
a, a:active, a:visited, span.element {
color: @col;
cursor: pointer;
text-decoration: none;
opacity: 0.7;
.transition(all 0.2s ease-in-out);
a, a:active, a:visited, span.element {
color: @col;
cursor: pointer;
text-decoration: none;
opacity: 0.7;
.transition(all 0.2s ease-in-out);
display: block;
height: 30px;
line-height: 30px;
padding: 0 10px;
display: block;
height: 30px;
line-height: 30px;
padding: 0 10px;
&:hover, &.hover {
opacity: 1.0;
background: @col-widget-back-highlight;
}
}
&:hover, &.hover {
opacity: 1.0;
background: @col-widget-back-highlight;
}
}
.current {
a, span.element {
opacity: 1.0;
background: @col-widget-back-highlight;
}
}
.current {
a, span.element {
opacity: 1.0;
background: @col-widget-back-highlight;
}
}
img {
position: relative;
top: -2px;
width: 16px;
height: 16px;
}
img {
position: relative;
top: -2px;
width: 16px;
height: 16px;
}
.view {
display: inline-block;
margin: 0 4px 0 0;
}
.view {
display: inline-block;
margin: 0 4px 0 0;
}
.select {
background-color: @col-widget-back-highlight;
width: 175px;
overflow: hidden;
}
.select {
background-color: @col-widget-back-highlight;
width: 175px;
overflow: hidden;
}
input, select {
-moz-appearance: none;
-ms-appearance: none;
-webkit-appearance: none;
font-family: @font-family;
font-size: 13px;
font-weight: @font-weight;
color: @col;
background: @col-widget-back;
width: 100%;
height: 30px;
line-height: 30px;
border: 0 solid #000;
outline: none;
cursor: pointer;
}
input, select {
-moz-appearance: none;
-ms-appearance: none;
-webkit-appearance: none;
font-family: @font-family;
font-size: 13px;
font-weight: @font-weight;
color: @col;
background: @col-widget-back;
width: 100%;
height: 30px;
line-height: 30px;
border: 0 solid #000;
outline: none;
cursor: pointer;
}
select {
width: 200px;
padding: 0 4px;
}
select {
width: 200px;
padding: 0 4px;
}
input[type='range'] {
border-radius: 2px;
width: 64px;
margin: 0 0 4px 12px;
padding: 0 2px;
vertical-align: middle;
}
input[type='range'] {
border-radius: 2px;
width: 64px;
margin: 0 0 4px 12px;
padding: 0 2px;
vertical-align: middle;
}
.range-track() {
-moz-appearance: none;
-ms-appearance: none;
-webkit-appearance: none;
border-width: 0;
border-radius: 2px;
background: @col-range-back;
height: 2px;
}
.range-track() {
-moz-appearance: none;
-ms-appearance: none;
-webkit-appearance: none;
border-width: 0;
border-radius: 2px;
background: @col-range-back;
height: 2px;
}
.range-thumb() {
-moz-appearance: none;
-ms-appearance: none;
-webkit-appearance: none;
border-width: 0;
border-radius: 2px;
background: @col-range-thumb;
width: 12px;
height: 12px;
}
.range-thumb() {
-moz-appearance: none;
-ms-appearance: none;
-webkit-appearance: none;
border-width: 0;
border-radius: 2px;
background: @col-range-thumb;
width: 12px;
height: 12px;
}
input[type='range']::-webkit-slider-runnable-track { .range-track; }
input[type='range']::-moz-range-track { .range-track; }
input[type='range']::-ms-track { .range-track; }
input[type='range']::-ms-fill-lower { .range-track; }
input[type='range']::-ms-fill-upper { .range-track; }
input[type='range']::-webkit-slider-runnable-track { .range-track; }
input[type='range']::-moz-range-track { .range-track; }
input[type='range']::-ms-track { .range-track; }
input[type='range']::-ms-fill-lower { .range-track; }
input[type='range']::-ms-fill-upper { .range-track; }
input[type='range']::-webkit-slider-thumb { .range-thumb; margin-top: -5px; }
input[type='range']::-moz-range-thumb { .range-thumb; }
input[type='range']::-ms-thumb { .range-thumb; }
input[type='range']::-webkit-slider-thumb { .range-thumb; margin-top: -5px; }
input[type='range']::-moz-range-thumb { .range-thumb; }
input[type='range']::-ms-thumb { .range-thumb; }
}

View File

@@ -1,87 +1,87 @@
#topbar {
position: fixed;
z-index: 5;
width: 100%;
min-height: 30px;
left: 0;
top: 0;
background-color: @col-widget-back;
border-bottom: @border-widget;
position: fixed;
z-index: 5;
width: 100%;
min-height: 30px;
left: 0;
top: 0;
background-color: @col-widget-back;
border-bottom: @border-widget;
}
.topbar-highlight {
background-color: @col-widget-back-highlight;
opacity: 1.0;
background-color: @col-widget-back-highlight;
opacity: 1.0;
}
.topbar-hover {
.topbar-highlight;
color: @col-hover;
.topbar-highlight;
color: @col-hover;
}
.topbar-left {
float: left;
border-right: @border-widget-sep;
float: left;
border-right: @border-widget-sep;
}
.topbar-right {
float: right;
border-left: @border-widget-sep;
float: right;
border-left: @border-widget-sep;
}
#navbar {
list-style: none;
list-style-image: none;
margin: 0;
padding: 0;
list-style: none;
list-style-image: none;
margin: 0;
padding: 0;
a, a:active, a:visited, span.element {
color: @col;
cursor: pointer;
text-decoration: none;
opacity: 0.7;
.transition(all 0.2s ease-in-out);
a, a:active, a:visited, span.element {
color: @col;
cursor: pointer;
text-decoration: none;
opacity: 0.7;
.transition(all 0.2s ease-in-out);
display: block;
height: 30px;
line-height: 30px;
padding: 0 10px;
display: block;
height: 30px;
line-height: 30px;
padding: 0 10px;
&:hover, &.hover {
.topbar-hover;
}
}
.current {
a, span.element {
.topbar-highlight;
}
}
img {
position: relative;
top: -2px;
width: 16px;
height: 16px;
}
img + span, img + input {
margin-left: 6px;
}
.crumb {
.topbar-left;
.hint {
margin-left: 8px;
font-style: italic;
color: #999;
}
img.hint {
opacity: 0.8;
width: 12px;
height: 12px;
}
}
.view {
.topbar-right;
}
&:hover, &.hover {
.topbar-hover;
}
}
.current {
a, span.element {
.topbar-highlight;
}
}
img {
position: relative;
top: -2px;
width: 16px;
height: 16px;
}
img + span, img + input {
margin-left: 6px;
}
.crumb {
.topbar-left;
.hint {
margin-left: 8px;
font-style: italic;
color: #999;
}
img.hint {
opacity: 0.8;
width: 12px;
height: 12px;
}
}
.view {
.topbar-right;
}
}

View File

@@ -1,116 +1,116 @@
#tree {
display: none;
position: fixed;
left: 0;
top: 31px;
height: 100%;
z-index: 3;
overflow: auto;
padding: 8px;
background-color: @col-widget-back;
border-right: @border-widget;
display: none;
position: fixed;
left: 0;
top: 31px;
height: 100%;
z-index: 3;
overflow: auto;
padding: 8px;
background-color: @col-widget-back;
border-right: @border-widget;
.sp-scrollbar {
width: 6px;
background-color: @col-sb-back;
cursor: pointer;
.sp-scrollbar {
width: 6px;
background-color: @col-sb-back;
cursor: pointer;
.sp-thumb {
background-color: @col-sb-thumb;
}
&.active .sp-thumb {
background-color: @col-sb-thumb-active;
}
}
.sp-thumb {
background-color: @col-sb-thumb;
}
&.active .sp-thumb {
background-color: @col-sb-thumb-active;
}
}
.indicator {
position: relative;
top: 2px;
display: inline-block;
width: 16px;
height: 22px;
float: left;
opacity: 0.7;
cursor: pointer;
.indicator {
position: relative;
top: 2px;
display: inline-block;
width: 16px;
height: 22px;
float: left;
opacity: 0.7;
cursor: pointer;
img {
width: 12px;
height: 12px;
.transition(all 0.2s ease-in-out);
}
&.open {
img {
.transform(rotate(90deg));
}
}
&.unknown {
opacity: 0.3;
}
&.none {
opacity: 0;
cursor: inherit;
}
}
a, a:active, a.visited {
display: block;
height: 1.231em;
line-height: 1.231em;
margin-left: 14px;
padding: 4px 6px;
color: #555;
border: 1px solid rgba(0,0,0,0);
border-radius: 3px;
text-decoration: none;
opacity: 0.7;
img {
width: 12px;
height: 12px;
.transition(all 0.2s ease-in-out);
}
&.open {
img {
.transform(rotate(90deg));
}
}
&.unknown {
opacity: 0.3;
}
&.none {
opacity: 0;
cursor: inherit;
}
}
a, a:active, a.visited {
display: block;
height: 1.231em;
line-height: 1.231em;
margin-left: 14px;
padding: 4px 6px;
color: #555;
border: 1px solid rgba(0,0,0,0);
border-radius: 3px;
text-decoration: none;
opacity: 0.7;
&:hover, &.hover {
color: @col-hover;
background-color: @col-widget-back-hover;
opacity: 1;
}
}
.icon {
position: relative;
top: -2px;
margin-right: 6px;
&:hover, &.hover {
color: @col-hover;
background-color: @col-widget-back-hover;
opacity: 1;
}
}
.icon {
position: relative;
top: -2px;
margin-right: 6px;
img {
width: 16px;
height: 16px;
}
}
.hint {
margin-left: 6px;
font-size: 0.9em;
color: #ccc;
}
.content {
list-style: none;
margin: 0;
padding: 0 0 0 24px;
}
.summary {
margin: 0 0 0 24px;
color: #999;
font-style: italic;
}
.current {
> a, > a:active, > a:visited {
background-color: @col-widget-back-sel;
border-color: @col-widget-sep;
opacity: 1;
}
}
.error {
> a, > a:active, > a:visited {
color: #999;
&:hover, &.hover {
color: @col-hover;
}
}
.hint {
color: #c55;
}
}
img {
width: 16px;
height: 16px;
}
}
.hint {
margin-left: 6px;
font-size: 0.9em;
color: #ccc;
}
.content {
list-style: none;
margin: 0;
padding: 0 0 0 24px;
}
.summary {
margin: 0 0 0 24px;
color: #999;
font-style: italic;
}
.current {
> a, > a:active, > a:visited {
background-color: @col-widget-back-sel;
border-color: @col-widget-sep;
opacity: 1;
}
}
.error {
> a, > a:active, > a:visited {
color: #999;
&:hover, &.hover {
color: @col-hover;
}
}
.hint {
color: #c55;
}
}
}

View File

@@ -1,122 +1,122 @@
.view-details-sized(@size) {
li {
li {
&.item {
&.item {
a, a:active, a:visited {
height: @size + 6px;
}
a, a:active, a:visited {
height: @size + 6px;
}
.label, .date, .size {
padding: ((@size - 16px)/2) 8px;
}
}
.label, .date, .size {
padding: ((@size - 16px)/2) 8px;
}
}
.icon.square {
width: @size;
.icon.square {
width: @size;
img {
width: @size;
height: @size;
}
}
img {
width: @size;
height: @size;
}
}
.label {
margin: 0 230px 0 (@size + 16px);
}
}
.label {
margin: 0 230px 0 (@size + 16px);
}
}
}
#view.view-details {
li {
li {
&.header {
display: list-item;
}
&.header {
display: list-item;
}
&.item {
&.item {
a, a:active, a:visited {
border-bottom: 1px solid @item-border-col-sep;
a, a:active, a:visited {
border-bottom: 1px solid @item-border-col-sep;
&:hover, &.hover {
border-color: @item-border-col-hover;
}
}
&:hover, &.hover {
border-color: @item-border-col-hover;
}
}
// needs to be here, to not conflict with header fields
.icon {
padding: 8px;
}
}
// needs to be here, to not conflict with header fields
.icon {
padding: 8px;
}
}
.icon.square {
display: inline-block;
position: absolute;
left: 0;
top: -4px;
}
.icon.square {
display: inline-block;
position: absolute;
left: 0;
top: -4px;
}
.date {
position: absolute;
right: 100px;
top: 0;
}
.date {
position: absolute;
right: 100px;
top: 0;
}
.size {
position: absolute;
right: 0;
top: 0;
}
.size {
position: absolute;
right: 0;
top: 0;
}
.selector {
margin-top: -1px;
}
}
.selector {
margin-top: -1px;
}
}
.view-details-sized(@icon-size);
.view-details-sized(@icon-size);
&.size-16 {
.view-details-sized(16px)
}
&.size-16 {
.view-details-sized(16px)
}
&.size-24 {
.view-details-sized(24px)
}
&.size-24 {
.view-details-sized(24px)
}
&.size-32 {
.view-details-sized(32px)
}
&.size-32 {
.view-details-sized(32px)
}
&.size-48 {
.view-details-sized(48px)
}
&.size-48 {
.view-details-sized(48px)
}
&.size-64 {
.view-details-sized(64px)
}
&.size-64 {
.view-details-sized(64px)
}
&.size-96 {
.view-details-sized(96px)
}
&.size-96 {
.view-details-sized(96px)
}
&.size-128 {
.view-details-sized(128px)
}
&.size-128 {
.view-details-sized(128px)
}
&.size-192 {
.view-details-sized(192px)
}
&.size-192 {
.view-details-sized(192px)
}
&.size-256 {
.view-details-sized(256px)
}
&.size-256 {
.view-details-sized(256px)
}
&.size-384 {
.view-details-sized(384px)
}
&.size-384 {
.view-details-sized(384px)
}
}

View File

@@ -1,113 +1,113 @@
.view-grid-sized(@size) {
li {
li {
&.item {
&.item {
a, a:active, a:visited {
width: @size + 182px;
height: @size + 6px;
}
a, a:active, a:visited {
width: @size + 182px;
height: @size + 6px;
}
.label, .date, .size {
padding: ((@size - 16px)/2) 8px;
}
}
.label, .date, .size {
padding: ((@size - 16px)/2) 8px;
}
}
.icon.square {
width: @size;
.icon.square {
width: @size;
img {
width: @size;
height: @size;
}
}
img {
width: @size;
height: @size;
}
}
.label {
margin: 0 0 0 (@size + 8px);
}
}
.label {
margin: 0 0 0 (@size + 8px);
}
}
}
#view.view-grid {
li {
li {
&.item {
float: left;
margin: 2px;
&.item {
float: left;
margin: 2px;
a, a:active, a:visited {
border: 1px solid rgba(0,0,0,0);
a, a:active, a:visited {
border: 1px solid rgba(0,0,0,0);
&:hover, &.hover {
border-color: @item-border-col-hover;
}
}
&:hover, &.hover {
border-color: @item-border-col-hover;
}
}
// needs to be here, to not conflict with header fields
.icon {
padding: 8px;
}
}
// needs to be here, to not conflict with header fields
.icon {
padding: 8px;
}
}
.icon.square {
display: inline-block;
position: absolute;
left: 0;
top: -4px;
}
.icon.square {
display: inline-block;
position: absolute;
left: 0;
top: -4px;
}
.label {
display: block;
}
.label {
display: block;
}
.date, .size {
display: none;
}
}
.date, .size {
display: none;
}
}
.view-grid-sized(@icon-size);
.view-grid-sized(@icon-size);
&.size-16 {
.view-grid-sized(16px)
}
&.size-16 {
.view-grid-sized(16px)
}
&.size-24 {
.view-grid-sized(24px)
}
&.size-24 {
.view-grid-sized(24px)
}
&.size-32 {
.view-grid-sized(32px)
}
&.size-32 {
.view-grid-sized(32px)
}
&.size-48 {
.view-grid-sized(48px)
}
&.size-48 {
.view-grid-sized(48px)
}
&.size-64 {
.view-grid-sized(64px)
}
&.size-64 {
.view-grid-sized(64px)
}
&.size-96 {
.view-grid-sized(96px)
}
&.size-96 {
.view-grid-sized(96px)
}
&.size-128 {
.view-grid-sized(128px)
}
&.size-128 {
.view-grid-sized(128px)
}
&.size-192 {
.view-grid-sized(192px)
}
&.size-192 {
.view-grid-sized(192px)
}
&.size-256 {
.view-grid-sized(256px)
}
&.size-256 {
.view-grid-sized(256px)
}
&.size-384 {
.view-grid-sized(384px)
}
&.size-384 {
.view-grid-sized(384px)
}
}

View File

@@ -1,115 +1,115 @@
.view-icons-sized(@size) {
li {
li {
&.item {
&.item {
a, a:active, a:visited {
width: @size * 2;
height: @size + 72px;
}
}
a, a:active, a:visited {
width: @size * 2;
height: @size + 72px;
}
}
.icon.rational {
height: @size;
.icon.rational {
height: @size;
img {
width: @size;
height: @size;
}
img.thumb {
width: auto;
height: auto;
max-width: @size * 2;
max-height: @size;
}
}
}
img {
width: @size;
height: @size;
}
img.thumb {
width: auto;
height: auto;
max-width: @size * 2;
max-height: @size;
}
}
}
}
#view.view-icons {
li {
text-align: center;
li {
text-align: center;
&.item {
float: left;
margin: 8px;
&.item {
float: left;
margin: 8px;
a, a:active, a:visited {
padding: 8px;
min-width: 96px;
border: 1px solid rgba(0,0,0,0);
a, a:active, a:visited {
padding: 8px;
min-width: 96px;
border: 1px solid rgba(0,0,0,0);
&:hover, &.hover {
border-color: @item-border-col-hover;
}
}
}
&:hover, &.hover {
border-color: @item-border-col-hover;
}
}
}
.icon.rational {
display: block;
margin-bottom: 6px;
}
.icon.rational {
display: block;
margin-bottom: 6px;
}
.label {
text-align: center;
word-wrap: break-word;
white-space: normal;
}
.label {
text-align: center;
word-wrap: break-word;
white-space: normal;
}
.date, .size {
display: none;
}
}
.date, .size {
display: none;
}
}
.empty, .no-match {
margin: 0 120px;
padding: 16px;
height: 120px;
}
.empty, .no-match {
margin: 0 120px;
padding: 16px;
height: 120px;
}
.view-icons-sized(@icon-size);
.view-icons-sized(@icon-size);
&.size-16 {
.view-icons-sized(16px);
}
&.size-16 {
.view-icons-sized(16px);
}
&.size-24 {
.view-icons-sized(24px);
}
&.size-24 {
.view-icons-sized(24px);
}
&.size-32 {
.view-icons-sized(32px);
}
&.size-32 {
.view-icons-sized(32px);
}
&.size-48 {
.view-icons-sized(48px);
}
&.size-48 {
.view-icons-sized(48px);
}
&.size-64 {
.view-icons-sized(64px);
}
&.size-64 {
.view-icons-sized(64px);
}
&.size-96 {
.view-icons-sized(96px);
}
&.size-96 {
.view-icons-sized(96px);
}
&.size-128 {
.view-icons-sized(128px);
}
&.size-128 {
.view-icons-sized(128px);
}
&.size-192 {
.view-icons-sized(192px);
}
&.size-192 {
.view-icons-sized(192px);
}
&.size-256 {
.view-icons-sized(256px);
}
&.size-256 {
.view-icons-sized(256px);
}
&.size-384 {
.view-icons-sized(384px);
}
&.size-384 {
.view-icons-sized(384px);
}
}

View File

@@ -12,186 +12,186 @@
#selection-rect {
display: none;
position: absolute;
left: 0;
top: 0;
z-index: 2;
border: 1px dashed @col-border-strong;
background-color: rgba(0,0,0,0.01);
display: none;
position: absolute;
left: 0;
top: 0;
z-index: 2;
border: 1px dashed @col-border-strong;
background-color: rgba(0,0,0,0.01);
}
#view {
display: none;
margin: 0 auto;
display: none;
margin: 0 auto;
a, a:active, a:visited {
color: #333;
cursor: pointer;
text-decoration: none;
}
a, a:active, a:visited {
color: #333;
cursor: pointer;
text-decoration: none;
}
ul {
margin: 0;
padding: 0;
list-style: none;
}
ul {
margin: 0;
padding: 0;
list-style: none;
}
li {
position: relative;
white-space: nowrap;
li {
position: relative;
white-space: nowrap;
&.header {
display: none;
font-size: 13px;
&.header {
display: none;
font-size: 13px;
a, a:active, a:visited {
padding: 6px 6px 18px 6px;
opacity: 0.4;
.transition(all 0.2s ease-in-out);
a, a:active, a:visited {
padding: 6px 6px 18px 6px;
opacity: 0.4;
.transition(all 0.2s ease-in-out);
img {
display: none;
position: relative;
top: -2px;
width: 12px;
height: 12px;
padding: 0 8px;
}
&:hover {
color: #555;
opacity: 0.9;
}
&.ascending img.ascending {
display: inline;
}
&.descending img.descending {
display: inline;
}
}
}
img {
display: none;
position: relative;
top: -2px;
width: 12px;
height: 12px;
padding: 0 8px;
}
&:hover {
color: #555;
opacity: 0.9;
}
&.ascending img.ascending {
display: inline;
}
&.descending img.descending {
display: inline;
}
}
}
&.item {
font-size: 15px;
&.item {
font-size: 15px;
a, a:active, a:visited {
display: block;
overflow: hidden;
a, a:active, a:visited {
display: block;
overflow: hidden;
&:hover, &.hover {
color: @col-hover;
background-color: @item-background-col-hover;
border-color: @item-border-col-hover;
}
&:hover, &.hover {
color: @col-hover;
background-color: @item-background-col-hover;
border-color: @item-border-col-hover;
}
&:hover {
.selector {
display: block;
}
}
}
&:hover {
.selector {
display: block;
}
}
}
&.selected:not(.selecting), &.selecting:not(.selected) {
&.selected:not(.selecting), &.selecting:not(.selected) {
a, a:active, a:visited {
background-color: @item-background-col-sel;
border-color: @item-border-col-sel;
a, a:active, a:visited {
background-color: @item-background-col-sel;
border-color: @item-border-col-sel;
&:hover, &.hover {
background-color: @item-background-col-sel;
border-color: @item-border-col-sel;
}
}
&:hover, &.hover {
background-color: @item-background-col-sel;
border-color: @item-border-col-sel;
}
}
.selector {
display: block;
// border-color: @col-border-stronger;
.selector {
display: block;
// border-color: @col-border-stronger;
img {
display: block;
}
}
}
}
img {
display: block;
}
}
}
}
&.folder-parent {
&.folder-parent {
.date, .size {
display: none;
}
}
.date, .size {
display: none;
}
}
.icon {
display: none;
text-align: center;
.icon {
display: none;
text-align: center;
img {
vertical-align: top;
}
img {
vertical-align: top;
}
.thumb {
box-shadow: 0 0 0 1px rgba(0,0,0,0.12);
}
.thumb {
box-shadow: 0 0 0 1px rgba(0,0,0,0.12);
}
&.rational {
.thumb {
padding: 2px;
border-radius: 3px;
}
}
}
&.rational {
.thumb {
padding: 2px;
border-radius: 3px;
}
}
}
.label {
display: block;
overflow: hidden;
text-align: left;
text-overflow: ellipsis;
}
.label {
display: block;
overflow: hidden;
text-align: left;
text-overflow: ellipsis;
}
.date {
text-align: right;
width: 130px;
}
.date {
text-align: right;
width: 130px;
}
.size {
text-align: right;
width: 80px;
}
.size {
text-align: right;
width: 80px;
}
.selector {
display: none;
position: absolute;
left: 0;
top: 0;
width: 18px;
height: 18px;
background-color: #fff;
border: 1px solid @col-border-strong;
cursor: pointer;
.transition(all 0.2s ease-in-out);
.selector {
display: none;
position: absolute;
left: 0;
top: 0;
width: 18px;
height: 18px;
background-color: #fff;
border: 1px solid @col-border-strong;
cursor: pointer;
.transition(all 0.2s ease-in-out);
&:hover {
border-color: @col-border-stronger;
}
&:hover {
border-color: @col-border-stronger;
}
img {
display: none;
width: 100%;
height: 100%;
}
}
}
img {
display: none;
width: 100%;
height: 100%;
}
}
}
.empty, .no-match {
margin: 50px 0;
text-align: center;
color: #ddd;
font-size: 5em;
font-weight: bold;
}
.empty, .no-match {
margin: 50px 0;
text-align: center;
color: #ddd;
font-size: 5em;
font-weight: bold;
}
.no-match {
display: none;
}
.no-match {
display: none;
}
}

View File

@@ -1,17 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg id="svg7384" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/">
<metadata id="metadata90">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:title>Gnome Symbolic Icon Theme</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<title id="title9167">Gnome Symbolic Icon Theme</title>
<g id="layer12" transform="translate(-180,-626)">
<path id="path10839-9-9-8" style="block-progression:tb;text-indent:0;color:#555555;enable-background:new;text-transform:none;fill:#555555" d="m182 631v1c-0.00012 0.0104-0.00046 0.0208 0 0.0313 0.0112 0.25495 0.12858 0.50987 0.3125 0.6875l5.2188 5.2812 5.1875-5.2812c0.19-0.19 0.28-0.45 0.28-0.72v-1h-1c-0.26529 0-0.53058 0.0931-0.71875 0.28125l-3.75 3.8125-3.7812-3.8125c-0.19463-0.21074-0.46925-0.30316-0.75-0.28125h-1z"/>
</g>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1">
<g transform="translate(-180,-626)">
<path d="m182 631v1c-0.00012 0.0104-0.00046 0.0208 0 0.0313 0.0112 0.25495 0.12858 0.50987 0.3125 0.6875l5.2188 5.2812 5.1875-5.2812c0.19-0.19 0.28-0.45 0.28-0.72v-1h-1c-0.26529 0-0.53058 0.0931-0.71875 0.28125l-3.75 3.8125-3.7812-3.8125c-0.19463-0.21074-0.46925-0.30316-0.75-0.28125h-1z" fill="#555"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 457 B

View File

@@ -1,19 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg id="svg7384" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/">
<metadata id="metadata90">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:title>Gnome Symbolic Icon Theme</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<title id="title9167">Gnome Symbolic Icon Theme</title>
<g id="layer12" transform="translate(-320,-626)">
<g id="use43045" transform="translate(200,108)">
<path id="path4421" style="block-progression:tb;text-indent:0;color:#555555;enable-background:new;text-transform:none;fill:#555555" d="m125.03 520h1c0.0104-0.00012 0.0208-0.00046 0.0313 0 0.25495 0.0112 0.50987 0.12858 0.6875 0.3125l5.2812 5.2188-5.2812 5.1875c-0.19 0.19-0.45 0.28-0.72 0.28h-1v-1c0-0.26529 0.0931-0.53058 0.28125-0.71875l3.8125-3.75-3.8125-3.7812c-0.21074-0.19463-0.30316-0.46925-0.28125-0.75v-1z"/>
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1">
<g transform="translate(-320,-626)">
<g transform="translate(200,108)">
<path d="m125.03 520h1c0.0104-0.00012 0.0208-0.00046 0.0313 0 0.25495 0.0112 0.50987 0.12858 0.6875 0.3125l5.2812 5.2188-5.2812 5.1875c-0.19 0.19-0.45 0.28-0.72 0.28h-1v-1c0-0.26529 0.0931-0.53058 0.28125-0.71875l3.8125-3.75-3.8125-3.7812c-0.21074-0.19463-0.30316-0.46925-0.28125-0.75v-1z" fill="#555"/>
</g>
</g>
</g>
</svg>
</svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 508 B

View File

@@ -1,17 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg id="svg7384" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/">
<metadata id="metadata90">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:title>Gnome Symbolic Icon Theme</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<title id="title9167">Gnome Symbolic Icon Theme</title>
<g id="layer12" transform="translate(-200,-626)">
<path id="path10839-9-9-8-1" style="block-progression:tb;text-indent:0;color:#555555;enable-background:new;text-transform:none;fill:#555555" d="m202 637v-1c-0.00012-0.0104-0.00046-0.0208 0-0.0313 0.0112-0.25495 0.12858-0.50987 0.3125-0.6875l5.2188-5.2812 5.1875 5.2812c0.18819 0.18821 0.28125 0.45351 0.28125 0.7188v1h-1c-0.26529 0-0.53058-0.0931-0.71875-0.28125l-3.75-3.8125-3.7812 3.8125c-0.19463 0.21074-0.46925 0.30316-0.75 0.28125h-1z"/>
</g>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1">
<g transform="translate(-200,-626)">
<path d="m202 637v-1c-0.00012-0.0104-0.00046-0.0208 0-0.0313 0.0112-0.25495 0.12858-0.50987 0.3125-0.6875l5.2188-5.2812 5.1875 5.2812c0.18819 0.18821 0.28125 0.45351 0.28125 0.7188v1h-1c-0.26529 0-0.53058-0.0931-0.71875-0.28125l-3.75-3.8125-3.7812 3.8125c-0.19463 0.21074-0.46925 0.30316-0.75 0.28125h-1z" fill="#555"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 474 B

View File

@@ -1,21 +1,9 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg id="svg7384" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/">
<metadata id="metadata90">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:title>Gnome Symbolic Icon Theme</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<title id="title9167">Gnome Symbolic Icon Theme</title>
<g id="layer12" transform="translate(-80,-648)">
<path id="rect4390-9" style="block-progression:tb;text-indent:0;color:#555555;text-transform:none;fill:#555555" d="m84.406 657a0.50005 0.50005 0 0 0 -0.3125 0.21875l-1 1.5a0.50005 0.50005 0 1 0 0.8125 0.5625l1-1.5a0.50005 0.50005 0 0 0 -0.5 -0.78zm7 0a0.50005 0.50005 0 0 0 -0.3125 0.78125l1 1.5a0.50005 0.50005 0 1 0 0.8125 -0.5625l-1-1.5a0.50005 0.50005 0 0 0 -0.5 -0.22z"/>
<g id="g4555" transform="translate(-80,110)">
<path id="path3613" style="block-progression:tb;text-indent:0;color:#555555;text-transform:none;fill:#555555" d="m167 539v5.5625l-1.2812-1.2812c-0.19-0.19-0.45-0.28-0.72-0.28h-1v1c0.00001 0.2653 0.0931 0.53058 0.28125 0.71875l3 3 0.28125 0.28125h0.875l0.28125-0.28125 3-3c0.19-0.19 0.28-0.45 0.28-0.72v-1h-1c-0.2653 0.00001-0.53059 0.0931-0.71875 0.28125l-1.28 1.28v-5.56z"/>
<path id="rect11668-7-5" style="color:#555555;fill-rule:evenodd;fill:#555555" d="m163 549v4h10v-4zm3.3438 1.4375c0.0208-0.001 0.0417-0.001 0.0625 0 0.29096-0.0556 0.59898 0.20383 0.59375 0.5v0.0625h2v-0.0625c-0.004-0.26416 0.23582-0.50712 0.5-0.50712s0.50373 0.24296 0.5 0.50712v0.06c0 0.54535-0.45465 1-1 1h-2c-0.54535 0-1-0.45465-1-1v-0.0625c-0.0108-0.21706 0.13723-0.43234 0.34375-0.5z"/>
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1">
<g transform="translate(-80,-648)">
<path d="m84.406 657a0.50005 0.50005 0 0 0-0.3125 0.21875l-1 1.5a0.50005 0.50005 0 1 0 0.8125 0.5625l1-1.5a0.50005 0.50005 0 0 0-0.5-0.78zm7 0a0.50005 0.50005 0 0 0-0.3125 0.78125l1 1.5a0.50005 0.50005 0 1 0 0.8125-0.5625l-1-1.5a0.50005 0.50005 0 0 0-0.5-0.22z" fill="#555"/>
<g transform="translate(-80,110)">
<path d="m167 539v5.5625l-1.2812-1.2812c-0.19-0.19-0.45-0.28-0.72-0.28h-1v1c0.00001 0.2653 0.0931 0.53058 0.28125 0.71875l3 3 0.28125 0.28125h0.875l0.28125-0.28125 3-3c0.19-0.19 0.28-0.45 0.28-0.72v-1h-1c-0.2653 0.00001-0.53059 0.0931-0.71875 0.28125l-1.28 1.28v-5.56z" fill="#555"/>
<path d="m163 549v4h10v-4zm3.3438 1.4375c0.0208-0.001 0.0417-0.001 0.0625 0 0.29096-0.0556 0.59898 0.20383 0.59375 0.5v0.0625h2v-0.0625c-0.004-0.26416 0.23582-0.50712 0.5-0.50712s0.50373 0.24296 0.5 0.50712v0.06c0 0.54535-0.45465 1-1 1h-2c-0.54535 0-1-0.45465-1-1v-0.0625c-0.0108-0.21706 0.13723-0.43234 0.34375-0.5z" fill="#555"/>
</g>
</g>
</g>
</svg>
</svg>

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -1,26 +1,4 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
height="96"
width="96"
viewBox="0 0 96 96"
version="1.1">
<path
style="fill:#555555;fill-opacity:1;stroke:none"
d="M 6,6 6,90 90,90 90,24 72,6 z m 6,6 57.559322,0 L 84,26.576271 84,84 12,84 z"
id="rect2984"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccccccc" />
<rect
style="fill:#555555;fill-opacity:1;stroke:none"
id="rect3031"
width="12"
height="24"
x="42"
y="12" />
</svg>
<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" height="96" width="96" viewBox="0 0 96 96" version="1.1">
<path d="M6 6 6 90 90 90 90 24 72 6zm6 6 57.6 0L84 26.6 84 84 12 84z" fill="#555"/>
<rect width="12" height="24" x="42" y="12" fill="#555"/>
</svg>

Before

Width:  |  Height:  |  Size: 797 B

After

Width:  |  Height:  |  Size: 288 B

View File

@@ -1,48 +1,8 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
height="96"
width="96"
viewBox="0 0 96 96"
version="1.1">
<path
style="fill:#555555;fill-opacity:1;stroke:none"
d="M 12,6 12,90 84,90 84,24 66,6 z m 6,6 45.559322,0 L 78,26.576271 78,84 18,84 z"
id="rect2984"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccccccc" />
<g
id="g3006"
transform="translate(2.5793231,-3.2660688)">
<path
transform="matrix(1.353211,0,0,0.99662165,-14.954127,-1.1081069)"
d="m 47.999999,65.830505 c 0,4.156177 -3.30854,7.525424 -7.389831,7.525424 -4.08129,0 -7.38983,-3.369247 -7.38983,-7.525424 0,-4.156176 3.30854,-7.525423 7.38983,-7.525423 4.081291,0 7.389831,3.369247 7.389831,7.525423 z"
sodipodi:ry="7.5254235"
sodipodi:rx="7.3898306"
sodipodi:cy="65.830505"
sodipodi:cx="40.610168"
id="path2984"
style="fill:#555555;fill-opacity:1;stroke:none"
sodipodi:type="arc" />
<rect
y="35.000015"
x="44"
height="30"
width="6"
id="rect2986"
style="fill:#555555;fill-opacity:1;stroke:none" />
<rect
transform="matrix(0.69076685,-0.72307756,0.72307756,0.69076685,0,0)"
y="55.90287"
x="5.1795917"
height="17.559322"
width="6"
id="rect2986-2"
style="fill:#555555;fill-opacity:1;stroke:none" />
<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" height="96" width="96" viewBox="0 0 96 96" version="1.1">
<path d="M12 6 12 90 84 90 84 24 66 6zm6 6 45.6 0L78 26.6 78 84 18 84z" fill="#555"/>
<g transform="translate(2.5793231,-3.2660688)">
<path transform="matrix(1.353211,0,0,0.99662165,-14.954127,-1.1081069)" d="m48 65.8c0 4.2-3.3 7.5-7.4 7.5-4.1 0-7.4-3.4-7.4-7.5 0-4.2 3.3-7.5 7.4-7.5 4.1 0 7.4 3.4 7.4 7.5z" fill="#555"/>
<rect y="35" x="44" height="30" width="6" fill="#555"/>
<rect transform="matrix(0.69076685,-0.72307756,0.72307756,0.69076685,0,0)" y="55.9" x="5.2" height="17.6" width="6" fill="#555"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 675 B

View File

@@ -1,26 +1,4 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
height="96"
width="96"
viewBox="0 0 96 96"
version="1.1">
<path
style="fill:#555555;fill-opacity:1;stroke:none"
d="M 6,6 6,90 90,90 90,24 72,6 z m 6,6 57.559322,0 L 84,26.576271 84,84 12,84 z"
id="rect2984"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccccccc" />
<rect
style="fill:#555555;fill-opacity:1;stroke:none"
id="rect3943-7-1-8"
width="12"
height="12"
x="42"
y="42" />
</svg>
<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" height="96" width="96" viewBox="0 0 96 96" version="1.1">
<path d="M6 6 6 90 90 90 90 24 72 6zm6 6 57.6 0L84 26.6 84 84 12 84z" fill="#555"/>
<rect width="12" height="12" x="42" y="42" fill="#555"/>
</svg>

Before

Width:  |  Height:  |  Size: 803 B

After

Width:  |  Height:  |  Size: 288 B

View File

@@ -1,19 +1,3 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
height="96"
width="96"
viewBox="0 0 96 96"
version="1.1">
<path
style="fill:#555555;fill-opacity:1;stroke:none"
d="M 12,6 12,90 84,90 84,24 66,6 z m 6,6 45.559322,0 L 78,26.576271 78,84 18,84 z"
id="rect2984"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccccccc" />
</svg>
<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" height="96" width="96" viewBox="0 0 96 96" version="1.1">
<path d="M12 6 12 90 84 90 84 24 66 6zm6 6 45.6 0L78 26.6 78 84 18 84z" fill="#555"/>
</svg>

Before

Width:  |  Height:  |  Size: 659 B

After

Width:  |  Height:  |  Size: 231 B

View File

@@ -1,19 +1,3 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
height="96"
width="96"
viewBox="0 0 96 96"
version="1.1">
<path
style="fill:#555555"
d="m 0,18 0,72 96,0 0,-72 -30,0 -12,-12.0000002 -42,0 z m 12,12 54,0 18,18 0,36 -72,0 z m 66,54 0,-30 -18,0 0,-18 -42,0 0,48"
id="rect3845"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccccccccccccccc" />
</svg>
<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" height="96" width="96" viewBox="0 0 96 96" version="1.1">
<path d="m0 18 0 72 96 0 0-72-30 0-12-12-42 0zm12 12 54 0 18 18 0 36-72 0zm66 54 0-30-18 0 0-18-42 0 0 48" fill="#555"/>
</svg>

Before

Width:  |  Height:  |  Size: 683 B

After

Width:  |  Height:  |  Size: 266 B

View File

@@ -1,80 +1,8 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="96"
height="96"
viewBox="0 0 96 96"
version="1.1">
<g
inkscape:groupmode="layer"
transform="translate(-321.00015,-587)"
id="layer9"
inkscape:label="status"
style="display:inline" />
<g
inkscape:groupmode="layer"
transform="translate(-321.00015,-587)"
id="layer10"
inkscape:label="devices" />
<g
inkscape:groupmode="layer"
transform="translate(-321.00015,-587)"
id="layer11"
inkscape:label="apps" />
<g
inkscape:groupmode="layer"
transform="translate(-321.00015,-587)"
id="layer13"
inkscape:label="places" />
<g
inkscape:groupmode="layer"
transform="translate(-321.00015,-587)"
id="layer14"
inkscape:label="mimetypes" />
<g
inkscape:groupmode="layer"
transform="translate(-321.00015,-587)"
id="layer15"
inkscape:label="emblems"
style="display:inline" />
<g
inkscape:groupmode="layer"
transform="translate(-321.00015,-587)"
id="g71291"
inkscape:label="emotes"
style="display:inline" />
<g
inkscape:groupmode="layer"
transform="translate(-321.00015,-587)"
id="g4953"
inkscape:label="categories"
style="display:inline" />
<g
inkscape:groupmode="layer"
transform="translate(-321.00015,-587)"
id="layer12"
inkscape:label="actions"
style="display:inline">
<g
id="g2994"
style="fill:#555555;fill-opacity:1"
transform="matrix(4.836272,0,0,4.836272,-1221.151,-2629.537)">
<path
style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#555555;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
inkscape:connector-curvature="0"
id="path4762"
d="m 325,673 0,2 6.5,0 c 0.84027,0 1.5,0.65973 1.5,1.5 0,0.84027 -0.65973,1.5 -1.5,1.5 l -0.5,0 0,2 0.5,0 c 1.92115,0 3.5,-1.57885 3.5,-3.5 0,-1.92115 -1.57885,-3.5 -3.5,-3.5 l -6.5,0 z" />
<path
style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;color:#bebebe;fill:#555555;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
inkscape:connector-curvature="0"
id="path4764"
d="m 328,670.0221 0,1 c 0,0.25689 -0.12983,0.52846 -0.3125,0.71875 l -2.28125,2.28125 2.28125,2.28125 c 0.18267,0.19029 0.3125,0.46186 0.3125,0.71875 l 0,1 -1,0 c -0.30945,0 -0.55232,-0.0903 -0.75,-0.28125 l -3.65625,-3.71875 3.65625,-3.71875 c 0.19768,-0.19095 0.44055,-0.28125 0.75,-0.28125 z"
sodipodi:nodetypes="ccccccccccccc" />
<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" width="96" height="96" viewBox="0 0 96 96" version="1.1">
<g transform="translate(-321.00015,-587)">
<g transform="matrix(4.836272,0,0,4.836272,-1221.151,-2629.537)" fill="#555">
<path d="m325 673 0 2 6.5 0c0.8 0 1.5 0.7 1.5 1.5 0 0.8-0.7 1.5-1.5 1.5l-0.5 0 0 2 0.5 0c1.9 0 3.5-1.6 3.5-3.5 0-1.9-1.6-3.5-3.5-3.5l-6.5 0z"/>
<path d="m328 670 0 1c0 0.3-0.1 0.5-0.3 0.7l-2.3 2.3 2.3 2.3c0.2 0.2 0.3 0.5 0.3 0.7l0 1-1 0c-0.3 0-0.6-0.1-0.7-0.3l-3.7-3.7 3.7-3.7c0.2-0.2 0.4-0.3 0.8-0.3z"/>
</g>
</g>
</svg>
</svg>

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 603 B

View File

@@ -1,19 +1,3 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
height="96"
width="96"
viewBox="0 0 96 96"
version="1.1">
<path
style="fill:#555555"
d="m 0,18 0,72 96,0 0,-72 -30,0 -12,-12.0000002 -42,0 z"
id="rect3845"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccc" />
</svg>
<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" height="96" width="96" viewBox="0 0 96 96" version="1.1">
<path d="m0 18 0 72 96 0 0-72-30 0-12-12-42 0z" fill="#555"/>
</svg>

Before

Width:  |  Height:  |  Size: 602 B

After

Width:  |  Height:  |  Size: 207 B

View File

@@ -1,35 +1,4 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
height="96"
width="96"
viewBox="0 0 96 96"
version="1.1">
<path
style="fill:#555555;fill-opacity:1;stroke:none"
d="M 6,12 6,84 90,84 90,30 72,12 z m 6,6 57.559322,0 L 84,32.576271 84,78 12,78 z"
id="rect2984"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccccccc" />
<path
style="fill:#555555;fill-opacity:1;stroke:none"
d="M 30,36 45.968325,55.161989 60,48 78,72 18,72 z"
id="rect2985"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccc" />
<path
sodipodi:type="arc"
style="fill:#555555;fill-opacity:1;stroke:none"
id="path2988"
sodipodi:cx="-39"
sodipodi:cy="53.237289"
sodipodi:rx="15"
sodipodi:ry="15"
d="m -24,53.237289 a 15,15 0 1 1 -30,0 15,15 0 1 1 30,0 z"
transform="matrix(0.4,0,0,0.4,81.6,14.705084)" />
</svg>
<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" height="96" width="96" viewBox="0 0 96 96" version="1.1">
<path d="m -24,53.237289 a 15,15 0 1 1 -30,0 15,15 0 1 1 30,0 z" transform="matrix(0.4,0,0,0.4,81.6,14.705084)" fill="#555"/>
<path d="M6 12 6 84 90 84 90 30 72 12zm6 6 57.6 0L84 32.6 84 78 12 78zM30 36 46 55.2 60 48 78 72 18 72zM-24 53.2a15 15 0 1 1-30 0 15 15 0 1 1 30 0z" fill="#555"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 436 B

View File

@@ -1,40 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
height="96"
width="96"
viewBox="0 0 96 96"
version="1.1">
<path
style="fill:#555555;fill-opacity:1;stroke:none"
d="M 12,6 12,90 84,90 84,24 66,6 z m 6,6 45.559322,0 L 78,26.576271 78,84 18,84 z"
id="rect2984"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccccccc" />
<rect
style="fill:#555555;fill-opacity:1;stroke:none"
id="rect2985"
width="42"
height="6"
x="24"
y="24" />
<rect
style="fill:#555555;fill-opacity:1;stroke:none"
id="rect2985-6"
width="36"
height="6"
x="24"
y="42" />
<rect
style="fill:#555555;fill-opacity:1;stroke:none"
id="rect2985-5"
width="48"
height="6"
x="24"
y="60" />
</svg>
<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" height="96" width="96" viewBox="0 0 96 96" version="1.1">
<path d="M12 6 12 90 84 90 84 24 66 6zm6 6 45.6 0L78 26.6 78 84 18 84z" fill="#555"/>
<rect width="42" height="6" x="24" y="24" fill="#555"/>
<rect width="36" height="6" x="24" y="42" fill="#555"/>
<rect width="48" height="6" x="24" y="60" fill="#555"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 405 B

View File

@@ -1,126 +1,17 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
height="96"
width="96"
viewBox="0 0 96 96"
version="1.1">
<path
style="fill:#555555;fill-opacity:1;stroke:none"
d="M 6,12 6,84 90,84 90,30 72,12 z m 6,6 57.559322,0 L 84,32.576271 84,78 12,78 z"
id="rect2984"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccccccc" />
<path
style="fill:#555555;fill-opacity:1;stroke:none"
d="M 35.4,42 46.577823,57.968309 56.399999,52.00002 69,72 27,72 z"
id="rect2985"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccc" />
<path
sodipodi:type="arc"
style="fill:#555555;fill-opacity:1;stroke:none"
id="path2988"
sodipodi:cx="-39"
sodipodi:cy="53.237289"
sodipodi:rx="15"
sodipodi:ry="15"
d="m -24,53.237289 a 15,15 0 1 1 -30,0 15,15 0 1 1 30,0 z"
transform="matrix(0.4,0,0,0.4,75.6,14.705084)" />
<rect
style="fill:#555555;fill-opacity:1;stroke:none"
id="rect2986"
width="6"
height="60"
x="18"
y="17.999989" />
<rect
style="fill:#555555;fill-opacity:1;stroke:none"
id="rect2988"
width="6"
height="6"
x="12"
y="26.728817" />
<rect
style="fill:#555555;fill-opacity:1;stroke:none"
id="rect2988-3"
width="6"
height="6"
x="12"
y="38.999985" />
<rect
style="fill:#555555;fill-opacity:1;stroke:none"
id="rect2988-3-2"
width="6"
height="6"
x="12"
y="50.999985" />
<rect
style="fill:#555555;fill-opacity:1;stroke:none"
id="rect2988-3-2-2"
width="6"
height="6"
x="12"
y="62.999985" />
<rect
style="fill:#555555;fill-opacity:1;stroke:none"
id="rect2988-3-2-7"
width="6"
height="6"
x="12"
y="74.999985" />
<rect
style="fill:#555555;fill-opacity:1;stroke:none"
id="rect2986-0"
width="6"
height="60"
x="72"
y="17.999989" />
<rect
style="fill:#555555;fill-opacity:1;stroke:none"
id="rect2988-4"
width="6"
height="6"
x="78"
y="26.728817" />
<rect
style="fill:#555555;fill-opacity:1;stroke:none"
id="rect2988-3-26"
width="6"
height="6"
x="78"
y="38.999985" />
<rect
style="fill:#555555;fill-opacity:1;stroke:none"
id="rect2988-3-2-5"
width="6"
height="6"
x="78"
y="50.999985" />
<rect
style="fill:#555555;fill-opacity:1;stroke:none"
id="rect2988-3-2-2-4"
width="6"
height="6"
x="78"
y="62.999985" />
<rect
style="fill:#555555;fill-opacity:1;stroke:none"
id="rect2988-3-2-7-8"
width="6"
height="6"
x="78"
y="74.999985" />
<rect
style="fill:#555555;fill-opacity:1;stroke:none"
id="rect2988-6"
width="6"
height="6"
x="12"
y="15.000004" />
</svg>
<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" height="96" width="96" viewBox="0 0 96 96" version="1.1">
<path d="m -24,53.237289 a 15,15 0 1 1 -30,0 15,15 0 1 1 30,0 z" transform="matrix(0.4,0,0,0.4,75.6,14.705084)" fill="#555"/>
<path d="M6 12 6 84 90 84 90 30 72 12zm6 6 57.6 0L84 32.6 84 78 12 78zM35.4 42 46.6 58 56.4 52 69 72 27 72zM-24 53.2a15 15 0 1 1-30 0 15 15 0 1 1 30 0z" fill="#555"/>
<rect width="6" height="60" x="18" y="18" fill="#555"/>
<rect width="6" height="6" x="12" y="26.7" fill="#555"/>
<rect width="6" height="6" x="12" y="39" fill="#555"/>
<rect width="6" height="6" x="12" y="51" fill="#555"/>
<rect width="6" height="6" x="12" y="63" fill="#555"/>
<rect width="6" height="6" x="12" y="75" fill="#555"/>
<rect width="6" height="60" x="72" y="18" fill="#555"/>
<rect width="6" height="6" x="78" y="26.7" fill="#555"/>
<rect width="6" height="6" x="78" y="39" fill="#555"/>
<rect width="6" height="6" x="78" y="51" fill="#555"/>
<rect width="6" height="6" x="78" y="63" fill="#555"/>
<rect width="6" height="6" x="78" y="75" fill="#555"/>
<rect width="6" height="6" x="12" y="15" fill="#555"/>
</svg>

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -1,18 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg id="svg7384" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/">
<metadata id="metadata90">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:title>Gnome Symbolic Icon Theme</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<title id="title9167">Gnome Symbolic Icon Theme</title>
<g id="layer12" transform="translate(-140 -645.97)">
<path id="path27918" style="block-progression:tb;text-indent:0;color:#555555;enable-background:new;text-transform:none;fill:#555555" d="m146.51 647c-3.0289 0-5.5107 2.479-5.5107 5.5045 0 3.0254 2.4819 5.5045 5.5107 5.5045s5.5107-2.479 5.5107-5.5045c0-3.0254-2.4819-5.5045-5.5107-5.5045zm0 2.0089c1.9474 0 3.4995 1.5504 3.4995 3.4955s-1.5522 3.4955-3.4995 3.4955c-1.9474 0-3.4995-1.5504-3.4995-3.4955 0-1.9452 1.5522-3.4955 3.4995-3.4955z"/>
<path id="path27941" style="block-progression:tb;text-indent:0;color:#555555;enable-background:new;text-transform:none;fill:#555555" d="m149.81 655a1.0001 1.0001 0 0 0 -0.5 1.7188l4 4a1.0055 1.0055 0 1 0 1.4062 -1.4375l-4-4a1.0001 1.0001 0 0 0 -0.91 -0.28z"/>
</g>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1">
<g transform="translate(-140 -645.97)">
<path d="m146.5 647c-3 0-5.5 2.5-5.5 5.5 0 3 2.5 5.5 5.5 5.5s5.5-2.5 5.5-5.5c0-3-2.5-5.5-5.5-5.5zm0 2c1.9 0 3.5 1.6 3.5 3.5s-1.6 3.5-3.5 3.5c-1.9 0-3.5-1.6-3.5-3.5 0-1.9 1.6-3.5 3.5-3.5zM149.8 655a1 1 0 0 0-0.5 1.7l4 4a1 1 0 1 0 1.4-1.4l-4-4a1 1 0 0 0-0.9-0.3z" fill="#555"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 433 B

View File

@@ -1,69 +1,3 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
id="svg7384"
height="16" width="16" viewBox="0 0 16 16"
version="1.1"
inkscape:version="0.48.4 r9939"
sodipodi:docname="folder-open.svg">
<defs
id="defs10" />
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1871"
inkscape:window-height="1056"
id="namedview8"
showgrid="true"
inkscape:zoom="41.7193"
inkscape:cx="5.17455"
inkscape:cy="7.9663965"
inkscape:window-x="49"
inkscape:window-y="24"
inkscape:window-maximized="1"
inkscape:current-layer="svg7384"
showguides="true"
inkscape:guide-bbox="true">
<inkscape:grid
type="xygrid"
id="grid3004"
empspacing="5"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true" />
</sodipodi:namedview>
<metadata
id="metadata90">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title>Gnome Symbolic Icon Theme</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<title
id="title9167">Gnome Symbolic Icon Theme</title>
<path
style="fill:#555555"
d="M 2,1 0,3 0,15 16,15 C 15.97721,10.841591 16.04788,7.153051 16,3 L 11,3 9,1 z M 1,5 16,5 16,7 2,7 1.4593408,14 1,14 z"
id="rect3845"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccccccccccccc" />
</svg>
<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1">
<path d="M2 1 0 3 0 15 16 15C16 10.8 16 7.2 16 3L11 3 9 1zM1 5 16 5 16 7 2 7 1.5 14 1 14z" fill="#555"/>
</svg>

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 250 B

View File

@@ -1,69 +1,3 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
id="svg7384"
height="16" width="16" viewBox="0 0 16 16"
version="1.1"
inkscape:version="0.48.4 r9939"
sodipodi:docname="folder-page.svg">
<defs
id="defs10" />
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1871"
inkscape:window-height="1056"
id="namedview8"
showgrid="true"
inkscape:zoom="41.7193"
inkscape:cx="8.5832742"
inkscape:cy="6.2608582"
inkscape:window-x="49"
inkscape:window-y="24"
inkscape:window-maximized="1"
inkscape:current-layer="svg7384"
showguides="true"
inkscape:guide-bbox="true">
<inkscape:grid
type="xygrid"
id="grid3001"
empspacing="5"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true" />
</sodipodi:namedview>
<metadata
id="metadata90">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title>Gnome Symbolic Icon Theme</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<title
id="title9167">Gnome Symbolic Icon Theme</title>
<path
style="fill:#555555"
d="M 0,3 0,15 16,15 16,3 11,3 9,1 2,1 z m 2,2 9,0 3,3 0,6 -12,0 z m 11,9 0,-5 -3,0 0,-3 -7,0 0,8"
id="rect3845"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccccccccccccccc" />
</svg>
<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1">
<path d="M0 3 0 15 16 15 16 3 11 3 9 1 2 1zm2 2 9 0 3 3 0 6-12 0zm11 9 0-5-3 0 0-3-7 0 0 8" fill="#555"/>
</svg>

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 251 B

View File

@@ -1,73 +1,3 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
id="svg7384"
height="16" width="16" viewBox="0 0 16 16"
version="1.1"
inkscape:version="0.48.4 r9939"
sodipodi:docname="folder.svg">
<defs
id="defs10" />
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1871"
inkscape:window-height="1056"
id="namedview8"
showgrid="true"
inkscape:zoom="41.7193"
inkscape:cx="10.567799"
inkscape:cy="6.7528912"
inkscape:window-x="49"
inkscape:window-y="24"
inkscape:window-maximized="1"
inkscape:current-layer="svg7384"
showguides="true"
inkscape:guide-bbox="true">
<sodipodi:guide
orientation="-0.70710678,0.70710678"
position="-13.926408,17.473927"
id="guide2996" />
<inkscape:grid
type="xygrid"
id="grid3002"
empspacing="5"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true" />
</sodipodi:namedview>
<metadata
id="metadata90">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title>Gnome Symbolic Icon Theme</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<title
id="title9167">Gnome Symbolic Icon Theme</title>
<path
style="fill:#555555"
d="M 0,3 0,15 16,15 16,3 11,3 9,1 2,1 z"
id="rect3845"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccc" />
</svg>
<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1">
<path d="M0 3 0 15 16 15 16 3 11 3 9 1 2 1z" fill="#555"/>
</svg>

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 204 B

View File

@@ -1,71 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
id="svg7384"
height="16" width="16" viewBox="0 0 16 16"
version="1.1"
inkscape:version="0.48.4 r9939"
sodipodi:docname="home.svg">
<defs
id="defs9" />
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1871"
inkscape:window-height="1056"
id="namedview7"
showgrid="true"
inkscape:zoom="41.7193"
inkscape:cx="7.8903899"
inkscape:cy="7.6562282"
inkscape:window-x="49"
inkscape:window-y="24"
inkscape:window-maximized="1"
inkscape:current-layer="svg7384">
<inkscape:grid
type="xygrid"
id="grid2986"
empspacing="5"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true" />
</sodipodi:namedview>
<metadata
id="metadata90">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title>Gnome Symbolic Icon Theme</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<title
id="title9167">Gnome Symbolic Icon Theme</title>
<g
id="layer13"
transform="translate(-562,-176)">
<path
id="rect5149"
style="color:#555555;fill:#555555;enable-background:new"
d="m 570,177 -8,6 2,0 0,7 3,0 1,0 1,0 1,0 6,0 0,-7 2,0 -3,-2.25 0,-2.75 -2,0 0,1.25 z"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccccccccccc" />
<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1">
<g transform="translate(-562,-176)">
<path d="m570 177-8 6 2 0 0 7 3 0 1 0 1 0 1 0 6 0 0-7 2 0-3-2.2 0-2.7-2 0 0 1.3z" fill="#555"/>
</g>
</svg>
</svg>

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 289 B

View File

@@ -1,17 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg id="svg7384" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/">
<metadata id="metadata90">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:title>Gnome Symbolic Icon Theme</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<title id="title9167">Gnome Symbolic Icon Theme</title>
<g id="layer12" transform="translate(-241 -627)">
<path id="path4597" style="block-progression:tb;text-indent:0;color:#555555;text-transform:none;fill:#555555" d="m253.91 628.97a1.0001 1.0001 0 0 0 -0.125 0.0312 1.0001 1.0001 0 0 0 -0.78125 1v1.6875c-0.38225-0.57796-0.84927-1.0822-1.4062-1.5-1.1556-0.86677-2.532-1.2523-3.875-1.1875-0.19186 0.009-0.37223 0.0353-0.5625 0.0625-1.5222 0.21741-2.9782 1.023-3.9688 2.3438-1.9812 2.6414-1.4227 6.425 1.2188 8.4062s6.425 1.4227 8.4062-1.2188a1.0063 1.0063 0 0 0 0.19 -0.6 1.0063 1.0063 0 0 0 0 -0.15625v-0.84375h-0.8125-0.0937a1.0063 1.0063 0 0 0 -0.0937 0 1.0063 1.0063 0 0 0 -0.8125 0.40625c-1.3326 1.7767-3.817 2.1139-5.5938 0.78125-1.7767-1.3326-2.1139-3.817-0.78125-5.5938 1.3326-1.7767 3.817-2.1139 5.5938-0.78125 0.42946 0.32212 0.76954 0.73295 1.0312 1.1875h-1.4375a1.0001 1.0001 0 0 0 -1 1 1.0001 1.0001 0 0 0 0 0.21875v0.78125h0.84375 0.15625 4 1v-1-4a1.0001 1.0001 0 0 0 0 -0.1875v-0.8125h-0.8125a1.0001 1.0001 0 0 0 -0.28125 -0.0312z"/>
</g>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1">
<g transform="translate(-241 -627)">
<path d="m253.9 629a1 1 0 0 0-0.1 0 1 1 0 0 0-0.8 1v1.7c-0.4-0.6-0.8-1.1-1.4-1.5-1.2-0.9-2.5-1.3-3.9-1.2-0.2 0-0.4 0-0.6 0.1-1.5 0.2-3 1-4 2.3-2 2.6-1.4 6.4 1.2 8.4s6.4 1.4 8.4-1.2a1 1 0 0 0 0.2-0.6 1 1 0 0 0 0-0.2v-0.8h-0.8-0.1a1 1 0 0 0-0.1 0 1 1 0 0 0-0.8 0.4c-1.3 1.8-3.8 2.1-5.6 0.8-1.8-1.3-2.1-3.8-0.8-5.6 1.3-1.8 3.8-2.1 5.6-0.8 0.4 0.3 0.8 0.7 1 1.2h-1.4a1 1 0 0 0-1 1 1 1 0 0 0 0 0.2v0.8h0.8 0.2 4 1v-1-4a1 1 0 0 0 0-0.2v-0.8h-0.8a1 1 0 0 0-0.30z" fill="#555"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 625 B

View File

@@ -1,19 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
height="12" width="12" viewBox="0 0 12 12"
version="1.1">
<g
id="layer14"
transform="matrix(0.68005728,0,0,0.70728284,-313.86652,-213.11037)">
<path
id="path1234"
style="text-indent:0;text-transform:none;block-progression:tb;color:#555555;fill:#555555"
d="m 479.17511,316.86104 0,-9.89704 -4.41139,-4.24158 -13.23419,-10e-6 10e-6,14.13863 m 2.94093,-10e-6 -10e-6,-11.3109 7.35234,10e-6 0,4.24159 4.41139,0 -1e-5,7.0693"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccccccccc" />
<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" height="12" width="12" viewBox="0 0 12 12" version="1.1">
<g transform="matrix(0.68005728,0,0,0.70728284,-313.86652,-213.11037)">
<path d="m479.17511 316.86104 0-9.89704-4.41139-4.24158-13.23419-0.00001 0.00001 14.13863 2.94093-0.00001-0.00001-11.3109 7.35234 0.00001 0 4.24159 4.41139 0-0.00001 7.0693" fill="#555"/>
</g>
</svg>
</svg>

Before

Width:  |  Height:  |  Size: 835 B

After

Width:  |  Height:  |  Size: 416 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

@@ -1,19 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg id="svg7384" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/">
<title id="title9167">Gnome Symbolic Icon Theme</title>
<metadata id="metadata90">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:title>Gnome Symbolic Icon Theme</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g id="layer12" transform="translate(-60,-518)">
<g id="layer4-4-1" transform="translate(19,-242)">
<path id="path10839-9" style="block-progression:tb;text-indent:0;color:#bebebe;enable-background:new;text-transform:none;fill:#bebebe" d="m45 764h1c0.01037-0.00012 0.02079-0.00046 0.03125 0 0.25495 0.0112 0.50987 0.12858 0.6875 0.3125l2.281 2.28 2.312-2.28c0.266-0.23 0.447-0.3 0.688-0.31h1v1c0 0.28647-0.03434 0.55065-0.25 0.75l-2.2812 2.2812 2.25 2.25c0.188 0.19 0.281 0.45 0.281 0.72v1h-1c-0.2653-0.00001-0.53059-0.0931-0.71875-0.28125l-2.281-2.28-2.281 2.28c-0.188 0.19-0.454 0.28-0.719 0.28h-1v-1c-0.000003-0.26529 0.09306-0.53058 0.28125-0.71875l2.2812-2.25-2.281-2.28c-0.21-0.19-0.303-0.47-0.281-0.75v-1z"/>
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1">
<g transform="translate(-60,-518)">
<g transform="translate(19,-242)">
<path d="m45 764h1c0.01037-0.00012 0.02079-0.00046 0.03125 0 0.25495 0.0112 0.50987 0.12858 0.6875 0.3125l2.281 2.28 2.312-2.28c0.266-0.23 0.447-0.3 0.688-0.31h1v1c0 0.28647-0.03434 0.55065-0.25 0.75l-2.2812 2.2812 2.25 2.25c0.188 0.19 0.281 0.45 0.281 0.72v1h-1c-0.2653-0.00001-0.53059-0.0931-0.71875-0.28125l-2.281-2.28-2.281 2.28c-0.188 0.19-0.454 0.28-0.719 0.28h-1v-1c-0.000003-0.26529 0.09306-0.53058 0.28125-0.71875l2.2812-2.25-2.281-2.28c-0.21-0.19-0.303-0.47-0.281-0.75v-1z" fill="#ccc"/>
</g>
</g>
</g>
</svg>
</svg>

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 701 B

View File

@@ -1,26 +1,13 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg id="svg7384" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/">
<metadata id="metadata90">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:title>Gnome Symbolic Icon Theme</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<title id="title9167">Gnome Symbolic Icon Theme</title>
<g id="layer12" transform="translate(-40.984 -646.99)">
<path id="path12113" style="block-progression:tb;text-indent:0;color:#000000;enable-background:new;text-transform:none;fill:#bebebe" d="m41.781 657a1.0001 1.0001 0 0 0 -0.781 1v4a1.0001 1.0001 0 0 0 1 1h4a1.0001 1.0001 0 1 0 0 -2h-3v-3a1.0001 1.0001 0 0 0 -1.2188 -1z"/>
<path id="path12147" style="block-progression:tb;text-indent:0;color:#000000;enable-background:new;text-transform:none;fill:#bebebe" d="m46.875 656a1.0001 1.0001 0 0 0 -0.59375 0.28125l-5 5a1.0165 1.0165 0 1 0 1.4375 1.4375l5-5a1.0001 1.0001 0 0 0 -0.843 -1.72z"/>
<rect id="rect12919" style="color:#000000;enable-background:new;fill:#bdbdbd" height="1" width="1" y="662" x="41"/>
<path id="path12111" style="block-progression:tb;text-indent:0;color:#000000;enable-background:new;text-transform:none;fill:#bebebe" d="m51.906 647a1.0011 1.0011 0 1 0 0.094 2h3v3a1.0001 1.0001 0 1 0 2 0v-4a1.0001 1.0001 0 0 0 -1 -1h-4a1.0001 1.0001 0 0 0 -0.09375 0z"/>
<rect id="rect12923" style="color:#000000;enable-background:new;fill:#bdbdbd" height="1" width="1" y="647" x="56"/>
<path id="path12925" style="block-progression:tb;text-indent:0;color:#000000;enable-background:new;text-transform:none;fill:#bebebe" d="m55.875 647a1.0001 1.0001 0 0 0 -0.59375 0.28125l-5 5a1.0165 1.0165 0 1 0 1.4375 1.4375l5-5a1.0001 1.0001 0 0 0 -0.843 -1.72z"/>
<rect id="rect4479-2" style="color:#000000;fill:#bebebe" height="1" width="1" y="657" x="41"/>
<rect id="rect4479-2-9" style="color:#000000;fill:#bebebe" height="1" width="1" y="662" x="46"/>
<rect id="rect4479-2-9-9-0-8" style="color:#000000;fill:#bebebe" height="1" width="1" y="652" x="56"/>
<rect id="rect4479-2-9-9-0-8-1" style="color:#000000;fill:#bebebe" height="1" width="1" y="647" x="51"/>
</g>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1">
<g transform="translate(-40.984 -646.99)" fill="#ccc">
<path d="m41.8 657a1 1 0 0 0-0.8 1v4a1 1 0 0 0 1 1h4a1 1 0 1 0 0-2h-3v-3a1 1 0 0 0-1.2-1zM46.9 656a1 1 0 0 0-0.6 0.3l-5 5a1 1 0 1 0 1.4 1.4l5-5a1 1 0 0 0-0.8-1.7z"/>
<rect height="1" width="1" y="662" x="41"/>
<path d="m51.9 647a1 1 0 1 0 0.1 2h3v3a1 1 0 1 0 2 0v-4a1 1 0 0 0-1-1h-4a1 1 0 0 0-0.1 0z"/>
<rect height="1" width="1" y="647" x="56"/>
<path d="m55.9 647a1 1 0 0 0-0.6 0.3l-5 5a1 1 0 1 0 1.4 1.4l5-5a1 1 0 0 0-0.8-1.7z"/>
<rect height="1" width="1" y="657" x="41"/>
<rect height="1" width="1" y="662" x="46"/>
<rect height="1" width="1" y="652" x="56"/>
<rect height="1" width="1" y="647" x="51"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 813 B

View File

@@ -1,17 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg id="svg7384" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/">
<metadata id="metadata90">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:title>Gnome Symbolic Icon Theme</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<title id="title9167">Gnome Symbolic Icon Theme</title>
<g id="layer12" transform="translate(-120,-626)">
<path id="path10839-9-9" style="block-progression:tb;text-indent:0;color:#bebebe;enable-background:new;text-transform:none;fill:#bebebe" d="m125.03 628h1c0.0104-0.00012 0.0208-0.00046 0.0313 0 0.25495 0.0112 0.50987 0.12858 0.6875 0.3125l5.2812 5.2188-5.2812 5.1875c-0.19 0.19-0.45 0.28-0.72 0.28h-1v-1c0-0.26529 0.0931-0.53058 0.28125-0.71875l3.8125-3.75-3.8125-3.7812c-0.21074-0.19463-0.30316-0.46925-0.28125-0.75v-1z"/>
</g>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1">
<g transform="translate(-120,-626)" fill="#ccc">
<path d="m125.03 628h1c0.0104-0.00012 0.0208-0.00046 0.0313 0 0.25495 0.0112 0.50987 0.12858 0.6875 0.3125l5.2812 5.2188-5.2812 5.1875c-0.19 0.19-0.45 0.28-0.72 0.28h-1v-1c0-0.26529 0.0931-0.53058 0.28125-0.71875l3.8125-3.75-3.8125-3.7812c-0.21074-0.19463-0.30316-0.46925-0.28125-0.75v-1z"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 458 B

View File

@@ -1,25 +1,12 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg id="svg7384" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/">
<metadata id="metadata90">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:title>Gnome Symbolic Icon Theme</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<title id="title9167">Gnome Symbolic Icon Theme</title>
<g id="layer12" transform="translate(-60.952 -646.98)">
<path id="path12113-8" style="block-progression:tb;text-indent:0;color:#000000;enable-background:new;text-transform:none;fill:#bebebe" d="m71.781 647a1.0001 1.0001 0 0 0 -0.781 1v4a1.0001 1.0001 0 0 0 1 1h4a1.0001 1.0001 0 1 0 0 -2h-3v-3a1.0001 1.0001 0 0 0 -1.2188 -1z"/>
<path id="path12147-8" style="block-progression:tb;text-indent:0;color:#000000;enable-background:new;text-transform:none;fill:#bebebe" d="m75.875 647a1.0001 1.0001 0 0 0 -0.59375 0.28125l-4 4a1.0165 1.0165 0 1 0 1.4375 1.4375l4-4a1.0001 1.0001 0 0 0 -0.843 -1.72z"/>
<rect id="rect12919-5" style="color:#000000;enable-background:new;fill:#bdbdbd" height="1" width="1" y="652" x="71"/>
<path id="rect13039" style="block-progression:tb;text-indent:0;color:#000000;enable-background:new;text-transform:none;fill:#bebebe" d="m61.906 653a1.0001 1.0001 0 0 0 -0.906 1v8a1.0001 1.0001 0 0 0 1 1h8a1.0001 1.0001 0 0 0 1 -1v-8a1.0001 1.0001 0 0 0 -1 -1h-8a1.0001 1.0001 0 0 0 -0.09375 0zm1.094 2h6v6h-6v-6z"/>
<path id="path13041" style="fill-rule:evenodd;block-progression:tb;text-indent:0;color:#000000;enable-background:new;text-transform:none;fill:#bebebe" d="m61.906 655a1.0011 1.0011 0 1 0 0.094 2h8a1.0001 1.0001 0 1 0 0 -2h-8a1.0001 1.0001 0 0 0 -0.09375 0z"/>
<rect id="rect4479-2-9-9-0-8-6" style="color:#000000;fill:#bebebe" height="1" width="1" y="652" x="76"/>
<rect id="rect4479-2-9-9-0-8-6-6" style="color:#000000;fill:#bebebe" height="1" width="1" y="647" x="71"/>
<rect id="rect4479-2-9-9-0-8-6-9" style="color:#000000;fill:#bebebe" height="1" width="1" y="662" x="70"/>
<rect id="rect4479-2-9-9-0-8-6-4" style="color:#000000;fill:#bebebe" height="1" width="1" y="662" x="61"/>
</g>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1">
<g transform="translate(-60.952 -646.98)" fill="#ccc">
<path d="m71.8 647a1 1 0 0 0-0.8 1v4a1 1 0 0 0 1 1h4a1 1 0 1 0 0-2h-3v-3a1 1 0 0 0-1.2-1zM75.9 647a1 1 0 0 0-0.6 0.3l-4 4a1 1 0 1 0 1.4 1.4l4-4a1 1 0 0 0-0.8-1.7z"/>
<rect height="1" width="1" y="652" x="71"/>
<path d="m61.9 653a1 1 0 0 0-0.9 1v8a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1v-8a1 1 0 0 0-1-1h-8a1 1 0 0 0-0.1 0zm1.1 2h6v6h-6v-6z"/>
<path d="m61.9 655a1 1 0 1 0 0.1 2h8a1 1 0 1 0 0-2h-8a1 1 0 0 0-0.1 0z"/>
<rect height="1" width="1" y="652" x="76"/>
<rect height="1" width="1" y="647" x="71"/>
<rect height="1" width="1" y="662" x="70"/>
<rect height="1" width="1" y="662" x="61"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 784 B

View File

@@ -1,17 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg id="svg7384" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/">
<metadata id="metadata90">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:title>Gnome Symbolic Icon Theme</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<title id="title9167">Gnome Symbolic Icon Theme</title>
<g id="layer12" transform="translate(-100,-626)">
<path id="path10839-9-9-5" style="block-progression:tb;text-indent:0;color:#bebebe;enable-background:new;text-transform:none;fill:#bebebe" d="m111 628h-1c-0.0104-0.00012-0.0208-0.00046-0.0313 0-0.25495 0.0112-0.50987 0.12858-0.6875 0.3125l-5.2812 5.2188 5.2812 5.1875c0.18816 0.18819 0.45346 0.28125 0.71875 0.28125h1v-1c0-0.26529-0.0931-0.53058-0.28125-0.71875l-3.8125-3.75 3.8125-3.7812c0.21074-0.19463 0.30316-0.46925 0.28125-0.75v-1z"/>
</g>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1">
<g transform="translate(-100,-626)" fill="#ccc">
<path d="m111 628h-1c-0.0104-0.00012-0.0208-0.00046-0.0313 0-0.25495 0.0112-0.50987 0.12858-0.6875 0.3125l-5.2812 5.2188 5.2812 5.1875c0.18816 0.18819 0.45346 0.28125 0.71875 0.28125h1v-1c0-0.26529-0.0931-0.53058-0.28125-0.71875l-3.8125-3.75 3.8125-3.7812c0.21074-0.19463 0.30316-0.46925 0.28125-0.75v-1z"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 474 B

View File

@@ -1,21 +1,9 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg id="svg7384" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/">
<metadata id="metadata90">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:title>Gnome Symbolic Icon Theme</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<title id="title9167">Gnome Symbolic Icon Theme</title>
<g id="layer12" transform="translate(-80,-648)">
<path id="rect4390-9" style="block-progression:tb;text-indent:0;color:#bebebe;text-transform:none;fill:#bebebe" d="m84.406 657a0.50005 0.50005 0 0 0 -0.3125 0.21875l-1 1.5a0.50005 0.50005 0 1 0 0.8125 0.5625l1-1.5a0.50005 0.50005 0 0 0 -0.5 -0.78zm7 0a0.50005 0.50005 0 0 0 -0.3125 0.78125l1 1.5a0.50005 0.50005 0 1 0 0.8125 -0.5625l-1-1.5a0.50005 0.50005 0 0 0 -0.5 -0.22z"/>
<g id="g4555" transform="translate(-80,110)">
<path id="path3613" style="block-progression:tb;text-indent:0;color:#000000;text-transform:none;fill:#bebebe" d="m167 539v5.5625l-1.2812-1.2812c-0.19-0.19-0.45-0.28-0.72-0.28h-1v1c0.00001 0.2653 0.0931 0.53058 0.28125 0.71875l3 3 0.28125 0.28125h0.875l0.28125-0.28125 3-3c0.19-0.19 0.28-0.45 0.28-0.72v-1h-1c-0.2653 0.00001-0.53059 0.0931-0.71875 0.28125l-1.28 1.28v-5.56z"/>
<path id="rect11668-7-5" style="color:#000000;fill-rule:evenodd;fill:#bebebe" d="m163 549v4h10v-4zm3.3438 1.4375c0.0208-0.001 0.0417-0.001 0.0625 0 0.29096-0.0556 0.59898 0.20383 0.59375 0.5v0.0625h2v-0.0625c-0.004-0.26416 0.23582-0.50712 0.5-0.50712s0.50373 0.24296 0.5 0.50712v0.06c0 0.54535-0.45465 1-1 1h-2c-0.54535 0-1-0.45465-1-1v-0.0625c-0.0108-0.21706 0.13723-0.43234 0.34375-0.5z"/>
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1">
<g transform="translate(-80,-648)" fill="#ccc">
<path d="m84.406 657a0.50005 0.50005 0 0 0-0.3125 0.21875l-1 1.5a0.50005 0.50005 0 1 0 0.8125 0.5625l1-1.5a0.50005 0.50005 0 0 0-0.5-0.78zm7 0a0.50005 0.50005 0 0 0-0.3125 0.78125l1 1.5a0.50005 0.50005 0 1 0 0.8125-0.5625l-1-1.5a0.50005 0.50005 0 0 0-0.5-0.22z"/>
<g transform="translate(-80,110)">
<path d="m167 539v5.5625l-1.2812-1.2812c-0.19-0.19-0.45-0.28-0.72-0.28h-1v1c0.00001 0.2653 0.0931 0.53058 0.28125 0.71875l3 3 0.28125 0.28125h0.875l0.28125-0.28125 3-3c0.19-0.19 0.28-0.45 0.28-0.72v-1h-1c-0.2653 0.00001-0.53059 0.0931-0.71875 0.28125l-1.28 1.28v-5.56z"/>
<path d="m163 549v4h10v-4zm3.3438 1.4375c0.0208-0.001 0.0417-0.001 0.0625 0 0.29096-0.0556 0.59898 0.20383 0.59375 0.5v0.0625h2v-0.0625c-0.004-0.26416 0.23582-0.50712 0.5-0.50712s0.50373 0.24296 0.5 0.50712v0.06c0 0.54535-0.45465 1-1 1h-2c-0.54535 0-1-0.45465-1-1v-0.0625c-0.0108-0.21706 0.13723-0.43234 0.34375-0.5z"/>
</g>
</g>
</g>
</svg>
</svg>

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -1,53 +1,3 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
height="16" width="16" viewBox="0 0 16 16"
id="svg2"
inkscape:version="0.48.4 r9939"
sodipodi:docname="select.svg">
<metadata
id="metadata10">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs8" />
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1871"
inkscape:window-height="1056"
id="namedview6"
showgrid="false"
inkscape:zoom="20.85965"
inkscape:cx="16.301202"
inkscape:cy="5.1092914"
inkscape:window-x="49"
inkscape:window-y="24"
inkscape:window-maximized="1"
inkscape:current-layer="svg2" />
<path
d="M 11.4375,3.40625 6.5000001,8.34375 4.5625,6.40625 l -2.125,2.125 3.0000001,3 1.0625,1.0625 1.0625,-1.0625 5.9999999,-6 -2.125,-2.125 z"
style="fill:#555555"
id="path4"
inkscape:connector-curvature="0" />
</svg>
<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" version="1.1" height="16" width="16" viewBox="0 0 16 16">
<path d="M11.4 3.4 6.5 8.3 4.6 6.4l-2.1 2.1 3 3 1.1 1.1 1.1-1.1 6-6-2.1-2.1z" fill="#555"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 237 B

View File

@@ -1,17 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg id="svg7384" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/">
<metadata id="metadata90">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:title>Gnome Symbolic Icon Theme</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<title id="title9167">Gnome Symbolic Icon Theme</title>
<g id="layer15" transform="translate(-441 -401)">
<path id="path35543-6-4" style="color:#555555;fill:#555555" d="m449 402c-0.22065 0-0.44081 0.0113-0.65625 0.0312l-0.40625 2.0938c-0.33446 0.0733-0.66305 0.17589-0.96875 0.3125l-1.5312-1.4688c-0.38863 0.23011-0.72695 0.51408-1.0625 0.8125l0.90625 1.9062c-0.22242 0.24899-0.42425 0.5225-0.59375 0.8125l-2.0938-0.28125c-0.17772 0.40877-0.30872 0.83637-0.40625 1.2812l1.8438 1c-0.0171 0.16809-0.0312 0.3274-0.0312 0.5s0.0142 0.33191 0.0312 0.5l-1.8438 1c0.0975 0.44488 0.22853 0.87248 0.40625 1.2812l2.0938-0.28125c0.1695 0.29 0.37133 0.56351 0.59375 0.8125l-0.90625 1.9062c0.33555 0.29842 0.67387 0.58239 1.0625 0.8125l1.5312-1.4688c0.3057 0.13661 0.63429 0.23916 0.96875 0.3125l0.40625 2.0938c0.21544 0.02 0.4356 0.0312 0.65625 0.0312s0.44081-0.0113 0.65625-0.0312l0.40625-2.0938c0.33446-0.0733 0.66305-0.17589 0.96875-0.3125l1.5312 1.4688c0.38863-0.23011 0.72695-0.51408 1.0625-0.8125l-0.90625-1.9062c0.22242-0.24899 0.42425-0.5225 0.59375-0.8125l2.0938 0.28125c0.17772-0.40877 0.30872-0.83637 0.40625-1.2812l-1.8438-1c0.0171-0.16809 0.0312-0.3274 0.0312-0.5s-0.0142-0.33191-0.0312-0.5l1.8438-1c-0.0975-0.44488-0.22853-0.87248-0.40625-1.2812l-2.0938 0.28125c-0.1695-0.29-0.37133-0.56351-0.59375-0.8125l0.90625-1.9062c-0.33555-0.29842-0.67387-0.58239-1.0625-0.8125l-1.5312 1.4688c-0.3057-0.13661-0.63429-0.23916-0.96875-0.3125l-0.40625-2.0938c-0.21544-0.02-0.4356-0.0312-0.65625-0.0312zm0 4c1.6568 0 3 1.3432 3 3s-1.3432 3-3 3-3-1.3432-3-3 1.3432-3 3-3z"/>
</g>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1">
<g transform="translate(-441 -401)">
<path d="m449 402c-0.22065 0-0.44081 0.0113-0.65625 0.0312l-0.40625 2.0938c-0.33446 0.0733-0.66305 0.17589-0.96875 0.3125l-1.5312-1.4688c-0.38863 0.23011-0.72695 0.51408-1.0625 0.8125l0.90625 1.9062c-0.22242 0.24899-0.42425 0.5225-0.59375 0.8125l-2.0938-0.28125c-0.17772 0.40877-0.30872 0.83637-0.40625 1.2812l1.8438 1c-0.0171 0.16809-0.0312 0.3274-0.0312 0.5s0.0142 0.33191 0.0312 0.5l-1.8438 1c0.0975 0.44488 0.22853 0.87248 0.40625 1.2812l2.0938-0.28125c0.1695 0.29 0.37133 0.56351 0.59375 0.8125l-0.90625 1.9062c0.33555 0.29842 0.67387 0.58239 1.0625 0.8125l1.5312-1.4688c0.3057 0.13661 0.63429 0.23916 0.96875 0.3125l0.40625 2.0938c0.21544 0.02 0.4356 0.0312 0.65625 0.0312s0.44081-0.0113 0.65625-0.0312l0.40625-2.0938c0.33446-0.0733 0.66305-0.17589 0.96875-0.3125l1.5312 1.4688c0.38863-0.23011 0.72695-0.51408 1.0625-0.8125l-0.90625-1.9062c0.22242-0.24899 0.42425-0.5225 0.59375-0.8125l2.0938 0.28125c0.17772-0.40877 0.30872-0.83637 0.40625-1.2812l-1.8438-1c0.0171-0.16809 0.0312-0.3274 0.0312-0.5s-0.0142-0.33191-0.0312-0.5l1.8438-1c-0.0975-0.44488-0.22853-0.87248-0.40625-1.2812l-2.0938 0.28125c-0.1695-0.29-0.37133-0.56351-0.59375-0.8125l0.90625-1.9062c-0.33555-0.29842-0.67387-0.58239-1.0625-0.8125l-1.5312 1.4688c-0.3057-0.13661-0.63429-0.23916-0.96875-0.3125l-0.40625-2.0938c-0.21544-0.02-0.4356-0.0312-0.65625-0.0312zm0 4c1.6568 0 3 1.3432 3 3s-1.3432 3-3 3-3-1.3432-3-3 1.3432-3 3-3z" fill="#555"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -1,193 +1,13 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
sodipodi:docname="size.svg"
height="16" width="16" viewBox="0 0 16 16"
id="svg7384"
inkscape:version="0.48.4 r9939"
version="1.1">
<metadata
id="metadata90">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title>Gnome Symbolic Icon Theme</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview
inkscape:bbox-nodes="true"
inkscape:bbox-paths="true"
bordercolor="#666666"
borderopacity="1"
inkscape:current-layer="layer12"
inkscape:cx="0.26014369"
inkscape:cy="4.4087936"
gridtolerance="10"
inkscape:guide-bbox="true"
guidetolerance="10"
id="namedview88"
inkscape:object-nodes="false"
inkscape:object-paths="false"
objecttolerance="10"
pagecolor="#3a3b39"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
showborder="true"
showgrid="false"
showguides="true"
inkscape:snap-bbox="true"
inkscape:snap-bbox-midpoints="false"
inkscape:snap-global="true"
inkscape:snap-grids="true"
inkscape:snap-nodes="false"
inkscape:snap-others="false"
inkscape:snap-to-guides="true"
inkscape:window-height="1056"
inkscape:window-maximized="1"
inkscape:window-width="1871"
inkscape:window-x="49"
inkscape:window-y="24"
inkscape:zoom="22.627417"
borderlayer="true">
<inkscape:grid
empspacing="2"
enabled="true"
id="grid4866"
originx="200px"
originy="550px"
snapvisiblegridlinesonly="true"
spacingx="1px"
spacingy="1px"
type="xygrid"
visible="true" />
</sodipodi:namedview>
<title
id="title9167">Gnome Symbolic Icon Theme</title>
<defs
id="defs7386" />
<g
inkscape:groupmode="layer"
id="layer9"
inkscape:label="status"
style="display:inline"
transform="translate(-41.0002,-767)" />
<g
inkscape:groupmode="layer"
id="layer10"
inkscape:label="devices"
transform="translate(-41.0002,-767)" />
<g
inkscape:groupmode="layer"
id="layer11"
inkscape:label="apps"
transform="translate(-41.0002,-767)" />
<g
inkscape:groupmode="layer"
id="layer13"
inkscape:label="places"
transform="translate(-41.0002,-767)" />
<g
inkscape:groupmode="layer"
id="layer14"
inkscape:label="mimetypes"
transform="translate(-41.0002,-767)" />
<g
inkscape:groupmode="layer"
id="layer15"
inkscape:label="emblems"
style="display:inline"
transform="translate(-41.0002,-767)" />
<g
inkscape:groupmode="layer"
id="g71291"
inkscape:label="emotes"
style="display:inline"
transform="translate(-41.0002,-767)" />
<g
inkscape:groupmode="layer"
id="g4953"
inkscape:label="categories"
style="display:inline"
transform="translate(-41.0002,-767)" />
<g
inkscape:groupmode="layer"
id="layer12"
inkscape:label="actions"
style="display:inline"
transform="translate(-41.0002,-767)">
<path
inkscape:connector-curvature="0"
d="M 42.78125,776 A 1.0001,1.0001 0 0 0 42,777 l 0,4 a 1.0001,1.0001 0 0 0 1,1 l 4,0 a 1.0001,1.0001 0 1 0 0,-2 l -3,0 0,-3 a 1.0001,1.0001 0 0 0 -1.21875,-1 z"
id="path12113"
style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#555555;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new;font-family:Sans;-inkscape-font-specification:Sans" />
<path
inkscape:connector-curvature="0"
d="m 47.375,775.5 a 1.0001,1.0001 0 0 0 -0.59375,0.28125 l -4.5,4.5 a 1.016466,1.016466 0 1 0 1.4375,1.4375 l 4.5,-4.5 A 1.0001,1.0001 0 0 0 47.375,775.5 z"
id="path12147"
style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#555555;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new;font-family:Sans;-inkscape-font-specification:Sans" />
<rect
height="1"
id="rect12919"
style="color:#000000;fill:#555555;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new"
width="1"
x="42.000198"
y="781" />
<path
inkscape:connector-curvature="0"
d="M 50.90625,768 A 1.001098,1.001098 0 1 0 51,770 l 3,0 0,3 a 1.0001,1.0001 0 1 0 2,0 l 0,-4 a 1.0001,1.0001 0 0 0 -1,-1 l -4,0 a 1.0001,1.0001 0 0 0 -0.09375,0 z"
id="path12111"
style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#555555;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new;font-family:Sans;-inkscape-font-specification:Sans" />
<rect
height="1"
id="rect12923"
style="color:#000000;fill:#555555;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new"
width="1"
x="55.000198"
y="768" />
<path
inkscape:connector-curvature="0"
d="m 54.78125,768 a 1.0001,1.0001 0 0 0 -0.5,0.28125 l -4.5,4.46875 a 1.016466,1.016466 0 1 0 1.4375,1.4375 l 4.5,-4.46875 A 1.0001,1.0001 0 0 0 54.78125,768 z"
id="path12925"
style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#555555;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new;font-family:Sans;-inkscape-font-specification:Sans" />
<rect
height="1"
id="rect4479-2"
style="color:#000000;fill:#555555;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
width="1"
x="42.000198"
y="776" />
<rect
height="1"
id="rect4479-2-9"
style="color:#000000;fill:#555555;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
width="1"
x="47.000198"
y="781" />
<rect
height="1"
id="rect4479-2-9-9-0-8"
style="color:#000000;fill:#555555;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
width="1"
x="55.000198"
y="773" />
<rect
height="1"
id="rect4479-2-9-9-0-8-1"
style="color:#000000;fill:#555555;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
width="1"
x="50.000198"
y="768" />
<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1">
<g transform="translate(-41.0002,-767)">
<path d="M42.8 776A1 1 0 0 0 42 777l0 4a1 1 0 0 0 1 1l4 0a1 1 0 1 0 0-2l-3 0 0-3a1 1 0 0 0-1.2-1zM47.4 775.5a1 1 0 0 0-0.6 0.3l-4.5 4.5a1 1 0 1 0 1.4 1.4l4.5-4.5A1 1 0 0 0 47.4 775.5z" fill="#555"/>
<rect height="1" width="1" x="42" y="781" fill="#555"/>
<path d="M50.9 768A1 1 0 1 0 51 770l3 0 0 3a1 1 0 1 0 2 0l0-4a1 1 0 0 0-1-1l-4 0a1 1 0 0 0-0.1 0z" fill="#555"/>
<rect height="1" width="1" x="55" y="768" fill="#555"/>
<path d="m54.8 768a1 1 0 0 0-0.5 0.3l-4.5 4.5a1 1 0 1 0 1.4 1.4l4.5-4.5A1 1 0 0 0 54.8 768z" fill="#555"/>
<rect height="1" width="1" x="42" y="776" fill="#555"/>
<rect height="1" width="1" x="47" y="781" fill="#555"/>
<rect height="1" width="1" x="55" y="773" fill="#555"/>
<rect height="1" width="1" x="50" y="768" fill="#555"/>
</g>
</svg>
</svg>

Before

Width:  |  Height:  |  Size: 8.4 KiB

After

Width:  |  Height:  |  Size: 984 B

View File

@@ -1,19 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg id="svg7384" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/">
<metadata id="metadata90">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:title>Gnome Symbolic Icon Theme</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<title id="title9167">Gnome Symbolic Icon Theme</title>
<g id="layer12" transform="translate(-320,-626)">
<g id="use43045" transform="translate(200,108)">
<path id="path4421" style="block-progression:tb;text-indent:0;color:#555555;enable-background:new;text-transform:none;fill:#555555" d="m125.03 520h1c0.0104-0.00012 0.0208-0.00046 0.0313 0 0.25495 0.0112 0.50987 0.12858 0.6875 0.3125l5.2812 5.2188-5.2812 5.1875c-0.19 0.19-0.45 0.28-0.72 0.28h-1v-1c0-0.26529 0.0931-0.53058 0.28125-0.71875l3.8125-3.75-3.8125-3.7812c-0.21074-0.19463-0.30316-0.46925-0.28125-0.75v-1z"/>
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 16 16" version="1.1">
<g transform="translate(-320,-626)">
<g transform="translate(200,108)">
<path d="m125.03 520h1c0.0104-0.00012 0.0208-0.00046 0.0313 0 0.25495 0.0112 0.50987 0.12858 0.6875 0.3125l5.2812 5.2188-5.2812 5.1875c-0.19 0.19-0.45 0.28-0.72 0.28h-1v-1c0-0.26529 0.0931-0.53058 0.28125-0.71875l3.8125-3.75-3.8125-3.7812c-0.21074-0.19463-0.30316-0.46925-0.28125-0.75v-1z" fill="#555"/>
</g>
</g>
</g>
</svg>
</svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 508 B

View File

@@ -1,13 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns="http://www.w3.org/2000/svg"
version="1.1"
width="16"
height="16"
viewBox="0 0 16 16"
>
<rect x="3" y="3" width="10" height="2" style="fill:#555555" />
<rect x="3" y="7" width="10" height="2" style="fill:#555555" />
<rect x="3" y="11" width="10" height="2" style="fill:#555555" />
</svg>
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="16" height="16" viewBox="0 0 16 16">
<rect x="3" y="3" width="10" height="2" fill="#555"/>
<rect x="3" y="7" width="10" height="2" fill="#555"/>
<rect x="3" y="11" width="10" height="2" fill="#555"/>
</svg>

Before

Width:  |  Height:  |  Size: 363 B

After

Width:  |  Height:  |  Size: 273 B

View File

@@ -1,16 +1,8 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns="http://www.w3.org/2000/svg"
version="1.1"
width="16"
height="16"
viewBox="0 0 16 16"
>
<rect x="3" y="3" width="4" height="2" style="fill:#555555" />
<rect x="3" y="7" width="4" height="2" style="fill:#555555" />
<rect x="3" y="11" width="4" height="2" style="fill:#555555" />
<rect x="9" y="3" width="4" height="2" style="fill:#555555" />
<rect x="9" y="7" width="4" height="2" style="fill:#555555" />
<rect x="9" y="11" width="4" height="2" style="fill:#555555" />
</svg>
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="16" height="16" viewBox="0 0 16 16">
<rect x="3" y="3" width="4" height="2" fill="#555"/>
<rect x="3" y="7" width="4" height="2" fill="#555"/>
<rect x="3" y="11" width="4" height="2" fill="#555"/>
<rect x="9" y="3" width="4" height="2" fill="#555"/>
<rect x="9" y="7" width="4" height="2" fill="#555"/>
<rect x="9" y="11" width="4" height="2" fill="#555"/>
</svg>

Before

Width:  |  Height:  |  Size: 553 B

After

Width:  |  Height:  |  Size: 436 B

View File

@@ -1,14 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns="http://www.w3.org/2000/svg"
version="1.1"
width="16"
height="16"
viewBox="0 0 16 16"
>
<rect x="3" y="3" width="4" height="4" style="fill:#555555" />
<rect x="9" y="3" width="4" height="4" style="fill:#555555" />
<rect x="3" y="9" width="4" height="4" style="fill:#555555" />
<rect x="9" y="9" width="4" height="4" style="fill:#555555" />
</svg>
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="16" height="16" viewBox="0 0 16 16">
<rect x="3" y="3" width="4" height="4" fill="#555"/>
<rect x="9" y="3" width="4" height="4" fill="#555"/>
<rect x="3" y="9" width="4" height="4" fill="#555"/>
<rect x="9" y="9" width="4" height="4" fill="#555"/>
</svg>

Before

Width:  |  Height:  |  Size: 423 B

After

Width:  |  Height:  |  Size: 324 B

View File

@@ -1,45 +1,45 @@
modulejs.define('core/event', ['_'], function (_) {
var slice = Array.prototype.slice,
subscriptions = {},
var slice = Array.prototype.slice,
subscriptions = {},
sub = function (topic, callback) {
sub = function (topic, callback) {
if (_.isString(topic) && _.isFunction(callback)) {
if (_.isString(topic) && _.isFunction(callback)) {
if (!subscriptions[topic]) {
subscriptions[topic] = [];
}
subscriptions[topic].push(callback);
}
},
if (!subscriptions[topic]) {
subscriptions[topic] = [];
}
subscriptions[topic].push(callback);
}
},
unsub = function (topic, callback) {
unsub = function (topic, callback) {
if (_.isString(topic) && _.isFunction(callback) && subscriptions[topic]) {
if (_.isString(topic) && _.isFunction(callback) && subscriptions[topic]) {
subscriptions[topic] = _.without(subscriptions[topic], callback);
}
},
subscriptions[topic] = _.without(subscriptions[topic], callback);
}
},
pub = function (topic, data) {
pub = function (topic, data) {
var args = slice.call(arguments, 1);
var args = slice.call(arguments, 1);
// console.log('EVENT PUB', topic, args);
if (_.isString(topic) && subscriptions[topic]) {
// console.log('EVENT PUB', topic, args);
if (_.isString(topic) && subscriptions[topic]) {
_.each(subscriptions[topic], function (callback) {
_.each(subscriptions[topic], function (callback) {
callback.apply(topic, args);
});
}
};
callback.apply(topic, args);
});
}
};
return {
sub: sub,
unsub: unsub,
pub: pub
};
return {
sub: sub,
unsub: unsub,
pub: pub
};
});

View File

@@ -1,56 +1,56 @@
modulejs.define('core/format', ['_', 'moment'], function (_, moment) {
var decimalMetric = {
t: 1000.0,
k: 1000.0,
u: ['B', 'KB', 'MB', 'GB', 'TB']
},
binaryMetric = {
t: 1024.0,
k: 1024.0,
u: ['B', 'KiB', 'MiB', 'GiB', 'TiB']
},
defaultMetric = decimalMetric,
defaultDateFormat = 'YYYY-MM-DD HH:mm',
var decimalMetric = {
t: 1000.0,
k: 1000.0,
u: ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB']
},
binaryMetric = {
t: 1024.0,
k: 1024.0,
u: ['B', 'KiB', 'MiB', 'GiB', 'TiB', 'PiB', 'EiB', 'ZiB', 'YiB']
},
defaultMetric = decimalMetric,
defaultDateFormat = 'YYYY-MM-DD HH:mm',
setDefaultMetric = function (useBinaryMetric) {
setDefaultMetric = function (useBinaryMetric) {
defaultMetric = useBinaryMetric ? binaryMetric : decimalMetric;
},
defaultMetric = useBinaryMetric ? binaryMetric : decimalMetric;
},
formatSize = function (size, metric) {
formatSize = function (size, metric) {
metric = metric || defaultMetric;
metric = metric || defaultMetric;
if (!_.isNumber(size) || size < 0) {
return '';
}
if (!_.isNumber(size) || size < 0) {
return '';
}
var i = 0,
maxI = metric.u.length - 1;
var i = 0,
maxI = metric.u.length - 1;
while (size >= metric.t && i < maxI) {
size /= metric.k;
i += 1;
}
return (i <= 1 ? Math.round(size) : size.toFixed(1)).toString() + ' ' + metric.u[i];
},
while (size >= metric.t && i < maxI) {
size /= metric.k;
i += 1;
}
return (i <= 1 ? Math.round(size) : size.toFixed(1)).toString() + ' ' + metric.u[i];
},
setDefaultDateFormat = function (dateFormat) {
setDefaultDateFormat = function (dateFormat) {
defaultDateFormat = dateFormat;
},
defaultDateFormat = dateFormat;
},
formatDate = function (millis) {
formatDate = function (millis) {
return _.isNumber(millis) && millis ? moment(millis).format(defaultDateFormat) : '';
};
return _.isNumber(millis) && millis ? moment(millis).format(defaultDateFormat) : '';
};
return {
setDefaultMetric: setDefaultMetric,
formatSize: formatSize,
setDefaultDateFormat: setDefaultDateFormat,
formatDate: formatDate
};
return {
setDefaultMetric: setDefaultMetric,
formatSize: formatSize,
setDefaultDateFormat: setDefaultDateFormat,
formatDate: formatDate
};
});

View File

@@ -1,5 +1,5 @@
modulejs.define('core/langs', ['config', '_'], function (config, _) {
return _.extend({}, config.langs);
return _.extend({}, config.langs);
});

View File

@@ -1,209 +1,209 @@
modulejs.define('core/location', ['_', 'modernizr', 'core/settings', 'core/event', 'core/notify'], function (_, modernizr, allsettings, event, notify) {
var settings = _.extend({
smartBrowsing: true,
unmanagedInNewWindow: true
}, allsettings.view),
var settings = _.extend({
smartBrowsing: true,
unmanagedInNewWindow: true
}, allsettings.view),
doc = document,
doc = document,
history = settings.smartBrowsing && modernizr.history ? window.history : null,
history = settings.smartBrowsing && modernizr.history ? window.history : null,
forceEncoding = function (href) {
forceEncoding = function (href) {
return href
.replace(/\/+/g, '/')
return href
.replace(/\/+/g, '/')
.replace(/ /g, '%20')
.replace(/!/g, '%21')
.replace(/#/g, '%23')
.replace(/\$/g, '%24')
.replace(/&/g, '%26')
.replace(/'/g, '%27')
.replace(/\(/g, '%28')
.replace(/\)/g, '%29')
.replace(/\*/g, '%2A')
.replace(/\+/g, '%2B')
.replace(/\,/g, '%2C')
// .replace(/\//g, '%2F')
.replace(/:/g, '%3A')
.replace(/;/g, '%3B')
.replace(/=/g, '%3D')
.replace(/\?/g, '%3F')
.replace(/@/g, '%40')
.replace(/\[/g, '%5B')
.replace(/\]/g, '%5D');
},
.replace(/ /g, '%20')
.replace(/!/g, '%21')
.replace(/#/g, '%23')
.replace(/\$/g, '%24')
.replace(/&/g, '%26')
.replace(/'/g, '%27')
.replace(/\(/g, '%28')
.replace(/\)/g, '%29')
.replace(/\*/g, '%2A')
.replace(/\+/g, '%2B')
.replace(/\,/g, '%2C')
// .replace(/\//g, '%2F')
.replace(/:/g, '%3A')
.replace(/;/g, '%3B')
.replace(/=/g, '%3D')
.replace(/\?/g, '%3F')
.replace(/@/g, '%40')
.replace(/\[/g, '%5B')
.replace(/\]/g, '%5D');
},
reUriToPathname = /^.*:\/\/[^\/]*|[^\/]*$/g,
uriToPathname = function (uri) {
reUriToPathname = /^.*:\/\/[^\/]*|[^\/]*$/g,
uriToPathname = function (uri) {
return uri.replace(reUriToPathname, '');
},
return uri.replace(reUriToPathname, '');
},
hrefsAreDecoded = (function () {
hrefsAreDecoded = (function () {
var testpathname = '/a b',
a = doc.createElement('a');
var testpathname = '/a b',
a = doc.createElement('a');
a.href = testpathname;
return uriToPathname(a.href) === testpathname;
}()),
a.href = testpathname;
return uriToPathname(a.href) === testpathname;
}()),
encodedHref = function (href) {
encodedHref = function (href) {
var a = doc.createElement('a'),
location;
var a = doc.createElement('a'),
location;
a.href = href;
location = uriToPathname(a.href);
a.href = href;
location = uriToPathname(a.href);
if (hrefsAreDecoded) {
location = encodeURIComponent(location).replace(/%2F/ig, '/');
}
if (hrefsAreDecoded) {
location = encodeURIComponent(location).replace(/%2F/ig, '/');
}
return forceEncoding(location);
};
return forceEncoding(location);
};
var absHref = null,
var absHref = null,
getDomain = function () {
getDomain = function () {
return doc.domain;
},
return doc.domain;
},
getAbsHref = function () {
getAbsHref = function () {
return absHref;
},
return absHref;
},
getItem = function () {
getItem = function () {
return modulejs.require('model/item').get(absHref);
},
return modulejs.require('model/item').get(absHref);
},
load = function (callback) {
load = function (callback) {
modulejs.require('core/server').request({action: 'get', items: true, itemsHref: absHref, itemsWhat: 1}, function (json) {
modulejs.require('core/server').request({action: 'get', items: true, itemsHref: absHref, itemsWhat: 1}, function (json) {
var Item = modulejs.require('model/item'),
item = Item.get(absHref);
var Item = modulejs.require('model/item'),
item = Item.get(absHref);
if (json) {
if (json) {
var found = {};
var found = {};
_.each(json.items, function (jsonItem) {
_.each(json.items, function (jsonItem) {
var e = Item.get(jsonItem.absHref, jsonItem.time, jsonItem.size, jsonItem.is_managed, jsonItem.content, jsonItem.md5, jsonItem.sha1);
found[e.absHref] = true;
});
var e = Item.get(jsonItem.absHref, jsonItem.time, jsonItem.size, jsonItem.is_managed, jsonItem.content, jsonItem.md5, jsonItem.sha1);
found[e.absHref] = true;
});
_.each(item.content, function (e) {
_.each(item.content, function (e) {
if (!found[e.absHref]) {
Item.remove(e.absHref);
}
});
}
if (_.isFunction(callback)) {
callback(item);
}
});
},
if (!found[e.absHref]) {
Item.remove(e.absHref);
}
});
}
if (_.isFunction(callback)) {
callback(item);
}
});
},
setLocation = function (newAbsHref, keepBrowserUrl) {
setLocation = function (newAbsHref, keepBrowserUrl) {
event.pub('location.beforeChange');
event.pub('location.beforeChange');
newAbsHref = encodedHref(newAbsHref);
newAbsHref = encodedHref(newAbsHref);
if (absHref !== newAbsHref) {
absHref = newAbsHref;
if (absHref !== newAbsHref) {
absHref = newAbsHref;
if (history) {
if (keepBrowserUrl) {
history.replaceState({absHref: absHref}, '', absHref);
} else {
history.pushState({absHref: absHref}, '', absHref);
}
}
}
if (history) {
if (keepBrowserUrl) {
history.replaceState({absHref: absHref}, '', absHref);
} else {
history.pushState({absHref: absHref}, '', absHref);
}
}
}
var item = getItem();
if (item.isLoaded) {
event.pub('location.changed', item);
refresh();
} else {
notify.set('loading...');
load(function () {
item.isLoaded = true;
notify.set();
event.pub('location.changed', item);
});
}
},
var item = getItem();
if (item.isLoaded) {
event.pub('location.changed', item);
refresh();
} else {
notify.set('loading...');
load(function () {
item.isLoaded = true;
notify.set();
event.pub('location.changed', item);
});
}
},
refresh = function () {
refresh = function () {
var item = getItem(),
oldItems = _.values(item.content);
var item = getItem(),
oldItems = _.values(item.content);
event.pub('location.beforeRefresh');
event.pub('location.beforeRefresh');
load(function () {
load(function () {
var newItems = _.values(item.content),
added = _.difference(newItems, oldItems),
removed = _.difference(oldItems, newItems);
var newItems = _.values(item.content),
added = _.difference(newItems, oldItems),
removed = _.difference(oldItems, newItems);
event.pub('location.refreshed', item, added, removed);
});
},
event.pub('location.refreshed', item, added, removed);
});
},
setLink = function ($el, item) {
setLink = function ($el, item) {
$el.attr('href', item.absHref);
$el.attr('href', item.absHref);
if (history && item.isFolder() && item.isManaged) {
$el.on('click', function () {
if (history && item.isFolder() && item.isManaged) {
$el.on('click', function () {
setLocation(item.absHref);
return false;
});
}
setLocation(item.absHref);
return false;
});
}
if (settings.unmanagedInNewWindow && !item.isManaged) {
$el.attr('target', '_blank');
}
};
if (settings.unmanagedInNewWindow && !item.isManaged) {
$el.attr('target', '_blank');
}
};
if (history) {
window.onpopstate = function (e) {
if (history) {
window.onpopstate = function (e) {
if (e.state && e.state.absHref) {
setLocation(e.state.absHref, true);
}
};
}
if (e.state && e.state.absHref) {
setLocation(e.state.absHref, true);
}
};
}
event.sub('ready', function () {
event.sub('ready', function () {
setLocation(document.location.href, true);
});
setLocation(document.location.href, true);
});
return {
forceEncoding: forceEncoding,
getDomain: getDomain,
getAbsHref: getAbsHref,
getItem: getItem,
setLocation: setLocation,
refresh: refresh,
setLink: setLink
};
return {
forceEncoding: forceEncoding,
getDomain: getDomain,
getAbsHref: getAbsHref,
getItem: getItem,
setLocation: setLocation,
refresh: refresh,
setLink: setLink
};
});

View File

@@ -1,25 +1,25 @@
modulejs.define('core/notify', ['$'], function ($) {
var template = '<div id="notify"/>',
var template = '<div id="notify"/>',
set = function (content) {
set = function (content) {
if (content) {
$('#notify').stop(true, true).html(content).fadeIn(400);
} else {
$('#notify').stop(true, true).fadeOut(400);
}
},
if (content) {
$('#notify').stop(true, true).html(content).fadeIn(400);
} else {
$('#notify').stop(true, true).fadeOut(400);
}
},
init = function () {
init = function () {
$(template).hide().appendTo('body');
};
$(template).hide().appendTo('body');
};
init();
init();
return {
set: set
};
return {
set: set
};
});

View File

@@ -1,68 +1,42 @@
modulejs.define('core/resource', ['_', '$', 'config', 'core/settings'], function (_, $, config, settings) {
var win = window,
appHref = settings.appHref,
imagesHref = appHref + 'client/images/',
fallbackHref = appHref + 'client/images/fallback/',
themesHref = appHref + 'client/themes/',
scriptsHref = appHref + 'client/js/',
fallbacks = ['file', 'folder', 'folder-page', 'folder-parent', 'ar', 'aud', 'bin', 'img', 'txt', 'vid'],
var win = window,
appHref = settings.appHref,
imagesHref = appHref + 'client/images/',
fallbackHref = appHref + 'client/images/fallback/',
themesHref = appHref + 'client/themes/',
scriptsHref = appHref + 'client/js/',
fallbacks = ['file', 'folder', 'folder-page', 'folder-parent', 'ar', 'aud', 'bin', 'img', 'txt', 'vid'],
image = function (id) {
image = function (id) {
return imagesHref + id + '.svg';
},
return imagesHref + id + '.svg';
},
icon = function (id) {
icon = function (id) {
var baseId = id.split('-')[0],
href = config.theme[id] || config.theme[baseId];
var baseId = id.split('-')[0],
href = config.theme[id] || config.theme[baseId];
if (href) {
return themesHref + href;
}
if (href) {
return themesHref + href;
}
if (_.indexOf(fallbacks, id) >= 0) {
return fallbackHref + id + '.svg';
}
if (_.indexOf(fallbacks, id) >= 0) {
return fallbackHref + id + '.svg';
}
if (_.indexOf(fallbacks, baseId) >= 0) {
return fallbackHref + baseId + '.svg';
}
if (_.indexOf(fallbacks, baseId) >= 0) {
return fallbackHref + baseId + '.svg';
}
return fallbackHref + 'file.svg';
},
loadScript = function (filename, callback) {
$.ajax({
url: scriptsHref + filename,
dataType: 'script'
}).done(function () {
callback();
});
},
loadScriptGlob = function (filename, globalId, callback) {
if (win[globalId]) {
callback(win[globalId]);
} else {
loadScript(filename, function () { callback(win[globalId]); });
}
},
ensureSH = function (callback) {
loadScriptGlob('syntaxhighlighter.js', 'SyntaxHighlighter', callback);
};
return fallbackHref + 'file.svg';
};
return {
image: image,
icon: icon,
ensureSH: ensureSH
};
return {
image: image,
icon: icon
};
});

View File

@@ -1,53 +1,53 @@
modulejs.define('core/server', ['$', '_', 'config', 'core/location'], function ($, _, config, location) {
var server = {
var server = {
backend: config.setup.BACKEND,
api: config.setup.API === true,
name: config.setup.SERVER_NAME,
version: config.setup.SERVER_VERSION,
backend: config.setup.BACKEND,
api: config.setup.API === true,
name: config.setup.SERVER_NAME,
version: config.setup.SERVER_VERSION,
request: function (data, callback) {
request: function (data, callback) {
if (server.api) {
$.ajax({
url: location.getAbsHref(),
data: data,
type: 'POST',
dataType: 'json'
})
.done(function (json) {
if (server.api) {
$.ajax({
url: location.getAbsHref(),
data: data,
type: 'POST',
dataType: 'json'
})
.done(function (json) {
callback(json);
})
.fail(function () {
callback(json);
})
.fail(function () {
callback();
});
} else {
callback();
}
},
callback();
});
} else {
callback();
}
},
formRequest: function (data) {
formRequest: function (data) {
if (server.api) {
var $form = $('<form method="post" style="display:none;"/>')
.attr('action', location.getAbsHref());
if (server.api) {
var $form = $('<form method="post" style="display:none;"/>')
.attr('action', location.getAbsHref());
_.each(data, function (val, key) {
_.each(data, function (val, key) {
$('<input type="hidden"/>')
.attr('name', key)
.attr('value', val)
.appendTo($form);
});
$('<input type="hidden"/>')
.attr('name', key)
.attr('value', val)
.appendTo($form);
});
$form.appendTo('body').submit().remove();
}
}
};
$form.appendTo('body').submit().remove();
}
}
};
return server;
return server;
});

View File

@@ -1,9 +1,9 @@
modulejs.define('core/settings', ['config', '_'], function (config, _) {
return _.extend({}, config.options, {
appHref: config.setup.APP_HREF,
rootHref: config.setup.ROOT_HREF,
currentHref: config.setup.CURRENT_HREF
});
return _.extend({}, config.options, {
appHref: config.setup.APP_HREF,
rootHref: config.setup.ROOT_HREF,
currentHref: config.setup.CURRENT_HREF
});
});

View File

@@ -1,41 +1,41 @@
modulejs.define('core/store', ['modernizr'], function (modernizr) {
var store = modernizr.localstorage ? window.localStorage : null,
var store = modernizr.localstorage ? window.localStorage : null,
key = '_h5ai',
key = '_h5ai',
load = function () {
load = function () {
if (store) {
try {
return JSON.parse(store[key]);
} catch (e) {}
}
return {};
},
if (store) {
try {
return JSON.parse(store[key]);
} catch (e) {}
}
return {};
},
save = function (obj) {
save = function (obj) {
if (store) {
store[key] = JSON.stringify(obj);
}
},
if (store) {
store[key] = JSON.stringify(obj);
}
},
put = function (key, value) {
put = function (key, value) {
var obj = load();
obj[key] = value;
return save(obj);
},
var obj = load();
obj[key] = value;
return save(obj);
},
get = function (key) {
get = function (key) {
return load()[key];
};
return load()[key];
};
return {
put: put,
get: get
};
return {
put: put,
get: get
};
});

View File

@@ -1,47 +1,47 @@
modulejs.define('core/types', ['config', '_'], function (config, _) {
var reEndsWithSlash = /\/$/,
regexps = {},
var reEndsWithSlash = /\/$/,
regexps = {},
escapeRegExp = function (sequence) {
escapeRegExp = function (sequence) {
return sequence.replace(/[\-\[\]\/\{\}\(\)\+\?\.\\\^\$]/g, "\\$&");
// return sequence.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&");
},
return sequence.replace(/[\-\[\]\/\{\}\(\)\+\?\.\\\^\$]/g, "\\$&");
// return sequence.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&");
},
parse = function (types) {
parse = function (types) {
_.each(types, function (patterns, type) {
_.each(types, function (patterns, type) {
var pattern = '^(' + _.map(patterns, function (p) { return '(' + escapeRegExp(p).replace(/\*/g, '.*') + ')'; }).join('|') + ')$';
regexps[type] = new RegExp(pattern, 'i');
});
},
var pattern = '^(' + _.map(patterns, function (p) { return '(' + escapeRegExp(p).replace(/\*/g, '.*') + ')'; }).join('|') + ')$';
regexps[type] = new RegExp(pattern, 'i');
});
},
getType = function (sequence) {
getType = function (sequence) {
if (reEndsWithSlash.test(sequence)) {
return 'folder';
}
if (reEndsWithSlash.test(sequence)) {
return 'folder';
}
var slashidx = sequence.lastIndexOf('/'),
name = slashidx >= 0 ? sequence.substr(slashidx + 1) : sequence;
var slashidx = sequence.lastIndexOf('/'),
name = slashidx >= 0 ? sequence.substr(slashidx + 1) : sequence;
for (var type in regexps) {
if (regexps.hasOwnProperty(type)) {
if (regexps[type].test(name)) {
return type;
}
}
}
for (var type in regexps) {
if (regexps.hasOwnProperty(type)) {
if (regexps[type].test(name)) {
return type;
}
}
}
return 'file';
};
return 'file';
};
parse(_.extend({}, config.types));
parse(_.extend({}, config.types));
return {
getType: getType
};
return {
getType: getType
};
});

View File

@@ -1,42 +1,42 @@
modulejs.define('ext/autorefresh', ['_', '$', 'core/settings', 'core/event', 'core/location'], function (_, $, allsettings, event, location) {
var settings = _.extend({
enabled: false,
interval: 5000
}, allsettings.autorefresh),
var settings = _.extend({
enabled: false,
interval: 5000
}, allsettings.autorefresh),
timeoutId = null,
timeoutId = null,
heartbeat = function () {
heartbeat = function () {
location.refresh();
},
location.refresh();
},
before = function () {
before = function () {
clearTimeout(timeoutId);
},
clearTimeout(timeoutId);
},
after = function () {
after = function () {
clearTimeout(timeoutId);
timeoutId = setTimeout(heartbeat, settings.interval);
},
clearTimeout(timeoutId);
timeoutId = setTimeout(heartbeat, settings.interval);
},
init = function () {
init = function () {
if (!settings.enabled) {
return;
}
if (!settings.enabled) {
return;
}
settings.interval = Math.max(1000, settings.interval);
settings.interval = Math.max(1000, settings.interval);
event.sub('location.beforeChange', before);
event.sub('location.beforeRefresh', before);
event.sub('location.changed', after);
event.sub('location.refreshed', after);
};
event.sub('location.beforeChange', before);
event.sub('location.beforeRefresh', before);
event.sub('location.changed', after);
event.sub('location.refreshed', after);
};
init();
init();
});

View File

@@ -1,95 +1,96 @@
modulejs.define('ext/crumb', ['_', '$', 'core/settings', 'core/resource', 'core/event', 'core/location'], function (_, $, allsettings, resource, event, location) {
var settings = _.extend({
enabled: false
}, allsettings.crumb),
var settings = _.extend({
enabled: false
}, allsettings.crumb),
template = '<li class="crumb">' +
'<a>' +
'<img src="' + resource.image('crumb') + '" alt=">"/>' +
'<span/>' +
'</a>' +
'</li>',
pageHintTemplate = '<img class="hint" src="' + resource.image('page') + '" alt="has index page"/>',
statusHintTemplate = '<span class="hint"/>',
template =
'<li class="crumb">' +
'<a>' +
'<img src="' + resource.image('crumb') + '" alt=">"/>' +
'<span/>' +
'</a>' +
'</li>',
pageHintTemplate = '<img class="hint" src="' + resource.image('page') + '" alt="has index page"/>',
statusHintTemplate = '<span class="hint"/>',
update = function (item, force) {
update = function (item, force) {
if (!force && item.$crumb) {
return item.$crumb;
}
if (!force && item.$crumb) {
return item.$crumb;
}
var $html = $(template),
$a = $html.find('a');
var $html = $(template),
$a = $html.find('a');
$html
.addClass(item.isFolder() ? 'folder' : 'file')
.data('item', item);
$html
.addClass(item.isFolder() ? 'folder' : 'file')
.data('item', item);
location.setLink($a, item);
$a.find('span').text(item.label).end();
location.setLink($a, item);
$a.find('span').text(item.label).end();
if (item.isDomain()) {
$html.addClass('domain');
$a.find('img').attr('src', resource.image('home'));
}
if (item.isDomain()) {
$html.addClass('domain');
$a.find('img').attr('src', resource.image('home'));
}
if (item.isRoot()) {
$html.addClass('root');
$a.find('img').attr('src', resource.image('home'));
}
if (item.isRoot()) {
$html.addClass('root');
$a.find('img').attr('src', resource.image('home'));
}
if (item.isCurrentFolder()) {
$html.addClass('current');
}
if (item.isCurrentFolder()) {
$html.addClass('current');
}
if (!item.isManaged) {
$a.append($(pageHintTemplate));
}
if (!item.isManaged) {
$a.append($(pageHintTemplate));
}
if (item.$crumb) {
item.$crumb.replaceWith($html);
}
item.$crumb = $html;
if (item.$crumb) {
item.$crumb.replaceWith($html);
}
item.$crumb = $html;
return $html;
},
return $html;
},
onLocationChanged = function (item) {
onLocationChanged = function (item) {
var crumb = item.getCrumb(),
$ul = $('#navbar'),
found = false;
var crumb = item.getCrumb(),
$ul = $('#navbar'),
found = false;
$ul.find('.crumb').each(function () {
$ul.find('.crumb').each(function () {
var $html = $(this);
if ($html.data('item') === item) {
found = true;
$html.addClass('current');
} else {
$html.removeClass('current');
}
});
var $html = $(this);
if ($html.data('item') === item) {
found = true;
$html.addClass('current');
} else {
$html.removeClass('current');
}
});
if (!found) {
$ul.find('.crumb').remove();
_.each(crumb, function (e) {
if (!found) {
$ul.find('.crumb').remove();
_.each(crumb, function (e) {
$ul.append(update(e, true));
});
}
},
$ul.append(update(e, true));
});
}
},
init = function () {
init = function () {
if (!settings.enabled) {
return;
}
if (!settings.enabled) {
return;
}
event.sub('location.changed', onLocationChanged);
};
event.sub('location.changed', onLocationChanged);
};
init();
init();
});

View File

@@ -1,61 +1,61 @@
modulejs.define('ext/custom', ['_', '$', 'markdown', 'core/settings', 'core/server', 'core/event', 'core/resource'], function (_, $, markdown, allsettings, server, event, resource) {
modulejs.define('ext/custom', ['_', '$', 'marked', 'core/settings', 'core/server', 'core/event', 'core/resource'], function (_, $, marked, allsettings, server, event, resource) {
var settings = _.extend({
enabled: false
}, allsettings.custom),
var settings = _.extend({
enabled: false
}, allsettings.custom),
$header, $footer,
duration = 200,
$header, $footer,
duration = 200,
onLocationChanged = function (item) {
onLocationChanged = function (item) {
server.request({action: 'get', custom: true, customHref: item.absHref}, function (response) {
server.request({action: 'get', custom: true, customHref: item.absHref}, function (response) {
var has_header, has_footer, data, content;
var has_header, has_footer, data, content;
if (response) {
data = response.custom;
if (response) {
data = response.custom;
if (data.header) {
content = data.header;
if (data.header_type === 'md') {
content = markdown.toHTML(content);
}
$header.html(content).stop().slideDown(duration);
has_header = true;
}
if (data.header) {
content = data.header;
if (data.header_type === 'md') {
content = marked(content);
}
$header.html(content).stop().slideDown(duration);
has_header = true;
}
if (data.footer) {
content = data.footer;
if (data.footer_type === 'md') {
content = markdown.toHTML(content);
}
$footer.html(content).stop().slideDown(duration);
has_footer = true;
}
}
if (data.footer) {
content = data.footer;
if (data.footer_type === 'md') {
content = marked(content);
}
$footer.html(content).stop().slideDown(duration);
has_footer = true;
}
}
if (!has_header) {
$header.stop().slideUp(duration);
}
if (!has_footer) {
$footer.stop().slideUp(duration);
}
});
},
if (!has_header) {
$header.stop().slideUp(duration);
}
if (!has_footer) {
$footer.stop().slideUp(duration);
}
});
},
init = function () {
init = function () {
if (!settings.enabled) {
return;
}
if (!settings.enabled) {
return;
}
$header = $('<div id="content-header"/>').hide().prependTo('#content');
$footer = $('<div id="content-footer"/>').hide().appendTo('#content');
$header = $('<div id="content-header"/>').hide().prependTo('#content');
$footer = $('<div id="content-footer"/>').hide().appendTo('#content');
event.sub('location.changed', onLocationChanged);
};
event.sub('location.changed', onLocationChanged);
};
init();
init();
});

View File

@@ -1,65 +1,65 @@
modulejs.define('ext/download', ['_', '$', 'core/settings', 'core/resource', 'core/event', 'core/location', 'core/server'], function (_, $, allsettings, resource, event, location, server) {
var settings = _.extend({
enabled: false,
type: 'php-tar',
packageName: 'package',
alwaysVisible: false
}, allsettings.download),
var settings = _.extend({
enabled: false,
type: 'php-tar',
packageName: 'package',
alwaysVisible: false
}, allsettings.download),
downloadBtnTemplate =
'<li id="download">' +
'<a href="#">' +
'<img src="' + resource.image('download') + '" alt="download"/>' +
'<span class="l10n-download"/>' +
'</a>' +
'</li>',
downloadBtnTemplate =
'<li id="download">' +
'<a href="#">' +
'<img src="' + resource.image('download') + '" alt="download"/>' +
'<span class="l10n-download"/>' +
'</a>' +
'</li>',
selectedItems = [],
selectedItems = [],
onSelection = function (items) {
onSelection = function (items) {
var $download = $('#download');
var $download = $('#download');
selectedItems = items.slice(0);
if (selectedItems.length) {
$download.show();
} else if (!settings.alwaysVisible) {
$download.hide();
}
},
selectedItems = items.slice(0);
if (selectedItems.length) {
$download.show();
} else if (!settings.alwaysVisible) {
$download.hide();
}
},
onClick = function (event) {
onClick = function (event) {
var type = settings.type,
extension = (type === 'shell-zip') ? 'zip' : 'tar',
query = {
action: 'download',
as: (settings.packageName || location.getItem().label) + '.' + extension,
type: type,
hrefs: _.pluck(selectedItems, 'absHref').join('|:|')
};
var type = settings.type,
extension = (type === 'shell-zip') ? 'zip' : 'tar',
query = {
action: 'download',
as: (settings.packageName || location.getItem().label) + '.' + extension,
type: type,
hrefs: _.pluck(selectedItems, 'absHref').join('|:|')
};
server.formRequest(query);
},
server.formRequest(query);
},
init = function () {
init = function () {
if (!settings.enabled) {
return;
}
if (!settings.enabled) {
return;
}
$(downloadBtnTemplate)
.find('a').on('click', onClick).end()
.appendTo('#navbar');
$(downloadBtnTemplate)
.find('a').on('click', onClick).end()
.appendTo('#navbar');
if (settings.alwaysVisible) {
$('#download').show();
}
if (settings.alwaysVisible) {
$('#download').show();
}
event.sub('selection', onSelection);
};
event.sub('selection', onSelection);
};
init();
init();
});

View File

@@ -1,120 +1,121 @@
modulejs.define('ext/filter', ['_', '$', 'core/settings', 'core/resource', 'core/event'], function (_, $, allsettings, resource, event) {
var settings = _.extend({
enabled: false
}, allsettings.filter),
var settings = _.extend({
enabled: false
}, allsettings.filter),
template = '<li id="filter">' +
'<span class="element">' +
'<img src="' + resource.image('filter') + '" alt="filter"/>' +
'<input type="text" value="" placeholder="filter"/>' +
'</span>' +
'</li>',
noMatchTemplate = '<div class="no-match l10n-noMatch"/>',
template =
'<li id="filter">' +
'<span class="element">' +
'<img src="' + resource.image('filter') + '" alt="filter"/>' +
'<input type="text" value="" placeholder="filter"/>' +
'</span>' +
'</li>',
noMatchTemplate = '<div class="no-match l10n-noMatch"/>',
$filter, $input, $noMatch,
$filter, $input, $noMatch,
filter = function (re) {
filter = function (re) {
var match = [],
noMatch = [],
duration = 200;
var match = [],
noMatch = [],
duration = 200;
if (re) {
$('#items .item').not('.folder-parent').each(function () {
if (re) {
$('#items .item').not('.folder-parent').each(function () {
var label = $(this).find('.label').text();
var label = $(this).find('.label').text();
if (label.match(re)) {
match.push(this);
} else {
noMatch.push(this);
}
});
} else {
match = $('#items .item').not('.folder-parent');
}
if (label.match(re)) {
match.push(this);
} else {
noMatch.push(this);
}
});
} else {
match = $('#items .item').not('.folder-parent');
}
if (match.length) {
$noMatch.hide();
} else if (noMatch.length) {
setTimeout(function () { $noMatch.show(); }, duration);
}
$(match).fadeIn(duration);
$(noMatch).fadeOut(duration);
},
if (match.length) {
$noMatch.hide();
} else if (noMatch.length) {
setTimeout(function () { $noMatch.show(); }, duration);
}
$(match).fadeIn(duration);
$(noMatch).fadeOut(duration);
},
escapeRegExp = function (sequence) {
escapeRegExp = function (sequence) {
return sequence.replace(/[\-\[\]{}()*+?.,\\$\^|#\s]/g, '\\$&');
},
return sequence.replace(/[\-\[\]{}()*+?.,\\$\^|#\s]/g, '\\$&');
},
parseFilterSequence = function (sequence) {
parseFilterSequence = function (sequence) {
if (sequence.substr(0, 3) === 're:') {
return new RegExp(sequence.substr(3));
}
if (sequence.substr(0, 3) === 're:') {
return new RegExp(sequence.substr(3));
}
sequence = $.map($.trim(sequence).split(/\s+/), function (part) {
sequence = $.map($.trim(sequence).split(/\s+/), function (part) {
return _.map(part.split(''), function (character) {
return _.map(part.split(''), function (character) {
return escapeRegExp(character);
}).join('.*?');
}).join('|');
return escapeRegExp(character);
}).join('.*?');
}).join('|');
return new RegExp(sequence, 'i');
},
return new RegExp(sequence, 'i');
},
reset = function () {
reset = function () {
$input.val('').blur();
},
$input.val('').blur();
},
update = function (focus) {
update = function (focus) {
var val = $input.val();
var val = $input.val();
if (focus) {
$input.focus();
}
if (focus) {
$input.focus();
}
if (val || focus) {
filter(parseFilterSequence(val));
$filter.addClass('current');
} else {
filter();
$filter.removeClass('current');
}
},
updt = function () { update(true); },
updf = function () { update(false); },
if (val || focus) {
filter(parseFilterSequence(val));
$filter.addClass('current');
} else {
filter();
$filter.removeClass('current');
}
},
updt = function () { update(true); },
updf = function () { update(false); },
init = function () {
init = function () {
if (!settings.enabled) {
return;
}
if (!settings.enabled) {
return;
}
$filter = $(template).appendTo('#navbar');
$input = $filter.find('input');
$noMatch = $(noMatchTemplate).appendTo('#view');
$filter = $(template).appendTo('#navbar');
$input = $filter.find('input');
$noMatch = $(noMatchTemplate).appendTo('#view');
$filter.on('click', updt);
$input.on('focus blur keyup', updf);
$filter.on('click', updt);
$input.on('focus blur keyup', updf);
$(document)
.on('keydown', function (event) {
$(document)
.on('keydown', function (event) {
if (event.which === 27) {
reset();
}
})
.on('keypress', updt);
if (event.which === 27) {
reset();
}
})
.on('keypress', updt);
event.sub('location.changed', reset);
};
event.sub('location.changed', reset);
};
init();
init();
});

View File

@@ -1,78 +1,77 @@
modulejs.define('ext/google-analytics-ga', ['_', 'core/settings'], function (_, allsettings) {
var settings = _.extend({
enabled: false,
gaq: []
}, allsettings['google-analytics-ga']),
var settings = _.extend({
enabled: false,
gaq: []
}, allsettings['google-analytics-ga']),
init = function () {
init = function () {
if (!settings.enabled) {
return;
}
if (!settings.enabled) {
return;
}
window._gaq = settings.gaq;
window._gaq = settings.gaq;
var scriptLiteral = 'script',
doc = document,
newScriptTag = doc.createElement(scriptLiteral),
firstScriptTag = doc.getElementsByTagName(scriptLiteral)[0];
var scriptLiteral = 'script',
doc = document,
newScriptTag = doc.createElement(scriptLiteral),
firstScriptTag = doc.getElementsByTagName(scriptLiteral)[0];
newScriptTag.async = true;
newScriptTag.src = ('https:' === location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
firstScriptTag.parentNode.insertBefore(newScriptTag, firstScriptTag);
};
newScriptTag.async = true;
newScriptTag.src = ('https:' === location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
firstScriptTag.parentNode.insertBefore(newScriptTag, firstScriptTag);
};
init();
init();
});
modulejs.define('ext/google-analytics-ua', ['_', 'core/settings', 'core/event'], function (_, allsettings, event) {
var settings = _.extend({
enabled: false,
id: 'UA-000000-0'
}, allsettings['google-analytics-ua']),
var settings = _.extend({
enabled: false,
id: 'UA-000000-0'
}, allsettings['google-analytics-ua']),
win = window,
doc = document,
scriptLiteral = 'script',
id = 'h5ai-ga',
win = window,
doc = document,
scriptLiteral = 'script',
id = 'h5ai-ga',
init = function () {
init = function () {
if (!settings.enabled) {
return;
}
if (!settings.enabled) {
return;
}
var el, firstScriptElement;
var el, firstScriptElement;
win.GoogleAnalyticsObject = id;
win[id] = win[id] || function () {
(win[id].q = win[id].q || []).push(arguments);
};
win[id].l = 1 * new Date();
win.GoogleAnalyticsObject = id;
win[id] = win[id] || function () {
(win[id].q = win[id].q || []).push(arguments);
};
win[id].l = 1 * new Date();
el = doc.createElement(scriptLiteral);
el.async = true;
el.src = '//www.google-analytics.com/analytics.js';
el = doc.createElement(scriptLiteral);
el.async = true;
el.src = '//www.google-analytics.com/analytics.js';
firstScriptElement = doc.getElementsByTagName(scriptLiteral)[0];
firstScriptElement.parentNode.insertBefore(el, firstScriptElement);
firstScriptElement = doc.getElementsByTagName(scriptLiteral)[0];
firstScriptElement.parentNode.insertBefore(el, firstScriptElement);
win[id]('create', settings.id, 'auto');
win[id]('create', settings.id, 'auto');
event.sub('location.changed', function (item) {
event.sub('location.changed', function (item) {
var loc = win.location;
win[id]('send', 'pageview', {
location: loc.protocol + '//' + loc.hostname + item.absHref,
page: loc.protocol + '//' + loc.host + item.absHref,
title: _.pluck(item.getCrumb(), 'label').join(' > ')
});
});
};
var loc = win.location;
win[id]('send', 'pageview', {
location: loc.protocol + '//' + loc.host + item.absHref,
title: _.pluck(item.getCrumb(), 'label').join(' > ')
});
});
};
init();
init();
});

View File

@@ -1,142 +1,142 @@
modulejs.define('ext/l10n', ['_', '$', 'core/settings', 'core/langs', 'core/format', 'core/store', 'core/event', 'core/server'], function (_, $, allsettings, langs, format, store, event, server) {
var settings = _.extend({
enabled: false,
lang: 'en',
useBrowserLang: true
}, allsettings.l10n),
var settings = _.extend({
enabled: false,
lang: 'en',
useBrowserLang: true
}, allsettings.l10n),
defaultTranslations = {
isoCode: 'en',
lang: 'english',
details: 'details',
list: 'list',
grid: 'grid',
icons: 'icons',
name: 'Name',
lastModified: 'Last modified',
size: 'Size',
parentDirectory: 'Parent Directory',
empty: 'empty',
folders: 'folders',
files: 'files',
download: 'download',
noMatch: 'no match',
dateFormat: 'YYYY-MM-DD HH:mm',
filter: 'filter',
'delete': 'delete'
},
defaultTranslations = {
isoCode: 'en',
lang: 'english',
details: 'details',
list: 'list',
grid: 'grid',
icons: 'icons',
name: 'Name',
lastModified: 'Last modified',
size: 'Size',
parentDirectory: 'Parent Directory',
empty: 'empty',
folders: 'folders',
files: 'files',
download: 'download',
noMatch: 'no match',
dateFormat: 'YYYY-MM-DD HH:mm',
filter: 'filter',
'delete': 'delete'
},
blockTemplate = '<div class="block"><div class="select"><select id="langs"/></div></div>',
optionTemplate = '<option/>',
blockTemplate = '<div class="block"><div class="select"><select id="langs"/></div></div>',
optionTemplate = '<option/>',
storekey = 'ext/l10n',
storekey = 'ext/l10n',
loaded = {
en: _.extend({}, defaultTranslations)
},
currentLang = loaded.en,
loaded = {
en: _.extend({}, defaultTranslations)
},
currentLang = loaded.en,
update = function (lang) {
update = function (lang) {
if (lang) {
currentLang = lang;
}
if (lang) {
currentLang = lang;
}
$('#langs option')
.removeAttr('selected').removeProp('selected')
.filter('.' + currentLang.isoCode)
.attr('selected', 'selected').prop('selected', 'selected');
$('#langs option')
.removeAttr('selected').removeProp('selected')
.filter('.' + currentLang.isoCode)
.attr('selected', 'selected').prop('selected', 'selected');
$.each(currentLang, function (key, value) {
$('.l10n-' + key).text(value);
});
format.setDefaultDateFormat(currentLang.dateFormat);
$.each(currentLang, function (key, value) {
$('.l10n-' + key).text(value);
});
format.setDefaultDateFormat(currentLang.dateFormat);
$('#items .item .date').each(function () {
$('#items .item .date').each(function () {
var $this = $(this);
var $this = $(this);
$this.text(format.formatDate($this.data('time')));
});
$this.text(format.formatDate($this.data('time')));
});
$('#filter input').attr('placeholder', currentLang.filter);
},
$('#filter input').attr('placeholder', currentLang.filter);
},
loadLanguage = function (isoCode, callback) {
loadLanguage = function (isoCode, callback) {
if (loaded[isoCode]) {
if (loaded[isoCode]) {
callback(loaded[isoCode]);
} else {
callback(loaded[isoCode]);
} else {
server.request({action: 'get', l10n: true, l10nCodes: isoCode}, function (response) {
server.request({action: 'get', l10n: true, l10nCodes: isoCode}, function (response) {
var json = response.l10n && response.l10n[isoCode] ? response.l10n[isoCode] : {};
loaded[isoCode] = _.extend({}, defaultTranslations, json, {isoCode: isoCode});
callback(loaded[isoCode]);
});
}
},
var json = response.l10n && response.l10n[isoCode] ? response.l10n[isoCode] : {};
loaded[isoCode] = _.extend({}, defaultTranslations, json, {isoCode: isoCode});
callback(loaded[isoCode]);
});
}
},
localize = function (langs, isoCode, useBrowserLang) {
localize = function (langs, isoCode, useBrowserLang) {
var storedIsoCode = store.get(storekey);
var storedIsoCode = store.get(storekey);
if (langs[storedIsoCode]) {
isoCode = storedIsoCode;
} else if (useBrowserLang) {
var browserLang = navigator.language || navigator.browserLanguage;
if (browserLang) {
if (langs[browserLang]) {
isoCode = browserLang;
} else if (browserLang.length > 2 && langs[browserLang.substr(0, 2)]) {
isoCode = browserLang.substr(0, 2);
}
}
}
if (langs[storedIsoCode]) {
isoCode = storedIsoCode;
} else if (useBrowserLang) {
var browserLang = navigator.language || navigator.browserLanguage;
if (browserLang) {
if (langs[browserLang]) {
isoCode = browserLang;
} else if (browserLang.length > 2 && langs[browserLang.substr(0, 2)]) {
isoCode = browserLang.substr(0, 2);
}
}
}
if (!langs[isoCode]) {
isoCode = 'en';
}
if (!langs[isoCode]) {
isoCode = 'en';
}
loadLanguage(isoCode, update);
},
loadLanguage(isoCode, update);
},
initLangSelector = function (langs) {
initLangSelector = function (langs) {
var isoCodes = _.keys(langs).sort(),
$block = $(blockTemplate),
$select = $block.find('select')
.on('change', function (event) {
var isoCode = event.target.value;
store.put(storekey, isoCode);
localize(langs, isoCode, false);
});
var isoCodes = _.keys(langs).sort(),
$block = $(blockTemplate),
$select = $block.find('select')
.on('change', function (event) {
var isoCode = event.target.value;
store.put(storekey, isoCode);
localize(langs, isoCode, false);
});
$.each(isoCodes, function (idx, isoCode) {
$(optionTemplate)
.attr('value', isoCode)
.addClass(isoCode)
.text(isoCode + ' - ' + (_.isString(langs[isoCode]) ? langs[isoCode] : langs[isoCode].lang))
.appendTo($select);
});
$.each(isoCodes, function (idx, isoCode) {
$(optionTemplate)
.attr('value', isoCode)
.addClass(isoCode)
.text(isoCode + ' - ' + (_.isString(langs[isoCode]) ? langs[isoCode] : langs[isoCode].lang))
.appendTo($select);
});
$block.appendTo('#settings');
},
$block.appendTo('#settings');
},
init = function () {
init = function () {
if (settings.enabled) {
initLangSelector(langs);
}
if (settings.enabled) {
initLangSelector(langs);
}
event.sub('location.changed', function () {
event.sub('location.changed', function () {
localize(langs, settings.lang, settings.useBrowserLang);
});
};
localize(langs, settings.lang, settings.useBrowserLang);
});
};
init();
init();
});

View File

@@ -1,51 +1,51 @@
modulejs.define('ext/link-hover-states', ['_', '$', 'core/settings', 'core/event'], function (_, $, allsettings, event) {
var settings = _.extend({
enabled: false
}, allsettings['link-hover-states']),
var settings = _.extend({
enabled: false
}, allsettings['link-hover-states']),
selector = "a[href^='/']",
selector = "a[href^='/']",
selectLinks = function (href) {
selectLinks = function (href) {
return $(_.filter($(selector), function (el) {
return $(_.filter($(selector), function (el) {
return $(el).attr('href') === href;
}));
},
return $(el).attr('href') === href;
}));
},
onMouseEnter = function () {
onMouseEnter = function () {
var href = $(this).attr('href');
var href = $(this).attr('href');
selectLinks(href).addClass('hover');
},
selectLinks(href).addClass('hover');
},
onMouseLeave = function () {
onMouseLeave = function () {
var href = $(this).attr('href');
var href = $(this).attr('href');
selectLinks(href).removeClass('hover');
},
selectLinks(href).removeClass('hover');
},
onLocationChanged = function () {
onLocationChanged = function () {
$('.hover').removeClass('hover');
},
$('.hover').removeClass('hover');
},
init = function () {
init = function () {
if (!settings.enabled) {
return;
}
if (!settings.enabled) {
return;
}
$('body')
.on('mouseenter', selector, onMouseEnter)
.on('mouseleave', selector, onMouseLeave);
$('body')
.on('mouseenter', selector, onMouseEnter)
.on('mouseleave', selector, onMouseLeave);
event.sub('location.changed', onLocationChanged);
};
event.sub('location.changed', onLocationChanged);
};
init();
init();
});

View File

@@ -1,31 +1,31 @@
modulejs.define('ext/piwik-analytics', ['_', '$', 'core/settings'], function (_, $, allsettings) {
var settings = _.extend({
enabled: false,
baseURL: 'not-set',
idSite: 0
}, allsettings['piwik-analytics']),
var settings = _.extend({
enabled: false,
baseURL: 'not-set',
idSite: 0
}, allsettings['piwik-analytics']),
init = function () {
init = function () {
if (!settings.enabled) {
return;
}
if (!settings.enabled) {
return;
}
// reference: http://piwik.org/docs/javascript-tracking/
// reference: http://piwik.org/docs/javascript-tracking/
var pkBaseURL = (("https:" === document.location.protocol) ? "https://" : "http://") + settings.baseURL + '/';
var pkBaseURL = (("https:" === document.location.protocol) ? "https://" : "http://") + settings.baseURL + '/';
$('<script/>').attr('src', pkBaseURL + 'piwik.js').appendTo('body');
$(window).load(function () {
/*global Piwik */
$('<script/>').attr('src', pkBaseURL + 'piwik.js').appendTo('body');
$(window).load(function () {
/*global Piwik */
var piwikTracker = Piwik.getTracker(pkBaseURL + 'piwik.php', settings.idSite);
piwikTracker.trackPageView();
piwikTracker.enableLinkTracking();
});
};
var piwikTracker = Piwik.getTracker(pkBaseURL + 'piwik.php', settings.idSite);
piwikTracker.trackPageView();
piwikTracker.enableLinkTracking();
});
};
init();
init();
});

View File

@@ -1,122 +1,122 @@
modulejs.define('ext/preview-audio', ['_', '$', 'moment', 'core/settings', 'core/event', 'ext/preview'], function (_, $, moment, allsettings, event, preview) {
var settings = _.extend({
enabled: false,
types: []
}, allsettings['preview-aud']),
var settings = _.extend({
enabled: false,
types: []
}, allsettings['preview-aud']),
preloadAudio = function (src, callback) {
preloadAudio = function (src, callback) {
var $audio = $('<audio/>')
.one('loadedmetadata', function () {
var $audio = $('<audio/>')
.one('loadedmetadata', function () {
callback($audio);
// setTimeout(function () { callback($img); }, 1000); // for testing
})
.attr('autoplay', 'autoplay')
.attr('controls', 'controls')
.attr('src', src);
},
callback($audio);
// setTimeout(function () { callback($img); }, 1000); // for testing
})
.attr('autoplay', 'autoplay')
.attr('controls', 'controls')
.attr('src', src);
},
onEnter = function (items, idx) {
onEnter = function (items, idx) {
var currentItems = items,
currentIdx = idx,
currentItem = items[idx],
var currentItems = items,
currentIdx = idx,
currentItem = items[idx],
onAdjustSize = function () {
onAdjustSize = function () {
var $content = $('#pv-content'),
$audio = $('#pv-aud-audio');
var $content = $('#pv-content'),
$audio = $('#pv-aud-audio');
if ($audio.length) {
if ($audio.length) {
$audio.css({
'left': '' + (($content.width()-$audio.width())*0.5) + 'px',
'top': '' + (($content.height()-$audio.height())*0.5) + 'px'
});
$audio.css({
'left': '' + (($content.width()-$audio.width())*0.5) + 'px',
'top': '' + (($content.height()-$audio.height())*0.5) + 'px'
});
preview.setLabels([
currentItem.label,
moment(0).add('seconds', $audio[0].duration).format('m:ss')
]);
}
},
preview.setLabels([
currentItem.label,
moment(0).add('seconds', $audio[0].duration).format('m:ss')
]);
}
},
onIdxChange = function (rel) {
onIdxChange = function (rel) {
currentIdx = (currentIdx + rel + currentItems.length) % currentItems.length;
currentItem = currentItems[currentIdx];
currentIdx = (currentIdx + rel + currentItems.length) % currentItems.length;
currentItem = currentItems[currentIdx];
var spinnerTimeout = setTimeout(function () { preview.showSpinner(true); }, 200);
var spinnerTimeout = setTimeout(function () { preview.showSpinner(true); }, 200);
if ($('#pv-aud-audio').length) {
$('#pv-aud-audio')[0].pause();
}
preloadAudio(currentItem.absHref, function ($preloaded_audio) {
if ($('#pv-aud-audio').length) {
$('#pv-aud-audio')[0].pause();
}
preloadAudio(currentItem.absHref, function ($preloaded_audio) {
clearTimeout(spinnerTimeout);
preview.showSpinner(false);
clearTimeout(spinnerTimeout);
preview.showSpinner(false);
$('#pv-content').fadeOut(100, function () {
$('#pv-content').fadeOut(100, function () {
$('#pv-content').empty().append($preloaded_audio.attr('id', 'pv-aud-audio')).fadeIn(200);
$('#pv-content').empty().append($preloaded_audio.attr('id', 'pv-aud-audio')).fadeIn(200);
// small timeout, so $preloaded_audio is visible and therefore $preloaded_audio.width is available
setTimeout(function () {
onAdjustSize();
// small timeout, so $preloaded_audio is visible and therefore $preloaded_audio.width is available
setTimeout(function () {
onAdjustSize();
preview.setIndex(currentIdx + 1, currentItems.length);
preview.setRawLink(currentItem.absHref);
}, 10);
});
});
};
preview.setIndex(currentIdx + 1, currentItems.length);
preview.setRawLink(currentItem.absHref);
}, 10);
});
});
};
onIdxChange(0);
preview.setOnIndexChange(onIdxChange);
preview.setOnAdjustSize(onAdjustSize);
preview.enter();
},
onIdxChange(0);
preview.setOnIndexChange(onIdxChange);
preview.setOnAdjustSize(onAdjustSize);
preview.enter();
},
initItem = function (item) {
initItem = function (item) {
if (item.$view && _.indexOf(settings.types, item.type) >= 0) {
item.$view.find('a').on('click', function (event) {
if (item.$view && _.indexOf(settings.types, item.type) >= 0) {
item.$view.find('a').on('click', function (event) {
event.preventDefault();
event.preventDefault();
var matchedEntries = _.compact(_.map($('#items .item'), function (item) {
var matchedEntries = _.compact(_.map($('#items .item'), function (item) {
item = $(item).data('item');
return _.indexOf(settings.types, item.type) >= 0 ? item : null;
}));
item = $(item).data('item');
return _.indexOf(settings.types, item.type) >= 0 ? item : null;
}));
onEnter(matchedEntries, _.indexOf(matchedEntries, item));
});
}
},
onEnter(matchedEntries, _.indexOf(matchedEntries, item));
});
}
},
onLocationChanged = function (item) {
onLocationChanged = function (item) {
_.each(item.content, initItem);
},
_.each(item.content, initItem);
},
onLocationRefreshed = function (item, added, removed) {
onLocationRefreshed = function (item, added, removed) {
_.each(added, initItem);
},
_.each(added, initItem);
},
init = function () {
init = function () {
if (!settings.enabled) {
return;
}
if (!settings.enabled) {
return;
}
event.sub('location.changed', onLocationChanged);
event.sub('location.refreshed', onLocationRefreshed);
};
event.sub('location.changed', onLocationChanged);
event.sub('location.refreshed', onLocationRefreshed);
};
init();
init();
});

View File

@@ -1,124 +1,124 @@
modulejs.define('ext/preview-img', ['_', '$', 'core/settings', 'core/event', 'ext/preview'], function (_, $, allsettings, event, preview) {
var settings = _.extend({
enabled: false,
types: []
}, allsettings['preview-img']),
var settings = _.extend({
enabled: false,
types: []
}, allsettings['preview-img']),
preloadImg = function (src, callback) {
preloadImg = function (src, callback) {
var $img = $('<img/>')
.one('load', function () {
var $img = $('<img/>')
.one('load', function () {
callback($img);
// setTimeout(function () { callback($img); }, 1000); // for testing
})
.attr('src', src);
},
callback($img);
// setTimeout(function () { callback($img); }, 1000); // for testing
})
.attr('src', src);
},
onEnter = function (items, idx) {
onEnter = function (items, idx) {
var currentItems = items,
currentIdx = idx,
currentItem = items[idx],
var currentItems = items,
currentIdx = idx,
currentItem = items[idx],
onAdjustSize = function () {
onAdjustSize = function () {
var $content = $('#pv-content'),
$img = $('#pv-img-image');
var $content = $('#pv-content'),
$img = $('#pv-img-image');
if ($img.length) {
if ($img.length) {
$img.css({
'left': '' + (($content.width()-$img.width())*0.5) + 'px',
'top': '' + (($content.height()-$img.height())*0.5) + 'px'
});
$img.css({
'left': '' + (($content.width()-$img.width())*0.5) + 'px',
'top': '' + (($content.height()-$img.height())*0.5) + 'px'
});
preview.setLabels([
currentItem.label,
'' + $img[0].naturalWidth + 'x' + $img[0].naturalHeight,
'' + (100 * $img.width() / $img[0].naturalWidth).toFixed(0) + '%'
]);
}
},
preview.setLabels([
currentItem.label,
'' + $img[0].naturalWidth + 'x' + $img[0].naturalHeight,
'' + (100 * $img.width() / $img[0].naturalWidth).toFixed(0) + '%'
]);
}
},
onIdxChange = function (rel) {
onIdxChange = function (rel) {
currentIdx = (currentIdx + rel + currentItems.length) % currentItems.length;
currentItem = currentItems[currentIdx];
currentIdx = (currentIdx + rel + currentItems.length) % currentItems.length;
currentItem = currentItems[currentIdx];
var spinnerTimeout = setTimeout(function () { preview.showSpinner(true); }, 200);
var spinnerTimeout = setTimeout(function () { preview.showSpinner(true); }, 200);
preloadImg(currentItem.absHref, function ($preloaded_img) {
preloadImg(currentItem.absHref, function ($preloaded_img) {
clearTimeout(spinnerTimeout);
preview.showSpinner(false);
clearTimeout(spinnerTimeout);
preview.showSpinner(false);
$('#pv-content').fadeOut(100, function () {
$('#pv-content').fadeOut(100, function () {
$('#pv-content').empty().append($preloaded_img.attr('id', 'pv-img-image')).fadeIn(200);
$('#pv-content').empty().append($preloaded_img.attr('id', 'pv-img-image')).fadeIn(200);
// small timeout, so $preloaded_img is visible and therefore $preloaded_img.width is available
setTimeout(function () {
// small timeout, so $preloaded_img is visible and therefore $preloaded_img.width is available
setTimeout(function () {
onAdjustSize();
onAdjustSize();
preview.setIndex(currentIdx + 1, currentItems.length);
preview.setLabels([
currentItem.label,
'' + $preloaded_img[0].naturalWidth + 'x' + $preloaded_img[0].naturalHeight,
'' + (100 * $preloaded_img.width() / $preloaded_img[0].naturalWidth).toFixed(0) + '%'
]);
preview.setRawLink(currentItem.absHref);
}, 10);
});
});
};
preview.setIndex(currentIdx + 1, currentItems.length);
preview.setLabels([
currentItem.label,
'' + $preloaded_img[0].naturalWidth + 'x' + $preloaded_img[0].naturalHeight,
'' + (100 * $preloaded_img.width() / $preloaded_img[0].naturalWidth).toFixed(0) + '%'
]);
preview.setRawLink(currentItem.absHref);
}, 10);
});
});
};
onIdxChange(0);
preview.setOnIndexChange(onIdxChange);
preview.setOnAdjustSize(onAdjustSize);
preview.enter();
},
onIdxChange(0);
preview.setOnIndexChange(onIdxChange);
preview.setOnAdjustSize(onAdjustSize);
preview.enter();
},
initItem = function (item) {
initItem = function (item) {
if (item.$view && _.indexOf(settings.types, item.type) >= 0) {
item.$view.find('a').on('click', function (event) {
if (item.$view && _.indexOf(settings.types, item.type) >= 0) {
item.$view.find('a').on('click', function (event) {
event.preventDefault();
event.preventDefault();
var matchedEntries = _.compact(_.map($('#items .item'), function (item) {
var matchedEntries = _.compact(_.map($('#items .item'), function (item) {
item = $(item).data('item');
return _.indexOf(settings.types, item.type) >= 0 ? item : null;
}));
item = $(item).data('item');
return _.indexOf(settings.types, item.type) >= 0 ? item : null;
}));
onEnter(matchedEntries, _.indexOf(matchedEntries, item));
});
}
},
onEnter(matchedEntries, _.indexOf(matchedEntries, item));
});
}
},
onLocationChanged = function (item) {
onLocationChanged = function (item) {
_.each(item.content, initItem);
},
_.each(item.content, initItem);
},
onLocationRefreshed = function (item, added, removed) {
onLocationRefreshed = function (item, added, removed) {
_.each(added, initItem);
},
_.each(added, initItem);
},
init = function () {
init = function () {
if (!settings.enabled) {
return;
}
if (!settings.enabled) {
return;
}
event.sub('location.changed', onLocationChanged);
event.sub('location.refreshed', onLocationRefreshed);
};
event.sub('location.changed', onLocationChanged);
event.sub('location.refreshed', onLocationRefreshed);
};
init();
init();
});

View File

@@ -1,188 +1,138 @@
modulejs.define('ext/preview-txt', ['_', '$', 'markdown', 'core/settings', 'core/event', 'core/resource', 'ext/preview'], function (_, $, markdown, allsettings, event, resource, preview) {
modulejs.define('ext/preview-txt', ['_', '$', 'marked', 'prism', 'core/settings', 'core/event', 'ext/preview'], function (_, $, marked, prism, allsettings, event, preview) {
var settings = _.extend({
enabled: false,
types: {}
}, allsettings['preview-txt']),
var settings = _.extend({
enabled: false,
types: {}
}, allsettings['preview-txt']),
templateText = '<pre id="pv-txt-text" class="highlighted"/>',
templateMarkdown = '<div id="pv-txt-text" class="markdown"/>',
templateText = '<pre id="pv-txt-text" class="highlighted"/>',
templateMarkdown = '<div id="pv-txt-text" class="markdown"/>',
// adapted from SyntaxHighlighter
getHighlightedLines = function (sh, alias, content) {
preloadText = function (absHref, callback) {
var brushes = sh.vars.discoveredBrushes,
Brush, brush;
$.ajax({
url: absHref,
dataType: 'text'
})
.done(function (content) {
if (!brushes) {
brushes = {};
callback(content);
// setTimeout(function () { callback(content); }, 1000); // for testing
})
.fail(function (jqXHR, textStatus, errorThrown) {
_.each(sh.brushes, function (info, brush) {
callback('[ajax error] ' + textStatus);
});
},
var aliases = info.aliases;
onEnter = function (items, idx) {
if (aliases) {
info.brushName = brush.toLowerCase();
var currentItems = items,
currentIdx = idx,
currentItem = items[idx],
for (var i = 0; i < aliases.length; i += 1) {
brushes[aliases[i]] = brush;
}
}
});
onAdjustSize = function () {
sh.vars.discoveredBrushes = brushes;
}
var $content = $('#pv-content'),
$text = $('#pv-txt-text');
Brush = sh.brushes[brushes[alias || 'plain']];
if ($text.length) {
if (!Brush) {
return $();
}
$text.height($content.height() - 16);
}
},
brush = new Brush();
brush.init({toolbar: false, gutter: false});
onIdxChange = function (rel) {
return $(brush.getHtml(content)).find('.line');
},
currentIdx = (currentIdx + rel + currentItems.length) % currentItems.length;
currentItem = currentItems[currentIdx];
preloadText = function (absHref, callback) {
var spinnerTimeout = setTimeout(function () { preview.showSpinner(true); }, 200);
$.ajax({
url: absHref,
dataType: 'text'
})
.done(function (content) {
preloadText(currentItem.absHref, function (textContent) {
callback(content);
// setTimeout(function () { callback(content); }, 1000); // for testing
})
.fail(function (jqXHR, textStatus, errorThrown) {
clearTimeout(spinnerTimeout);
preview.showSpinner(false);
callback('[ajax error] ' + textStatus);
});
},
$('#pv-content').fadeOut(100, function () {
onEnter = function (items, idx) {
var type = settings.types[currentItem.type],
$text, $code;
var currentItems = items,
currentIdx = idx,
currentItem = items[idx],
if (type === 'none') {
$text = $(templateMarkdown).text(textContent);
} else if (type === 'fixed') {
$text = $(templateText).text(textContent);
} else if (type === 'markdown') {
$text = $(templateMarkdown).html(marked(textContent));
} else {
$text = $(templateText);
$code = $('<code/>').appendTo($text);
onAdjustSize = function () {
if (textContent.length < 20000) {
$code.empty().html(prism.highlight(textContent, prism.languages[type]));
} else {
$code.empty().text(textContent);
setTimeout(function () { $code.empty().html(prism.highlight(textContent, prism.languages[type])); }, 300);
}
}
$('#pv-content').empty().append($text).fadeIn(200);
onAdjustSize();
var $content = $('#pv-content'),
$text = $('#pv-txt-text');
preview.setIndex(currentIdx + 1, currentItems.length);
preview.setLabels([
currentItem.label,
'' + currentItem.size + ' bytes'
]);
preview.setRawLink(currentItem.absHref);
});
});
};
if ($text.length) {
onIdxChange(0);
preview.setOnIndexChange(onIdxChange);
preview.setOnAdjustSize(onAdjustSize);
preview.enter();
},
$text.height($content.height() - 16);
}
},
initItem = function (item) {
onIdxChange = function (rel) {
if (item.$view && _.indexOf(_.keys(settings.types), item.type) >= 0) {
item.$view.find('a').on('click', function (event) {
currentIdx = (currentIdx + rel + currentItems.length) % currentItems.length;
currentItem = currentItems[currentIdx];
event.preventDefault();
var spinnerTimeout = setTimeout(function () { preview.showSpinner(true); }, 200);
var matchedEntries = _.compact(_.map($('#items .item'), function (item) {
preloadText(currentItem.absHref, function (textContent) {
item = $(item).data('item');
return _.indexOf(_.keys(settings.types), item.type) >= 0 ? item : null;
}));
clearTimeout(spinnerTimeout);
preview.showSpinner(false);
onEnter(matchedEntries, _.indexOf(matchedEntries, item));
});
}
},
$('#pv-content').fadeOut(100, function () {
onLocationChanged = function (item) {
var $text;
_.each(item.content, initItem);
},
if (settings.types[currentItem.type] === 'none') {
onLocationRefreshed = function (item, added, removed) {
$text = $(templateMarkdown).text(textContent);
_.each(added, initItem);
},
} else if (settings.types[currentItem.type] === 'fixed') {
init = function () {
$text = $(templateText).text(textContent);
if (!settings.enabled) {
return;
}
} else if (settings.types[currentItem.type] === 'markdown') {
event.sub('location.changed', onLocationChanged);
event.sub('location.refreshed', onLocationRefreshed);
};
$text = $(templateMarkdown).html(markdown.toHTML(textContent));
} else {
$text = $(templateText).text(textContent);
resource.ensureSH(function (sh) {
if (sh) {
var $table = $('<table/>');
getHighlightedLines(sh, settings.types[currentItem.type], textContent).each(function (i) {
$('<tr/>')
.append($('<td/>').addClass('nr').append(i + 1))
.append($('<td/>').addClass('line').append(this))
.appendTo($table);
});
$text.empty().append($table);
}
});
}
$('#pv-content').empty().append($text).fadeIn(200);
onAdjustSize();
preview.setIndex(currentIdx + 1, currentItems.length);
preview.setLabels([
currentItem.label,
'' + currentItem.size + ' bytes'
]);
preview.setRawLink(currentItem.absHref);
});
});
};
onIdxChange(0);
preview.setOnIndexChange(onIdxChange);
preview.setOnAdjustSize(onAdjustSize);
preview.enter();
},
initItem = function (item) {
if (item.$view && _.indexOf(_.keys(settings.types), item.type) >= 0) {
item.$view.find('a').on('click', function (event) {
event.preventDefault();
var matchedEntries = _.compact(_.map($('#items .item'), function (item) {
item = $(item).data('item');
return _.indexOf(_.keys(settings.types), item.type) >= 0 ? item : null;
}));
onEnter(matchedEntries, _.indexOf(matchedEntries, item));
});
}
},
onLocationChanged = function (item) {
_.each(item.content, initItem);
},
onLocationRefreshed = function (item, added, removed) {
_.each(added, initItem);
},
init = function () {
if (!settings.enabled) {
return;
}
event.sub('location.changed', onLocationChanged);
event.sub('location.refreshed', onLocationRefreshed);
};
init();
init();
});

View File

@@ -1,123 +1,123 @@
modulejs.define('ext/preview-vid', ['_', '$', 'core/settings', 'core/event', 'ext/preview'], function (_, $, allsettings, event, preview) {
var settings = _.extend({
enabled: false,
types: []
}, allsettings['preview-vid']),
var settings = _.extend({
enabled: false,
types: []
}, allsettings['preview-vid']),
preloadVid = function (src, callback) {
preloadVid = function (src, callback) {
var $video = $('<video/>')
.one('loadedmetadata', function () {
var $video = $('<video/>')
.one('loadedmetadata', function () {
callback($video);
// setTimeout(function () { callback($video); }, 1000); // for testing
})
.attr('autoplay', 'autoplay')
.attr('controls', 'controls')
.attr('src', src);
},
callback($video);
// setTimeout(function () { callback($video); }, 1000); // for testing
})
.attr('autoplay', 'autoplay')
.attr('controls', 'controls')
.attr('src', src);
},
onEnter = function (items, idx) {
onEnter = function (items, idx) {
var currentItems = items,
currentIdx = idx,
currentItem = items[idx],
var currentItems = items,
currentIdx = idx,
currentItem = items[idx],
onAdjustSize = function () {
onAdjustSize = function () {
var $content = $('#pv-content'),
$vid = $('#pv-vid-video');
var $content = $('#pv-content'),
$vid = $('#pv-vid-video');
if ($vid.length) {
if ($vid.length) {
$vid.css({
'left': '' + (($content.width()-$vid.width())*0.5) + 'px',
'top': '' + (($content.height()-$vid.height())*0.5) + 'px'
});
$vid.css({
'left': '' + (($content.width()-$vid.width())*0.5) + 'px',
'top': '' + (($content.height()-$vid.height())*0.5) + 'px'
});
preview.setLabels([
currentItem.label,
'' + $vid[0].videoWidth + 'x' + $vid[0].videoHeight,
'' + (100 * $vid.width() / $vid[0].videoWidth).toFixed(0) + '%'
]);
}
},
preview.setLabels([
currentItem.label,
'' + $vid[0].videoWidth + 'x' + $vid[0].videoHeight,
'' + (100 * $vid.width() / $vid[0].videoWidth).toFixed(0) + '%'
]);
}
},
onIdxChange = function (rel) {
onIdxChange = function (rel) {
currentIdx = (currentIdx + rel + currentItems.length) % currentItems.length;
currentItem = currentItems[currentIdx];
currentIdx = (currentIdx + rel + currentItems.length) % currentItems.length;
currentItem = currentItems[currentIdx];
var spinnerTimeout = setTimeout(function () { preview.showSpinner(true); }, 200);
var spinnerTimeout = setTimeout(function () { preview.showSpinner(true); }, 200);
if ($('#pv-vid-video').length) {
$('#pv-vid-video')[0].pause();
}
preloadVid(currentItem.absHref, function ($preloaded_vid) {
if ($('#pv-vid-video').length) {
$('#pv-vid-video')[0].pause();
}
preloadVid(currentItem.absHref, function ($preloaded_vid) {
clearTimeout(spinnerTimeout);
preview.showSpinner(false);
clearTimeout(spinnerTimeout);
preview.showSpinner(false);
$('#pv-content').fadeOut(100, function () {
$('#pv-content').fadeOut(100, function () {
$('#pv-content').empty().append($preloaded_vid.attr('id', 'pv-vid-video')).fadeIn(200);
$('#pv-content').empty().append($preloaded_vid.attr('id', 'pv-vid-video')).fadeIn(200);
// small timeout, so $preloaded_vid is visible and therefore $preloaded_vid.width is available
setTimeout(function () {
onAdjustSize();
// small timeout, so $preloaded_vid is visible and therefore $preloaded_vid.width is available
setTimeout(function () {
onAdjustSize();
preview.setIndex(currentIdx + 1, currentItems.length);
preview.setRawLink(currentItem.absHref);
}, 10);
});
});
};
preview.setIndex(currentIdx + 1, currentItems.length);
preview.setRawLink(currentItem.absHref);
}, 10);
});
});
};
onIdxChange(0);
preview.setOnIndexChange(onIdxChange);
preview.setOnAdjustSize(onAdjustSize);
preview.enter();
},
onIdxChange(0);
preview.setOnIndexChange(onIdxChange);
preview.setOnAdjustSize(onAdjustSize);
preview.enter();
},
initItem = function (item) {
initItem = function (item) {
if (item.$view && _.indexOf(settings.types, item.type) >= 0) {
item.$view.find('a').on('click', function (event) {
if (item.$view && _.indexOf(settings.types, item.type) >= 0) {
item.$view.find('a').on('click', function (event) {
event.preventDefault();
event.preventDefault();
var matchedEntries = _.compact(_.map($('#items .item'), function (item) {
var matchedEntries = _.compact(_.map($('#items .item'), function (item) {
item = $(item).data('item');
return _.indexOf(settings.types, item.type) >= 0 ? item : null;
}));
item = $(item).data('item');
return _.indexOf(settings.types, item.type) >= 0 ? item : null;
}));
onEnter(matchedEntries, _.indexOf(matchedEntries, item));
});
}
},
onEnter(matchedEntries, _.indexOf(matchedEntries, item));
});
}
},
onLocationChanged = function (item) {
onLocationChanged = function (item) {
_.each(item.content, initItem);
},
_.each(item.content, initItem);
},
onLocationRefreshed = function (item, added, removed) {
onLocationRefreshed = function (item, added, removed) {
_.each(added, initItem);
},
_.each(added, initItem);
},
init = function () {
init = function () {
if (!settings.enabled) {
return;
}
if (!settings.enabled) {
return;
}
event.sub('location.changed', onLocationChanged);
event.sub('location.refreshed', onLocationRefreshed);
};
event.sub('location.changed', onLocationChanged);
event.sub('location.refreshed', onLocationRefreshed);
};
init();
init();
});

View File

@@ -1,247 +1,248 @@
modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'core/store'], function (_, $, allsettings, resource, store) {
var settings = _.extend({
enabled: true
}, allsettings.preview),
var settings = _.extend({
enabled: true
}, allsettings.preview),
template = '<div id="pv-overlay" class="noSelection">' +
'<div id="pv-content"/>' +
'<div id="pv-spinner"><img src="' + resource.image('spinner') + '"/></div>' +
'<div id="pv-prev-area" class="hof"><img src="' + resource.image('preview/prev') + '"/></div>' +
'<div id="pv-next-area" class="hof"><img src="' + resource.image('preview/next') + '"/></div>' +
'<div id="pv-bottombar" class="clearfix hof">' +
'<ul id="pv-buttons">' +
'<li id="pv-bar-close" class="bar-right bar-button"><img src="' + resource.image('preview/close') + '"/></li>' +
'<li id="pv-bar-raw" class="bar-right"><a class="bar-button" target="_blank"><img src="' + resource.image('preview/raw') + '"/></a></li>' +
'<li id="pv-bar-fullscreen" class="bar-right bar-button"><img src="' + resource.image('preview/fullscreen') + '"/></li>' +
'<li id="pv-bar-next" class="bar-right bar-button"><img src="' + resource.image('preview/next') + '"/></li>' +
'<li id="pv-bar-idx" class="bar-right bar-label"/>' +
'<li id="pv-bar-prev" class="bar-right bar-button"><img src="' + resource.image('preview/prev') + '"/></li>' +
'</ul>' +
'</div>' +
'</div>',
template =
'<div id="pv-overlay" class="noSelection">' +
'<div id="pv-content"/>' +
'<div id="pv-spinner"><img src="' + resource.image('spinner') + '"/></div>' +
'<div id="pv-prev-area" class="hof"><img src="' + resource.image('preview/prev') + '"/></div>' +
'<div id="pv-next-area" class="hof"><img src="' + resource.image('preview/next') + '"/></div>' +
'<div id="pv-bottombar" class="clearfix hof">' +
'<ul id="pv-buttons">' +
'<li id="pv-bar-close" class="bar-right bar-button"><img src="' + resource.image('preview/close') + '"/></li>' +
'<li id="pv-bar-raw" class="bar-right"><a class="bar-button" target="_blank"><img src="' + resource.image('preview/raw') + '"/></a></li>' +
'<li id="pv-bar-fullscreen" class="bar-right bar-button"><img src="' + resource.image('preview/fullscreen') + '"/></li>' +
'<li id="pv-bar-next" class="bar-right bar-button"><img src="' + resource.image('preview/next') + '"/></li>' +
'<li id="pv-bar-idx" class="bar-right bar-label"/>' +
'<li id="pv-bar-prev" class="bar-right bar-button"><img src="' + resource.image('preview/prev') + '"/></li>' +
'</ul>' +
'</div>' +
'</div>',
storekey = 'ext/preview',
storekey = 'ext/preview',
currentEntries = [],
currentIdx = 0,
isFullscreen = store.get(storekey) || false,
currentEntries = [],
currentIdx = 0,
isFullscreen = store.get(storekey) || false,
adjustSize = function () {
adjustSize = function () {
var rect = $(window).fracs('viewport'),
$container = $('#pv-content'),
$spinner = $('#pv-spinner'),
margin = isFullscreen ? 0 : 20,
barheight = isFullscreen ? 0 : 31;
var rect = $(window).fracs('viewport'),
$container = $('#pv-content'),
$spinner = $('#pv-spinner'),
margin = isFullscreen ? 0 : 20,
barheight = isFullscreen ? 0 : 31;
$container.css({
width: rect.width - 2 * margin,
height: rect.height - 2 * margin - barheight,
left: margin,
top: margin
});
$container.css({
width: rect.width - 2 * margin,
height: rect.height - 2 * margin - barheight,
left: margin,
top: margin
});
$spinner.css({
left: rect.width * 0.5,
top: rect.height * 0.5
});
$spinner.css({
left: rect.width * 0.5,
top: rect.height * 0.5
});
if (isFullscreen) {
$('#pv-overlay').addClass('fullscreen');
$('#pv-bar-fullscreen').find('img').attr('src', resource.image('preview/no-fullscreen'));
} else {
$('#pv-overlay').removeClass('fullscreen');
$('#pv-bar-fullscreen').find('img').attr('src', resource.image('preview/fullscreen'));
}
if (isFullscreen) {
$('#pv-overlay').addClass('fullscreen');
$('#pv-bar-fullscreen').find('img').attr('src', resource.image('preview/no-fullscreen'));
} else {
$('#pv-overlay').removeClass('fullscreen');
$('#pv-bar-fullscreen').find('img').attr('src', resource.image('preview/fullscreen'));
}
if (_.isFunction(onAdjustSize)) {
onAdjustSize(1);
}
},
if (_.isFunction(onAdjustSize)) {
onAdjustSize(1);
}
},
onEnter = function () {
onEnter = function () {
$('#pv-content').empty();
setLabels([]);
$('#pv-overlay').stop(true, true).fadeIn(200);
$(window).on('keydown', onKeydown);
$('#pv-content').empty();
setLabels([]);
$('#pv-overlay').stop(true, true).fadeIn(200);
$(window).on('keydown', onKeydown);
adjustSize();
},
adjustSize();
},
onExit = function () {
onExit = function () {
$(window).off('keydown', onKeydown);
$('#pv-overlay').stop(true, true).fadeOut(200, function () {
$('#pv-content').empty();
setLabels([]);
});
},
$(window).off('keydown', onKeydown);
$('#pv-overlay').stop(true, true).fadeOut(200, function () {
$('#pv-content').empty();
setLabels([]);
});
},
onNext = function () {
onNext = function () {
if (_.isFunction(onIndexChange)) {
onIndexChange(1);
}
},
if (_.isFunction(onIndexChange)) {
onIndexChange(1);
}
},
onPrevious = function () {
onPrevious = function () {
if (_.isFunction(onIndexChange)) {
onIndexChange(-1);
}
},
if (_.isFunction(onIndexChange)) {
onIndexChange(-1);
}
},
userAliveTimeoutId = null,
userAlive = function () {
userAliveTimeoutId = null,
userAlive = function () {
clearTimeout(userAliveTimeoutId);
$('#pv-overlay .hof').stop(true, true).fadeIn(200);
clearTimeout(userAliveTimeoutId);
$('#pv-overlay .hof').stop(true, true).fadeIn(200);
if (isFullscreen) {
userAliveTimeoutId = setTimeout(function () {
if (isFullscreen) {
userAliveTimeoutId = setTimeout(function () {
$('#pv-overlay .hof').stop(true, true).fadeOut(2000);
}, 2000);
}
},
$('#pv-overlay .hof').stop(true, true).fadeOut(2000);
}, 2000);
}
},
onFullscreen = function () {
onFullscreen = function () {
isFullscreen = !isFullscreen;
store.put(storekey, isFullscreen);
isFullscreen = !isFullscreen;
store.put(storekey, isFullscreen);
userAlive();
adjustSize();
},
userAlive();
adjustSize();
},
onKeydown = function (event) {
onKeydown = function (event) {
var key = event.which,
delay = 300;
var key = event.which,
delay = 300;
if (key === 27) { // esc
event.preventDefault();
event.stopImmediatePropagation();
onExit();
} else if (key === 8 || key === 37) { // backspace, left
event.preventDefault();
event.stopImmediatePropagation();
$('#pv-bar-prev').addClass('hover');
setTimeout(function () { $('#pv-bar-prev').removeClass('hover'); }, delay);
onPrevious();
} else if (key === 13 || key === 32 || key === 39) { // enter, space, right
event.preventDefault();
event.stopImmediatePropagation();
$('#pv-bar-next').addClass('hover');
setTimeout(function () { $('#pv-bar-next').removeClass('hover'); }, delay);
onNext();
} else if (key === 70) { // f
event.preventDefault();
event.stopImmediatePropagation();
$('#pv-bar-fullscreen').addClass('hover');
setTimeout(function () { $('#pv-bar-fullscreen').removeClass('hover'); }, delay);
onFullscreen();
}
},
if (key === 27) { // esc
event.preventDefault();
event.stopImmediatePropagation();
onExit();
} else if (key === 8 || key === 37) { // backspace, left
event.preventDefault();
event.stopImmediatePropagation();
$('#pv-bar-prev').addClass('hover');
setTimeout(function () { $('#pv-bar-prev').removeClass('hover'); }, delay);
onPrevious();
} else if (key === 13 || key === 32 || key === 39) { // enter, space, right
event.preventDefault();
event.stopImmediatePropagation();
$('#pv-bar-next').addClass('hover');
setTimeout(function () { $('#pv-bar-next').removeClass('hover'); }, delay);
onNext();
} else if (key === 70) { // f
event.preventDefault();
event.stopImmediatePropagation();
$('#pv-bar-fullscreen').addClass('hover');
setTimeout(function () { $('#pv-bar-fullscreen').removeClass('hover'); }, delay);
onFullscreen();
}
},
setIndex = function (idx, total) {
setIndex = function (idx, total) {
if (_.isNumber(idx)) {
$('#pv-bar-idx').text('' + idx + (_.isNumber(total) ? '/' + total : '')).show();
} else {
$('#pv-bar-idx').text('').hide();
}
},
if (_.isNumber(idx)) {
$('#pv-bar-idx').text('' + idx + (_.isNumber(total) ? '/' + total : '')).show();
} else {
$('#pv-bar-idx').text('').hide();
}
},
setRawLink = function (href) {
setRawLink = function (href) {
if (href) {
$('#pv-bar-raw').find('a').attr('href', href).end().show();
} else {
$('#pv-bar-raw').find('a').attr('href', '#').end().hide();
}
},
if (href) {
$('#pv-bar-raw').find('a').attr('href', href).end().show();
} else {
$('#pv-bar-raw').find('a').attr('href', '#').end().hide();
}
},
setLabels = function (labels) {
setLabels = function (labels) {
$('#pv-buttons .bar-left').remove();
_.each(labels, function (label) {
$('#pv-buttons .bar-left').remove();
_.each(labels, function (label) {
$('<li/>')
.addClass('bar-left bar-label')
.text(label)
.appendTo('#pv-buttons');
});
},
$('<li/>')
.addClass('bar-left bar-label')
.text(label)
.appendTo('#pv-buttons');
});
},
onIndexChange = null,
setOnIndexChange = function (fn) {
onIndexChange = null,
setOnIndexChange = function (fn) {
onIndexChange = fn;
},
onIndexChange = fn;
},
onAdjustSize = null,
setOnAdjustSize = function (fn) {
onAdjustSize = null,
setOnAdjustSize = function (fn) {
onAdjustSize = fn;
},
onAdjustSize = fn;
},
showSpinner = function (show, millis) {
showSpinner = function (show, millis) {
if (!_.isNumber(millis)) {
millis = 400;
}
if (!_.isNumber(millis)) {
millis = 400;
}
if (show) {
$('#pv-spinner').stop(true, true).fadeIn(millis);
} else {
$('#pv-spinner').stop(true, true).fadeOut(millis);
}
},
if (show) {
$('#pv-spinner').stop(true, true).fadeIn(millis);
} else {
$('#pv-spinner').stop(true, true).fadeOut(millis);
}
},
init = function () {
init = function () {
if (!settings.enabled) {
return;
}
if (!settings.enabled) {
return;
}
$(template).appendTo('body');
$(template).appendTo('body');
$('#pv-spinner').hide();
$('#pv-bar-prev, #pv-prev-area').on('click', onPrevious);
$('#pv-bar-next, #pv-next-area').on('click', onNext);
$('#pv-bar-close, #pv-close-area').on('click', onExit);
$('#pv-bar-fullscreen').on('click', onFullscreen);
$('#pv-spinner').hide();
$('#pv-bar-prev, #pv-prev-area').on('click', onPrevious);
$('#pv-bar-next, #pv-next-area').on('click', onNext);
$('#pv-bar-close, #pv-close-area').on('click', onExit);
$('#pv-bar-fullscreen').on('click', onFullscreen);
$('#pv-overlay')
.on('keydown', onKeydown)
.on('mousemove mousedown', userAlive)
.on('click mousedown mousemove keydown keypress', function (event) {
$('#pv-overlay')
.on('keydown', onKeydown)
.on('mousemove mousedown', userAlive)
.on('click mousedown mousemove keydown keypress', function (event) {
if (event.type === 'click') {
if (event.target.id === 'pv-overlay' || event.target.id === 'pv-content') {
onExit();
}
}
event.stopImmediatePropagation();
});
if (event.type === 'click') {
if (event.target.id === 'pv-overlay' || event.target.id === 'pv-content') {
onExit();
}
}
event.stopImmediatePropagation();
});
$(window).on('resize load', adjustSize);
};
$(window).on('resize load', adjustSize);
};
init();
init();
return {
enter: onEnter,
exit: onExit,
setIndex: setIndex,
setRawLink: setRawLink,
setLabels: setLabels,
setOnIndexChange: setOnIndexChange,
setOnAdjustSize: setOnAdjustSize,
showSpinner: showSpinner
};
return {
enter: onEnter,
exit: onExit,
setIndex: setIndex,
setRawLink: setRawLink,
setLabels: setLabels,
setOnIndexChange: setOnIndexChange,
setOnAdjustSize: setOnAdjustSize,
showSpinner: showSpinner
};
});

View File

@@ -1,55 +1,55 @@
modulejs.define('ext/qrcode', ['_', '$', 'modernizr', 'core/settings', 'core/event'], function (_, $, modernizr, allsettings, event) {
var settings = _.extend({
enabled: false,
size: 150
}, allsettings.qrcode),
var settings = _.extend({
enabled: false,
size: 150
}, allsettings.qrcode),
template = '<div id="qrcode"/>',
template = '<div id="qrcode"/>',
$qrcode, hideTimeoutId,
$qrcode, hideTimeoutId,
update = function (item) {
update = function (item) {
$qrcode.empty().qrcode({
render: modernizr.canvas ? 'canvas' : 'div',
width: settings.size,
height: settings.size,
color: '#333',
bgColor: '#fff',
text: window.location.protocol + '//' + window.location.host + item.absHref
});
},
$qrcode.empty().qrcode({
render: modernizr.canvas ? 'canvas' : 'div',
width: settings.size,
height: settings.size,
color: '#333',
bgColor: '#fff',
text: window.location.protocol + '//' + window.location.host + item.absHref
});
},
onMouseenter = function (item) {
onMouseenter = function (item) {
if (!item.isFolder()) {
update(item);
clearTimeout(hideTimeoutId);
$qrcode.stop(true, true).fadeIn(400);
}
},
if (!item.isFolder()) {
update(item);
clearTimeout(hideTimeoutId);
$qrcode.stop(true, true).fadeIn(400);
}
},
onMouseleave = function (item) {
onMouseleave = function (item) {
hideTimeoutId = setTimeout(function () {
hideTimeoutId = setTimeout(function () {
$qrcode.stop(true, true).fadeOut(400);
}, 200);
},
$qrcode.stop(true, true).fadeOut(400);
}, 200);
},
init = function () {
init = function () {
if (!settings.enabled) {
return;
}
if (!settings.enabled) {
return;
}
$qrcode = $(template).appendTo('body');
$qrcode = $(template).appendTo('body');
event.sub('item.mouseenter', onMouseenter);
event.sub('item.mouseleave', onMouseleave);
};
event.sub('item.mouseenter', onMouseenter);
event.sub('item.mouseleave', onMouseleave);
};
init();
init();
});

Some files were not shown because too many files have changed in this diff Show More