Move code to zip logs into the settings page
This commit is contained in:
parent
5730d265a3
commit
c81ad63490
2 changed files with 17 additions and 10 deletions
|
@ -22,8 +22,6 @@ import 'package:photos/ui/memories_widget.dart';
|
|||
import 'package:photos/ui/search_page.dart';
|
||||
import 'package:photos/services/user_service.dart';
|
||||
import 'package:photos/ui/shared_collections_gallery.dart';
|
||||
import 'package:photos/utils/logging_util.dart';
|
||||
import 'package:shake/shake.dart';
|
||||
import 'package:logging/logging.dart';
|
||||
import 'package:uni_links/uni_links.dart';
|
||||
|
||||
|
@ -44,7 +42,6 @@ class _HomeWidgetState extends State<HomeWidget> {
|
|||
final _selectedFiles = SelectedFiles();
|
||||
final _memoriesWidget = MemoriesWidget();
|
||||
|
||||
ShakeDetector _detector;
|
||||
int _selectedNavBarItem = 0;
|
||||
StreamSubscription<LocalPhotosUpdatedEvent>
|
||||
_localPhotosUpdatedEventSubscription;
|
||||
|
@ -52,12 +49,6 @@ class _HomeWidgetState extends State<HomeWidget> {
|
|||
|
||||
@override
|
||||
void initState() {
|
||||
_detector = ShakeDetector.autoStart(
|
||||
shakeThresholdGravity: 3,
|
||||
onPhoneShake: () {
|
||||
_logger.info("Emailing logs");
|
||||
LoggingUtil.instance.emailLogs();
|
||||
});
|
||||
_localPhotosUpdatedEventSubscription =
|
||||
Bus.instance.on<LocalPhotosUpdatedEvent>().listen((event) {
|
||||
setState(() {});
|
||||
|
@ -216,7 +207,6 @@ class _HomeWidgetState extends State<HomeWidget> {
|
|||
|
||||
@override
|
||||
void dispose() {
|
||||
_detector.stopListening();
|
||||
_localPhotosUpdatedEventSubscription.cancel();
|
||||
_tabChangedEventSubscription.cancel();
|
||||
super.dispose();
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
import 'dart:io';
|
||||
|
||||
import 'package:archive/archive_io.dart';
|
||||
import 'package:crisp/crisp.dart';
|
||||
import 'package:dio/dio.dart';
|
||||
import 'package:flutter/foundation.dart';
|
||||
|
@ -6,10 +9,12 @@ import 'package:flutter/widgets.dart';
|
|||
import 'package:flutter_email_sender/flutter_email_sender.dart';
|
||||
import 'package:flutter_sodium/flutter_sodium.dart';
|
||||
import 'package:logging/logging.dart';
|
||||
import 'package:path_provider/path_provider.dart';
|
||||
import 'package:photos/core/configuration.dart';
|
||||
import 'package:photos/db/files_db.dart';
|
||||
import 'package:photos/ui/loading_widget.dart';
|
||||
import 'package:photos/utils/date_time_util.dart';
|
||||
import 'package:photos/utils/dialog_util.dart';
|
||||
|
||||
class SettingsPage extends StatelessWidget {
|
||||
const SettingsPage({Key key}) : super(key: key);
|
||||
|
@ -235,8 +240,20 @@ class SupportSectionWidget extends StatelessWidget {
|
|||
GestureDetector(
|
||||
behavior: HitTestBehavior.translucent,
|
||||
onTap: () async {
|
||||
final dialog = createProgressDialog(context, "Preparing logs...");
|
||||
await dialog.show();
|
||||
final tempPath = (await getTemporaryDirectory()).path;
|
||||
final zipFilePath = tempPath + "/logs.zip";
|
||||
final logsDirectory = Directory(tempPath + "/logs");
|
||||
var encoder = ZipFileEncoder();
|
||||
encoder.create(zipFilePath);
|
||||
encoder.addDirectory(logsDirectory);
|
||||
encoder.close();
|
||||
await dialog.hide();
|
||||
final Email email = Email(
|
||||
recipients: ['support@ente.io'],
|
||||
cc: ['vishnu@ente.io'],
|
||||
attachmentPaths: [zipFilePath],
|
||||
isHTML: false,
|
||||
);
|
||||
await FlutterEmailSender.send(email);
|
||||
|
|
Loading…
Add table
Reference in a new issue