<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="copyright"
  content="Copyright (c) Eclipse contributors and others 2014. This page is made available under license. For full details, see the LEGAL section in the documentation that contains this page." />
<meta http-equiv="Content-Language" content="en-us" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" href="default_style.css" charset="ISO-8859-1" type="text/css" />
<style type="text/css">
table.news td {
  border-top: solid thin black;
}

table.news tr {
  vertical-align: top;
}

table.news tr td.section {
  font-size: 20px;
  font-weight: bold;
}

table.news tr td.title {
  vertical-align: top;
  width: 30%;
  font-weight: bold;
}

table.news tr td.content {
  vertical-align: top;
  width: 70%;
}
</style>
<title>Eclipse Project Luna - New and Noteworthy</title>
</head>

<body>

  <h2>Platform and Equinox</h2>

  <!-- ****************** START OF N&N TABLE ****************** -->
  <table class="news" cellpadding="10" cellspacing="0">
    <tbody>
      <tr id="split-editors">
        <td class="title">Split editors</td>
        <td class="content">Do you ever find yourself working in a large file and need to view or edit multiple sections at once? <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=8009">Finally</a>,
          Eclipse supports split editors! You can now split / unsplit the currently active editor. Just use one of the new key bindings supplied in Luna:
          <ul>
            <li><b>Ctrl+_</b> splits the editor one above the other</li>
            <li><b>Ctrl+{</b> splits the editor side by side</li>
            <li>Re-applying the command to an already split editor reverts it to only have one pane.</li>
          </ul>
          <p>
            <img src="images/split_editors.png" alt="" />
          </p>
          <p>
            Try it out on <i>your</i> favorite editor!
          </p>
        </td>
      </tr>

      <tr id="darktheme">
        <td class="title">Dark theme</td>
        <td class="content">A new dark window theme has been introduced. This popular community theme demonstrates the power of the underlying Eclipse 4 styling engine. You can enable it from the
          <b>General &gt; Appearance</b> preference page. Plug-ins can contribute extensions to this theme to style their own specific views and editors to match the window theme.
          <p>
            <img src="images/darktheme.png" alt="" />
          </p>
        </td>
      </tr>

      <tr id="quick-access">
        <td class="title">Quick access as a popup</td>
        <td class="content">If you find the <b>Quick Access</b> field in the toolbar takes up too much space, you can now hide it. From the context menu in the toolbar, select <b>Hide</b>.
          <p>
            <img src="images/quick-access-hide.png" alt="Hiding quick access" />
          </p>
          <p>
            Once hidden, pressing <b>Ctrl+3</b> will instead show a popup dialog.
          </p>
          <p>
            <img src="images/quick-access-dialog.png" alt="Quick access dialog" />
          </p>
        </td>
      </tr>


      <tr id="minimized-stack-option">
        <td class="title">New layout for minimized views</td>
        <td class="content">Minimized views now have two different display modes:
          <ul>
            <li>Use Overlays: This is the current mode where showing a minimized view opens it in a 'fly out', overlaying part of the main window.</li>
            <li>Show in the Original Location: This is a new mode that will temporarily put the stack back into the perspective while one of its views is active. This has the advantage that the
              minimized view won't overlay anything in the current presentation (e.g. your editor...).</li>
          </ul>
          <p>
            To access the new mode, right-click on the <b>Restore</b> button of a minimized stack and select the <b>Show in the Original Location</b> menu item (see image below). Note that this change
            is global, so once it's set, all minimized views will use the selected mode.
          </p>
          <p>
            <img src="images/restore-btn.png" alt="" />
          </p>

          <p>Here's what the current mode looks like:</p>
          <p>
            <img src="images/use-overlays.png" alt="" />
          </p>
          <p>Here's what the new mode looks like. Note how the editor has been pushed to the right rather than being obscured:</p>
          <p>
            <img src="images/no-overlays.png" alt="" />
          </p>
          <p>
            We're really interested in your feedback on this! The initial response has been positive enough that we're considering making the non-overlay mode the default. What do you think? (Post
            your comments <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=426556">here</a>).
          </p>
        </td>
      </tr>

      <tr id="reorder-perspectives">
        <td class="title">Perspective re-ordering</td>
        <td class="content">You can now drag and drop the items in the perspective switcher to change the order of your open perspectives.
          <p>
            <img src="images/move-persp-items.png" alt="moveitems" />
          </p>
        </td>
      </tr>

      <tr id="protect-option">
        <td class="title">New protection options for Eclipse</td>
        <td class="content">A new launcher parameter named <b>-protect</b> has been introduced and it accepts the following values:
          <ul>
            <li><b>-protect root</b> can be used to prevent Eclipse from being started as a root user, either directly or via programs that run with administrative privileges like 'sudo'. This
              option is currently implemented only on Linux/UNIX based platforms.</li>
            <li><b>-protect master</b> can be used to prevent starting of the master instance in a shared install configuration. This option can be used on all platforms supported by Eclipse.</li>
          </ul>
          <p>
            The above options can either be set in the launcher's <b>.ini</b> file or can be used directly from the command line (e.g eclipse -protect root).
          </p>
        </td>
      </tr>

      <tr id="signed-executables">
        <td class="title">Signed SDK Executables (for Windows and Mac)</td>
        <td class="content">We now provide signed Windows and Mac executables for the Eclipse SDK. This gets rid of those operating system warnings about running untrusted software, and saves you
          from having to disable "Gatekeeper" or other security measures to run Eclipse.</td>
      </tr>

      <tr id="import-filter-conflicts">
        <td class="title">Filter conflicting projects during import</td>
        <td class="content">When importing existing projects, you can now filter out any conflicting projects (projects that are already present in your workspace).
          <p>
            <img src="images/import-filter-conflicts-before.png" alt="filter conflicting projects" />
          </p>
        </td>
      </tr>

      <tr id="import-as-project">
        <td class="title">Import as Project</td>
        <td class="content">In the <b>Project Explorer</b>, a folder that contains a <code>.project</code> file and whose related project isn't already in the workspace now shows an <b>Import
            as Project</b> context menu entry that imports the folder into the workspace as an existing project.
          <p>
            <img src="images/import-as-project.png" alt="" />
          </p>
        </td>
      </tr>

      <tr id="show-in-system-explorer">
        <td class="title">Show In System Explorer</td>
        <td class="content">If you select a resource and right click, there is now a <b>Show In &gt; System Explorer</b> context menu entry that will open the folder containing that resource in
          your system's file explorer.
          <p>
            <img src="images/shown-in-system-explorer.png" alt="menu popup with Show In System Explorer" />
          </p> The command for launching the system explorer can be configured on the <strong>General &gt; Workspace</strong> preference page.
        </td>
      </tr>

      <tr id="launch-options">
        <td class="title">Updated launch options</td>
        <td class="content">The default preference for the fall-back behavior of context-sensitive launching has been changed to launch the previous application.
          <p>
            <img src="images/launch-options.png" alt="" />
          </p>
          <p>Existing workspaces that use the "Always launch the previously launched application" option are not affected by this change.</p>
        </td>
      </tr>

      <tr id="ant-view-collapse-all">
        <td class="title">Collapse All in Ant view</td>
        <td class="content">The Ant view now supports the <b>Collapse All</b> command:
          <p>
            <img src="images/ant-view.png" alt="The Ant view showing the collapse all action" />
          </p>
        </td>
      </tr>

      <tr id="ide-icons">
        <td class="title">Platform icons converted to png files</td>
        <td class="content">Based on a community contribution, lots of of the existing GIF icons in the Eclipse platform have been replaced by PNG icons. This makes Eclipse icons look better on a
          dark background, as for example the toolbar on Mac OS X or on a dark theme.
          <p>
            <img src="images/iconupdate.png" alt="New platform icons" />
          </p>
        </td>
      </tr>

      <tr id="appmodel-perspective">
        <td class="title">Support for dynamic icon changes</td>
        <td class="content">The workbench now supports dynamically changing icons at runtime. This means that workbench themes (such as the dark theme), can introduce different icons, and these
          changes will take effect without requiring a restart.</td>
      </tr>

      <tr id="os-ubuntu">
        <td class="title">Ubuntu menu integration</td>
        <td class="content">In cooperation with Canonical, the Eclipse Platform team has been working on improving the presentation of Eclipse menus in Ubuntu, which had problems in Ubuntu 13.04
          and 13.10. These problems are now resolved in Ubuntu 14.04, where Eclipse menus now display nicely.</td>
      </tr>

      <tr id="swt-xulrunner24">
        <td class="title">SWT Browser now supports XULRunner 24.x</td>
        <td class="content">An SWT Browser created with style <code>SWT.MOZILLA</code> can now be used with the XULRunner 24.x runtime.
        </td>
      </tr>

      <tr id="set-gtk-version">
        <td class="title">Set the GTK+ version to be used by Eclipse via the launcher</td>
        <td class="content">The launcher parameter <b>--launcher.GTK_version</b> can now be used to choose which version of GTK+ will be used by Eclipse on Linux. The acceptable values are:
          <ul>
            <li><b>2</b> for GTK+ 2.x</li>
            <li><b>3</b> for GTK+ 3.x</li>
          </ul>
          <p>
            Note that setting the GTK+ version via this parameter takes precedence over setting the SWT_GTK3 environment variable. See <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=434619">bug
              434619</a> for more details.
          </p>
        </td>
      </tr>

      <!-- ****************** END OF N&N TABLE ****************** -->
    </tbody>
  </table>

  <p align="center">
    <font color="#808080">Previous</font>&nbsp;&nbsp;&nbsp;&nbsp; <a href="eclipse-news-part2.php">Next</a>
  </p>

</body>
</html>
