mirror of
https://github.com/twonlyapp/twonly-app.git
synced 2026-01-15 07:48:40 +00:00
disallow screenshots
This commit is contained in:
parent
8cdcc74683
commit
2a98b6647f
6 changed files with 24 additions and 7 deletions
11
README.md
11
README.md
|
|
@ -4,16 +4,19 @@ Don't be lonely, get twonly! Send pictures to a friend in real time and be sure
|
|||
|
||||
|
||||
## TODOS bevor first beta
|
||||
- Add no_screenshot plugin: https://pub.dev/packages/no_screenshot
|
||||
- Bei mehreren neu Empfangen Nachrichten fixen
|
||||
- Settings
|
||||
- Delete and Block active users
|
||||
- Onboarding Slide, Text und Animationen
|
||||
- MessageKind -> Ausbauen?
|
||||
- Nachrichten nach 24h Stunden löschen
|
||||
- Real deployment aufsetzen direkt auf Netcup?
|
||||
- Real deployment aufsetzen, direkt auf Netcup?
|
||||
- Pro Invitation codes
|
||||
- FIX: Problem Bild falsch, wenn handy schräg...
|
||||
- MediaView:
|
||||
- Bei weiteren geladenen Bildern -> Direkt anzeigen ohne zu popen
|
||||
|
||||
## TODOS bevor first release
|
||||
- Webpage
|
||||
- Instagam
|
||||
## Later todos
|
||||
- Videos
|
||||
- Sealed Sender
|
||||
|
|
|
|||
BIN
assets/images/logo.jpg
Normal file
BIN
assets/images/logo.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 58 KiB |
|
|
@ -126,9 +126,9 @@ class DbMessages extends CvModelBase {
|
|||
final List<Map<String, dynamic>> maps = await dbProvider.db!.rawQuery('''
|
||||
SELECT $columnSendAt, $columnMessageOtherId
|
||||
FROM $tableName
|
||||
WHERE $columnOtherUserId = ?
|
||||
WHERE $columnOtherUserId = ? AND ($columnMessageKind = ? OR $columnMessageKind = ?)
|
||||
ORDER BY $columnSendAt DESC;
|
||||
''', [otherUserId]);
|
||||
''', [otherUserId, MessageKind.image.index, MessageKind.video.index]);
|
||||
|
||||
try {
|
||||
return List.generate(maps.length, (i) {
|
||||
|
|
|
|||
|
|
@ -4,12 +4,15 @@ import 'package:flutter/services.dart';
|
|||
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
|
||||
import 'package:local_auth/local_auth.dart';
|
||||
import 'package:lottie/lottie.dart';
|
||||
import 'package:no_screenshot/no_screenshot.dart';
|
||||
import 'package:twonly/src/components/media_view_sizing.dart';
|
||||
import 'package:twonly/src/model/contacts_model.dart';
|
||||
import 'package:twonly/src/model/json/message.dart';
|
||||
import 'package:twonly/src/model/messages_model.dart';
|
||||
import 'package:twonly/src/providers/api/api.dart';
|
||||
|
||||
final _noScreenshot = NoScreenshot.instance;
|
||||
|
||||
class MediaViewerView extends StatefulWidget {
|
||||
final Contact otherUser;
|
||||
final DbMessage message;
|
||||
|
|
@ -40,6 +43,8 @@ class _MediaViewerViewState extends State<MediaViewerView> {
|
|||
}
|
||||
|
||||
Future loadMedia({bool force = false}) async {
|
||||
bool result = await _noScreenshot.screenshotOff();
|
||||
debugPrint('Screenshot Off: $result');
|
||||
final content = widget.message.messageContent;
|
||||
if (content is MediaMessageContent) {
|
||||
if (content.isRealTwonly) {
|
||||
|
|
@ -97,8 +102,8 @@ class _MediaViewerViewState extends State<MediaViewerView> {
|
|||
@override
|
||||
void dispose() {
|
||||
super.dispose();
|
||||
|
||||
_timer?.cancel();
|
||||
_noScreenshot.screenshotOn();
|
||||
}
|
||||
|
||||
@override
|
||||
|
|
|
|||
|
|
@ -802,6 +802,14 @@ packages:
|
|||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.5.0"
|
||||
no_screenshot:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: no_screenshot
|
||||
sha256: ec3d86d7ee89a09c3a3939c1003012536ba4b3fcb4f8cbd23d87ada595c99258
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.3.1"
|
||||
optional:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
|
|||
|
|
@ -36,6 +36,7 @@ dependencies:
|
|||
local_auth: ^2.3.0
|
||||
logging: ^1.3.0
|
||||
lottie: ^3.3.1
|
||||
no_screenshot: ^0.3.1
|
||||
path: ^1.9.0
|
||||
path_provider: ^2.1.5
|
||||
permission_handler: ^11.3.1
|
||||
|
|
|
|||
Loading…
Reference in a new issue