## What's New in 4.1

Here are descriptions of some of the more interesting or significant changes made to the Eclipse Platform for the 4.1 release of Eclipse. They are grouped into:

- Platform Changes
- Install/Update Changes
- Editor Changes
- Team/CVS Changes
- Debug Changes

Plug-in developers will also be interested in the corresponding What's new document in the plug-in developer's guide.

## Platform Changes

Detached editors | Editors can now be detached into their own windows. The detached editor will not be treated any differently from an editor contained within the workbench window. This resolves bug 8886, one of the platform's oldest and most voted for enhancements.
Stack dragging | You can now drag a complete stack as well as dragging individual parts. This works the same as the gesture for dragging a part except that you start the drag using the empty space in the tab area.

Editor area

A specialized container has been introduced to allow the UI to properly represent the editor area. This affordance lets the user know that this area behaves differently - for example the entire area can be maximized, and all views and editors within the area will be affected.

You will not see any 'area' indication if there is only a single stack there. If there is more than one stack in the shared area, you see the area's boundary, with a 'fly out' hover area that will show the minimize/maximize buttons.

Multi-drag sash

A new sash mechanism has been introduced that works directly with the workbench model. This cuts down on the number of platform widgets needed to manage a complete sash-based layout, and has a much simpler implementation.

As an added bonus you can now place the cursor at the intersection of two or more sashes and drag them all at the same time. When you are going to be dragging multiple sashes, the cursor will change to one with 4-way arrows.

Translation support in workbench model | The workbench model now supports native language support similar to what is available for extensions in `plugin.xml`. In contrast to Eclipse 3.x, the translations are done on demand and not on startup of the application. This opens up the possibility of changing translations on the fly while the application is running.
Style polish | You will see some polish on the various CSS themes based on recent feedback. The most notable change is that we now draw an outline around the selected tab in non-active stacks. We have also been tightening up some of the over-use of whitespace throughout the workbench presentation.

Lightweight refresh on access

Previous Eclipse versions relied on native refresh providers (on Windows) or a polling mechanism to keep the workspace synchronized with the underlying filesystem. This capability can be still enabled by selecting Refresh using native hooks or polling on Preferences > General > Workspace.

Now a new lightweight mechanism is available. Files discovered to be out-of-sync by the workspace, for example while accessing the file content by an editor, will be automatically asynchronously refreshed. If you want to refresh files this way, go to Preferences > General > Workspace and select Refresh on access.

The Problems view icon shows state | The Problems view icon now indicates whether the view contains warnings or errors. This is especially useful when working with maximized editor area as it allows you to see whether there are errors or warnings without going to the Problems view: When the view is a fast view, the tool tip gives the details about the number of errors and warnings.
Back & Forward mouse buttons | The Back and Forward mouse buttons now move backward and forward in the editor navigation history.
Job image overlay in task item | When the progress of long running operations is shown in the operating system task tray, the image associated with the operation is now also shown with the progress.
Mac standard menu items in Window menu | The Window menu now sports the standard Mac menu items ("Minimize", "Zoom" and "Bring All to Front") on Cocoa.
Document Proxy icons in Cocoa | On Cocoa, Eclipse now supports the Document Proxy icons in the title bar of the window. You can drag it to other applications or Command+click to get the folder hierarchy.
HPUX for GTK | A new GTK port for HPUX (32 bit) has joined the lineup of supported configurations for which SWT and Eclipse are routinely built.
GTK on AIX 32/64 | Two new ports for AIX using GTK (one for 32 bit and another one for 64 bit architectures) have joined the lineup of supported configurations for which SWT and Eclipse are routinely built.

Store the encoding of derived resources separately

You can now store encodings of derived resources in a separate preferences file. Usually the encodings for all files in each project are stored in one preferences file. If you are using a version control system and the preferences file is shared, the encodings for all resources are shared along with it. This new option allows you to avoid sharing encoding information for derived files, which are not typically shared in a version control system.

If you want to store encoding settings of derived resources separately, go to Project > Properties > Resource and select the Store the encoding of derived resources separately option.

## Install/Update Changes

Install software from file

Sharing or persisting the set of plugins constituting your eclipse installation is now made easy by the addition of new import / export functionality. The export functionality, available from File > Export > Install > Installed Software Items to File , will create a description file of your installation. This description file can then be used to recreate the installation by using File > Import > Install > Install Software Items from File.

Install software from another product | You can now easily install software directly from another product. Select File > Import > Install > From Existing Installation , then select the location of any locally installed Eclipse-based product. You can then select what software items from that product you want to install in the current application.
Filtered install history | Install states resulting from non user-initiated install operations are now filtered out of the Installation History list. For example, adding bundles in the `dropins` folder will no longer add extra entries to the install history. Previously, these entries were shown, but could not be reverted and the details of what changed were not shown.

## Editor Changes

'Open With' context menu for textual editors | Textual editors now have an Open With context menu which allows you to open a different editor on the same input:
'Shift' reverses search in Find/Replace dialog | Pressing the Shift key while invoking a search in the Find/Replace dialog will temporarily reverse the current direction setting. For example, if the current direction setting is 'Forward', then Shift+Enter will do the search in 'Backward' direction.
New options for whitespace rendering in textual editors | The Show Whitespace Characters feature for textual editors now provides additional options: These options can be configured by clicking the 'whitespace characters' link on the General > Editors > Text Editors preference page.

New 'Open Hyperlink' command

The new Open Hyperlink command opens one or more hyperlinks at the current caret location. The command has been added to the Navigate menu for the Java and properties file editors and can also be used in other text editors by assigning a key binding on the General > Keys preference page.

The command opens the hyperlink directly if there's only one link available. Otherwise, it shows a chooser with all the available hyperlinks at that location. The links are the same as when you move the mouse with Ctrl pressed.

## Team/CVS Changes

Branch column in History view | There is now a column showing branches in the History view when using CVS.
Compare editor shows author on left side | The compare editors now also show the author on the left side: Note that the authors are only shown if Show the file author in compare editors is enabled on the Team preference page.

Default ssh home directory on Windows

The default ssh home directory on Windows platform has been changed from ssh to .ssh. This way your keys and known hosts will be shared between Eclipse and other applications by default. If you were using ssh directory before, there is no need to change your home directory manually. Eclipse will recognize it and set ssh as the home directory for you.

To check your current ssh home directory see Preferences > General > Network Connections > SSH2.

Disable capping when comparing large documents | You can now disable the capping mechanism to speed up finding differences in large documents. In cases where the capping occurs, the result can either be correct or it can display too many changes, but it never misses any change. Please remember that with this option enabled, the calculation may take more time.

## Debug Changes

Undo support for breakpoints | If you accidentally removed a breakpoint from the editor's vertical ruler or the Breakpoints view, you can now get it back using the standard undo functionality - Edit > Undo Delete Breakpoint (Ctrl+Z) - in the Breakpoints view or any other view that works against the global undo history.
Edit with keyboard in Expressions view | When adding or editing watch expressions in the Expressions view, you now have the option of activating the table cell for editing using the F2 key. This shortcut works for existing expressions and for the Add new expression entry.