Remove dead code
This commit is contained in:
@@ -1,7 +0,0 @@
|
||||
import 'package:photos/models/file/file.dart';
|
||||
|
||||
class GalleryItemsFilter {
|
||||
bool shouldInclude(EnteFile file) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -1,29 +0,0 @@
|
||||
import 'dart:io';
|
||||
|
||||
import 'package:path/path.dart';
|
||||
import 'package:photos/core/configuration.dart';
|
||||
import 'package:photos/models/file/file.dart';
|
||||
import 'package:photos/models/filters/gallery_items_filter.dart';
|
||||
|
||||
class ImportantItemsFilter implements GalleryItemsFilter {
|
||||
final _importantPaths = Configuration.instance.getPathsToBackUp();
|
||||
|
||||
@override
|
||||
bool shouldInclude(EnteFile file) {
|
||||
if (file.uploadedFileID != null) {
|
||||
return true;
|
||||
}
|
||||
if (file.deviceFolder == null) {
|
||||
return false;
|
||||
}
|
||||
final String folder = basename(file.deviceFolder!);
|
||||
if (_importantPaths.isEmpty && Platform.isAndroid) {
|
||||
return folder == "Camera" ||
|
||||
folder == "Recents" ||
|
||||
folder == "DCIM" ||
|
||||
folder == "Download" ||
|
||||
folder == "Screenshot";
|
||||
}
|
||||
return _importantPaths.contains(folder);
|
||||
}
|
||||
}
|
||||
@@ -1,36 +0,0 @@
|
||||
import 'package:photos/models/file/file.dart';
|
||||
import "package:photos/models/search/hierarchical/hierarchical_search_filter.dart";
|
||||
import 'package:photos/models/search/search_result.dart';
|
||||
import "package:photos/models/search/search_types.dart";
|
||||
|
||||
class FileSearchResult extends SearchResult {
|
||||
final EnteFile file;
|
||||
|
||||
FileSearchResult(this.file);
|
||||
|
||||
@override
|
||||
String name() {
|
||||
return file.displayName;
|
||||
}
|
||||
|
||||
@override
|
||||
ResultType type() {
|
||||
return ResultType.file;
|
||||
}
|
||||
|
||||
@override
|
||||
EnteFile previewThumbnail() {
|
||||
return file;
|
||||
}
|
||||
|
||||
@override
|
||||
List<EnteFile> resultFiles() {
|
||||
// for fileSearchResult, the file detailed page view will be opened
|
||||
throw UnimplementedError();
|
||||
}
|
||||
|
||||
@override
|
||||
HierarchicalSearchFilter getHierarchicalSearchFilter() {
|
||||
throw UnimplementedError();
|
||||
}
|
||||
}
|
||||
@@ -1,129 +0,0 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import "package:photos/generated/l10n.dart";
|
||||
import "package:photos/models/api/collection/user.dart";
|
||||
import "package:photos/theme/ente_theme.dart";
|
||||
import "package:photos/ui/components/captioned_text_widget.dart";
|
||||
import "package:photos/ui/components/divider_widget.dart";
|
||||
import "package:photos/ui/components/menu_item_widget/menu_item_widget.dart";
|
||||
import "package:photos/ui/sharing/user_avator_widget.dart";
|
||||
|
||||
class EmailInputField extends StatelessWidget {
|
||||
final List<String> suggestions;
|
||||
final ValueChanged<String>? onChanged;
|
||||
final ValueChanged<String>? onSelected;
|
||||
final String? initialValue;
|
||||
|
||||
const EmailInputField({
|
||||
super.key,
|
||||
required this.suggestions,
|
||||
this.onChanged,
|
||||
this.onSelected,
|
||||
this.initialValue,
|
||||
});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Autocomplete<String>(
|
||||
initialValue:
|
||||
initialValue != null ? TextEditingValue(text: initialValue!) : null,
|
||||
optionsBuilder: (TextEditingValue textEditingValue) {
|
||||
if (textEditingValue.text == '') {
|
||||
return const Iterable<String>.empty();
|
||||
}
|
||||
return suggestions.where((String option) {
|
||||
return option
|
||||
.toLowerCase()
|
||||
.contains(textEditingValue.text.toLowerCase());
|
||||
});
|
||||
},
|
||||
onSelected: onSelected,
|
||||
fieldViewBuilder: (
|
||||
BuildContext context,
|
||||
TextEditingController controller,
|
||||
FocusNode focusNode,
|
||||
VoidCallback onFieldSubmitted,
|
||||
) {
|
||||
return TextFormField(
|
||||
controller: controller,
|
||||
focusNode: focusNode,
|
||||
onChanged: onChanged,
|
||||
decoration: InputDecoration(
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderRadius: const BorderRadius.all(Radius.circular(8.0)),
|
||||
borderSide:
|
||||
BorderSide(color: getEnteColorScheme(context).strokeMuted),
|
||||
),
|
||||
fillColor: getEnteColorScheme(context).fillFaint,
|
||||
filled: true,
|
||||
hintText: S.of(context).enterEmail,
|
||||
contentPadding: const EdgeInsets.symmetric(
|
||||
horizontal: 16,
|
||||
vertical: 14,
|
||||
),
|
||||
border: UnderlineInputBorder(
|
||||
borderSide: BorderSide.none,
|
||||
borderRadius: BorderRadius.circular(8),
|
||||
),
|
||||
),
|
||||
);
|
||||
},
|
||||
optionsViewBuilder: (
|
||||
BuildContext context,
|
||||
AutocompleteOnSelected<String> onSelected,
|
||||
Iterable<String> options,
|
||||
) {
|
||||
return Align(
|
||||
alignment: Alignment.topLeft,
|
||||
child: Padding(
|
||||
padding: const EdgeInsets.only(top: 8.0),
|
||||
child: Material(
|
||||
elevation: 4,
|
||||
borderRadius: BorderRadius.circular(8),
|
||||
child: Container(
|
||||
constraints: const BoxConstraints(maxHeight: 160),
|
||||
width: MediaQuery.of(context).size.width -
|
||||
16, // Adjust padding as needed
|
||||
child: ListView.builder(
|
||||
padding: EdgeInsets.zero,
|
||||
physics: const ClampingScrollPhysics(),
|
||||
shrinkWrap: true,
|
||||
itemCount: options.length,
|
||||
itemBuilder: (BuildContext context, int index) {
|
||||
final String option = options.elementAt(index);
|
||||
return Column(
|
||||
children: [
|
||||
MenuItemWidget(
|
||||
captionedTextWidget: CaptionedTextWidget(
|
||||
title: option,
|
||||
),
|
||||
leadingIconSize: 24.0,
|
||||
leadingIconWidget: UserAvatarWidget(
|
||||
User(email: option, id: option.hashCode),
|
||||
),
|
||||
menuItemColor: getEnteColorScheme(context).fillFaint,
|
||||
pressedColor: getEnteColorScheme(context).fillFaint,
|
||||
trailingIcon: null,
|
||||
onTap: () async {
|
||||
onSelected(option);
|
||||
},
|
||||
isTopBorderRadiusRemoved: index > 0,
|
||||
isBottomBorderRadiusRemoved: index < (options.length),
|
||||
),
|
||||
(index == (options.length - 1))
|
||||
? const SizedBox.shrink()
|
||||
: DividerWidget(
|
||||
dividerType: DividerType.menu,
|
||||
bgColor: getEnteColorScheme(context).fillFaint,
|
||||
),
|
||||
],
|
||||
);
|
||||
},
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -1,46 +0,0 @@
|
||||
import 'dart:async';
|
||||
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'package:flutter/painting.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
import "package:logging/logging.dart";
|
||||
|
||||
class PreloadImage {
|
||||
static final _logger = Logger((PreloadImage).toString());
|
||||
static Future<void> loadImage(ImageProvider provider) {
|
||||
final config = ImageConfiguration(
|
||||
bundle: rootBundle,
|
||||
devicePixelRatio: 1,
|
||||
platform: defaultTargetPlatform,
|
||||
);
|
||||
final Completer<void> completer = Completer();
|
||||
final ImageStream stream = provider.resolve(config);
|
||||
|
||||
late final ImageStreamListener listener;
|
||||
|
||||
listener = ImageStreamListener(
|
||||
(ImageInfo image, bool sync) {
|
||||
_logger.info("Image ${image.debugLabel} finished loading");
|
||||
completer.complete();
|
||||
stream.removeListener(listener);
|
||||
},
|
||||
onError: (dynamic exception, StackTrace? stackTrace) {
|
||||
completer.complete();
|
||||
stream.removeListener(listener);
|
||||
_logger.warning("Image failed to load");
|
||||
FlutterError.reportError(
|
||||
FlutterErrorDetails(
|
||||
context: ErrorDescription('image failed to load'),
|
||||
library: 'image resource service',
|
||||
exception: exception,
|
||||
stack: stackTrace,
|
||||
silent: true,
|
||||
),
|
||||
);
|
||||
},
|
||||
);
|
||||
|
||||
stream.addListener(listener);
|
||||
return completer.future;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user