UEXTabReuse

Revision as of 13:39, 23 February 2012 by Jglick (Talk | contribs)

Date: 20 FEB 2012 Author: Petr Somol, Ralph Ruijs

Contents

Motivation

Open in New Tab option allowing to choose between reusing whole window area and auto-creation of tabs
With Open in New Tab checked, a new tab is created inside host window to accomodate new output
With Open in New Tab unchecked, each new output replaces the previous one (alternatively appends to the previous if applicable) to fill completely the host window area

An inconsistency has been identified in internal tab creation behavior inside windows that by default reside under the main editor area (Search Results, Usages, Output...). Bugzilla issue 208638 points out that Find Usages reuses the Usages window by default, although before 7.1 it produced new tab under the Usages window for each find. Other similar windows, however, follow a different convention. To summarize (please add other cases not listed):

Search Results

Each search creates new tab. There is no way to request tab reuse.

Usages

Each Find Usages call by default reuses the whole area of the Usages window. Tab creation can be requested by a checkbox Open in New Tab in Find Usages dialog. The checkbox state is persistent across sessions. The default value is unchecked.

Output

Complicated. Each IDE feature which writes to the Output Window has its own logic for handling reuse (if any); there is no system for reusing tabs across features.

Ant Builds

By default, reuses its area whenever possible (repeated builds, repeated runs, runs + tests). Creates tabs when necessary for parallel builds. But user may uncheck "Reuse Output Tabs from Finished Processes" in Ant settings.

Maven Builds

Like Ant's default behavior, reuses tabs from finished builds.

XML Validation

Reuses.

VCS

Reuses tabs per checkout (VCS root).

Others

Database and Java EE servers, ...?

Refactor - Inspect and Transform...

First call uses the whole Refactor window area, subsequent calls open tabs. Reuse can not be requested. Note that it multiple Inspect and Transform.. sessions open at once may be actually incorrect - please review.

Problem

It is clear that consistency can and should be improved with respect to tab creation inside these windows. However, it is also clear that this must be done with caution as the variety of windows is such that "one solution may not fit all".

Proposed Solution

Promote more widely the option to choose between auto-tab creation and window area reuse. This can be meaningfully accomplished in windows:

  • Search Results
add to dialog Find in Projects the checkbox Open in New Tab. Changing the checkbox state would change the behavior persistently.
  • Usages
remain as it is now in 7.1, (default state to be decided)
  • other windows... (please review all that may apply)
whenever possible, add the Open in New Tab option as suggested for Find in Projects. Changing the checkbox state would change the behavior persistently.

Pros:

- option to save vertical space, valuable with the current proliferance of wide-screen LCDs

- option to keep working with the keyboard, user needs to use a mouse to close tabs

- consistency

Cons:

- users not aware of Open in New Tab control may get confused, because tab creation is generally expected

Remark 1: with respect to possible user confusion it should be considered whether to set Open in New Tab in all relevant cases to true. This would result in default behavior being the same as before.

Remark 2: If the user disables Open in New Tab while already having tabs opened, then the output is redirected to reuse the last focused tab.

Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo