...
 
Commits (3)
......@@ -3,7 +3,7 @@
.codeeditor #abort{margin-right:-1px;min-width:100px}
.codeeditor #command-line{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}
.codeeditor-left{position:absolute;top:0;right:none;bottom:0;left:0;width:100%;overflow:auto;border:1px solid #b8b8b8;border-width:0 1px 0 0}
.codeeditor-right{position:absolute;top:0;right:0;bottom:0;left:none;width:0;overflow:auto;padding-left:1px}
.codeeditor-right{position:absolute;top:0;right:0;bottom:0;left:none;width:0%;overflow:auto;padding-left:1px}
.codeeditor-right-top{position:absolute;top:0;right:0;bottom:none;left:0;height:100%;overflow:hidden;box-shadow:0 1px 0 #b8b8b8}
.codeeditor-right-bottom{position:absolute;top:none;right:0;bottom:0;left:0;height:0%;overflow:auto;padding:11px 10px 10px 10px}
.codeeditor-commandline>*{border-radius:0}
......
This diff is collapsed.
......@@ -143,6 +143,16 @@
}
> .item-container {
flex: 1 0 1px;
.overflow {
text-align: center;
> ul {
display: inline-block;
text-align: initial;
> li {
cursor: pointer;
}
}
}
&.hide-modified .modified,
&.hide-size .size,
&.hide-actions .actions {
......
......@@ -7,12 +7,21 @@
:path="path"
:loading="loading"
:workspace-id="workspaceId"
:view-id="view.id"
:dir-names="dirNames"
:path-edit.sync="pathEdit"
></navbar>
<component
:is="displayType"
:dims="dims"
:path="path"
:items="sortedItems"
:items="limitedItems"
><div class="overflow" v-if="overflow">Only showing <b>{{limit}} of {{sortedItems.length}}</b> files for performance reasons. You can:<br/><ul
><li @click="filterStart">Filter files by name ({{filterKey}}).</li
><li @click="pathEdit = true">Directly type the desired directory path.</li
><li @click="limit += limitStep">Show {{limitStep}} more files.</li
><li @click="limit = Infinity">Show all files (slow!).</li
></ul></div
></component>
<div
v-show="filterActive"
......
......@@ -44,5 +44,6 @@
:workspace-id="workspaceId"
:download-base="downloadBase"
></item>
<slot></slot>
</div>
</div>
......@@ -18,4 +18,5 @@
:download-base="downloadBase"
></item>
</div>
<slot></slot>
</div>
......@@ -24,11 +24,15 @@
@keyup.enter="pathNav"
@keyup.esc="pathEdit = false"
@blur="pathEdit = false"
:list="suggestionsId"
>
<button
class="btn-nostyle"
@click="pathNav"
><i class="fa fa-arrow-right"></i></button>
<datalist :id="suggestionsId"
><option v-for="sugg in suggestions" :value="sugg"
/></datalist>
</div>
</div>
<div class="navi-button">
......
......@@ -3,6 +3,7 @@ define([
"./detail",
"./icons",
"./navbar",
"vispa/utils",
"vispa/vue/menu",
"vispa/filehandler2",
"text!../../html/vue/browser.html"
......@@ -11,6 +12,7 @@ define([
DetailVue,
IconsVue,
NavbarVue,
Utils,
Menu,
FileHandler2,
tBrowser
......@@ -25,6 +27,10 @@ define([
filterActive: false,
filterText: "",
filterError: "",
limit: 100,
limitBase: 100,
limitStep: 100,
pathEdit: false,
menuItems: {},
menuStyle: {},
}},
......@@ -59,6 +65,13 @@ define([
}
return items;
},
dirNames: function() {
return this.filteredItems.filter(function(item) {
return item.type === "d";
}).map(function(item) {
return item.name;
});
},
sortedItems: function() {
var order = (this.pref("dirFirst") ? ["type"] : []).concat(this.pref("sortOrder"));
return this.filteredItems.slice().sort(function(a, b) {
......@@ -78,6 +91,15 @@ define([
return 0;
});
},
overflow: function() {
return this.sortedItems.length > this.limit;
},
limitedItems: function() {
return this.overflow ? this.sortedItems.slice(0, this.limit) : this.sortedItems;
},
filterKey: function() {
return Utils.shortcutPP(this.view.prefs.get("keyFilter"));
},
filterNum: function() {
return this.items.length - this.filteredItems.length;
},
......@@ -189,6 +211,7 @@ define([
if (this.loadsem !== sem) return;
if (this.path !== data.path)
this.filterActive = false;
this.limit = this.limitBase;
this.path = data.path;
var items = data.filelist.map(function(d){
d.dragged = false;
......
......@@ -23,10 +23,15 @@ define([
path: String,
loading: Boolean,
workspaceId: Number,
viewId: String,
dirNames: Array,
pathEdit: {
type: Boolean,
default: false,
}
},
data: function() {return {
pathText: this.path,
pathEdit: false,
}},
computed: {
parts: function() {
......@@ -63,6 +68,19 @@ define([
},
};
},
suggestions: function() {
var prefix = this.path + "/";
if (!this.pathText.startsWith(prefix)) return [];
var base = this.pathText.replace(prefix, "");
return this.dirNames
.filter(function(name) {return name.startsWith(base);})
.map(function(name) {return prefix + name;})
.sort()
.slice(0, 10);
},
suggestionsId: function() {
return "file2_navbar_suggestions_" + this.viewId;
},
},
methods: {
pathNav: function() {
......
.gallery>.modal-content{width:90%!important;height:calc(95% - 20px);max-width:none!important;max-height:none!important;display:block}
.gallery>.modal-content>.modal-header #new-window{font-size:inherit;border:none}
.gallery>.modal-content>.modal-body{height:calc(100% - 89px);-webkit-box-flex:initial;-webkit-flex:initial;-ms-flex:initial;flex:initial;position:relative}
.gallery>.modal-content>.modal-body #next,.gallery>.modal-content>.modal-body #previous{position:absolute;top:0;height:100%;width:30%;z-index:1;opacity:0;-webkit-transition:opacity .5s;transition:opacity .5s}
.gallery>.modal-content>.modal-body{height:calc(100% - 89px);-ms-flex:initial;flex:initial;position:relative}
.gallery>.modal-content>.modal-body #next,.gallery>.modal-content>.modal-body #previous{position:absolute;top:0;height:100%;width:30%;z-index:1;opacity:0;transition:opacity .5s}
.gallery>.modal-content>.modal-body #next:hover,.gallery>.modal-content>.modal-body #previous:hover{opacity:1}
.gallery>.modal-content>.modal-body #next>button,.gallery>.modal-content>.modal-body #previous>button{position:absolute;top:50%;-webkit-transform:translate(0,-50%);transform:translate(0,-50%);border-radius:50%;padding:6px 9px;cursor:default}
.gallery>.modal-content>.modal-body #next>button,.gallery>.modal-content>.modal-body #previous>button{position:absolute;top:50%;transform:translate(0,-50%);border-radius:50%;padding:6px 9px;cursor:default}
.gallery>.modal-content>.modal-body #previous{left:0}
.gallery>.modal-content>.modal-body #previous>button{left:5px}
.gallery>.modal-content>.modal-body #next{right:0}
.gallery>.modal-content>.modal-body #next>button{right:5px}
.gallery>.modal-content>.modal-body iframe,.gallery>.modal-content>.modal-body img{padding:15px;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}
.gallery>.modal-content>.modal-body iframe,.gallery>.modal-content>.modal-body img{padding:15px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}
.gallery>.modal-content>.modal-body img{max-width:100%;max-height:100%}
.gallery>.modal-content>.modal-body iframe{width:100%;height:100%;border:initial}
\ No newline at end of file
......@@ -13,7 +13,7 @@ ul.dropdown-menu>li.divider:first-child,ul.dropdown-menu>li.divider:last-child{d
.dropdown-submenu:hover>a:after{border-left-color:#fff}
.vispa-hidden{display:hidden}
.vispa-modal{position:absolute;top:0;right:0;bottom:0;left:0;background-color:rgba(0,0,0,.4);cursor:default;z-index:10}
.vispa-center-center{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}
.vispa-center-center{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}
.vispa-table-outer{display:table;height:100%;width:100%}
.vispa-table-inner{display:table-cell;vertical-align:middle}
.vispa-rtl-fix{color:transparent;font-size:0}
......
This diff is collapsed.
.modal-header i.fa,.modal-header i.fi,.modal-header i.glyphicon,a>i.fa:first-child,a>i.fi:first-child,a>i.glyphicon:first-child,button>i.fa:first-child,button>i.fi:first-child,button>i.glyphicon:first-child{margin-right:5px}
a>i.fa:last-child,a>i.fi:last-child,a>i.glyphicon:last-child,button>i.fa:last-child,button>i.fi:last-child,button>i.glyphicon:last-child{margin-right:0}
ul.dropdown-menu>li.divider:first-child{display:none}
ul.dropdown-menu>li.divider:first-child,ul.dropdown-menu>li.divider:last-child{display:none}
.glyphicon-none:before{content:"\2122";color:transparent!important}
.fa-none:before{content:"\2122";color:transparent!important}
.dropdown-submenu{position:relative}
.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px}
.dropdown-menu-left .dropdown-submenu>.dropdown-menu{left:100%;margin-left:-1px}
.dropdown-menu-right .dropdown-submenu>.dropdown-menu{left:initial;right:100%;margin-right:-1px}
.dropdown-submenu:hover>.dropdown-menu{display:block}
.dropup .dropdown-submenu>.dropdown-menu{margin-bottom:auto;bottom:-6px;top:auto}
.dropdown-submenu>a:after{display:block;content:" ";float:right;width:0;height:0;border-color:transparent;border-style:solid;border-width:5px 0 5px 5px;border-left-color:#ccc;margin-top:5px;margin-right:-10px}
.dropdown-submenu:hover>a:after{border-left-color:#fff}
.vispa-hidden{display:hidden}
.vispa-modal{position:absolute;top:0;right:0;bottom:0;left:0;background-color:rgba(0,0,0,.4);cursor:default;z-index:10}
.vispa-center-center{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}
.vispa-center-center{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}
.vispa-table-outer{display:table;height:100%;width:100%}
.vispa-table-inner{display:table-cell;vertical-align:middle}
.vispa-rtl-fix{color:transparent;font-size:0}
......
.modal-header i.fa,.modal-header i.fi,.modal-header i.glyphicon,a>i.fa:first-child,a>i.fi:first-child,a>i.glyphicon:first-child,button>i.fa:first-child,button>i.fi:first-child,button>i.glyphicon:first-child{margin-right:5px}
a>i.fa:last-child,a>i.fi:last-child,a>i.glyphicon:last-child,button>i.fa:last-child,button>i.fi:last-child,button>i.glyphicon:last-child{margin-right:0}
ul.dropdown-menu>li.divider:first-child{display:none}
ul.dropdown-menu>li.divider:first-child,ul.dropdown-menu>li.divider:last-child{display:none}
.glyphicon-none:before{content:"\2122";color:transparent!important}
.fa-none:before{content:"\2122";color:transparent!important}
.dropdown-submenu{position:relative}
.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px}
.dropdown-menu-left .dropdown-submenu>.dropdown-menu{left:100%;margin-left:-1px}
.dropdown-menu-right .dropdown-submenu>.dropdown-menu{left:initial;right:100%;margin-right:-1px}
.dropdown-submenu:hover>.dropdown-menu{display:block}
.dropup .dropdown-submenu>.dropdown-menu{margin-bottom:auto;bottom:-6px;top:auto}
.dropdown-submenu>a:after{display:block;content:" ";float:right;width:0;height:0;border-color:transparent;border-style:solid;border-width:5px 0 5px 5px;border-left-color:#ccc;margin-top:5px;margin-right:-10px}
.dropdown-submenu:hover>a:after{border-left-color:#fff}
.vispa-hidden{display:hidden}
.vispa-modal{position:absolute;top:0;right:0;bottom:0;left:0;background-color:rgba(0,0,0,.4);cursor:default;z-index:10}
.vispa-center-center{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}
.vispa-center-center{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}
.vispa-table-outer{display:table;height:100%;width:100%}
.vispa-table-inner{display:table-cell;vertical-align:middle}
.vispa-rtl-fix{color:transparent;font-size:0}
......