You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by gr...@apache.org on 2020/03/23 07:07:53 UTC
[royale-asjs] 03/03: Sidestepping a few issues with swf
html-template stuff to get past upper level gitignore rules.
This is an automated email from the ASF dual-hosted git repository.
gregdove pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git
commit 9cd53a93ead0c8f283816c6aa9d1d411780eb8a8
Author: greg-dove <gr...@gmail.com>
AuthorDate: Mon Mar 23 20:03:25 2020 +1300
Sidestepping a few issues with swf html-template stuff to get past upper level gitignore rules.
---
manualtests/UnitTests/build.xml | 101 +++++++++++++++
manualtests/UnitTests/pom.xml | 5 +-
.../swf-html-template/index.template.html | 135 +++++++++++++++++++++
manualtests/build_example.xml | 12 +-
4 files changed, 251 insertions(+), 2 deletions(-)
diff --git a/manualtests/UnitTests/build.xml b/manualtests/UnitTests/build.xml
index a01cd3f..d8318f9 100644
--- a/manualtests/UnitTests/build.xml
+++ b/manualtests/UnitTests/build.xml
@@ -39,9 +39,12 @@
<include file="${basedir}/../build_example.xml" />
<target name="main" depends="clean" description="Clean build of ${example}">
+
<antcall target="build_example.compile">
<param name="debug" value="false"/>
+ <param name="no.wrapper" value="true"/>
</antcall>
+ <antcall target="wrapper"/>
</target>
<target name="clean">
@@ -55,4 +58,102 @@
</exec>
</target>
+ <target name="wrapper">
+ <property name="templatebase" value="${basedir}/swf-html-template/index.template.html"/>
+ <copy todir="${destDir}">
+ <fileset dir="${ROYALE_HOME}/templates/swfobject">
+ <exclude name="index.template.html"/>
+ </fileset>
+ </copy>
+
+ <html-wrapper
+ height="100%"
+ width="100%"
+ bgcolor="#ffffff"
+ name="${example}"
+ versionmajor="11"
+ versionminor="5"
+ versionrevision="0"
+ template="${templatebase}"
+ output="${destDir}"/>
+ </target>
+
+
+ <property name="html_template_base" value="${basedir}/swf-html-template/index.template.html" />
+ <macrodef name="html-wrapper">
+ <attribute name="width"/>
+ <attribute name="height"/>
+ <attribute name="bgcolor"/>
+ <attribute name="name"/>
+ <attribute name="versionmajor"/>
+ <attribute name="versionminor"/>
+ <attribute name="versionrevision"/>
+ <attribute name="output"/>
+ <attribute name="template" default="${html_template_base}"/>
+ <sequential>
+ <copy toFile="@{output}/@{name}.html"
+ file="@{template}" />
+ <replace file="@{output}/@{name}.html">
+ <replacefilter
+ token="$${title}"
+ value="@{name}"/>
+ </replace>
+ <replace file="@{output}/@{name}.html">
+ <replacefilter
+ token="$${bgcolor}"
+ value="@{bgcolor}"/>
+ </replace>
+ <replace file="@{output}/@{name}.html">
+ <replacefilter
+ token="$${useBrowserHistory}"
+ value="--"/>
+ </replace>
+ <replace file="@{output}/@{name}.html">
+ <replacefilter
+ token="$${version_major}"
+ value="@{versionmajor}"/>
+ </replace>
+ <replace file="@{output}/@{name}.html">
+ <replacefilter
+ token="$${version_minor}"
+ value="@{versionminor}"/>
+ </replace>
+ <replace file="@{output}/@{name}.html">
+ <replacefilter
+ token="$${version_revision}"
+ value="@{versionrevision}"/>
+ </replace>
+ <replace file="@{output}/@{name}.html">
+ <replacefilter
+ token="$${expressInstallSwf}"
+ value="expressInstall.swf"/>
+ </replace>
+ <replace file="@{output}/@{name}.html">
+ <replacefilter
+ token="$${expressInstallSwf}"
+ value="expressInstall.swf"/>
+ </replace>
+ <replace file="@{output}/@{name}.html">
+ <replacefilter
+ token="$${width}"
+ value="@{width}"/>
+ </replace>
+ <replace file="@{output}/@{name}.html">
+ <replacefilter
+ token="$${height}"
+ value="@{height}"/>
+ </replace>
+ <replace file="@{output}/@{name}.html">
+ <replacefilter
+ token="$${application}"
+ value="@{name}"/>
+ </replace>
+ <replace file="@{output}/@{name}.html">
+ <replacefilter
+ token="$${swf}"
+ value="@{name}"/>
+ </replace>
+ </sequential>
+ </macrodef>
+
</project>
diff --git a/manualtests/UnitTests/pom.xml b/manualtests/UnitTests/pom.xml
index 3cfc217..937f41b 100644
--- a/manualtests/UnitTests/pom.xml
+++ b/manualtests/UnitTests/pom.xml
@@ -166,7 +166,10 @@
<includeEmptyDirs>true</includeEmptyDirs>
<resources>
<resource>
- <directory>${basedir}/swf-html-template/swfobject</directory>
+ <directory>${basedir}/../../templates/swfobject</directory>
+ </resource>
+ <resource>
+ <directory>${basedir}/swf-html-template</directory>
<filtering>true</filtering>
</resource>
</resources>
diff --git a/manualtests/UnitTests/swf-html-template/index.template.html b/manualtests/UnitTests/swf-html-template/index.template.html
new file mode 100644
index 0000000..33489c4
--- /dev/null
+++ b/manualtests/UnitTests/swf-html-template/index.template.html
@@ -0,0 +1,135 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!-- saved from url=(0014)about:internet -->
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
+<!--
+Smart developers always View Source.
+
+This application was built using Apache Royale, an open source framework
+that cross compiles MXML and ActionScript into HTML and JavaScript. It runs
+in web, desktop and mobile(app) in swf format and runs in browser based
+environments as HTML/JS/CSS files without the need for the Flash Player
+plugin. It brings the advantages of Flex to the HTML/JavaScript world.
+
+Learn more about Royale at http://royale.apache.org
+// -->
+<head>
+ <title>${title}</title>
+ <meta name="google" value="notranslate" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <!-- Include CSS to eliminate any default margins/padding and set the height of the html element and
+ the body element to 100%, because Firefox, or any Gecko based browser, interprets percentage as
+ the percentage of the height of its parent container, which has to be set explicitly. Fix for
+ Firefox 3.6 focus border issues. Initially, don't display flashContent div so it won't show
+ if JavaScript disabled.
+ -->
+ <style type="text/css" media="screen">
+ html, body { height:100%; }
+ body { margin:0; padding:0; overflow:auto; text-align:center;
+ background-color: ${bgcolor}; }
+ object:focus { outline:none; }
+ #flashContent { display:none; }
+ </style>
+
+ <!-- Enable Browser History by replacing useBrowserHistory tokens with two hyphens -->
+ <!-- BEGIN Browser History required section ${useBrowserHistory}>
+ <link rel="stylesheet" type="text/css" href="history/history.css" />
+ <script type="text/javascript" src="history/history.js"></script>
+ <!${useBrowserHistory} END Browser History required section -->
+
+ <script type="text/javascript" src="swfobject.js"></script>
+ <script type="text/javascript">
+ // For version detection, set to min. required Flash Player version, or 0 (or 0.0.0), for no version detection.
+
+ var swf = ".swf";
+
+ //this supports intellij's 'open in browser'
+ if (window.location.search) {
+ swf += window.location.search;
+ console.log('appending window url params to swf...');
+ }
+
+ var swfVersionStr = "${version_major}.${version_minor}.${version_revision}";
+ // To use express install, set to playerProductInstall.swf, otherwise the empty string.
+ var xiSwfUrlStr = "${expressInstallSwf}";
+ var flashvars = {};
+ var params = {};
+ params.quality = "high";
+ params.bgcolor = "${bgcolor}";
+ params.allowscriptaccess = "sameDomain";
+ params.allowfullscreen = "true";
+ var attributes = {};
+ attributes.id = "${application}";
+ attributes.name = "${application}";
+ attributes.align = "left";
+ swfobject.embedSWF(
+ "${swf}"+swf, "flashContent",
+ "${width}", "${height}",
+ swfVersionStr, xiSwfUrlStr,
+ flashvars, params, attributes);
+ // JavaScript enabled so display the flashContent div in case it is not replaced with a swf object.
+ swfobject.createCSS("#flashContent", "display:block;text-align:left;");
+ </script>
+</head>
+<body>
+<!-- SWFObject's dynamic embed method replaces this alternative HTML content with Flash content when enough
+ JavaScript and Flash plug-in support is available. The div is initially hidden so that it doesn't show
+ when JavaScript is disabled.
+-->
+<div id="flashContent">
+ <p>
+ To view this page ensure that Adobe Flash Player version
+ ${version_major}.${version_minor}.${version_revision} or greater is installed.
+ </p>
+ <script type="text/javascript">
+ var pageHost = ((document.location.protocol == "https:") ? "https://" : "http://");
+ document.write("<a href='http://www.adobe.com/go/getflashplayer'><img src='"
+ + pageHost + "www.adobe.com/images/shared/download_buttons/get_flash_player.gif' alt='Get Adobe Flash player' /></a>" );
+ </script>
+</div>
+
+<noscript>
+ <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="${width}" height="${height}" id="${application}">
+ <param name="movie" value="${swf}.swf" />
+ <param name="quality" value="high" />
+ <param name="bgcolor" value="${bgcolor}" />
+ <param name="allowScriptAccess" value="sameDomain" />
+ <param name="allowFullScreen" value="true" />
+ <!--[if !IE]>-->
+ <object type="application/x-shockwave-flash" data="${swf}.swf" width="${width}" height="${height}">
+ <param name="quality" value="high" />
+ <param name="bgcolor" value="${bgcolor}" />
+ <param name="allowScriptAccess" value="sameDomain" />
+ <param name="allowFullScreen" value="true" />
+ <!--<![endif]-->
+ <!--[if gte IE 6]>-->
+ <p>
+ Either scripts and active content are not permitted to run or Adobe Flash Player version
+ ${version_major}.${version_minor}.${version_revision} or greater is not installed.
+ </p>
+ <!--<![endif]-->
+ <a href="http://www.adobe.com/go/getflashplayer">
+ <img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash Player" />
+ </a>
+ <!--[if !IE]>-->
+ </object>
+ <!--<![endif]-->
+ </object>
+</noscript>
+</body>
+</html>
diff --git a/manualtests/build_example.xml b/manualtests/build_example.xml
index e9dd31d..a1c9d44 100644
--- a/manualtests/build_example.xml
+++ b/manualtests/build_example.xml
@@ -158,6 +158,12 @@
<isset property="no.js"/>
</not>
</condition>
+
+ <condition property="wrapperTarget" value="build_example.wrapper" else="build_example.skipWrapper">
+ <not>
+ <isset property="no.wrapper"/>
+ </not>
+ </condition>
<!-- Load the <compc> task. We can't do this at the <project> level -->
<!-- because targets that run before flexTasks.jar gets built would fail. -->
<taskdef resource="flexTasks.tasks" classpathref="lib.path"/>
@@ -187,7 +193,7 @@
-->
</mxmlc>
- <antcall target="build_example.wrapper">
+ <antcall target="${wrapperTarget}">
<param name="output" value="${destDir}"/>
<param name="templatebase" value="${html_template_base}"/>
</antcall>
@@ -350,6 +356,10 @@
<equals arg1="${config_arg}" arg2="air" />
</condition>
</target>
+
+ <target name="skipWrapper">
+ <echo>Wrapper build was skipped</echo>
+ </target>
<target name="wrapper" depends="check-air" unless="is.air">
<property name="output" value="${basedir}/bin-debug"/>