From 13307322faa081b6395b3f8ad2a73f94334103fd Mon Sep 17 00:00:00 2001 From: Dani Palou Date: Fri, 31 Aug 2018 12:09:46 +0200 Subject: [PATCH] MOBILE-2567 settings: Don't display free space --- .../pages/space-usage/space-usage.html | 4 --- .../settings/pages/space-usage/space-usage.ts | 34 ++----------------- src/providers/file.ts | 9 ++++- 3 files changed, 11 insertions(+), 36 deletions(-) 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; }); }