Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .flutter-plugins-dependencies
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"info":"This is a generated file; do not edit or check into version control.","plugins":{"ios":[{"name":"firebase_messaging","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_messaging-6.0.16/","dependencies":[]},{"name":"flutter_local_notifications","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_local_notifications-1.5.0+1/","dependencies":[]},{"name":"fluttertoast","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.1.1/","dependencies":[]},{"name":"image_cropper","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/image_cropper-1.3.1/","dependencies":[]},{"name":"image_picker","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/image_picker-0.6.7+12/","dependencies":[]},{"name":"path_provider","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider-1.6.22/","dependencies":[]},{"name":"shared_preferences","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences-0.5.12+2/","dependencies":[]},{"name":"sqflite","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/sqflite-1.3.1+2/","dependencies":[]}],"android":[{"name":"firebase_messaging","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_messaging-6.0.16/","dependencies":[]},{"name":"flutter_local_notifications","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_local_notifications-1.5.0+1/","dependencies":[]},{"name":"flutter_plugin_android_lifecycle","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_plugin_android_lifecycle-1.0.11/","dependencies":[]},{"name":"fluttertoast","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.1.1/","dependencies":[]},{"name":"image_cropper","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/image_cropper-1.3.1/","dependencies":[]},{"name":"image_picker","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/image_picker-0.6.7+12/","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"path_provider","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider-1.6.22/","dependencies":[]},{"name":"shared_preferences","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences-0.5.12+2/","dependencies":[]},{"name":"sqflite","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/sqflite-1.3.1+2/","dependencies":[]}],"macos":[{"name":"path_provider_macos","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_macos-0.0.4+4/","dependencies":[]},{"name":"shared_preferences_macos","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences_macos-0.0.1+10/","dependencies":[]},{"name":"sqflite","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/sqflite-1.3.1+2/","dependencies":[]}],"linux":[{"name":"path_provider_linux","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_linux-0.0.1+2/","dependencies":[]},{"name":"shared_preferences_linux","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences_linux-0.0.2+2/","dependencies":["path_provider_linux"]}],"windows":[{"name":"path_provider_windows","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_windows-0.0.4+1/","dependencies":[]},{"name":"shared_preferences_windows","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences_windows-0.0.1+1/","dependencies":["path_provider_windows"]}],"web":[{"name":"fluttertoast","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.1.1/","dependencies":[]},{"name":"shared_preferences_web","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences_web-0.1.2+7/","dependencies":[]}]},"dependencyGraph":[{"name":"firebase_messaging","dependencies":[]},{"name":"flutter_local_notifications","dependencies":[]},{"name":"flutter_plugin_android_lifecycle","dependencies":[]},{"name":"fluttertoast","dependencies":[]},{"name":"image_cropper","dependencies":[]},{"name":"image_picker","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"path_provider","dependencies":["path_provider_macos","path_provider_linux","path_provider_windows"]},{"name":"path_provider_linux","dependencies":[]},{"name":"path_provider_macos","dependencies":[]},{"name":"path_provider_windows","dependencies":[]},{"name":"shared_preferences","dependencies":["shared_preferences_linux","shared_preferences_macos","shared_preferences_web","shared_preferences_windows"]},{"name":"shared_preferences_linux","dependencies":["path_provider_linux"]},{"name":"shared_preferences_macos","dependencies":[]},{"name":"shared_preferences_web","dependencies":[]},{"name":"shared_preferences_windows","dependencies":["path_provider_windows"]},{"name":"sqflite","dependencies":[]}],"date_created":"2020-11-20 09:48:09.535924","version":"1.20.2"}
{"info":"This is a generated file; do not edit or check into version control.","plugins":{"ios":[{"name":"firebase_messaging","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_messaging-6.0.16/","dependencies":[]},{"name":"flutter_local_notifications","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_local_notifications-1.5.0+1/","dependencies":[]},{"name":"fluttertoast","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.1.1/","dependencies":[]},{"name":"image_cropper","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/image_cropper-1.3.1/","dependencies":[]},{"name":"image_picker","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/image_picker-0.6.7+12/","dependencies":[]},{"name":"path_provider","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider-1.6.22/","dependencies":[]},{"name":"screen","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/screen-0.0.5/","dependencies":[]},{"name":"shared_preferences","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences-0.5.12+2/","dependencies":[]},{"name":"sqflite","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/sqflite-1.3.1+2/","dependencies":[]},{"name":"url_launcher","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/url_launcher-5.7.6/","dependencies":[]},{"name":"video_player","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/video_player-0.10.12+5/","dependencies":[]},{"name":"wakelock","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/wakelock-0.1.4+2/","dependencies":[]},{"name":"webview_flutter","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/webview_flutter-0.3.24/","dependencies":[]}],"android":[{"name":"firebase_messaging","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_messaging-6.0.16/","dependencies":[]},{"name":"flutter_local_notifications","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_local_notifications-1.5.0+1/","dependencies":[]},{"name":"flutter_plugin_android_lifecycle","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_plugin_android_lifecycle-1.0.11/","dependencies":[]},{"name":"fluttertoast","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.1.1/","dependencies":[]},{"name":"image_cropper","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/image_cropper-1.3.1/","dependencies":[]},{"name":"image_picker","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/image_picker-0.6.7+12/","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"path_provider","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider-1.6.22/","dependencies":[]},{"name":"screen","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/screen-0.0.5/","dependencies":[]},{"name":"shared_preferences","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences-0.5.12+2/","dependencies":[]},{"name":"sqflite","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/sqflite-1.3.1+2/","dependencies":[]},{"name":"url_launcher","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/url_launcher-5.7.6/","dependencies":[]},{"name":"video_player","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/video_player-0.10.12+5/","dependencies":[]},{"name":"wakelock","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/wakelock-0.1.4+2/","dependencies":[]},{"name":"webview_flutter","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/webview_flutter-0.3.24/","dependencies":[]}],"macos":[{"name":"path_provider_macos","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_macos-0.0.4+4/","dependencies":[]},{"name":"shared_preferences_macos","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences_macos-0.0.1+10/","dependencies":[]},{"name":"sqflite","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/sqflite-1.3.1+2/","dependencies":[]},{"name":"url_launcher_macos","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/url_launcher_macos-0.0.1+9/","dependencies":[]}],"linux":[{"name":"path_provider_linux","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_linux-0.0.1+2/","dependencies":[]},{"name":"shared_preferences_linux","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences_linux-0.0.2+2/","dependencies":["path_provider_linux"]},{"name":"url_launcher_linux","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/url_launcher_linux-0.0.1+4/","dependencies":[]}],"windows":[{"name":"path_provider_windows","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_windows-0.0.4+1/","dependencies":[]},{"name":"shared_preferences_windows","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences_windows-0.0.1+1/","dependencies":["path_provider_windows"]},{"name":"url_launcher_windows","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/url_launcher_windows-0.0.1+3/","dependencies":[]}],"web":[{"name":"fluttertoast","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.1.1/","dependencies":[]},{"name":"shared_preferences_web","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences_web-0.1.2+7/","dependencies":[]},{"name":"url_launcher_web","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/url_launcher_web-0.1.4+1/","dependencies":[]},{"name":"video_player_web","path":"/Users/jailson/flutter/.pub-cache/hosted/pub.dartlang.org/video_player_web-0.1.4+1/","dependencies":[]}]},"dependencyGraph":[{"name":"firebase_messaging","dependencies":[]},{"name":"flutter_local_notifications","dependencies":[]},{"name":"flutter_plugin_android_lifecycle","dependencies":[]},{"name":"fluttertoast","dependencies":[]},{"name":"image_cropper","dependencies":[]},{"name":"image_picker","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"path_provider","dependencies":["path_provider_macos","path_provider_linux","path_provider_windows"]},{"name":"path_provider_linux","dependencies":[]},{"name":"path_provider_macos","dependencies":[]},{"name":"path_provider_windows","dependencies":[]},{"name":"screen","dependencies":[]},{"name":"shared_preferences","dependencies":["shared_preferences_linux","shared_preferences_macos","shared_preferences_web","shared_preferences_windows"]},{"name":"shared_preferences_linux","dependencies":["path_provider_linux"]},{"name":"shared_preferences_macos","dependencies":[]},{"name":"shared_preferences_web","dependencies":[]},{"name":"shared_preferences_windows","dependencies":["path_provider_windows"]},{"name":"sqflite","dependencies":[]},{"name":"url_launcher","dependencies":["url_launcher_web","url_launcher_linux","url_launcher_macos","url_launcher_windows"]},{"name":"url_launcher_linux","dependencies":[]},{"name":"url_launcher_macos","dependencies":[]},{"name":"url_launcher_web","dependencies":[]},{"name":"url_launcher_windows","dependencies":[]},{"name":"video_player","dependencies":["video_player_web"]},{"name":"video_player_web","dependencies":[]},{"name":"wakelock","dependencies":[]},{"name":"webview_flutter","dependencies":[]}],"date_created":"2020-11-20 10:10:18.312327","version":"1.20.2"}
10 changes: 10 additions & 0 deletions ios/Runner.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -269,8 +269,13 @@
"${BUILT_PRODUCTS_DIR}/image_picker/image_picker.framework",
"${BUILT_PRODUCTS_DIR}/nanopb/nanopb.framework",
"${BUILT_PRODUCTS_DIR}/path_provider/path_provider.framework",
"${BUILT_PRODUCTS_DIR}/screen/screen.framework",
"${BUILT_PRODUCTS_DIR}/shared_preferences/shared_preferences.framework",
"${BUILT_PRODUCTS_DIR}/sqflite/sqflite.framework",
"${BUILT_PRODUCTS_DIR}/url_launcher/url_launcher.framework",
"${BUILT_PRODUCTS_DIR}/video_player/video_player.framework",
"${BUILT_PRODUCTS_DIR}/wakelock/wakelock.framework",
"${BUILT_PRODUCTS_DIR}/webview_flutter/webview_flutter.framework",
);
name = "[CP] Embed Pods Frameworks";
outputPaths = (
Expand All @@ -287,8 +292,13 @@
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/image_picker.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/nanopb.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/path_provider.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/screen.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/shared_preferences.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/sqflite.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/url_launcher.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/video_player.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/wakelock.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/webview_flutter.framework",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
Expand Down
25 changes: 21 additions & 4 deletions lib/items/CommentItem.dart
Original file line number Diff line number Diff line change
@@ -1,12 +1,14 @@
import 'package:flutter/material.dart';

import 'package:cached_network_image/cached_network_image.dart';
import 'package:flutter_html/flutter_html.dart';
import 'package:flutter_html/style.dart';
import 'package:url_launcher/url_launcher.dart';

import 'package:amadeus/localizations.dart';
import 'package:amadeus/models/CommentModel.dart';
import 'package:amadeus/models/UserModel.dart';
import 'package:amadeus/res/colors.dart';
import 'package:amadeus/utils/StringUtils.dart';
import 'package:amadeus/widgets/ClickableImage.dart';

abstract class CommentPageItem {}
Expand Down Expand Up @@ -37,6 +39,14 @@ class LoadPostItem extends StatelessWidget implements CommentPageItem {
}
}

_launchURL(url) async {
if (await canLaunch(url)) {
await launch(url);
} else {
throw 'Could not launch $url';
}
}

class CommentItem extends StatelessWidget implements CommentPageItem {
final CommentModel comment;
final String _webserver;
Expand Down Expand Up @@ -90,9 +100,16 @@ class CommentItem extends StatelessWidget implements CommentPageItem {
child: new Row(
children: <Widget>[
new Expanded(
child: new Text(
StringUtils.stripTags(comment.comment),
style: new TextStyle(fontSize: 14.0),
child: new Html(
data: comment.comment,
onLinkTap: (url) {
_launchURL(url);
},
style: {
"html": Style(
fontSize: FontSize(14.0)
)
},
),
),
],
Expand Down
2 changes: 2 additions & 0 deletions pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,8 @@ dependencies:
shared_preferences: ^0.5.8
transparent_image: ^1.0.0
diacritic: ^0.1.1
flutter_html: ^1.0.2
url_launcher: ^5.4.2

dependency_overrides:
image: ^2.1.14
Expand Down