Example #1
0
		private async Task<bool> RemoveDocument2Async(Document doc)
		{
			if (doc != null && doc.ParentId == Id)
			{
				await DBManager.DeleteFromDocumentsAsync(doc);

				int countBefore = _documents.Count;
				await RunInUiThreadAsync(delegate { _documents.Remove(doc); }).ConfigureAwait(false);

				await doc.OpenAsync().ConfigureAwait(false);
				await doc.RemoveContentAsync().ConfigureAwait(false);
				await doc.CloseAsync().ConfigureAwait(false);
				doc.Dispose();

				return _documents.Count < countBefore || _documents.Count == 0;
			}
			return false;
		}
Example #2
0
		private async Task<bool> AddDocument2Async(Document doc)
		{
			if (doc != null)
			{
				if (Document.Check(doc))
				{
					var dbM = DBManager;
					if (dbM != null && await dbM.InsertIntoDocumentsAsync(doc))
					{
						await RunInUiThreadAsync(delegate { _documents.Add(doc); }).ConfigureAwait(false);
						await doc.OpenAsync().ConfigureAwait(false);
						return true;
					}
				}
			}
			return false;
		}