Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnto Leherbauer2015-02-24 10:16:17 +0000
committerUwe Stieber2015-02-24 10:16:57 +0000
commit12e7d2c95e78f9c99333278f508ed0928ab64383 (patch)
treebdfc5719f52f226c66bbe9c84bb148c60b434a0a
parent674948bf02f282b1dd20fcac29f712b792295a1d (diff)
downloadorg.eclipse.tcf-12e7d2c95e78f9c99333278f508ed0928ab64383.tar.gz
org.eclipse.tcf-12e7d2c95e78f9c99333278f508ed0928ab64383.tar.xz
org.eclipse.tcf-12e7d2c95e78f9c99333278f508ed0928ab64383.zip
Terminals: Bug 443048 - Can't use Middle click to close shell Tabs
inside Terminal View
-rw-r--r--terminals/plugins/org.eclipse.tcf.te.ui.terminals/src/org/eclipse/tcf/te/ui/terminals/view/TerminalsView.java17
1 files changed, 16 insertions, 1 deletions
diff --git a/terminals/plugins/org.eclipse.tcf.te.ui.terminals/src/org/eclipse/tcf/te/ui/terminals/view/TerminalsView.java b/terminals/plugins/org.eclipse.tcf.te.ui.terminals/src/org/eclipse/tcf/te/ui/terminals/view/TerminalsView.java
index a303c9557..cc4bbf576 100644
--- a/terminals/plugins/org.eclipse.tcf.te.ui.terminals/src/org/eclipse/tcf/te/ui/terminals/view/TerminalsView.java
+++ b/terminals/plugins/org.eclipse.tcf.te.ui.terminals/src/org/eclipse/tcf/te/ui/terminals/view/TerminalsView.java
@@ -39,7 +39,10 @@ import org.eclipse.swt.dnd.DropTargetListener;
import org.eclipse.swt.dnd.Transfer;
import org.eclipse.swt.dnd.TransferData;
import org.eclipse.swt.events.DisposeListener;
+import org.eclipse.swt.events.MouseAdapter;
+import org.eclipse.swt.events.MouseEvent;
import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.graphics.Point;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
@@ -476,7 +479,7 @@ public class TerminalsView extends ViewPart implements ITerminalsView, IShowInTa
*
* @param tabFolder The tab folder control. Must not be <code>null</code>.
*/
- protected void doConfigureTabFolderControl(CTabFolder tabFolder) {
+ protected void doConfigureTabFolderControl(final CTabFolder tabFolder) {
Assert.isNotNull(tabFolder);
// Set the layout data
@@ -494,6 +497,18 @@ public class TerminalsView extends ViewPart implements ITerminalsView, IShowInTa
// Set the tab style from the global preferences
tabFolder.setSimple(PlatformUI.getPreferenceStore().getBoolean(IWorkbenchPreferenceConstants.SHOW_TRADITIONAL_STYLE_TABS));
+
+ // Attach the mouse listener
+ tabFolder.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mouseDown(MouseEvent e) {
+ if (e.button == 2) {
+ // middle mouse button click - close tab
+ CTabItem item = tabFolder.getItem(new Point(e.x, e.y));
+ if (item != null) item.dispose();
+ }
+ }
+ });
}
/**

Back to the top