Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision
  • 65-improve-app-metadata
  • master
  • Release_1.0.10_11
  • Release_1.0.11_12
  • Release_1.0.12_13
  • Release_1.0.13_14
  • Release_1.0.14_15
  • Release_1.0.15_16
  • Release_1.0.16_17
  • Release_1.0.17_18
  • Release_1.0.18_19
  • Release_1.0.19_20
  • Release_1.0.20_21
  • Release_1.0.21_22
  • Release_1.0.22_23
  • Release_1.0.23_24
  • Release_1.0.24_25
  • Release_1.0.25_26
  • Release_1.0.26_27
  • Release_1.0.27_28
  • Release_1.0.28_29
  • Release_1.0.29_30
  • Release_1.0.30_31
  • Release_1.0.31_32
  • Release_1.0.32_33
  • Release_1.0.33_34
  • Release_1.0.34_35
  • Release_1.0.35_36
  • Release_1.0.36_37
  • Release_1.0.37_38
  • Release_1.0.38_39
  • Release_1.0.39_40
  • Release_1.0.3_4
  • Release_1.0.40_41
  • Release_1.0.41_42
  • Release_1.0.42_43
  • Release_1.0.43_44
  • Release_1.0.44_45
  • Release_1.0.45_46
  • Release_1.0.46_47
  • Release_1.0.47_48
  • Release_1.0.48_49
  • Release_1.0.49_50
  • Release_1.0.4_5
  • Release_1.0.50_51
  • Release_1.0.51_52
  • Release_1.0.52_53
  • Release_1.0.53_54
  • Release_1.0.54_55
  • Release_1.0.55_56
  • Release_1.0.56_57
  • Release_1.0.57_58
  • Release_1.0.58_59
  • Release_1.0.59_60
  • Release_1.0.5_6
  • Release_1.0.60_61
  • Release_1.0.61_62
  • Release_1.0.62_63
  • Release_1.0.63_64
  • Release_1.0.6_7
  • Release_1.0.7_8
  • Release_1.0.8_9
  • Release_1.0.9_10
  • Release_1.1.0_65
  • Release_1.1.1_66
  • Release_1.1.2_67
  • Release_1.1.3_68
  • Release_1.2.0_69
  • Release_1.2.1_70
  • Release_1.3.0_71
  • Release_1.3.1_72
  • Release_1.3.2_73
  • Release_1.4.0_74
  • Release_1.5.0_75
  • Release_1.6.0_76
  • Release_1.7.0_77
  • Release_1.7.1_78
  • Release_1.7.2_79
  • Release_1.8.0_80
  • Release_3_1.0.2
  • Release_Release_3_1.0.2
81 results

Target

Select target project
  • android/random
1 result
Select Git revision
  • 65-improve-app-metadata
  • master
  • Release_1.0.10_11
  • Release_1.0.11_12
  • Release_1.0.12_13
  • Release_1.0.13_14
  • Release_1.0.14_15
  • Release_1.0.15_16
  • Release_1.0.16_17
  • Release_1.0.17_18
  • Release_1.0.18_19
  • Release_1.0.19_20
  • Release_1.0.20_21
  • Release_1.0.21_22
  • Release_1.0.22_23
  • Release_1.0.23_24
  • Release_1.0.24_25
  • Release_1.0.25_26
  • Release_1.0.26_27
  • Release_1.0.27_28
  • Release_1.0.28_29
  • Release_1.0.29_30
  • Release_1.0.30_31
  • Release_1.0.31_32
  • Release_1.0.32_33
  • Release_1.0.33_34
  • Release_1.0.34_35
  • Release_1.0.35_36
  • Release_1.0.36_37
  • Release_1.0.37_38
  • Release_1.0.38_39
  • Release_1.0.39_40
  • Release_1.0.3_4
  • Release_1.0.40_41
  • Release_1.0.41_42
  • Release_1.0.42_43
  • Release_1.0.43_44
  • Release_1.0.44_45
  • Release_1.0.45_46
  • Release_1.0.46_47
  • Release_1.0.47_48
  • Release_1.0.48_49
  • Release_1.0.49_50
  • Release_1.0.4_5
  • Release_1.0.50_51
  • Release_1.0.51_52
  • Release_1.0.52_53
  • Release_1.0.53_54
  • Release_1.0.54_55
  • Release_1.0.55_56
  • Release_1.0.56_57
  • Release_1.0.57_58
  • Release_1.0.58_59
  • Release_1.0.59_60
  • Release_1.0.5_6
  • Release_1.0.60_61
  • Release_1.0.61_62
  • Release_1.0.62_63
  • Release_1.0.63_64
  • Release_1.0.6_7
  • Release_1.0.7_8
  • Release_1.0.8_9
  • Release_1.0.9_10
  • Release_1.1.0_65
  • Release_1.1.1_66
  • Release_1.1.2_67
  • Release_1.1.3_68
  • Release_1.2.0_69
  • Release_1.2.1_70
  • Release_1.3.0_71
  • Release_1.3.1_72
  • Release_1.3.2_73
  • Release_1.4.0_74
  • Release_1.5.0_75
  • Release_1.6.0_76
  • Release_1.7.0_77
  • Release_1.7.1_78
  • Release_1.7.2_79
  • Release_1.8.0_80
  • Release_3_1.0.2
  • Release_Release_3_1.0.2
