Publish RAP Runtime 3.22 M1

Change-Id: Ida2de812ab46c3619be76fc91928766bf6701dac
Signed-off-by: Markus Knauer <mknauer@eclipsesource.com>
diff --git a/_builds/builds-3.22.xml b/_builds/builds-3.22.xml
new file mode 100644
index 0000000..288086d
--- /dev/null
+++ b/_builds/builds-3.22.xml
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="utf-8" ?>
+
+<builds version="3.22" simultaneousRelease="2022-09">
+
+  <feature id="runtime">
+    <name>RAP (Runtime)</name>
+    <description>based on Eclipse 4.25 (2022-09)</description>
+    <site>https://download.eclipse.org/rt/rap/3.22</site>
+    <downloadPath>/rt/rap/3.22/</downloadPath>
+    <githubIssuesUrl>https://github.com/eclipse-rap/org.eclipse.rap/milestone/2?closed=1</githubIssuesUrl>
+  </feature>
+
+  <feature id="runtime4">
+    <name>RAP E4 (Runtime)</name>
+    <description>based on Eclipse 4.25 (2022-09)</description>
+    <site>https://download.eclipse.org/rt/rap/3.22/e4</site>
+    <downloadPath>/rt/rap/3.22/e4/</downloadPath>
+    <githubIssuesUrl>https://github.com/eclipse-rap/org.eclipse.rap/milestone/2?closed=1</githubIssuesUrl>
+  </feature>
+
+  <feature id="tools">
+    <name>RAP Tools</name>
+    <description>for use with Eclipse 4.25 (2022-09)</description>
+    <site>https://download.eclipse.org/rt/rap/tools/3.22</site>
+    <downloadPath>/rt/rap/tools/3.22/</downloadPath>
+    <githubIssuesUrl>https://github.com/eclipse-rap/org.eclipse.rap.tools/milestone/2?closed=1</githubIssuesUrl>
+  </feature>
+
+  <build name="3.22 M1" type="M"
+      shortname="M1"
+      status="completed"
+      publishDate="2022-07-15"
+      news="3.22/?build=M1"
+      runtimeZip="rap-3.22.0-M1-20220713-1100.zip"
+      runtime4Zip="rap-e4-3.22.0-M1-20220713-1100.zip"
+      toolsZip="rap-tools-3.22.0-M1-20220713-1100.zip"
+      />
+
+  <build name="3.22 M2" type="M"
+      shortname="M2"
+      status="planned"
+      publishDate="2022-08-05"
+      news="3.22/?build=M2"
+      runtimeZip=""
+      runtime4Zip=""
+      toolsZip=""
+      />
+
+  <build name="3.22 M3" type="M"
+      shortname="M3"
+      status="planned"
+      publishDate="2022-08-26"
+      news="3.22/?build=M3"
+      runtimeZip=""
+      runtime4Zip=""
+      toolsZip=""
+      />
+
+  <build name="3.22 RC1" type="RC"
+      shortname="RC1"
+      status="planned"
+      publishDate="2022-09-02"
+      news="3.22/?build=RC1"
+      runtimeZip=""
+      runtime4Zip=""
+      toolsZip=""
+      />
+
+  <build name="3.22 RC2" type="RC"
+      shortname="RC2"
+      status="planned"
+      publishDate="2022-09-09"
+      news="3.22/?build=RC2"
+      runtimeZip=""
+      runtime4Zip=""
+      toolsZip=""
+      />
+
+  <build name="3.22" type="R"
+      shortname="R"
+      status="planned"
+      publishDate="2022-09-14"
+      news="3.22/"
+      runtimeZip=""
+      runtime4Zip=""
+      toolsZip=""
+      />
+
+</builds>
diff --git a/_sidebar/arrivals.php b/_sidebar/arrivals.php
index 54f201b..2d5232c 100644
--- a/_sidebar/arrivals.php
+++ b/_sidebar/arrivals.php
@@ -7,17 +7,6 @@
     <div class="terminal-row">
       <span class="terminal-field">
         <span class="terminal-overlay"></span>
-        <span class="terminal-text">RAP 3.19</span>
-      </span>
-      <span class="terminal-field">
-        <span class="terminal-overlay"></span>
-        <span class="terminal-text terminal-arrived">ARRIVED</span>
-      </span>
-    </div>
-
-    <div class="terminal-row">
-      <span class="terminal-field">
-        <span class="terminal-overlay"></span>
         <span class="terminal-text">RAP 3.20</span>
       </span>
       <span class="terminal-field">
