aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--core/css/styles.css31
-rw-r--r--core/img/background.jpgbin0 -> 90185 bytes
-rw-r--r--lib/private/files/cache/scanner.php50
3 files changed, 42 insertions, 39 deletions
diff --git a/core/css/styles.css b/core/css/styles.css
index a1dda59a86b..20f66eee25b 100644
--- a/core/css/styles.css
+++ b/core/css/styles.css
@@ -25,12 +25,10 @@ body {
#body-login {
text-align: center;
- background: #1d2d44; /* Old browsers */
- background: -moz-linear-gradient(top, #35537a 0%, #1d2d44 100%); /* FF3.6+ */
- background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#35537a), color-stop(100%,#1d2d44)); /* Chrome,Safari4+ */
- background: -webkit-linear-gradient(top, #35537a 0%,#1d2d44 100%); /* Chrome10+,Safari5.1+ */
- background: linear-gradient(top, #35537a 0%,#1d2d44 100%); /* W3C */
- filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#35537a', endColorstr='#1d2d44',GradientType=0 ); /* IE6-9 */
+ background-image: url('../img/background.jpg');
+ background-position: 50% 50%;
+ background-repeat: no-repeat;
+ background-size: cover;
}
.float-spinner {
@@ -223,9 +221,7 @@ body {
#body-login form fieldset .warning-info,
#body-login form input[type="checkbox"]+label {
text-align: center;
- color: #ccc;
- -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
- opacity: .6;
+ color: #fff;
}
/* overrides another !important statement that sets this to unreadable black */
#body-login form .warning input[type="checkbox"]:hover+label,
@@ -421,24 +417,21 @@ html.ie8 #body-login form input[type="checkbox"] {
#body-login form .errors { background:#fed7d7; border:1px solid #f00; list-style-indent:inside; margin:0 0 2em; padding:1em; }
#body-login .success { background:#d7fed7; border:1px solid #0f0; width: 35%; margin: 30px auto; padding:1em; text-align: center;}
-#body-login #remember_login:hover+label,
-#body-login #remember_login:focus+label {
- color: #fff !important;
-}
-
#body-login #showAdvanced > img {
padding: 4px;
box-sizing: border-box;
}
#body-login p.info a, #body-login #showAdvanced {
- color: #ccc;
-}
-
-#body-login p.info a:hover, #body-login p.info a:focus {
color: #fff;
}
+#body-login #remember_login:hover+label,
+#body-login #remember_login:focus+label,
+#body-login p.info a:hover,
+#body-login p.info a:focus {
+ opacity: .6;
+}
#body-login footer .info {
white-space: nowrap;
@@ -618,8 +611,6 @@ html.ie8 #body-login form input[type="checkbox"] {
}
#remember_login {
margin: 18px 5px 0 16px !important;
- -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
- opacity: .7;
}
#body-login .remember-login-container {
margin-top: 10px;
diff --git a/core/img/background.jpg b/core/img/background.jpg
new file mode 100644
index 00000000000..a4ede839cb5
--- /dev/null
+++ b/core/img/background.jpg
Binary files differ
diff --git a/lib/private/files/cache/scanner.php b/lib/private/files/cache/scanner.php
index 0a207de7b64..5ca32548fe0 100644
--- a/lib/private/files/cache/scanner.php
+++ b/lib/private/files/cache/scanner.php
@@ -448,26 +448,38 @@ class Scanner extends BasicEmitter implements IScanner {
* walk over any folders that are not fully scanned yet and scan them
*/
public function backgroundScan() {
- $lastPath = null;
- while (($path = $this->cache->getIncomplete()) !== false && $path !== $lastPath) {
- try {
- $this->scan($path, self::SCAN_RECURSIVE, self::REUSE_ETAG);
- \OC_Hook::emit('Scanner', 'correctFolderSize', array('path' => $path));
- if ($this->cacheActive) {
- $this->cache->correctFolderSize($path);
- }
- } catch (\OCP\Files\StorageInvalidException $e) {
- // skip unavailable storages
- } catch (\OCP\Files\StorageNotAvailableException $e) {
- // skip unavailable storages
- } catch (\OCP\Files\ForbiddenException $e) {
- // skip forbidden storages
- } catch (\OCP\Lock\LockedException $e) {
- // skip unavailable storages
+ if (!$this->cache->inCache('')) {
+ $this->runBackgroundScanJob(function () {
+ $this->scan('', self::SCAN_RECURSIVE, self::REUSE_ETAG);
+ }, '');
+ } else {
+ $lastPath = null;
+ while (($path = $this->cache->getIncomplete()) !== false && $path !== $lastPath) {
+ $this->runBackgroundScanJob(function() use ($path) {
+ $this->scan($path, self::SCAN_RECURSIVE, self::REUSE_ETAG);
+ }, $path);
+ // FIXME: this won't proceed with the next item, needs revamping of getIncomplete()
+ // to make this possible
+ $lastPath = $path;
+ }
+ }
+ }
+
+ private function runBackgroundScanJob(callable $callback, $path) {
+ try {
+ $callback();
+ \OC_Hook::emit('Scanner', 'correctFolderSize', array('path' => $path));
+ if ($this->cacheActive) {
+ $this->cache->correctFolderSize($path);
}
- // FIXME: this won't proceed with the next item, needs revamping of getIncomplete()
- // to make this possible
- $lastPath = $path;
+ } catch (\OCP\Files\StorageInvalidException $e) {
+ // skip unavailable storages
+ } catch (\OCP\Files\StorageNotAvailableException $e) {
+ // skip unavailable storages
+ } catch (\OCP\Files\ForbiddenException $e) {
+ // skip forbidden storages
+ } catch (\OCP\Lock\LockedException $e) {
+ // skip unavailable storages
}
}