81 results
Show changes
Commits on Source (4)
Showing
with 159 additions and 52 deletions
android/app/src/main/res/mipmap-hdpi/ic_launcher.png

1.89 KiB | W: 0px | H: 0px

android/app/src/main/res/mipmap-hdpi/ic_launcher.png

1.89 KiB | W: 0px | H: 0px

android/app/src/main/res/mipmap-hdpi/ic_launcher.png
android/app/src/main/res/mipmap-hdpi/ic_launcher.png
android/app/src/main/res/mipmap-hdpi/ic_launcher.png
android/app/src/main/res/mipmap-hdpi/ic_launcher.png
  • 2-up
  • Swipe
  • Onion skin
android/app/src/main/res/mipmap-mdpi/ic_launcher.png

1.21 KiB | W: 0px | H: 0px

android/app/src/main/res/mipmap-mdpi/ic_launcher.png

1.21 KiB | W: 0px | H: 0px

android/app/src/main/res/mipmap-mdpi/ic_launcher.png
android/app/src/main/res/mipmap-mdpi/ic_launcher.png
android/app/src/main/res/mipmap-mdpi/ic_launcher.png
android/app/src/main/res/mipmap-mdpi/ic_launcher.png
  • 2-up
  • Swipe
  • Onion skin
android/app/src/main/res/mipmap-xhdpi/ic_launcher.png

2.57 KiB | W: 0px | H: 0px

android/app/src/main/res/mipmap-xhdpi/ic_launcher.png

2.62 KiB | W: 0px | H: 0px

android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
  • 2-up
  • Swipe
  • Onion skin
android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png

3.99 KiB | W: 0px | H: 0px

android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png

4.05 KiB | W: 0px | H: 0px

android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
  • 2-up
  • Swipe
  • Onion skin
android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png

5.61 KiB | W: 0px | H: 0px

android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png

5.68 KiB | W: 0px | H: 0px

android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
  • 2-up
  • Swipe
  • Onion skin
org.gradle.jvmargs=-Xmx1536M
android.useAndroidX=true
android.enableJetifier=true
app.versionName=1.0.10
app.versionCode=11
app.versionName=1.0.12
app.versionCode=13
fastlane/metadata/android/en-US/images/featureGraphic.png

214 B

fastlane/metadata/android/en-US/images/icon.png

18.7 KiB

