diff options
author | Silenio Quarti <silenio> | 2010-03-08 17:28:40 +0000 |
---|---|---|
committer | Silenio Quarti <silenio> | 2010-03-08 17:28:40 +0000 |
commit | aef40797195cb5e2b3bf6818f1b0fa0d190030aa (patch) | |
tree | c8321d64b03e5e28ba63988f24229b6554c310e7 /bundles/org.eclipse.swt/Eclipse SWT Accessibility/gtk/org/eclipse/swt/accessibility/AccessibleObject.java | |
parent | f9528eaf04b9a7bbff7eef46517a4a22f774b385 (diff) | |
download | eclipse.platform.swt-aef40797195cb5e2b3bf6818f1b0fa0d190030aa.tar.gz eclipse.platform.swt-aef40797195cb5e2b3bf6818f1b0fa0d190030aa.tar.xz eclipse.platform.swt-aef40797195cb5e2b3bf6818f1b0fa0d190030aa.zip |
fix getSelection() TODO
Diffstat (limited to 'bundles/org.eclipse.swt/Eclipse SWT Accessibility/gtk/org/eclipse/swt/accessibility/AccessibleObject.java')
-rw-r--r-- | bundles/org.eclipse.swt/Eclipse SWT Accessibility/gtk/org/eclipse/swt/accessibility/AccessibleObject.java | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT Accessibility/gtk/org/eclipse/swt/accessibility/AccessibleObject.java b/bundles/org.eclipse.swt/Eclipse SWT Accessibility/gtk/org/eclipse/swt/accessibility/AccessibleObject.java index e86a03849e..77e15172bd 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT Accessibility/gtk/org/eclipse/swt/accessibility/AccessibleObject.java +++ b/bundles/org.eclipse.swt/Eclipse SWT Accessibility/gtk/org/eclipse/swt/accessibility/AccessibleObject.java @@ -2068,6 +2068,7 @@ class AccessibleObject { AccessibleTextExtendedListener listener = (AccessibleTextExtendedListener) listeners.elementAt(i); listener.getText(event); } + if (parentResult != 0) OS.g_free(parentResult); return getStringPtr (event.result); } if (selection_num == 0) { @@ -2084,7 +2085,11 @@ class AccessibleObject { } OS.memmove (start_offset, new int[] {event.offset}, 4); OS.memmove (end_offset, new int[] {event.offset + event.length}, 4); - //TODO return the selected text, should we free parent result + if (parentResult != 0) OS.g_free(parentResult); + String text = object.getText(); + if (text != null && text.length () > event.offset && text.length() >= event.offset + event.length) { + return getStringPtr (text.substring(event.offset, event.offset + event.length)); + } return 0; } } @@ -2784,7 +2789,7 @@ class AccessibleObject { } return event.result; } - return null; + return parentText; } static int /*long*/ gObjectClass_finalize (int /*long*/ atkObject) { |