Merge pull request #12303 from nextcloud/grid-for-all-file-templates
Add grid toggle for every files view
This commit is contained in:
commit
e03bc6e4c9
|
@ -55,6 +55,10 @@
|
|||
position: relative;
|
||||
width: 100%;
|
||||
min-width: 250px;
|
||||
// hide table if emptycontent is not hidden
|
||||
#emptycontent:not(.hidden) ~ & {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
/* fit app list view heights */
|
||||
|
@ -982,6 +986,9 @@ table.dragshadow td.size {
|
|||
margin: 0;
|
||||
padding: 22px;
|
||||
opacity: .5;
|
||||
position: fixed;
|
||||
right: 0;
|
||||
z-index: 100;
|
||||
|
||||
&:hover,
|
||||
&:focus,
|
||||
|
|
|
@ -331,9 +331,10 @@
|
|||
|
||||
this.$el.find('thead th .columntitle').click(_.bind(this._onClickHeader, this));
|
||||
|
||||
// Toggle for grid view
|
||||
this.$showGridView = $('input#showgridview');
|
||||
// Toggle for grid view, only register once
|
||||
this.$showGridView = $('input#showgridview:not(.registered)');
|
||||
this.$showGridView.on('change', _.bind(this._onGridviewChange, this));
|
||||
this.$showGridView.addClass('registered');
|
||||
$('#view-toggle').tooltip({placement: 'bottom', trigger: 'hover'});
|
||||
|
||||
this._onResize = _.debounce(_.bind(this._onResize, this), 250);
|
||||
|
@ -1952,10 +1953,10 @@
|
|||
generatePreviewUrl: function(urlSpec) {
|
||||
urlSpec = urlSpec || {};
|
||||
if (!urlSpec.x) {
|
||||
urlSpec.x = this.$table.data('preview-x') || 32;
|
||||
urlSpec.x = this.$table.data('preview-x') || 250;
|
||||
}
|
||||
if (!urlSpec.y) {
|
||||
urlSpec.y = this.$table.data('preview-y') || 32;
|
||||
urlSpec.y = this.$table.data('preview-y') || 250;
|
||||
}
|
||||
urlSpec.x *= window.devicePixelRatio;
|
||||
urlSpec.y *= window.devicePixelRatio;
|
||||
|
|
|
@ -257,6 +257,8 @@ class ViewController extends Controller {
|
|||
$params['allowShareWithLink'] = $this->config->getAppValue('core', 'shareapi_allow_links', 'yes');
|
||||
$params['defaultFileSorting'] = $this->config->getUserValue($user, 'files', 'file_sorting', 'name');
|
||||
$params['defaultFileSortingDirection'] = $this->config->getUserValue($user, 'files', 'file_sorting_direction', 'asc');
|
||||
$params['showgridview'] = $this->config->getUserValue($user, 'files', 'show_grid', true);
|
||||
$params['isIE'] = \OCP\Util::isIE();
|
||||
$showHidden = (bool) $this->config->getUserValue($this->userSession->getUser()->getUID(), 'files', 'show_hidden', false);
|
||||
$params['showHiddenFiles'] = $showHidden ? 1 : 0;
|
||||
$params['fileNotFound'] = $fileNotFound ? 1 : 0;
|
||||
|
|
|
@ -25,14 +25,15 @@ $config = \OC::$server->getConfig();
|
|||
$userSession = \OC::$server->getUserSession();
|
||||
// TODO: move this to the generated config.js
|
||||
$publicUploadEnabled = $config->getAppValue('core', 'shareapi_allow_public_upload', 'yes');
|
||||
|
||||
$showgridview = $config->getUserValue($userSession->getUser()->getUID(), 'files', 'show_grid', true);
|
||||
$isIE = \OCP\Util::isIE();
|
||||
|
||||
// renders the controls and table headers template
|
||||
$tmpl = new OCP\Template('files', 'list', '');
|
||||
$tmpl->assign('publicUploadEnabled', $publicUploadEnabled);
|
||||
|
||||
// gridview not available for ie
|
||||
$tmpl->assign('showgridview', $showgridview && !$isIE);
|
||||
$tmpl->assign('isIE', $isIE);
|
||||
$tmpl->assign('publicUploadEnabled', $publicUploadEnabled);
|
||||
$tmpl->printPage();
|
||||
|
||||
|
|
|
@ -23,7 +23,15 @@
|
|||
*/
|
||||
// Check if we are a user
|
||||
OCP\User::checkLoggedIn();
|
||||
$config = \OC::$server->getConfig();
|
||||
$userSession = \OC::$server->getUserSession();
|
||||
|
||||
$showgridview = $config->getUserValue($userSession->getUser()->getUID(), 'files', 'show_grid', true);
|
||||
$isIE = \OCP\Util::isIE();
|
||||
|
||||
$tmpl = new OCP\Template('files', 'recentlist', '');
|
||||
|
||||
// gridview not available for ie
|
||||
$tmpl->assign('showgridview', $showgridview && !$isIE);
|
||||
|
||||
$tmpl->printPage();
|
||||
|
|
|
@ -22,8 +22,16 @@
|
|||
*/
|
||||
|
||||
// TODO: move to handlebars
|
||||
$config = \OC::$server->getConfig();
|
||||
$userSession = \OC::$server->getUserSession();
|
||||
|
||||
$showgridview = $config->getUserValue($userSession->getUser()->getUID(), 'files', 'show_grid', true);
|
||||
$isIE = \OCP\Util::isIE();
|
||||
|
||||
// renders the controls and table headers template
|
||||
$tmpl = new OCP\Template('files', 'simplelist', '');
|
||||
|
||||
// gridview not available for ie
|
||||
$tmpl->assign('showgridview', $showgridview && !$isIE);
|
||||
$tmpl->printPage();
|
||||
|
||||
|
|
|
@ -1,6 +1,14 @@
|
|||
<?php /** @var $l \OCP\IL10N */ ?>
|
||||
<?php $_['appNavigation']->printPage(); ?>
|
||||
<div id="app-content">
|
||||
|
||||
<?php if (!$_['isIE']) { ?>
|
||||
<input type="checkbox" class="hidden-visually" id="showgridview"
|
||||
<?php if($_['showgridview']) { ?>checked="checked" <?php } ?>/>
|
||||
<label id="view-toggle" for="showgridview" class="button <?php p($_['showgridview'] ? 'icon-toggle-filelist' : 'icon-toggle-pictures') ?>"
|
||||
title="<?php p($l->t('Toggle grid view'))?>"></label>
|
||||
<?php } ?>
|
||||
|
||||
<?php foreach ($_['appContents'] as $content) { ?>
|
||||
<div id="app-content-<?php p($content['id']) ?>" class="hidden viewcontainer">
|
||||
<?php print_unescaped($content['content']) ?>
|
||||
|
|
|
@ -24,13 +24,6 @@
|
|||
<?php endif;?>
|
||||
<input type="hidden" class="max_human_file_size"
|
||||
value="(max <?php isset($_['uploadMaxHumanFilesize']) ? p($_['uploadMaxHumanFilesize']) : ''; ?>)">
|
||||
<!-- IF NOT IE, SHOW GRIDVIEW -->
|
||||
<?php if (!$_['isIE']) { ?>
|
||||
<input type="checkbox" class="hidden-visually" id="showgridview"
|
||||
<?php if($_['showgridview']) { ?>checked="checked" <?php } ?>/>
|
||||
<label id="view-toggle" for="showgridview" class="button <?php p($_['showgridview'] ? 'icon-toggle-filelist' : 'icon-toggle-pictures') ?>"
|
||||
title="<?php p($l->t('Toggle grid view'))?>"></label>
|
||||
<?php } ?>
|
||||
</div>
|
||||
|
||||
<div id="emptycontent" class="hidden">
|
||||
|
@ -44,7 +37,6 @@
|
|||
<h2><?php p($l->t('No entries found in this folder')); ?></h2>
|
||||
<p></p>
|
||||
</div>
|
||||
|
||||
<table id="filestable" class="list-container <?php p($_['showgridview'] ? 'view-grid' : '') ?>" data-allow-public-upload="<?php p($_['publicUploadEnabled'])?>" data-preview-x="250" data-preview-y="250">
|
||||
<thead>
|
||||
<tr>
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
<p></p>
|
||||
</div>
|
||||
|
||||
<table id="filestable" class="list-container view-grid">
|
||||
<table id="filestable" class="list-container <?php p($_['showgridview'] ? 'view-grid' : '') ?>">
|
||||
<thead>
|
||||
<tr>
|
||||
<th id='headerName' class="hidden column-name">
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
<h2><?php p($l->t('No entries found in this folder')); ?></h2>
|
||||
<p></p>
|
||||
</div>
|
||||
<table id="filestable" class="list-container view-grid">
|
||||
<table id="filestable" class="list-container <?php p($_['showgridview'] ? 'view-grid' : '') ?>">
|
||||
<thead>
|
||||
<tr>
|
||||
<th id='headerName' class="hidden column-name">
|
||||
|
|
|
@ -131,12 +131,13 @@ class ViewControllerTest extends TestCase {
|
|||
[$this->user->getUID(), 'files', 'file_sorting', 'name', 'name'],
|
||||
[$this->user->getUID(), 'files', 'file_sorting_direction', 'asc', 'asc'],
|
||||
[$this->user->getUID(), 'files', 'show_hidden', false, false],
|
||||
[$this->user->getUID(), 'files', 'show_grid', true, true],
|
||||
]));
|
||||
|
||||
$this->config
|
||||
->expects($this->any())
|
||||
->method('getAppValue')
|
||||
->will($this->returnArgument(2));
|
||||
$this->config
|
||||
->expects($this->any())
|
||||
->method('getAppValue')
|
||||
->will($this->returnArgument(2));
|
||||
|
||||
$nav = new Template('files', 'appnavigation');
|
||||
$nav->assign('usage_relative', 123);
|
||||
|
@ -366,6 +367,8 @@ class ViewControllerTest extends TestCase {
|
|||
],
|
||||
],
|
||||
'hiddenFields' => [],
|
||||
'showgridview' => true,
|
||||
'isIE' => false,
|
||||
]
|
||||
);
|
||||
$policy = new Http\ContentSecurityPolicy();
|
||||
|
|
|
@ -22,9 +22,17 @@
|
|||
*/
|
||||
// Check if we are a user
|
||||
OCP\User::checkLoggedIn();
|
||||
$config = \OC::$server->getConfig();
|
||||
$userSession = \OC::$server->getUserSession();
|
||||
|
||||
$showgridview = $config->getUserValue($userSession->getUser()->getUID(), 'files', 'show_grid', true);
|
||||
$isIE = \OCP\Util::isIE();
|
||||
|
||||
$tmpl = new OCP\Template('files_external', 'list', '');
|
||||
|
||||
// gridview not available for ie
|
||||
$tmpl->assign('showgridview', $showgridview && !$isIE);
|
||||
|
||||
/* Load Status Manager */
|
||||
\OCP\Util::addStyle('files_external', 'external');
|
||||
\OCP\Util::addScript('files_external', 'statusmanager');
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
<input type="hidden" name="dir" value="" id="dir">
|
||||
|
||||
<table id="filestable" class="list-container view-grid">
|
||||
<table id="filestable" class="list-container <?php p($_['showgridview'] ? 'view-grid' : '') ?>">
|
||||
<thead>
|
||||
<tr>
|
||||
<th id='headerName' class="hidden column-name">
|
||||
|
|
|
@ -169,6 +169,7 @@ thead {
|
|||
position: relative;
|
||||
font-weight: 300;
|
||||
font-size: 11px;
|
||||
line-height: 11px;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
|
|
@ -229,10 +229,10 @@ OCA.Sharing.PublicApp = {
|
|||
this.fileList.generatePreviewUrl = function (urlSpec) {
|
||||
urlSpec = urlSpec || {};
|
||||
if (!urlSpec.x) {
|
||||
urlSpec.x = this.$table.data('preview-x') || 32;
|
||||
urlSpec.x = this.$table.data('preview-x') || 250;
|
||||
}
|
||||
if (!urlSpec.y) {
|
||||
urlSpec.y = this.$table.data('preview-y') || 32;
|
||||
urlSpec.y = this.$table.data('preview-y') || 250;
|
||||
}
|
||||
urlSpec.x *= window.devicePixelRatio;
|
||||
urlSpec.y *= window.devicePixelRatio;
|
||||
|
|
|
@ -367,6 +367,8 @@ class ShareController extends AuthPublicShareController {
|
|||
$shareTmpl['folder'] = $folder->fetchPage();
|
||||
}
|
||||
|
||||
$shareTmpl['showgridview'] = true;
|
||||
|
||||
$shareTmpl['hideFileList'] = $hideFileList;
|
||||
$shareTmpl['shareOwner'] = $this->userManager->get($share->getShareOwner())->getDisplayName();
|
||||
$shareTmpl['downloadURL'] = $this->urlGenerator->linkToRouteAbsolute('files_sharing.sharecontroller.downloadShare', ['token' => $this->getToken()]);
|
||||
|
|
|
@ -21,9 +21,17 @@
|
|||
*/
|
||||
// Check if we are a user
|
||||
OCP\User::checkLoggedIn();
|
||||
$config = \OC::$server->getConfig();
|
||||
$userSession = \OC::$server->getUserSession();
|
||||
|
||||
$showgridview = $config->getUserValue($userSession->getUser()->getUID(), 'files', 'show_grid', true);
|
||||
$isIE = \OCP\Util::isIE();
|
||||
|
||||
$tmpl = new OCP\Template('files_sharing', 'list', '');
|
||||
|
||||
// gridview not available for ie
|
||||
$tmpl->assign('showgridview', $showgridview && !$isIE);
|
||||
|
||||
OCP\Util::addScript('files_sharing', 'app');
|
||||
OCP\Util::addScript('files_sharing', 'sharedfilelist');
|
||||
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
<h2><?php p($l->t('No entries found in this folder')); ?></h2>
|
||||
</div>
|
||||
|
||||
<table id="filestable" class="list-container view-grid">
|
||||
<table id="filestable" class="list-container <?php p($_['showgridview'] ? 'view-grid' : '') ?>">
|
||||
<thead>
|
||||
<tr>
|
||||
<th id='headerName' class="hidden column-name">
|
||||
|
|
|
@ -45,6 +45,13 @@ $maxUploadFilesize = min($upload_max_filesize, $post_max_size);
|
|||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if (!$_['isIE']) { ?>
|
||||
<input type="checkbox" class="hidden-visually" id="showgridview"
|
||||
<?php if($_['showgridview']) { ?>checked="checked" <?php } ?>/>
|
||||
<label id="view-toggle" for="showgridview" class="button <?php p($_['showgridview'] ? 'icon-toggle-filelist' : 'icon-toggle-pictures') ?>"
|
||||
title="<?php p($l->t('Toggle grid view'))?>"></label>
|
||||
<?php } ?>
|
||||
|
||||
<?php if (!isset($_['hideFileList']) || (isset($_['hideFileList']) && $_['hideFileList'] === false)) { ?>
|
||||
<div id="files-public-content">
|
||||
<div id="preview">
|
||||
|
|
|
@ -288,7 +288,8 @@ class ShareControllerTest extends \Test\TestCase {
|
|||
'previewImage' => null,
|
||||
'previewURL' => 'downloadURL',
|
||||
'note' => $note,
|
||||
'hideDownload' => false
|
||||
'hideDownload' => false,
|
||||
'showgridview' => true
|
||||
);
|
||||
|
||||
$csp = new \OCP\AppFramework\Http\ContentSecurityPolicy();
|
||||
|
@ -407,7 +408,8 @@ class ShareControllerTest extends \Test\TestCase {
|
|||
'previewImage' => null,
|
||||
'previewURL' => 'downloadURL',
|
||||
'note' => $note,
|
||||
'hideDownload' => true
|
||||
'hideDownload' => true,
|
||||
'showgridview' => true
|
||||
);
|
||||
|
||||
$csp = new \OCP\AppFramework\Http\ContentSecurityPolicy();
|
||||
|
|
|
@ -24,8 +24,16 @@
|
|||
// Check if we are a user
|
||||
OCP\User::checkLoggedIn();
|
||||
|
||||
$config = \OC::$server->getConfig();
|
||||
$userSession = \OC::$server->getUserSession();
|
||||
|
||||
$showgridview = $config->getUserValue($userSession->getUser()->getUID(), 'files', 'show_grid', true);
|
||||
$isIE = \OCP\Util::isIE();
|
||||
|
||||
$tmpl = new OCP\Template('files_trashbin', 'index', '');
|
||||
|
||||
// gridview not available for ie
|
||||
$tmpl->assign('showgridview', $showgridview && !$isIE);
|
||||
OCP\Util::addStyle('files_trashbin', 'trash');
|
||||
OCP\Util::addScript('files_trashbin', 'app');
|
||||
OCP\Util::addScript('files_trashbin', 'filelist');
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
<p></p>
|
||||
</div>
|
||||
|
||||
<table id="filestable" class="list-container view-grid">
|
||||
<table id="filestable" class="list-container <?php p($_['showgridview'] ? 'view-grid' : '') ?>">
|
||||
<thead>
|
||||
<tr>
|
||||
<th id="headerSelection" class="hidden column-selection">
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
<p></p>
|
||||
</div>
|
||||
|
||||
<table id="filestable" data-preview-x="32" data-preview-y="32">
|
||||
<table id="filestable" data-preview-x="250" data-preview-y="250">
|
||||
<thead>
|
||||
<tr>
|
||||
<th id='headerName' class="hidden column-name">
|
||||
|
|
Loading…
Reference in New Issue