......@@ -4,14 +4,23 @@
command -v inkscape >/dev/null 2>&1 || { echo >&2 "I require inkscape but it's not installed. Aborting."; exit 1; }
command -v scour >/dev/null 2>&1 || { echo >&2 "I require scour but it's not installed. Aborting."; exit 1; }
command -v optipng >/dev/null 2>&1 || { echo >&2 "I require optipng but it's not installed. Aborting."; exit 1; }
command -v convert >/dev/null 2>&1 || { echo >&2 "I require convert (imagemagick) but it's not installed. Aborting."; exit 1; }
CURRENT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)"
BASE_DIR="$(dirname "${CURRENT_DIR}")"
SOURCE="${CURRENT_DIR}/random.svg"
SOURCE="${CURRENT_DIR}/icon.svg"
SOURCE_FASTLANE="${CURRENT_DIR}/featureGraphic.svg"
OPTIPNG_OPTIONS="-preserve -quiet -o7"
if [ ! -f "${SOURCE}" ]; then
echo "Missing file: ${SOURCE}"
fi
if [ ! -f "${SOURCE_FASTLANE}" ]; then
echo "Missing file: ${SOURCE_FASTLANE}"
fi
# optimize svg
cp ${SOURCE} ${SOURCE}.tmp
scour \
......@@ -20,6 +29,7 @@ scour \
--enable-viewboxing \
--enable-comment-stripping \
--nindent=4 \
--quiet \
-i ${SOURCE}.tmp \
-o ${SOURCE}
rm ${SOURCE}.tmp
......@@ -29,6 +39,8 @@ function build_icon() {
ICON_SIZE="$1"
TARGET="$2"
echo "Building ${TARGET}"
TARGET_PNG="${TARGET}.png"
inkscape \
......@@ -40,9 +52,42 @@ function build_icon() {
optipng ${OPTIPNG_OPTIONS} ${TARGET_PNG}
}
# build fastlane image
function build_fastlane_image() {
WIDTH="$1"
HEIGHT="$2"
TARGET="$3"
echo "Building ${TARGET}"
cp ${SOURCE_FASTLANE} ${SOURCE_FASTLANE}.tmp
scour \
--remove-descriptive-elements \
--enable-id-stripping \
--enable-viewboxing \
--enable-comment-stripping \
--nindent=4 \
--quiet \
-i ${SOURCE_FASTLANE}.tmp \
-o ${SOURCE_FASTLANE}
rm ${SOURCE_FASTLANE}.tmp
TARGET_PNG="${TARGET}.png"
inkscape \
--export-width=${WIDTH} \
--export-height=${HEIGHT} \
--export-filename=${TARGET_PNG} \
${SOURCE_FASTLANE}
optipng ${OPTIPNG_OPTIONS} ${TARGET_PNG}
}
build_icon 72 ${BASE_DIR}/android/app/src/main/res/mipmap-hdpi/ic_launcher
build_icon 48 ${BASE_DIR}/android/app/src/main/res/mipmap-mdpi/ic_launcher
build_icon 96 ${BASE_DIR}/android/app/src/main/res/mipmap-xhdpi/ic_launcher
build_icon 144 ${BASE_DIR}/android/app/src/main/res/mipmap-xxhdpi/ic_launcher
build_icon 192 ${BASE_DIR}/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher
build_icon 512 ${BASE_DIR}/fastlane/metadata/android/en-US/images/icon
build_fastlane_image 1024 500 ${BASE_DIR}/fastlane/metadata/android/en-US/images/featureGraphic
#! /bin/bash
# Check dependencies
command -v inkscape >/dev/null 2>&1 || { echo >&2 "I require inkscape but it's not installed. Aborting."; exit 1; }
command -v scour >/dev/null 2>&1 || { echo >&2 "I require scour but it's not installed. Aborting."; exit 1; }
command -v optipng >/dev/null 2>&1 || { echo >&2 "I require optipng but it's not installed. Aborting."; exit 1; }
CURRENT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)"
BASE_DIR="$(dirname "${CURRENT_DIR}")"
ASSETS_DIR="${BASE_DIR}/assets"
OPTIPNG_OPTIONS="-preserve -quiet -o7"
ICON_SIZE=192
#######################################################
# Game images
AVAILABLE_GAME_IMAGES="
"
# Settings images
AVAILABLES_GAME_SETTINGS="
"
#######################################################
# optimize svg
function optimize_svg() {
SOURCE="$1"
cp ${SOURCE} ${SOURCE}.tmp
scour \
--remove-descriptive-elements \
--enable-id-stripping \
--enable-viewboxing \
--enable-comment-stripping \
--nindent=4 \
--quiet \
-i ${SOURCE}.tmp \
-o ${SOURCE}
rm ${SOURCE}.tmp
}
# build icons
function build_icon() {
SOURCE="$1"
TARGET="$2"
echo "Building ${TARGET}"
if [ ! -f "${SOURCE}" ]; then
echo "Missing file: ${SOURCE}"
exit 1
fi
optimize_svg "${SOURCE}"
inkscape \
--export-width=${ICON_SIZE} \
--export-height=${ICON_SIZE} \
--export-filename=${TARGET} \
${SOURCE}
optipng ${OPTIPNG_OPTIONS} ${TARGET}
}
function build_settings_icons() {
INPUT_STRING="$1"
SETTING_NAME="$(echo "${INPUT_STRING}" | cut -d":" -f1)"
SETTING_VALUES="$(echo "${INPUT_STRING}" | cut -d":" -f2 | tr "," " ")"
for SETTING_VALUE in ${SETTING_VALUES}
do
SETTING_CODE="${SETTING_NAME}_${SETTING_VALUE}"
build_icon ${CURRENT_DIR}/${SETTING_CODE}.svg ${ASSETS_DIR}/icons/${SETTING_CODE}.png
done
}
#######################################################
# Create output folders
mkdir -p ${ASSETS_DIR}/icons
# Delete existing generated images
find ${ASSETS_DIR}/icons -type f -name "*.png" -delete
# build game images
for GAME_IMAGE in ${AVAILABLE_GAME_IMAGES}
do
build_icon ${CURRENT_DIR}/${GAME_IMAGE}.svg ${ASSETS_DIR}/icons/${GAME_IMAGE}.png
done
# build settings images
for GAME_SETTING in ${AVAILABLES_GAME_SETTINGS}
do
build_settings_icons "${GAME_SETTING}"
done
<?xml version="1.0" encoding="UTF-8"?>
<svg enable-background="new 0 0 100 100" version="1.1" viewBox="0 0 1024 500" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><rect width="1024" height="500" rx="0" ry="0" fill="#977cff"/></svg>
File moved
......@@ -5,7 +5,6 @@ void main() {
}
class MyApp extends StatelessWidget {
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
return MaterialApp(
......@@ -19,7 +18,7 @@ class MyApp extends StatelessWidget {
}
class MyHomePage extends StatefulWidget {
MyHomePage({Key key, this.title}) : super(key: key);
MyHomePage({Key? key, required this.title}) : super(key: key);
final String title;
......
......@@ -42,14 +42,14 @@ packages:
name: collection
url: "https://pub.dartlang.org"
source: hosted
version: "1.15.0"
version: "1.16.0"
fake_async:
dependency: transitive
description:
name: fake_async
url: "https://pub.dartlang.org"
source: hosted
version: "1.2.0"
version: "1.3.0"
flutter:
dependency: "direct main"
description: flutter
......@@ -73,7 +73,7 @@ packages:
name: material_color_utilities
url: "https://pub.dartlang.org"
source: hosted
version: "0.1.3"
version: "0.1.4"
meta:
dependency: transitive
description:
......@@ -87,7 +87,7 @@ packages:
name: path
url: "https://pub.dartlang.org"
source: hosted
version: "1.8.0"
version: "1.8.1"
sky_engine:
dependency: transitive
description: flutter
......@@ -99,7 +99,7 @@ packages:
name: source_span
url: "https://pub.dartlang.org"
source: hosted
version: "1.8.1"
version: "1.8.2"
stack_trace:
dependency: transitive
description:
......@@ -134,20 +134,13 @@ packages:
name: test_api
url: "https://pub.dartlang.org"
source: hosted
version: "0.4.8"
typed_data:
dependency: transitive
description:
name: typed_data
url: "https://pub.dartlang.org"
source: hosted
version: "1.3.0"
version: "0.4.9"
vector_math:
dependency: transitive
description:
name: vector_math
url: "https://pub.dartlang.org"
source: hosted
version: "2.1.1"
version: "2.1.2"
sdks:
dart: ">=2.14.0 <3.0.0"
dart: ">=2.17.0-0 <3.0.0"
......@@ -4,7 +4,7 @@ publish_to: 'none'
version: 1.0.0+1
environment:
sdk: ">=2.7.0 <3.0.0"
sdk: ">=2.16.1 <3.0.0"
dependencies:
flutter:
......
// This is a basic Flutter widget test.
//
// To perform an interaction with a widget in your test, use the WidgetTester
// utility that Flutter provides. For example, you can send tap and scroll
// gestures. You can also use WidgetTester to find child widgets in the widget
// tree, read text, and verify that the values of widget properties are correct.
import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:random/main.dart';
void main() {
testWidgets('Counter increments smoke test', (WidgetTester tester) async {
// Build our app and trigger a frame.
await tester.pumpWidget(MyApp());
// Verify that our counter starts at 0.
expect(find.text('0'), findsOneWidget);
expect(find.text('1'), findsNothing);
// Tap the '+' icon and trigger a frame.
await tester.tap(find.byIcon(Icons.add));
await tester.pump();
// Verify that our counter has incremented.
expect(find.text('0'), findsNothing);
expect(find.text('1'), findsOneWidget);
});
}