mirror of
https://gitlab.com/comunic/comunicmobile
synced 2025-07-01 06:03:29 +00:00
Compare commits
11 Commits
Author | SHA1 | Date | |
---|---|---|---|
6470e2145c | |||
e7b4574920 | |||
82464a8a77 | |||
8d84c52570 | |||
34355eceed | |||
90aca5132a | |||
3c8bdd380f | |||
473ed0d95c | |||
979be989ac | |||
ffba5530ec | |||
5d080671c3 |
@ -131,6 +131,7 @@
|
||||
"Confirm your password": "Confirmer le mot de passe",
|
||||
"Congratulations! Your password has now been successfully changed!": "Félicitations ! Votre mot de passe a bien été changé !",
|
||||
"Connected users": "Utilisateurs connectés",
|
||||
"Contact us": "Contactez-nous",
|
||||
"Conversation color (optional)": "Couleur de conversation (optionnel)",
|
||||
"Conversation logo": "Logo de la conversation",
|
||||
"Conversation members": "Membres de la conversation",
|
||||
|
8
build_all_forez.sh
Executable file
8
build_all_forez.sh
Executable file
@ -0,0 +1,8 @@
|
||||
#!/bin/sh
|
||||
DEST="/home/pierre/Desktop"
|
||||
|
||||
make forez_release_split_per_abi && \
|
||||
mv build/app/outputs/flutter-apk/app-armeabi-v7a-forez-release.apk "$DEST" && \
|
||||
mv build/app/outputs/flutter-apk/app-arm64-v8a-forez-release.apk "$DEST" && \
|
||||
mv build/app/outputs/flutter-apk/app-x86_64-forez-release.apk "$DEST" && \
|
||||
mv build/app/outputs/mapping/forez/release/mapping.txt "$DEST"
|
@ -1,17 +1,18 @@
|
||||
import 'package:comunic/forez/init.dart';
|
||||
import 'package:comunic/main.dart';
|
||||
import 'package:comunic/models/config.dart';
|
||||
|
||||
/// Forez online configuration
|
||||
///
|
||||
/// @author Pierre Hubert
|
||||
|
||||
void main() {
|
||||
ForezConfig(
|
||||
Config.set(ForezConfig(
|
||||
apiServerName: "api.communiquons.org",
|
||||
apiServerUri: "/",
|
||||
apiServerSecure: true,
|
||||
clientName: "ForezMobile",
|
||||
);
|
||||
));
|
||||
|
||||
subMain();
|
||||
}
|
||||
|
@ -28,6 +28,7 @@ class ServerConfigurationHelper {
|
||||
Version.parse(response["min_supported_mobile_version"]),
|
||||
termsURL: response["terms_url"],
|
||||
privacyPolicyURL: response["privacy_policy_url"],
|
||||
contactEmail: response["contact_email"],
|
||||
playStoreURL: response["play_store_url"],
|
||||
androidDirectDownloadURL: response["android_direct_download_url"],
|
||||
notificationsPolicy: NotificationsPolicy(
|
||||
|
@ -136,6 +136,7 @@ class ServerConfig {
|
||||
final Version minSupportedMobileVersion;
|
||||
final String termsURL;
|
||||
final String privacyPolicyURL;
|
||||
final String contactEmail;
|
||||
final String playStoreURL;
|
||||
final String androidDirectDownloadURL;
|
||||
final NotificationsPolicy notificationsPolicy;
|
||||
@ -148,6 +149,7 @@ class ServerConfig {
|
||||
@required this.minSupportedMobileVersion,
|
||||
@required this.termsURL,
|
||||
@required this.privacyPolicyURL,
|
||||
@required this.contactEmail,
|
||||
@required this.playStoreURL,
|
||||
@required this.androidDirectDownloadURL,
|
||||
@required this.notificationsPolicy,
|
||||
@ -158,6 +160,7 @@ class ServerConfig {
|
||||
}) : assert(minSupportedMobileVersion != null),
|
||||
assert(termsURL != null),
|
||||
assert(privacyPolicyURL != null),
|
||||
assert(contactEmail != null),
|
||||
assert(playStoreURL != null),
|
||||
assert(androidDirectDownloadURL != null),
|
||||
assert(notificationsPolicy != null),
|
||||
|
45
lib/ui/routes/settings/about_settings.dart
Normal file
45
lib/ui/routes/settings/about_settings.dart
Normal file
@ -0,0 +1,45 @@
|
||||
import 'package:comunic/helpers/server_config_helper.dart';
|
||||
import 'package:comunic/ui/widgets/copy_icon.dart';
|
||||
import 'package:comunic/utils/flutter_utils.dart';
|
||||
import 'package:comunic/utils/intl_utils.dart';
|
||||
import 'package:comunic/utils/ui_utils.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:settings_ui/settings_ui.dart';
|
||||
import 'package:url_launcher/url_launcher.dart';
|
||||
|
||||
/// About application settings
|
||||
///
|
||||
/// @author Pierre Hubert
|
||||
|
||||
class AboutApplicationSettings extends StatelessWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) => SettingsList(
|
||||
sections: [
|
||||
_buildGeneralSection(context),
|
||||
],
|
||||
);
|
||||
|
||||
/// General section
|
||||
SettingsSection _buildGeneralSection(BuildContext context) => SettingsSection(
|
||||
tiles: [
|
||||
SettingsTile(
|
||||
title: tr("Privacy policy"),
|
||||
onPressed: (c) => launch(srvConfig.privacyPolicyURL),
|
||||
),
|
||||
SettingsTile(
|
||||
title: tr("Terms of Use"),
|
||||
onPressed: (c) => launch(srvConfig.termsURL),
|
||||
),
|
||||
SettingsTile(
|
||||
title: tr("Contact us"),
|
||||
subtitle: srvConfig.contactEmail,
|
||||
trailing: CopyIcon(srvConfig.contactEmail),
|
||||
),
|
||||
SettingsTile(
|
||||
title: tr("About this application"),
|
||||
subtitle: isIOS ? null : tr("Learn more about us"),
|
||||
onPressed: (_) => showAboutAppDialog(context),
|
||||
)
|
||||
],
|
||||
);
|
||||
}
|
@ -1,3 +1,4 @@
|
||||
import 'package:comunic/ui/routes/settings/about_settings.dart';
|
||||
import 'package:comunic/ui/routes/settings/account_image_settings.dart';
|
||||
import 'package:comunic/ui/routes/settings/account_privacy_settings.dart';
|
||||
import 'package:comunic/ui/routes/settings/account_security_settings.dart';
|
||||
@ -132,13 +133,21 @@ class __AccountSettingsBodyState extends State<_AccountSettingsBody> {
|
||||
onBuild: () => AccountPrivacySettings(),
|
||||
),
|
||||
|
||||
// Privacy settings
|
||||
// Application settings
|
||||
_SettingsSection(
|
||||
title: tr("Application settings"),
|
||||
subtitle: tr("Manage local application settings"),
|
||||
icon: Icons.smartphone,
|
||||
onBuild: () => ApplicationSettings(),
|
||||
),
|
||||
|
||||
// About settings
|
||||
_SettingsSection(
|
||||
title: tr("About this application"),
|
||||
subtitle: tr("Learn more about us"),
|
||||
icon: Icons.info,
|
||||
onBuild: () => AboutApplicationSettings(),
|
||||
),
|
||||
];
|
||||
|
||||
@override
|
||||
|
@ -1,5 +1,4 @@
|
||||
import 'package:comunic/helpers/preferences_helper.dart';
|
||||
import 'package:comunic/helpers/server_config_helper.dart';
|
||||
import 'package:comunic/ui/widgets/async_screen_widget.dart';
|
||||
import 'package:comunic/ui/widgets/settings/header_spacer_section.dart';
|
||||
import 'package:comunic/utils/flutter_utils.dart';
|
||||
@ -7,7 +6,6 @@ import 'package:comunic/utils/intl_utils.dart';
|
||||
import 'package:comunic/utils/ui_utils.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:settings_ui/settings_ui.dart';
|
||||
import 'package:url_launcher/url_launcher.dart';
|
||||
|
||||
/// Application settings
|
||||
///
|
||||
@ -36,7 +34,6 @@ class _ApplicationSettingsState extends State<ApplicationSettings> {
|
||||
sections: [
|
||||
HeadSpacerSection(),
|
||||
_buildAppearanceSection(),
|
||||
_buildGeneralSection(),
|
||||
_buildDebugSection()
|
||||
],
|
||||
);
|
||||
@ -56,26 +53,6 @@ class _ApplicationSettingsState extends State<ApplicationSettings> {
|
||||
],
|
||||
);
|
||||
|
||||
/// General section
|
||||
SettingsSection _buildGeneralSection() => SettingsSection(
|
||||
title: tr("General"),
|
||||
tiles: [
|
||||
SettingsTile(
|
||||
title: tr("Privacy policy"),
|
||||
onPressed: (c) => launch(srvConfig.privacyPolicyURL),
|
||||
),
|
||||
SettingsTile(
|
||||
title: tr("Terms of Use"),
|
||||
onPressed: (c) => launch(srvConfig.termsURL),
|
||||
),
|
||||
SettingsTile(
|
||||
title: tr("About this application"),
|
||||
subtitle: isIOS ? null : tr("Learn more about us"),
|
||||
onPressed: (_) => showAboutAppDialog(context),
|
||||
)
|
||||
],
|
||||
);
|
||||
|
||||
/// Debug section
|
||||
SettingsSection _buildDebugSection() => SettingsSection(
|
||||
title: tr("Debug features"),
|
||||
|
@ -61,6 +61,7 @@ class TourRouteState extends State<TourRoute> {
|
||||
try {
|
||||
await PushNotificationsHelper.configure(
|
||||
context, PushNotificationsStatus.FIREBASE);
|
||||
areNotificationsConfigured = true;
|
||||
} catch (e, s) {
|
||||
logError(e, s);
|
||||
}
|
||||
|
@ -80,7 +80,7 @@ class _AuthorizedGroupPageScreenState
|
||||
|
||||
// Add group conversations
|
||||
..insertAll(
|
||||
2,
|
||||
(_group.isForezGroup ? 2 : 1),
|
||||
_group.conversations
|
||||
.map((e) => _GroupPageTab(
|
||||
widget: (c) => GroupConversationSection(conv: e),
|
||||
|
@ -589,9 +589,7 @@ class _ConversationScreenState extends SafeState<ConversationScreen> {
|
||||
},
|
||||
icon: Icon(
|
||||
Icons.face,
|
||||
color: _showEmojiPicker
|
||||
? (_conversation.color ?? Colors.blue)
|
||||
: null,
|
||||
color: _showEmojiPicker ? _senderColor : null,
|
||||
),
|
||||
),
|
||||
],
|
||||
@ -617,8 +615,8 @@ class _ConversationScreenState extends SafeState<ConversationScreen> {
|
||||
);
|
||||
|
||||
Widget _buildEmojiContainer() => EmojiPicker(
|
||||
bgColor: _conversation.color ?? Colors.blue.shade900,
|
||||
indicatorColor: _conversation.color ?? Colors.blue.shade900,
|
||||
bgColor: _senderColor,
|
||||
indicatorColor: _senderColor,
|
||||
rows: 3,
|
||||
columns: 7,
|
||||
onEmojiSelected: (emoji, category) {
|
||||
|
@ -1,6 +1,6 @@
|
||||
|
||||
import 'package:comunic/helpers/preferences_helper.dart';
|
||||
import 'package:comunic/main.dart';
|
||||
import 'package:comunic/models/config.dart';
|
||||
import 'package:comunic/ui/routes/full_screen_image.dart';
|
||||
import 'package:comunic/ui/widgets/dialogs/auto_sized_dialog_content_widget.dart';
|
||||
import 'package:comunic/ui/widgets/dialogs/cancel_dialog_button.dart';
|
||||
@ -268,10 +268,11 @@ bool isTablet(BuildContext context) =>
|
||||
void showAboutAppDialog(BuildContext context) {
|
||||
showAboutDialog(
|
||||
context: context,
|
||||
applicationName: "Comunic",
|
||||
applicationName: config().appName,
|
||||
children: <Widget>[
|
||||
Text(
|
||||
tr("Comunic is a free and OpenSource social network that respect your privacy."),
|
||||
tr(config().appQuickDescription) ??
|
||||
tr("Comunic is a free and OpenSource social network that respect your privacy."),
|
||||
textAlign: TextAlign.center,
|
||||
),
|
||||
SizedBox(
|
||||
|
@ -11,7 +11,7 @@ description: Comunic client
|
||||
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
|
||||
# Read more about iOS versioning at
|
||||
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
|
||||
version: 1.1.5+9
|
||||
version: 1.1.7+11
|
||||
|
||||
environment:
|
||||
sdk: ">=2.7.0 <3.0.0"
|
||||
|
Reference in New Issue
Block a user