From cdf80b642bd112c2921239691d4039db3db38cb5 Mon Sep 17 00:00:00 2001 From: xster Date: Thu, 19 Apr 2018 16:18:05 -0700 Subject: [PATCH] Don't show the 'preview' banner on published gallery (#16727) --- dev/bots/travis_script.sh | 28 +++++++++++++++---- .../flutter_gallery/lib/gallery/home.dart | 11 ++++---- .../flutter_gallery/lib/main_publish.dart | 13 +++++++++ 3 files changed, 42 insertions(+), 10 deletions(-) create mode 100644 examples/flutter_gallery/lib/main_publish.dart diff --git a/dev/bots/travis_script.sh b/dev/bots/travis_script.sh index 53fc948393..355218b10a 100755 --- a/dev/bots/travis_script.sh +++ b/dev/bots/travis_script.sh @@ -10,25 +10,43 @@ if [ "$SHARD" = "build_and_deploy_gallery" ]; then if [ "$TRAVIS_OS_NAME" = "linux" ]; then echo "Building Flutter Gallery for Android..." export ANDROID_HOME=`pwd`/android-sdk - (cd examples/flutter_gallery; flutter build apk --release) + ( + cd examples/flutter_gallery + flutter build apk --release -t lib/main_publish.dart + ) echo "Android Flutter Gallery built" if [[ "$TRAVIS_PULL_REQUEST" == "false" && "$TRAVIS_BRANCH" == "dev" && $version != *"pre"* ]]; then echo "Deploying to Play Store..." - (cd examples/flutter_gallery/android; bundle install && bundle exec fastlane deploy_play_store) + ( + cd examples/flutter_gallery/android + bundle install + bundle exec fastlane deploy_play_store + ) else echo "Flutter Gallery is only deployed to the Play Store on merged and tagged dev branch commits" fi elif [ "$TRAVIS_OS_NAME" = "osx" ]; then echo "Building Flutter Gallery for iOS..." - (cd examples/flutter_gallery; flutter build ios --release --no-codesign) + ( + cd examples/flutter_gallery + flutter build ios --release --no-codesign -t lib/main_publish.dart + ) echo "iOS Flutter Gallery built" if [[ "$TRAVIS_PULL_REQUEST" == "false" ]]; then if [[ "$TRAVIS_BRANCH" == "dev" && $version != *"pre"* ]]; then echo "Archiving with distribution profile and deploying to TestFlight..." - (cd examples/flutter_gallery/ios; bundle install && bundle exec fastlane build_and_deploy_testflight upload:true) + ( + cd examples/flutter_gallery/ios + bundle install + bundle exec fastlane build_and_deploy_testflight upload:true + ) else echo "Archiving with distribution profile..." - (cd examples/flutter_gallery/ios; bundle install && bundle exec fastlane build_and_deploy_testflight) + ( + cd examples/flutter_gallery/ios + bundle install + bundle exec fastlane build_and_deploy_testflight + ) echo "Archive is only deployed to TestFlight on tagged dev branch commits" fi else diff --git a/examples/flutter_gallery/lib/gallery/home.dart b/examples/flutter_gallery/lib/gallery/home.dart index 8d4fd9667d..754ebdbbab 100644 --- a/examples/flutter_gallery/lib/gallery/home.dart +++ b/examples/flutter_gallery/lib/gallery/home.dart @@ -85,6 +85,10 @@ class GalleryHome extends StatefulWidget { assert(onTimeDilationChanged != null), super(key: key); + // In checked mode our MaterialApp will show the default "debug" banner. + // Otherwise show the "preview" banner. + static bool showPreviewBanner = true; + final GalleryTheme galleryTheme; final ValueChanged onThemeChanged; @@ -206,15 +210,12 @@ class GalleryHomeState extends State with SingleTickerProviderState ) ); - // In checked mode our MaterialApp will show the default "debug" banner. - // Otherwise show the "preview" banner. - bool showPreviewBanner = true; assert(() { - showPreviewBanner = false; + GalleryHome.showPreviewBanner = false; return true; }()); - if (showPreviewBanner) { + if (GalleryHome.showPreviewBanner) { home = new Stack( fit: StackFit.expand, children: [ diff --git a/examples/flutter_gallery/lib/main_publish.dart b/examples/flutter_gallery/lib/main_publish.dart new file mode 100644 index 0000000000..5b4c37f7c2 --- /dev/null +++ b/examples/flutter_gallery/lib/main_publish.dart @@ -0,0 +1,13 @@ +// Copyright 2018 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +import 'gallery/home.dart'; +import 'main.dart' as other_main; + +// This main chain-calls main.dart's main. This file is used for publishing +// the gallery and removes the 'PREVIEW' banner. +void main() { + GalleryHome.showPreviewBanner = false; + other_main.main(); +}