Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDani Megert2013-06-20 09:58:10 +0000
committerDani Megert2013-06-20 09:58:10 +0000
commitb556e339655c64cb771af2a70496709aecd0ecff (patch)
treef4c977f98c0ed93d32479a3d08abad1b7dbf770b
parentd74439394698df3f60bc15a5fa81fc59db2367f5 (diff)
downloadeclipse.platform.text-b556e339655c64cb771af2a70496709aecd0ecff.tar.gz
eclipse.platform.text-b556e339655c64cb771af2a70496709aecd0ecff.tar.xz
eclipse.platform.text-b556e339655c64cb771af2a70496709aecd0ecff.zip
Fixed bug 410603: Add workaround for Combo bug on Linux
-rw-r--r--org.eclipse.ui.workbench.texteditor/META-INF/MANIFEST.MF2
-rw-r--r--org.eclipse.ui.workbench.texteditor/pom.xml2
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceDialog.java22
3 files changed, 22 insertions, 4 deletions
diff --git a/org.eclipse.ui.workbench.texteditor/META-INF/MANIFEST.MF b/org.eclipse.ui.workbench.texteditor/META-INF/MANIFEST.MF
index 4ed5cffde33..892e7108e8a 100644
--- a/org.eclipse.ui.workbench.texteditor/META-INF/MANIFEST.MF
+++ b/org.eclipse.ui.workbench.texteditor/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.ui.workbench.texteditor; singleton:=true
-Bundle-Version: 3.8.100.qualifier
+Bundle-Version: 3.8.200.qualifier
Bundle-Activator: org.eclipse.ui.internal.texteditor.TextEditorPlugin
Bundle-ActivationPolicy: lazy
Bundle-Vendor: %providerName
diff --git a/org.eclipse.ui.workbench.texteditor/pom.xml b/org.eclipse.ui.workbench.texteditor/pom.xml
index 0f6ba4ab2c5..a120b724e87 100644
--- a/org.eclipse.ui.workbench.texteditor/pom.xml
+++ b/org.eclipse.ui.workbench.texteditor/pom.xml
@@ -18,6 +18,6 @@
</parent>
<groupId>org.eclipse.ui</groupId>
<artifactId>org.eclipse.ui.workbench.texteditor</artifactId>
- <version>3.8.100-SNAPSHOT</version>
+ <version>3.8.200-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceDialog.java b/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceDialog.java
index 08db6da8d02..18331201bb4 100644
--- a/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceDialog.java
+++ b/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceDialog.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2010 IBM Corporation and others.
+ * Copyright (c) 2000, 2013 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -119,10 +119,23 @@ class FindReplaceDialog extends Dialog {
*/
private class FindModifyListener implements ModifyListener {
+ // XXX: Workaround for Combo bug on Linux (see bug 404202 and bug 410603)
+ private boolean fIgnoreNextEvent;
+ private void ignoreNextEvent() {
+ fIgnoreNextEvent= true;
+ }
+
/*
* @see ModifyListener#modifyText(ModifyEvent)
*/
public void modifyText(ModifyEvent e) {
+
+ // XXX: Workaround for Combo bug on Linux (see bug 404202 and bug 410603)
+ if (fIgnoreNextEvent) {
+ fIgnoreNextEvent= false;
+ return;
+ }
+
if (isIncrementalSearch() && !isRegExSearchAvailableAndChecked()) {
if (fFindField.getText().equals("") && fTarget != null) { //$NON-NLS-1$
// empty selection at base location
@@ -169,7 +182,7 @@ class FindReplaceDialog extends Dialog {
private Shell fActiveShell;
private final ActivationListener fActivationListener= new ActivationListener();
- private final ModifyListener fFindModifyListener= new FindModifyListener();
+ private final FindModifyListener fFindModifyListener= new FindModifyListener();
private Label fReplaceLabel, fStatusLabel;
private Button fForwardRadioButton, fGlobalRadioButton, fSelectedRangeRadioButton;
@@ -1641,6 +1654,11 @@ class FindReplaceDialog extends Dialog {
private void updateFindHistory() {
if (okToUse(fFindField)) {
fFindField.removeModifyListener(fFindModifyListener);
+
+ // XXX: Workaround for Combo bug on Linux (see bug 404202 and bug 410603)
+ if (Util.isLinux())
+ fFindModifyListener.ignoreNextEvent();
+
updateHistory(fFindField, fFindHistory);
fFindField.addModifyListener(fFindModifyListener);
}

Back to the top