Only allow post-level spoiler text for Friendica servers with v2023.03 or later

codemagic-setup
Hank Grabowski 2023-03-18 15:13:42 -04:00
rodzic 3f6f04c9e7
commit 693f781ea9
2 zmienionych plików z 10 dodań i 8 usunięć

Wyświetl plik

@ -178,6 +178,8 @@ class _EditorScreenState extends State<EditorScreen> {
final vc = getIt<FriendicaVersionChecker>();
final canEdit = vc.canUseFeature(RelaticaFeatures.statusEditing);
final canSpoilerText = vc.canUseFeature(RelaticaFeatures.postSpoilerText) ||
widget.parentId.isNotEmpty;
late final body;
@ -205,14 +207,14 @@ class _EditorScreenState extends State<EditorScreen> {
buildCommentPreview(context, parentEntry!),
TextFormField(
readOnly: isSubmitting,
enabled: !isSubmitting,
enabled: !isSubmitting && canSpoilerText,
controller: spoilerController,
decoration: InputDecoration(
labelText: '$statusType Spoiler Text (optional)',
labelText: canSpoilerText
? '$statusType Spoiler Text (optional)'
: 'Your server doesnt support $statusType Spoiler Text',
border: OutlineInputBorder(
borderSide: BorderSide(
color: Theme.of(context).backgroundColor,
),
borderSide: const BorderSide(),
borderRadius: BorderRadius.circular(5.0),
),
),
@ -290,9 +292,7 @@ class _EditorScreenState extends State<EditorScreen> {
labelText: '$statusType Content',
alignLabelWithHint: true,
border: OutlineInputBorder(
borderSide: BorderSide(
color: Theme.of(context).backgroundColor,
),
borderSide: const BorderSide(),
borderRadius: BorderRadius.circular(5.0),
),
),

Wyświetl plik

@ -6,6 +6,7 @@ import '../globals.dart';
import '../models/friendica_version.dart';
enum RelaticaFeatures {
postSpoilerText,
statusEditing,
}
@ -43,6 +44,7 @@ class FriendicaVersionChecker {
"This account's server doesn't meet the necessary minimum requirement: ${getVersionRequirement(feature).toVersionString()}";
static final featureVersionRequirement = <RelaticaFeatures, FriendicaVersion>{
RelaticaFeatures.postSpoilerText: v2023_03,
RelaticaFeatures.statusEditing: v2023_03,
};
}