fluffychat/lib/pangea/widgets/space/language_settings.dart
ggurdin 7d79ed4c4f
1125 merge upstream fluffychat into main (#1184)
* chore: Nicer invite selection view

* chore: Do not request thousands of users on invite page

* build(deps): bump rexml from 3.3.6 to 3.3.9 in /ios

Bumps [rexml](https://github.com/ruby/rexml) from 3.3.6 to 3.3.9.
- [Release notes](https://github.com/ruby/rexml/releases)
- [Changelog](https://github.com/ruby/rexml/blob/master/NEWS.md)
- [Commits](https://github.com/ruby/rexml/compare/v3.3.6...v3.3.9)

---
updated-dependencies:
- dependency-name: rexml
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* design: Highlight emoji only messages

* chore: Follow up emoji only messages

* Translated using Weblate (Galician)

Currently translated at 100.0% (672 of 672 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/gl/

* Translated using Weblate (Russian)

Currently translated at 99.7% (670 of 672 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/ru/

* design: New login design

* chore: Improve spaces design

* chore: Improve spaces design

* chore: Improved UX for creating groups and spaces

* Translated using Weblate (German)

Currently translated at 100.0% (672 of 672 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/de/

* feat: Better wallpapers with blur and opacity sliders and improved styles page

* chore: Follow up wallpaper configs

* chore: Add max length to state messages

* chore: Follow up wallpaper design

* feat: Open account manage url when using MAS

* chore: follow up wellknown fetch

* Translated using Weblate (Arabic)

Currently translated at 100.0% (674 of 674 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/ar/

* Translated using Weblate (Estonian)

Currently translated at 100.0% (674 of 674 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/et/

* Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (674 of 674 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/zh_Hans/

* Translated using Weblate (Indonesian)

Currently translated at 100.0% (674 of 674 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/id/

* Translated using Weblate (Finnish)

Currently translated at 79.0% (533 of 674 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/fi/

* Translated using Weblate (Latvian)

Currently translated at 100.0% (674 of 674 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/lv/

* build: Add links to snapcraft.yaml file

* chore: Nicer empty page

* chore: Polish chat bubble colors

* chore: Follow up chat bubble design

* refactor: Remove unnecessary builder widget

* chore: Design adjustments

* chore: Follow up design

* refactor: Display two lines on new messages

* chore: Design follow up

* Translated using Weblate (Arabic)

Currently translated at 100.0% (678 of 678 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/ar/

* Translated using Weblate (German)

Currently translated at 100.0% (678 of 678 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/de/

* Translated using Weblate (Estonian)

Currently translated at 99.7% (676 of 678 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/et/

* Translated using Weblate (Basque)

Currently translated at 100.0% (678 of 678 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/eu/

* Translated using Weblate (Ukrainian)

Currently translated at 100.0% (678 of 678 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/uk/

* Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (678 of 678 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/zh_Hans/

* chore: Follow up message bubbles

* chore: Follow up design

* chore: Follow up design

* chore: Follow up colors

* chore: Follow up homeserverpicker UX

* chore: Design follow up

* feat: Add about server page

* chore: Follow up update snackbar

* chore: Polish login design

* chore: Follow up login page

* chore: Follow up homeserver picker

* chore: Follow up appbar shadow

* refactor: Performance boost for avatar widget

* Revert "refactor: Performance boost for avatar widget"

This reverts commit 58577bb9e8.

* Translated using Weblate (Estonian)

Currently translated at 100.0% (678 of 678 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/et/

* Translated using Weblate (Ukrainian)

Currently translated at 100.0% (678 of 678 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/uk/

* Translated using Weblate (Latvian)

Currently translated at 100.0% (678 of 678 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/lv/

* Translated using Weblate (Arabic)

Currently translated at 100.0% (687 of 687 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/ar/

* Translated using Weblate (Estonian)

Currently translated at 100.0% (687 of 687 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/et/

* Translated using Weblate (Basque)

Currently translated at 100.0% (687 of 687 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/eu/

* Translated using Weblate (Galician)

Currently translated at 100.0% (687 of 687 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/gl/

* Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (687 of 687 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/zh_Hans/

* Translated using Weblate (Indonesian)

Currently translated at 100.0% (687 of 687 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/id/

* Translated using Weblate (Latvian)

Currently translated at 100.0% (687 of 687 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/lv/

* Translated using Weblate (Ukrainian)

Currently translated at 100.0% (687 of 687 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/uk/

* Translated using Weblate (Korean)

Currently translated at 100.0% (687 of 687 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/ko/

* chore: Follow up homeserver input field

* refactor: Move to upstream geolocator

* chore: Follow up send file dialog

* Translated using Weblate (Spanish)

Currently translated at 74.6% (513 of 687 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/es/

* refactor: Migrate to newer keyboard shortcuts package

* refactor: Remove keyboard shortcuts

This package right now
makes the web app
nearly unusable as it
throws multiple errors on
every key press. The
package seems to be
unmaintained. I tried
two other packages
and none of them worked.

* build: Update matrix dart sdk to 0.35.0

* chore: Better FluffyChat Logo for PWA

* build: (deps): bump samuelmeuli/action-snapcraft from 2 to 3

Bumps [samuelmeuli/action-snapcraft](https://github.com/samuelmeuli/action-snapcraft) from 2 to 3.
- [Release notes](https://github.com/samuelmeuli/action-snapcraft/releases)
- [Commits](https://github.com/samuelmeuli/action-snapcraft/compare/v2...v3)

---
updated-dependencies:
- dependency-name: samuelmeuli/action-snapcraft
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore: Follow up send file dialog

* feat: Add markdown context actions for text input

* build: Update flutter to 3.24.5

* build: Remove snapcraft build workaround

* chore: Better error message when join room failed

* chore: Follow up join room

* chore: Make error dialog show full error

* chore: Follow up loading dialog

* chore: Follow up loading dialog

* build: Snapcraft from local build file

* chore: Follow up build snap

* chore: Follow up snapcraft in ci

* build: Revert build snapcraft changes

* build: Try downgrading flutter web auth

* chore: add hint in pubspec.yaml regarding flutter_web_auth_2

* Translated using Weblate (Estonian)

Currently translated at 100.0% (688 of 688 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/et/

* Translated using Weblate (Galician)

Currently translated at 100.0% (688 of 688 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/gl/

* Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (688 of 688 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/zh_Hans/

* Translated using Weblate (Indonesian)

Currently translated at 100.0% (688 of 688 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/id/

* Translated using Weblate (Irish)

Currently translated at 100.0% (688 of 688 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/ga/

* Translated using Weblate (Arabic)

Currently translated at 100.0% (688 of 688 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/ar/

* Translated using Weblate (Basque)

Currently translated at 100.0% (688 of 688 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/eu/

* Translated using Weblate (Ukrainian)

Currently translated at 100.0% (688 of 688 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/uk/

* Translated using Weblate (Latvian)

Currently translated at 100.0% (688 of 688 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/lv/

* Translated using Weblate (Italian)

Currently translated at 100.0% (688 of 688 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/it/

* Translated using Weblate (Estonian)

Currently translated at 100.0% (694 of 694 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/et/

* Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (694 of 694 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/zh_Hans/

* Translated using Weblate (Arabic)

Currently translated at 100.0% (694 of 694 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/ar/

* Translated using Weblate (Basque)

Currently translated at 100.0% (694 of 694 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/eu/

* Translated using Weblate (Irish)

Currently translated at 100.0% (694 of 694 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/ga/

* Translated using Weblate (Indonesian)

Currently translated at 100.0% (694 of 694 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/id/

* Translated using Weblate (Latvian)

Currently translated at 100.0% (694 of 694 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/lv/

* Translated using Weblate (Arabic)

Currently translated at 100.0% (695 of 695 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/ar/

* Translated using Weblate (Estonian)

Currently translated at 100.0% (695 of 695 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/et/

* Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (695 of 695 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/zh_Hans/

* Translated using Weblate (Irish)

Currently translated at 99.8% (694 of 695 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/ga/

* Translated using Weblate (German)

Currently translated at 99.5% (692 of 695 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/de/

* fix: dont use thumbnails for emoticons

* chore: Improve presence performance

* Translated using Weblate (Basque)

Currently translated at 100.0% (695 of 695 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/eu/

* Translated using Weblate (Galician)

Currently translated at 100.0% (695 of 695 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/gl/

* Translated using Weblate (Italian)

Currently translated at 100.0% (695 of 695 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/it/

* Translated using Weblate (Irish)

Currently translated at 100.0% (695 of 695 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/ga/

* Translated using Weblate (Russian)

Currently translated at 100.0% (695 of 695 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/ru/

* Translated using Weblate (Ukrainian)

Currently translated at 100.0% (695 of 695 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/uk/

* Translated using Weblate (Catalan)

Currently translated at 95.1% (661 of 695 strings)

Translation: FluffyChat/Translations
Translate-URL: https://hosted.weblate.org/projects/fluffychat/translations/ca/

* build: Bump version

* chore: Follow up send file dialog for images

* chore: Follow up send multiple images

* build: Add android build workaround for new flutter version

* build: Use file selector to save files

* chore: Follow up save file on desktop

* chore: Adjust default linux window height

* refactor: Update to new receive sharing intent package

* fluffychat merge

* fluffychat merge

* fluffychat merge

* fix android build

* fluffychat merge

* fluffychat merge

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Krille <c.kussowski@famedly.com>
Co-authored-by: Krille-chan <christian-kussowski@posteo.de>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: josé m <correoxm@disroot.org>
Co-authored-by: v1s7 <v1s7@users.noreply.hosted.weblate.org>
Co-authored-by: Christian <christian-pauly@posteo.de>
Co-authored-by: Rex_sa <rex.sa@pm.me>
Co-authored-by: Priit Jõerüüt <hwlate@joeruut.com>
Co-authored-by: 大王叫我来巡山 <hamburger2048@users.noreply.hosted.weblate.org>
Co-authored-by: Linerly <linerly@proton.me>
Co-authored-by: Edgars Andersons <Edgars+Weblate@gaitenis.id.lv>
Co-authored-by: xabirequejo <xabi.rn@gmail.com>
Co-authored-by: Bezruchenko Simon <worcposj44@gmail.com>
Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Co-authored-by: Bruno Roh <kane.roh429@gmail.com>
Co-authored-by: Kimby <kimisaes@naver.com>
Co-authored-by: Aindriú Mac Giolla Eoin <aindriu80@gmail.com>
Co-authored-by: Angelo Schirinzi <muten619@hotmail.it>
Co-authored-by: Marek Vospěl <marek@vospel.cz>
Co-authored-by: Александр (Alexandr1995) <stupino19951406@gmail.com>
2024-12-09 14:17:44 -05:00

184 lines
6.8 KiB
Dart

// import 'dart:developer';
// import 'package:fluffychat/pangea/models/space_model.dart';
// import 'package:fluffychat/pangea/widgets/space/language_level_dropdown.dart';
// import 'package:flutter/foundation.dart';
// import 'package:flutter/material.dart';
// import 'package:flutter_gen/gen_l10n/l10n.dart';
// import 'package:future_loading_dialog/future_loading_dialog.dart';
// import 'package:matrix/matrix.dart';
// import '../../../widgets/matrix.dart';
// import '../../constants/language_keys.dart';
// import '../../constants/pangea_event_types.dart';
// import '../../controllers/language_list_controller.dart';
// import '../../controllers/pangea_controller.dart';
// import '../../extensions/pangea_room_extension/pangea_room_extension.dart';
// import '../../models/language_model.dart';
// import '../../utils/error_handler.dart';
// import '../user_settings/p_language_dropdown.dart';
// import '../user_settings/p_question_container.dart';
// class LanguageSettings extends StatefulWidget {
// final String? roomId;
// final bool startOpen;
// final LanguageSettingsModel? initialSettings;
// const LanguageSettings({
// super.key,
// this.roomId,
// this.startOpen = false,
// this.initialSettings,
// });
// @override
// LanguageSettingsState createState() => LanguageSettingsState();
// }
// class LanguageSettingsState extends State<LanguageSettings> {
// Room? room;
// late LanguageSettingsModel languageSettings;
// late bool isOpen;
// final PangeaController pangeaController = MatrixState.pangeaController;
// final cityController = TextEditingController();
// final countryController = TextEditingController();
// final schoolController = TextEditingController();
// LanguageSettingsState({Key? key});
// @override
// void initState() {
// room = widget.roomId != null
// ? Matrix.of(context).client.getRoomById(widget.roomId!)
// : null;
// languageSettings = room?.languageSettings ??
// widget.initialSettings ??
// LanguageSettingsModel();
// isOpen = widget.startOpen;
// super.initState();
// }
// bool get sameLanguages =>
// languageSettings.targetLanguage == languageSettings.dominantLanguage;
// LanguageModel getLanguage({required bool isBase, required String? langCode}) {
// final LanguageModel backup = isBase
// ? pangeaController.pLanguageStore.baseOptions.first
// : pangeaController.pLanguageStore.targetOptions.first;
// if (langCode == null) return backup;
// final LanguageModel byCode = PangeaLanguage.byLangCode(langCode);
// return byCode.langCode != LanguageKeys.unknownLanguage ? byCode : backup;
// }
// Future<void> updatePermission(void Function() makeLocalRuleChange) async {
// makeLocalRuleChange();
// if (room != null) {
// await showFutureLoadingDialog(
// context: context,
// future: () => setLanguageSettings(room!.id),
// );
// }
// setState(() {});
// }
// void setTextControllerValues() {
// languageSettings.city = cityController.text;
// languageSettings.country = countryController.text;
// languageSettings.schoolName = schoolController.text;
// }
// Future<void> setLanguageSettings(String roomId) async {
// try {
// setTextControllerValues();
// await Matrix.of(context).client.setRoomStateWithKey(
// roomId,
// PangeaEventTypes.languageSettings,
// '',
// languageSettings.toJson(),
// );
// } catch (err, stack) {
// debugger(when: kDebugMode);
// ErrorHandler.logError(e: err, s: stack);
// }
// }
// @override
// Widget build(BuildContext context) => Column(
// children: [
// ListTile(
// title: Text(
// L10n.of(context).languageSettings,
// style: TextStyle(
// color: Theme.of(context).colorScheme.secondary,
// fontWeight: FontWeight.bold,
// ),
// ),
// subtitle: Text(L10n.of(context).languageSettingsDesc),
// leading: CircleAvatar(
// backgroundColor: Theme.of(context).scaffoldBackgroundColor,
// foregroundColor: Theme.of(context).textTheme.bodyLarge!.color,
// child: const Icon(Icons.language),
// ),
// trailing: Icon(
// isOpen
// ? Icons.keyboard_arrow_down_outlined
// : Icons.keyboard_arrow_right_outlined,
// ),
// onTap: () => setState(() => isOpen = !isOpen),
// ),
// if (isOpen)
// AnimatedContainer(
// duration: const Duration(milliseconds: 300),
// height: isOpen ? null : 0,
// child: Padding(
// padding: const EdgeInsets.fromLTRB(16.0, 0, 16.0, 8.0),
// child: Column(
// children: [
// PQuestionContainer(
// title: L10n.of(context).selectSpaceDominantLanguage,
// ),
// PLanguageDropdown(
// onChange: (p0) => updatePermission(() {
// languageSettings.dominantLanguage = p0.langCode;
// }),
// initialLanguage: getLanguage(
// isBase: true,
// langCode: languageSettings.dominantLanguage,
// ),
// languages: pangeaController.pLanguageStore.baseOptions,
// showMultilingual: true,
// ),
// PQuestionContainer(
// title: L10n.of(context).selectSpaceTargetLanguage,
// ),
// PLanguageDropdown(
// onChange: (p0) => updatePermission(() {
// languageSettings.targetLanguage = p0.langCode;
// }),
// initialLanguage: getLanguage(
// isBase: false,
// langCode: languageSettings.targetLanguage,
// ),
// languages: pangeaController.pLanguageStore.targetOptions,
// ),
// PQuestionContainer(
// title: L10n.of(context).whatIsYourSpaceLanguageLevel,
// ),
// LanguageLevelDropdown(
// initialLevel: languageSettings.languageLevel,
// onChanged: (int? newValue) => updatePermission(() {
// languageSettings.languageLevel = newValue!;
// }),
// ),
// ],
// ),
// ),
// ),
// ],
// );
// }