Hide incoming collections from main gallery

This commit is contained in:
Neeraj Gupta 2021-09-14 12:15:14 +05:30
parent c416ca1e94
commit 6d8a47c9f0
No known key found for this signature in database
GPG key ID: 3C5A1684DC1729E1
2 changed files with 14 additions and 13 deletions

View file

@ -332,14 +332,14 @@ class FilesDB {
}
Future<FileLoadResult> getAllUploadedFiles(int startTime, int endTime,
{int limit, bool asc}) async {
int ownerID, {int limit, bool asc}) async {
final db = await instance.database;
final order = (asc ?? false ? 'ASC' : 'DESC');
final results = await db.query(
table,
where:
'$columnCreationTime >= ? AND $columnCreationTime <= ? AND ($columnCollectionID IS NOT NULL AND $columnCollectionID IS NOT -1)',
whereArgs: [startTime, endTime],
'$columnCreationTime >= ? AND $columnCreationTime <= ? AND ($columnOwnerID IS NULL OR $columnOwnerID = ?) AND ($columnCollectionID IS NOT NULL AND $columnCollectionID IS NOT -1)',
whereArgs: [startTime, endTime, ownerID],
orderBy:
'$columnCreationTime ' + order + ', $columnModificationTime ' + order,
limit: limit,
@ -348,15 +348,15 @@ class FilesDB {
return FileLoadResult(files, files.length == limit);
}
Future<FileLoadResult> getAllLocalAndUploadedFiles(int startTime, int endTime,
Future<FileLoadResult> getAllLocalAndUploadedFiles(int startTime, int endTime, int ownerID,
{int limit, bool asc}) async {
final db = await instance.database;
final order = (asc ?? false ? 'ASC' : 'DESC');
final results = await db.query(
table,
where:
'$columnCreationTime >= ? AND $columnCreationTime <= ? AND ($columnLocalID IS NOT NULL OR ($columnCollectionID IS NOT NULL AND $columnCollectionID IS NOT -1))',
whereArgs: [startTime, endTime],
'$columnCreationTime >= ? AND $columnCreationTime <= ? AND ($columnOwnerID IS NULL OR $columnOwnerID = ?) AND ($columnLocalID IS NOT NULL OR ($columnCollectionID IS NOT NULL AND $columnCollectionID IS NOT -1))',
whereArgs: [startTime, endTime, ownerID],
orderBy:
'$columnCreationTime ' + order + ', $columnModificationTime ' + order,
limit: limit,
@ -366,7 +366,7 @@ class FilesDB {
}
Future<FileLoadResult> getImportantFiles(
int startTime, int endTime, List<String> paths,
int startTime, int endTime, int ownerID, List<String> paths,
{int limit, bool asc}) async {
final db = await instance.database;
String inParam = "";
@ -378,8 +378,8 @@ class FilesDB {
final results = await db.query(
table,
where:
'$columnCreationTime >= ? AND $columnCreationTime <= ? AND (($columnLocalID IS NOT NULL AND $columnDeviceFolder IN ($inParam)) OR ($columnCollectionID IS NOT NULL AND $columnCollectionID IS NOT -1))',
whereArgs: [startTime, endTime],
'$columnCreationTime >= ? AND $columnCreationTime <= ? AND ($columnOwnerID IS NULL OR $columnOwnerID = ?) AND (($columnLocalID IS NOT NULL AND $columnDeviceFolder IN ($inParam)) OR ($columnCollectionID IS NOT NULL AND $columnCollectionID IS NOT -1))',
whereArgs: [startTime, endTime, ownerID],
orderBy:
'$columnCreationTime ' + order + ', $columnModificationTime ' + order,
limit: limit,

View file

@ -5,6 +5,7 @@ import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter/widgets.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:logging/logging.dart';
import 'package:move_to_background/move_to_background.dart';
import 'package:photo_manager/photo_manager.dart';
@ -45,7 +46,6 @@ import 'package:photos/utils/dialog_util.dart';
import 'package:photos/utils/navigation_util.dart';
import 'package:receive_sharing_intent/receive_sharing_intent.dart';
import 'package:uni_links/uni_links.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
class HomeWidget extends StatefulWidget {
const HomeWidget({Key key}) : super(key: key);
@ -336,18 +336,19 @@ class _HomeWidgetState extends State<HomeWidget> {
final gallery = Gallery(
asyncLoader: (creationStartTime, creationEndTime, {limit, asc}) {
final importantPaths = Configuration.instance.getPathsToBackUp();
final ownerID = Configuration.instance.getUserID();
if (importantPaths.isNotEmpty) {
return FilesDB.instance.getImportantFiles(
creationStartTime, creationEndTime, importantPaths.toList(),
creationStartTime, creationEndTime, ownerID, importantPaths.toList(),
limit: limit, asc: asc);
} else {
if (LocalSyncService.instance.hasGrantedLimitedPermissions()) {
return FilesDB.instance.getAllLocalAndUploadedFiles(
creationStartTime, creationEndTime,
creationStartTime, creationEndTime, ownerID,
limit: limit, asc: asc);
} else {
return FilesDB.instance.getAllUploadedFiles(
creationStartTime, creationEndTime,
creationStartTime, creationEndTime, ownerID,
limit: limit, asc: asc);
}
}