<!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 2018, 2022. This page is made available under license. For full details see the LEGAL in the documentation book 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="news.css" type="text/css"/>
<style type="text/css">
body {max-width: 900px;}
table.news col.title {width: 30%;}
/*img {max-width: 520px;}*/
table.news {table-layout: fixed; border-collapse: collapse; width: 100%;}
table.news td {border-top: solid thin black; padding: 10px; overflow: visible;}
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; font-weight: bold;}
table.news tr td.content {vertical-align: top;}
ul {padding-left: 13px;}
</style>
<title>Eclipse Project 4.24 - New and Noteworthy</title>
</head>

<body>
<h2>Platform and Equinox API</h2>
  <ul>
    <li><a href="#Platform">Platform Changes</a></li>
    <li><a href="#SWT">SWT Changes</a></li>
  </ul>

<!-- ****************** START OF N&N TABLE****************** -->
<table class="news">
<colgroup>
  <col class="title" />
  <col />
</colgroup>
<tbody>
  <!-- ******************** Platform ********************** -->
  <tr>
    <td id="Platform" class="section" colspan="2"><h2>Platform Changes</h2></td>
  </tr>
  <tr id="ilog-service"> <!-- https://github.com/eclipse-platform/eclipse.platform.runtime/issues/33 -->
	<td class="title"><a href="#ilog-service">ILog can now be acquired as a service</a></td>
	<td class="content">
		The <code>ILog</code> can now be acquired as service, so no need to have a <code>Plugin activator</code> or call <code>Platform.getLog(...)</code> anymore if you are in a Dependency Injection Context:
		<p>
		<b>Example with E4:</b>
		</p>
		<pre>@Inject ILog log;</pre>
		<p>
		<b>Example with Declarative Services:</b><br/>
      	</p>
		<pre>@Reference ILog log;</pre>
      	<p>
      	Of course any other way to acquire a Service (<code>ServiceTracker</code>, <code>ServiceCaller</code>, ...) will also work.
      	</p>
	</td>
  </tr>
  <tr id="EclipseContextFactory"> <!-- https://github.com/eclipse-platform/eclipse.platform.runtime/issues/43 -->
	<td class="title"><a href="#EclipseContextFactory">New EclipseContextFactory<br/>.getServiceContext(Class&lt;?&gt;) method</a></td>
	<td class="content">
		<p>
		There is now a new <code>EclipseContextFactory.getServiceContext(Class&lt;?&gt;)</code> method that could be used to acquire an E4 Service Context containing all OSGi services using a context class.
		This becomes handy in situations where you neither have an E4 context nor an OSGi context at hand (e.g. E3 legacy code) but still want to inject some fields or create injected objects.
		</p>
	</td>
  </tr>
  <!-- ******************** End of Platform ********************** -->

  <!-- *********************** SWT *********************** -->
  <tr>
    <td id="SWT" class="section" colspan="2"><h2>SWT Changes</h2></td>
  </tr>
  <tr id="win32-dark-Text-search-cancel-buttons"> <!-- https://github.com/eclipse-platform/eclipse.platform.swt/issues/18 -->
	<td class="title"><a href="#win32-dark-Text-search-cancel-buttons">Improved Text's search/cancel buttons in Windows dark theme</a></td>
	<td class="content">
		The Windows <code>Text</code> widget now supports improved search and cancel buttons in the dark theme:
		<p>
		<img src="images/windows-dark-theme-text-search-cancel-buttons.png" alt=""/>
		</p>
		<p>
        On <b>Windows 10</b>, all the dark theme tweaks including the <a href="#win32-dark-Text-search-cancel-buttons">dark text's search and cancel buttons</a> can be disabled using the 
        <code>org.eclipse.swt.internal.win32.disableCustomThemeTweaks</code> Java property.<br/>
        For Example: add this VM argument in eclipse.ini or on the command line after <b><code>-vmargs</code></b>:
      </p>
      <pre><b>-Dorg.eclipse.swt.internal.win32.disableCustomThemeTweaks=true</b></pre>
	</td>
  </tr>
  <!-- *********************** End of SWT *********************** -->
  <tr><td colspan="2"/></tr>
</tbody>
</table>
<!-- ****************** END OF N&N TABLE ****************** -->

<script type="text/javascript" src="scripts.js"></script>
  <p style="text-align:center">
    <a href="jdt.php">Previous</a> <a style="margin:1em" href=".">Up</a> <a href="pde.php">Next</a>
  </p>
</body>
</html>
