diff --git a/app/src/main/java/com/limelight/PcView.java b/app/src/main/java/com/limelight/PcView.java index 5e27e343..d52f8fa8 100644 --- a/app/src/main/java/com/limelight/PcView.java +++ b/app/src/main/java/com/limelight/PcView.java @@ -9,6 +9,7 @@ import com.limelight.binding.crypto.AndroidCryptoProvider; import com.limelight.computers.ComputerManagerListener; import com.limelight.computers.ComputerManagerService; import com.limelight.grid.PcGridAdapter; +import com.limelight.grid.assets.DiskAssetLoader; import com.limelight.nvstream.http.ComputerDetails; import com.limelight.nvstream.http.NvApp; import com.limelight.nvstream.http.NvHTTP; @@ -631,6 +632,8 @@ public class PcView extends Activity implements AdapterFragmentCallbacks { private void removeComputer(ComputerDetails details) { managerBinder.removeComputer(details); + new DiskAssetLoader(this).deleteAssetsForComputer(details.uuid); + for (int i = 0; i < pcGridAdapter.getCount(); i++) { ComputerObject computer = (ComputerObject) pcGridAdapter.getItem(i); diff --git a/app/src/main/java/com/limelight/grid/assets/DiskAssetLoader.java b/app/src/main/java/com/limelight/grid/assets/DiskAssetLoader.java index aebd5e74..38a9f3f1 100644 --- a/app/src/main/java/com/limelight/grid/assets/DiskAssetLoader.java +++ b/app/src/main/java/com/limelight/grid/assets/DiskAssetLoader.java @@ -137,6 +137,16 @@ public class DiskAssetLoader { return CacheHelper.openPath(false, cacheDir, "boxart", computerUuid, appId + ".png"); } + public void deleteAssetsForComputer(String computerUuid) { + File dir = CacheHelper.openPath(false, cacheDir, "boxart", computerUuid); + File[] files = dir.listFiles(); + if (files != null) { + for (File f : files) { + f.delete(); + } + } + } + public void populateCacheWithStream(CachedAppAssetLoader.LoaderTuple tuple, InputStream input) { OutputStream out = null; boolean success = false;