mirror of
https://github.com/twonlyapp/twonly-app.git
synced 2026-01-15 16:28:40 +00:00
fix #136
This commit is contained in:
parent
26af9460a6
commit
ac9820261c
7 changed files with 51 additions and 24 deletions
|
|
@ -73,6 +73,7 @@
|
||||||
"contextMenuPin": "Anheften",
|
"contextMenuPin": "Anheften",
|
||||||
"contextMenuUnpin": "Lösen",
|
"contextMenuUnpin": "Lösen",
|
||||||
"mediaViewerAuthReason": "Bitte authentifiziere dich, um diesen twonly zu sehen!",
|
"mediaViewerAuthReason": "Bitte authentifiziere dich, um diesen twonly zu sehen!",
|
||||||
|
"mediaViewerTwonlyTapToOpen": "Tippe um den twonly zu öffnen!",
|
||||||
"messageSendState_Received": "Empfangen",
|
"messageSendState_Received": "Empfangen",
|
||||||
"messageSendState_Opened": "Geöffnet",
|
"messageSendState_Opened": "Geöffnet",
|
||||||
"messageSendState_Send": "Gesendet",
|
"messageSendState_Send": "Gesendet",
|
||||||
|
|
|
||||||
|
|
@ -120,6 +120,8 @@
|
||||||
"@contextMenuUnpin": {},
|
"@contextMenuUnpin": {},
|
||||||
"mediaViewerAuthReason": "Please authenticate to see this twonly!",
|
"mediaViewerAuthReason": "Please authenticate to see this twonly!",
|
||||||
"@mediaViewerAuthReason": {},
|
"@mediaViewerAuthReason": {},
|
||||||
|
"mediaViewerTwonlyTapToOpen": "Tap to open your twonly!",
|
||||||
|
"@mediaViewerTwonlyTapToOpen": {},
|
||||||
"messageSendState_Received": "Received",
|
"messageSendState_Received": "Received",
|
||||||
"@messageSendState_Received": {},
|
"@messageSendState_Received": {},
|
||||||
"messageSendState_Opened": "Opened",
|
"messageSendState_Opened": "Opened",
|
||||||
|
|
|
||||||
|
|
@ -443,6 +443,12 @@ abstract class AppLocalizations {
|
||||||
/// **'Please authenticate to see this twonly!'**
|
/// **'Please authenticate to see this twonly!'**
|
||||||
String get mediaViewerAuthReason;
|
String get mediaViewerAuthReason;
|
||||||
|
|
||||||
|
/// No description provided for @mediaViewerTwonlyTapToOpen.
|
||||||
|
///
|
||||||
|
/// In en, this message translates to:
|
||||||
|
/// **'Tap to open your twonly!'**
|
||||||
|
String get mediaViewerTwonlyTapToOpen;
|
||||||
|
|
||||||
/// No description provided for @messageSendState_Received.
|
/// No description provided for @messageSendState_Received.
|
||||||
///
|
///
|
||||||
/// In en, this message translates to:
|
/// In en, this message translates to:
|
||||||
|
|
|
||||||
|
|
@ -184,6 +184,9 @@ class AppLocalizationsDe extends AppLocalizations {
|
||||||
@override
|
@override
|
||||||
String get mediaViewerAuthReason => 'Bitte authentifiziere dich, um diesen twonly zu sehen!';
|
String get mediaViewerAuthReason => 'Bitte authentifiziere dich, um diesen twonly zu sehen!';
|
||||||
|
|
||||||
|
@override
|
||||||
|
String get mediaViewerTwonlyTapToOpen => 'Tippe um den twonly zu öffnen!';
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String get messageSendState_Received => 'Empfangen';
|
String get messageSendState_Received => 'Empfangen';
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -184,6 +184,9 @@ class AppLocalizationsEn extends AppLocalizations {
|
||||||
@override
|
@override
|
||||||
String get mediaViewerAuthReason => 'Please authenticate to see this twonly!';
|
String get mediaViewerAuthReason => 'Please authenticate to see this twonly!';
|
||||||
|
|
||||||
|
@override
|
||||||
|
String get mediaViewerTwonlyTapToOpen => 'Tap to open your twonly!';
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String get messageSendState_Received => 'Received';
|
String get messageSendState_Received => 'Received';
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -187,11 +187,13 @@ class _ShareImageEditorView extends State<ShareImageEditorView> {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (maxShowTime == gMediaShowInfinite) {
|
if (maxShowTime == gMediaShowInfinite) {
|
||||||
maxShowTime = 4;
|
maxShowTime = 1;
|
||||||
} else if (maxShowTime >= 22) {
|
} else if (maxShowTime == 1) {
|
||||||
maxShowTime = gMediaShowInfinite;
|
maxShowTime = 5;
|
||||||
|
} else if (maxShowTime == 5) {
|
||||||
|
maxShowTime = 20;
|
||||||
} else {
|
} else {
|
||||||
maxShowTime = maxShowTime + 8;
|
maxShowTime = gMediaShowInfinite;
|
||||||
}
|
}
|
||||||
setState(() {});
|
setState(() {});
|
||||||
var user = await getUser();
|
var user = await getUser();
|
||||||
|
|
|
||||||
|
|
@ -53,6 +53,7 @@ class _MediaViewerViewState extends State<MediaViewerView> {
|
||||||
|
|
||||||
bool imageSaved = false;
|
bool imageSaved = false;
|
||||||
bool imageSaving = false;
|
bool imageSaving = false;
|
||||||
|
bool isMounted = true;
|
||||||
|
|
||||||
StreamSubscription<Message?>? downloadStateListener;
|
StreamSubscription<Message?>? downloadStateListener;
|
||||||
|
|
||||||
|
|
@ -268,6 +269,7 @@ class _MediaViewerViewState extends State<MediaViewerView> {
|
||||||
_subscription.cancel();
|
_subscription.cancel();
|
||||||
downloadStateListener?.cancel();
|
downloadStateListener?.cancel();
|
||||||
videoController?.dispose();
|
videoController?.dispose();
|
||||||
|
isMounted = false;
|
||||||
super.dispose();
|
super.dispose();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -390,11 +392,16 @@ class _MediaViewerViewState extends State<MediaViewerView> {
|
||||||
IconButton.outlined(
|
IconButton.outlined(
|
||||||
icon: FaIcon(FontAwesomeIcons.camera),
|
icon: FaIcon(FontAwesomeIcons.camera),
|
||||||
onPressed: () async {
|
onPressed: () async {
|
||||||
|
nextMediaTimer?.cancel();
|
||||||
|
progressTimer?.cancel();
|
||||||
await Navigator.push(context, MaterialPageRoute(
|
await Navigator.push(context, MaterialPageRoute(
|
||||||
builder: (context) {
|
builder: (context) {
|
||||||
return CameraSendToView(widget.contact);
|
return CameraSendToView(widget.contact);
|
||||||
},
|
},
|
||||||
));
|
));
|
||||||
|
if (isMounted && maxShowTime != gMediaShowInfinite) {
|
||||||
|
nextMediaOrExit();
|
||||||
|
}
|
||||||
},
|
},
|
||||||
style: ButtonStyle(
|
style: ButtonStyle(
|
||||||
padding: WidgetStateProperty.all<EdgeInsets>(
|
padding: WidgetStateProperty.all<EdgeInsets>(
|
||||||
|
|
@ -481,7 +488,7 @@ class _MediaViewerViewState extends State<MediaViewerView> {
|
||||||
),
|
),
|
||||||
Container(
|
Container(
|
||||||
padding: EdgeInsets.only(bottom: 200),
|
padding: EdgeInsets.only(bottom: 200),
|
||||||
child: Text("Tap to open your twonly!"),
|
child: Text(context.lang.mediaViewerTwonlyTapToOpen),
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
|
|
@ -658,6 +665,8 @@ class _ReactionButtonsState extends State<ReactionButtons> {
|
||||||
child: AnimatedOpacity(
|
child: AnimatedOpacity(
|
||||||
opacity: widget.show ? 1.0 : 0.0, // Fade in/out
|
opacity: widget.show ? 1.0 : 0.0, // Fade in/out
|
||||||
duration: Duration(milliseconds: 150),
|
duration: Duration(milliseconds: 150),
|
||||||
|
child: Container(
|
||||||
|
color: Colors.transparent,
|
||||||
child: Column(
|
child: Column(
|
||||||
children: [
|
children: [
|
||||||
if (secondRowEmojis.isNotEmpty)
|
if (secondRowEmojis.isNotEmpty)
|
||||||
|
|
@ -691,6 +700,7 @@ class _ReactionButtonsState extends State<ReactionButtons> {
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue