From ad90ba27cdcdcd60e04ee0b781c6698124e900fa Mon Sep 17 00:00:00 2001
From: Vincent Petry <pvince81@owncloud.com>
Date: Wed, 15 Jul 2015 17:35:35 +0200
Subject: [PATCH] Styling fixes + hightlight in files sidebar

Sidebar scrolls with contents
Highlight currently show file
---
 apps/files/css/detailsView.css          | 6 +++---
 apps/files/css/files.css                | 1 +
 apps/files/js/detailsview.js            | 1 +
 apps/files/js/filelist.js               | 7 +++++++
 apps/files_sharing/appinfo/app.php      | 1 +
 apps/files_sharing/css/sharetabview.css | 3 +++
 apps/files_sharing/js/sharetabview.js   | 1 +
 7 files changed, 17 insertions(+), 3 deletions(-)
 create mode 100644 apps/files_sharing/css/sharetabview.css

diff --git a/apps/files/css/detailsView.css b/apps/files/css/detailsView.css
index a62bcd8c96..5b9b51a16d 100644
--- a/apps/files/css/detailsView.css
+++ b/apps/files/css/detailsView.css
@@ -8,9 +8,9 @@
 	position: absolute;
 	width: 350px;
 	top: 0;
-	bottom: 0;
 	right: 0;
 	left: auto;
+	min-height: 100%;
 	background-color: white;
 	-webkit-transition: margin-right 300ms;
 	-moz-transition: margin-right 300ms;
@@ -28,11 +28,11 @@
 }
 
 .app-files .detailsView .detailFileInfoContainer {
-	min-height: 200px;
+	min-height: 80px;
 	padding: 10px;
 }
 
-.app-files .detailsView .detailFileInfoContainer > div{
+.app-files .detailsView .detailFileInfoContainer > div {
 	clear: both;
 	margin-left: 5px;
 }
diff --git a/apps/files/css/files.css b/apps/files/css/files.css
index f2f2c5ac3b..7375baeac3 100644
--- a/apps/files/css/files.css
+++ b/apps/files/css/files.css
@@ -143,6 +143,7 @@
 #filestable tbody tr:active {
 	background-color: rgb(240,240,240);
 }
+#filestable tbody tr.highlighted,
 #filestable tbody tr.selected {
 	background-color: rgb(230,230,230);
 }
diff --git a/apps/files/js/detailsview.js b/apps/files/js/detailsview.js
index d69d8c09c1..feced7e34d 100644
--- a/apps/files/js/detailsview.js
+++ b/apps/files/js/detailsview.js
@@ -153,6 +153,7 @@
 		setFileInfo: function(fileInfo) {
 			this._fileInfo = fileInfo;
 
+			// FIXME: this will render panels twice
 			this.render();
 
 			// notify all panels
diff --git a/apps/files/js/filelist.js b/apps/files/js/filelist.js
index 9f0d48ff01..5c7fcb6b99 100644
--- a/apps/files/js/filelist.js
+++ b/apps/files/js/filelist.js
@@ -286,12 +286,19 @@
 		 */
 		_updateDetailsView: function(fileInfo) {
 			var self = this;
+			var oldFileInfo = this._detailsView.getFileInfo();
+			if (oldFileInfo) {
+				// TODO: use more efficient way, maybe track the highlight
+				this.$fileList.children().filterAttr('data-id', '' + oldFileInfo.id).removeClass('highlighted');
+			}
+
 			if (!fileInfo) {
 				this._detailsView.$el.addClass('disappear');
 				this._detailsView.setFileInfo(null);
 				return;
 			}
 
+			this.$fileList.children().filterAttr('data-id', '' + fileInfo.id).addClass('highlighted');
 			this._detailsView.setFileInfo(_.extend({
 				path: this.getCurrentDirectory()
 			}, fileInfo));
diff --git a/apps/files_sharing/appinfo/app.php b/apps/files_sharing/appinfo/app.php
index f72f502462..9000fafd8d 100644
--- a/apps/files_sharing/appinfo/app.php
+++ b/apps/files_sharing/appinfo/app.php
@@ -56,6 +56,7 @@ $application->setupPropagation();
 
 \OCP\Util::addScript('files_sharing', 'share');
 \OCP\Util::addScript('files_sharing', 'external');
+\OCP\Util::addStyle('files_sharing', 'sharetabview');
 
 // FIXME: registering a job here will cause additional useless SQL queries
 // when the route is not cron.php, needs a better way
diff --git a/apps/files_sharing/css/sharetabview.css b/apps/files_sharing/css/sharetabview.css
new file mode 100644
index 0000000000..a8ad1ceaba
--- /dev/null
+++ b/apps/files_sharing/css/sharetabview.css
@@ -0,0 +1,3 @@
+.app-files .shareTabView {
+	min-height: 200px;
+}
diff --git a/apps/files_sharing/js/sharetabview.js b/apps/files_sharing/js/sharetabview.js
index 42bddc20b3..e02de92375 100644
--- a/apps/files_sharing/js/sharetabview.js
+++ b/apps/files_sharing/js/sharetabview.js
@@ -55,6 +55,7 @@
 				this.$el.append(this._template({
 					owner: this._fileInfo.shareOwner || OC.currentUser
 				}));
+
 			} else {
 				// TODO: render placeholder text?
 			}
-- 
GitLab