@@ -40,6 +29,17 @@
     <div class="terminal-row">
       <span class="terminal-field">
         <span class="terminal-overlay"></span>
+        <span class="terminal-text">RAP 3.22 M1</span>
+      </span>
+      <span class="terminal-field">
+        <span class="terminal-overlay"></span>
+        <span class="terminal-text terminal-arrived">ARRIVED</span>
+      </span>
+    </div>
+
+    <div class="terminal-row">
+      <span class="terminal-field">
+        <span class="terminal-overlay"></span>
         <span class="terminal-text">RAP 3.22</span>
       </span>
       <span class="terminal-field">
diff --git a/_sidebar/releases.php b/_sidebar/releases.php
index 99ebdc8..09ba1d6 100644
--- a/_sidebar/releases.php
+++ b/_sidebar/releases.php
@@ -5,6 +5,9 @@
   <div class="sideitemcontent">
     <ul>
       <li>
+        <a href="/rap/downloads/3.22/">RAP 3.22&emsp;2022-09</a>
+      </li>
+      <li>
         <a href="/rap/downloads/3.21/">RAP 3.21&emsp;2022-06</a>
       </li>
       <li>
diff --git a/developers-guide/DevGuideUtils.php b/developers-guide/DevGuideUtils.php
index 42724a2..bbd70fc 100644
--- a/developers-guide/DevGuideUtils.php
+++ b/developers-guide/DevGuideUtils.php
@@ -3,7 +3,7 @@
 class DevGuideUtils {
 
   const CURRENT_VERSION = '3.21';
-  const MASTER_VERSION = '3.21';
+  const MASTER_VERSION = '3.22';
 
   public static $versions = array(
     '2.0' => array(
@@ -155,6 +155,12 @@
       'apiUrl' => 'http://download.eclipse.org/rt/rap/doc/3.21/guide/reference/',
       'tocPath' => 'guide/toc.xml',
       'topicPath' => 'guide/articles/'
+    ),
+    '3.22' => array(
+      'rootUrl' => 'http://download.eclipse.org/rt/rap/doc/3.22/',
+      'apiUrl' => 'http://download.eclipse.org/rt/rap/doc/3.22/guide/reference/',
+      'tocPath' => 'guide/toc.xml',
+      'topicPath' => 'guide/articles/'
     )
   );
 
diff --git a/downloads/3.22/index.php b/downloads/3.22/index.php
new file mode 100644
index 0000000..f441fae
--- /dev/null
+++ b/downloads/3.22/index.php
@@ -0,0 +1,137 @@
+<?php
+
+  include( $_SERVER['DOCUMENT_ROOT'] . "/rap/_projectCommon.php" );
+  require_once( $_SERVER['DOCUMENT_ROOT'] . "/rap/_Builds.php" );
+
+  $builds = new Builds( "3.22" );
+
+  $title = "RAP - " . $builds->getVersion() . " Downloads";
+  $navPosition = array( "download", "downloads" );
+  printHeader( $title, $navPosition );
+
+  function getBuildTypeHeader( $type ) {
+    if( $type === "Release" ) {
+      return $type;
+    }
+    return $type . "s";
+  }
+
+?>
+
+<div id="midcolumn">
+
+  <h1>RAP <?= $builds->getVersion() ?></h1>
+
+  <p>
+    Release Date: <?= formatDate( $builds->findBuild( "R" )->getPublishDate() ); ?>
+<? if( $builds->getSimultaneousRelease() ) { ?>
+      - together with Eclipse <?= $builds->getSimultaneousRelease(); ?>
+<? } ?>
+    <br/>
+    <a href="/rap/noteworthy/<?= $builds->findBuild( "R" )->getNews() ?>">New &amp; Noteworthy</a>
+  </p>
+
+  <h2>Features</h2>
+
+  <h3>RAP (Runtime)</h3>
+
+  <p>
+    <?= $builds->getDescription( "runtime" ) ?>
+  </p>
+
+  <p>
+    Software Site:
+    <img src="/rap/images/site.gif" alt="site" />
+    <?= $builds->getUpdateSite( "runtime" ) ?>
+  </p>
+
+  <h3>RAP E4 (Runtime)</h3>
+
+  <p>
+    <?= $builds->getDescription( "runtime4" ) ?>
+  </p>
+
+  <p>
+    Software Site:
+    <img src="/rap/images/site.gif" alt="site" />
+    <?= $builds->getUpdateSite( "runtime4" ) ?>
+  </p>
+
+  <h3>RAP Tools</h3>
+
+  <p>
+    <?= $builds->getDescription( "tools" ) ?>
+  </p>
+
+  <p>
+    Software Site:
+    <img src="/rap/images/site.gif" alt="site" />
+    <?= $builds->getUpdateSite( "tools" ) ?>
+  </p>
+
+  <h2>Builds</h2>
+
+  <table class="builds">
+
+<? $lastType = NULL; ?>
+<? foreach( $builds->getPreviousBuilds( '' ) as $build ) { ?>
+<?   if( $lastType != $build->getType() ) { ?>
+
+      <tr><td colspan="3"><h3><?= getBuildTypeHeader( $build->getType() ) ?></h3></td></tr>
+
+<?   } ?>
+<?   $lastType = $build->getType(); ?>
+
+    <tr>
+      <td class="build-header">
+        <strong><?= $build->getName() ?></strong>
+      </td>
+      <td>
+        <?= formatDate( $build->getPublishDate() ) ?>
+      </td>
+
+<?   if( $build->isCompleted() ) { ?>
+
+      <td>
+        <a href="/rap/noteworthy/<?= $build->getNews() ?>">New &amp; Noteworthy</a>
+      </td>
+      <td>
+        <a href="<?= $build->getZipFileUrl( "runtime" ) ?>">
+          <img src="/rap/images/zip.gif" alt="zip" /> RAP
+        </a>
+      </td>
+      <td>
+        <a href="<?= $build->getZipFileUrl( "runtime4" ) ?>">
+          <img src="/rap/images/zip.gif" alt="zip" /> RAP E4
+        </a>
+      </td>
+      <td>
+        <a href="<?= $build->getZipFileUrl( "tools" ) ?>">
+          <img src="/rap/images/zip.gif" alt="zip" /> RAP Tools
+        </a>
+      </td>
+
+<?   } else { ?>
+
+      <td colspan="3">
+        <em>planned</em>
+      </td>
+
+<? } ?>
+
+    </tr>
+
+<? } ?>
+
+  </table>
+
+</div>
+
+<div id="rightcolumn">
+  <?php includeSidebar( "rap-feed.php" ) ?>
+  <?php includeSidebar( "contributors.php" ) ?>
+</div>
+
+<?php
+  printFooter();
+?>
diff --git a/downloads/index.php b/downloads/index.php
index d1ca118..6d3fc0c 100644
--- a/downloads/index.php
+++ b/downloads/index.php
@@ -10,7 +10,7 @@
   // --- TO BE CHANGED WITH EVERY RELEASE ---
 
   $releaseBuilds = new Builds( "3.21" );
-  $stableBuilds = new Builds( "3.21" );
+  $stableBuilds = new Builds( "3.22" );
 
   // ---
 
diff --git a/noteworthy/3.22/_news-M1.html b/noteworthy/3.22/_news-M1.html
new file mode 100644
index 0000000..c8519cc
--- /dev/null
+++ b/noteworthy/3.22/_news-M1.html
@@ -0,0 +1,37 @@
+<div>
+
+  <h2>Add Possibility to Disable Shutdown Request</h2>
+
+  <p>
+    In certain circumstances it is required to prevent the execution of sendShutdown/sendBeacon, e.g.
+    when HTTP 302/303 redirects are intercepted and handled manually.<br/><br/>
+    This can be configured within the <code>ApplicationConfiguration</code> by setting an additional
+    string property:<br/>
+    <code><pre>
+Map<String, String> properties = new HashMap<String, String>();
+properties.put( WebClient.DISABLE_SHUTDOWN_REQUEST, "true" );
+application.addEntryPoint( "/", Demo.class, properties );
+    </pre></code>
+  </p>
+
+  <h2>Support for MenuItem Tooltip Text</h2>
+
+  <p>
+    New API has been added to support adding tooltip text to <code>MenuItem</code>. If tooltip with
+    HTML markup is used, <code>RWT.TOOLTIP_MARKUP_ENABLED</code> must be set as data on the item as
+    usual.
+    <ul>
+      <li>org.eclipse.swt.widgets.MenuItem.setToolTipText(String)</li>
+      <li>org.eclipse.swt.widgets.MenuItem.getToolTipText()</li>
+    </ul>
+  </p>
+
+  <h2>Mouse Wheel Scroll Direction</h2>
+
+  <p>
+    With the new <code>count</code> property it is now possible to determine the mouse wheel scroll
+    direction by its sign. It is set for <code>MouseDown</code>, <code>MouseUp</code>,
+    <code>MouseDoubleClick</code>, and <code>MouseWheel</code> client scripting events.
+  </p>
+
+</div>
diff --git a/noteworthy/3.22/_news-M2.html b/noteworthy/3.22/_news-M2.html
new file mode 100644
index 0000000..d58db9e
--- /dev/null
+++ b/noteworthy/3.22/_news-M2.html
@@ -0,0 +1,2 @@
+<div>
+</div>
diff --git a/noteworthy/3.22/_news-M3.html b/noteworthy/3.22/_news-M3.html
new file mode 100644
index 0000000..d58db9e
--- /dev/null
+++ b/noteworthy/3.22/_news-M3.html
@@ -0,0 +1,2 @@
+<div>
+</div>
diff --git a/noteworthy/3.22/_news-R.html b/noteworthy/3.22/_news-R.html
new file mode 100644
index 0000000..d58db9e
--- /dev/null
+++ b/noteworthy/3.22/_news-R.html
@@ -0,0 +1,2 @@
+<div>
+</div>
diff --git a/noteworthy/3.22/_news-RC1.html b/noteworthy/3.22/_news-RC1.html
new file mode 100644
index 0000000..d58db9e
--- /dev/null
+++ b/noteworthy/3.22/_news-RC1.html
@@ -0,0 +1,2 @@
+<div>
+</div>
diff --git a/noteworthy/3.22/_news-RC2.html b/noteworthy/3.22/_news-RC2.html
new file mode 100644
index 0000000..d58db9e
--- /dev/null
+++ b/noteworthy/3.22/_news-RC2.html
@@ -0,0 +1,2 @@
+<div>
+</div>
diff --git a/noteworthy/3.22/index.php b/noteworthy/3.22/index.php
new file mode 100644
index 0000000..d7bb169
--- /dev/null
+++ b/noteworthy/3.22/index.php
@@ -0,0 +1,65 @@
+<?php
+
+  include( $_SERVER['DOCUMENT_ROOT'] . "/rap/_projectCommon.php" );
+  require_once( $_SERVER['DOCUMENT_ROOT'] . "/rap/_Builds.php" );
+
+  $buildName = isset( $_GET[ 'build' ] ) ? $_GET[ 'build' ] : "R";
+
+  $builds = new Builds( "3.21" );
+
+  $build = $builds->findBuild( $buildName );
+  if( !$build ) {
+    header( "HTTP/1.1 404 Not Found" );
+    exit( "Unknown build id" );
+  }
+
+  $PAGE_TITLE = "RAP " . $build->getName() . " - New and Noteworthy";
+  $PAGE_NAV_POSITION = array( "documentation", "noteworthy" );
+
+  printHeader();
+
+?>
+
+<div id="midcolumn">
+
+  <h1><?= $PAGE_TITLE ?></h1>
+
+  <p>
+    Here's a list of the most noteworthy things in the RAP
+    <?= $build->getName() ?> <?= strtolower( $build->getType() ) ?>
+<? if( $build->isCompleted() ) { ?>
+      which is available for <a href="http://www.eclipse.org/rap/downloads/">download</a>
+      since <?php echo formatDate( $build->getPublishDate() ) ?>.
+<? } else { ?>
+      which will be available for <a href="http://www.eclipse.org/rap/downloads/">download</a>
+      on <?php echo formatDate( $build->getPublishDate() ) ?>.
+      In the meantime, all changes described here are available in the most recent
+      <a href="http://www.eclipse.org/rap/downloads/">nightly build</a>.
+<? } ?>
+  </p>
+
+<? include( "_news-${buildName}.html" ); ?>
+
+  <h2>Issues fixed</h2>
+
+  <ul>
+    <li>
+      List of all <a href="<?= $builds->getGithubIssuesUrl( "runtime" ) ?>">issues fixed in
+      RAP Runtime <?= $builds->getVersion() ?></a>.
+    </li>
+    <li>
+      List of all <a href="<?= $builds->getGithubIssuesUrl( "tools" ) ?>">issues fixed in
+      RAP Tools <?= $builds->getVersion() ?></a>.
+    </li>
+  </ul>
+
+</div>
+
+<div id="rightcolumn">
+  <? includeSidebar( "migrationguide.php" ) ?>
+  <? includeSidebar( "releases.php" ) ?>
+</div>
+
+<?
+  printFooter();
+?>