diff --git a/src/core/settings/pages/space-usage/space-usage.html b/src/core/settings/pages/space-usage/space-usage.html
index d2eef1677..1d2af6c8d 100644
--- a/src/core/settings/pages/space-usage/space-usage.html
+++ b/src/core/settings/pages/space-usage/space-usage.html
@@ -20,9 +20,5 @@
{{ 'core.settings.total' | translate }}
{{ totalUsage | coreBytesToSize }}
-
- {{ 'core.settings.estimatedfreespace' | translate }}
- {{ freeSpace | coreBytesToSize }}
-
diff --git a/src/core/settings/pages/space-usage/space-usage.ts b/src/core/settings/pages/space-usage/space-usage.ts
index 0f10c8545..3fec9f5d1 100644
--- a/src/core/settings/pages/space-usage/space-usage.ts
+++ b/src/core/settings/pages/space-usage/space-usage.ts
@@ -16,7 +16,6 @@ import { Component, } from '@angular/core';
import { IonicPage } from 'ionic-angular';
import { TranslateService } from '@ngx-translate/core';
import { CoreAppProvider } from '@providers/app';
-import { CoreFileProvider } from '@providers/file';
import { CoreFilepoolProvider } from '@providers/filepool';
import { CoreSitesProvider } from '@providers/sites';
import { CoreTextUtilsProvider } from '@providers/utils/text';
@@ -36,14 +35,11 @@ export class CoreSettingsSpaceUsagePage {
sites = [];
currentSiteId = '';
totalUsage = 0;
- freeSpace = 0;
- showFreeSpace = true;
- constructor(private fileProvider: CoreFileProvider, private filePoolProvider: CoreFilepoolProvider,
+ constructor(private filePoolProvider: CoreFilepoolProvider,
private sitesProvider: CoreSitesProvider, private textUtils: CoreTextUtilsProvider,
private translate: TranslateService, private domUtils: CoreDomUtilsProvider, appProvider: CoreAppProvider) {
this.currentSiteId = this.sitesProvider.getCurrentSiteId();
- this.showFreeSpace = !appProvider.isDesktop();
}
/**
@@ -91,26 +87,7 @@ export class CoreSettingsSpaceUsagePage {
}
/**
- * Convenience function to calculate free space in the device.
- *
- * @return {Promise} Resolved when done.
- */
- protected calculateFreeSpace(): Promise {
- if (this.fileProvider.isAvailable()) {
- return this.fileProvider.calculateFreeSpace().then((freeSpace) => {
- this.freeSpace = freeSpace;
- }).catch(() => {
- this.freeSpace = 0;
- });
- } else {
- this.freeSpace = 0;
-
- return Promise.resolve(null);
- }
- }
-
- /**
- * Convenience function to calculate space usage and free space in the device.
+ * Convenience function to calculate space usage.
*
* @return {Promise} Resolved when done.
*/
@@ -119,10 +96,6 @@ export class CoreSettingsSpaceUsagePage {
this.calculateSizeUsage().then(() => this.calculateTotalUsage()),
];
- if (this.showFreeSpace) {
- promises.push(this.calculateFreeSpace());
- }
-
return Promise.all(promises);
}
@@ -138,7 +111,7 @@ export class CoreSettingsSpaceUsagePage {
}
/**
- * Convenience function to update site size, along with total usage and free space.
+ * Convenience function to update site size, along with total usage.
*
* @param {any} site Site object with space usage.
* @param {number} newUsage New space usage of the site in bytes.
@@ -147,7 +120,6 @@ export class CoreSettingsSpaceUsagePage {
const oldUsage = site.spaceUsage;
site.spaceUsage = newUsage;
this.totalUsage -= oldUsage - newUsage;
- this.freeSpace += oldUsage - newUsage;
}
/**
diff --git a/src/providers/file.ts b/src/providers/file.ts
index 15ac2513a..6b7469f32 100644
--- a/src/providers/file.ts
+++ b/src/providers/file.ts
@@ -360,12 +360,19 @@ export class CoreFileProvider {
/**
* Calculate the free space in the disk.
+ * Please notice that this function isn't reliable and it's not documented in the Cordova File plugin.
*
* @return {Promise} Promise resolved with the estimated free space in bytes.
*/
calculateFreeSpace(): Promise {
return this.file.getFreeDiskSpace().then((size) => {
- return size; // GetFreeDiskSpace returns KB.
+ if (this.platform.is('ios')) {
+ // In iOS the size is in bytes.
+ return Number(size);
+ }
+
+ // The size is in KB, convert it to bytes.
+ return Number(size) * 1024;
});
}