Commit ff4cc28b by Thomas Fitzsimmons Committed by Thomas Fitzsimmons

GtkTextAreaPeer.java (gtkTextGetSize): Remove unused parameters.

2003-10-07  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkTextAreaPeer.java (gtkTextGetSize):
	Remove unused parameters.
	* gnu/java/awt/peer/gtk/GtkTextFieldPeer.java (gtkEntryGetSize):
	Likewise.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(keyevent_state_to_awt_mods): Export function.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c
	(getCaretPosition): Fix TextArea case.
	(textcomponent_commit_cb): Get exact event time and modifier
	state.
	* jni/gtk-peer/gtkpeer.h: Declare keyevent_state_to_awt_mods.

From-SVN: r72202
parent 5c8d9040
2003-10-07 Thomas Fitzsimmons <fitzsim@redhat.com>
* gnu/java/awt/peer/gtk/GtkTextAreaPeer.java (gtkTextGetSize):
Remove unused parameters.
* gnu/java/awt/peer/gtk/GtkTextFieldPeer.java (gtkEntryGetSize):
Likewise.
* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
(keyevent_state_to_awt_mods): Export function.
* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c
(getCaretPosition): Fix TextArea case.
(textcomponent_commit_cb): Get exact event time and modifier
state.
* jni/gtk-peer/gtkpeer.h: Declare keyevent_state_to_awt_mods.
2003-10-02 Guilhem Lavaux <guilhem@kaffe.org> 2003-10-02 Guilhem Lavaux <guilhem@kaffe.org>
* java/net/InetSocketAddress.java * java/net/InetSocketAddress.java
......
...@@ -55,8 +55,7 @@ public class GtkTextAreaPeer extends GtkTextComponentPeer ...@@ -55,8 +55,7 @@ public class GtkTextAreaPeer extends GtkTextComponentPeer
create (((TextArea)awtComponent).getScrollbarVisibility ()); create (((TextArea)awtComponent).getScrollbarVisibility ());
} }
// native void create (Object parent, String text, int scroll); native void gtkTextGetSize (int dims[]);
native void gtkTextGetSize (int rows, int cols, int dims[]);
public GtkTextAreaPeer (TextArea ta) public GtkTextAreaPeer (TextArea ta)
{ {
...@@ -70,7 +69,7 @@ public class GtkTextAreaPeer extends GtkTextComponentPeer ...@@ -70,7 +69,7 @@ public class GtkTextAreaPeer extends GtkTextComponentPeer
{ {
int dims[] = new int[2]; int dims[] = new int[2];
gtkTextGetSize (rows, cols, dims); gtkTextGetSize (dims);
return (new Dimension (dims[0], dims[1])); return (new Dimension (dims[0], dims[1]));
} }
...@@ -79,7 +78,7 @@ public class GtkTextAreaPeer extends GtkTextComponentPeer ...@@ -79,7 +78,7 @@ public class GtkTextAreaPeer extends GtkTextComponentPeer
{ {
int dims[] = new int[2]; int dims[] = new int[2];
gtkTextGetSize (rows, cols, dims); gtkTextGetSize (dims);
return (new Dimension (dims[0], dims[1])); return (new Dimension (dims[0], dims[1]));
} }
......
...@@ -53,7 +53,7 @@ public class GtkTextFieldPeer extends GtkTextComponentPeer ...@@ -53,7 +53,7 @@ public class GtkTextFieldPeer extends GtkTextComponentPeer
native void create (); native void create ();
native void gtkEntryGetSize (int cols, int dims[]); native void gtkEntryGetSize (int dims[]);
native void gtkSetFont(String xlfd, int size); native void gtkSetFont(String xlfd, int size);
...@@ -69,7 +69,7 @@ public class GtkTextFieldPeer extends GtkTextComponentPeer ...@@ -69,7 +69,7 @@ public class GtkTextFieldPeer extends GtkTextComponentPeer
{ {
int dims[] = new int[2]; int dims[] = new int[2];
gtkEntryGetSize (cols, dims); gtkEntryGetSize (dims);
return (new Dimension (dims[0], dims[1])); return (new Dimension (dims[0], dims[1]));
} }
...@@ -78,7 +78,7 @@ public class GtkTextFieldPeer extends GtkTextComponentPeer ...@@ -78,7 +78,7 @@ public class GtkTextFieldPeer extends GtkTextComponentPeer
{ {
int dims[] = new int[2]; int dims[] = new int[2];
gtkEntryGetSize (cols, dims); gtkEntryGetSize (dims);
return (new Dimension (dims[0], dims[1])); return (new Dimension (dims[0], dims[1]));
} }
......
...@@ -91,7 +91,7 @@ state_to_awt_mods (guint state) ...@@ -91,7 +91,7 @@ state_to_awt_mods (guint state)
key press event with modifiers=Shift, and a key release event with key press event with modifiers=Shift, and a key release event with
no modifiers. GDK's key events behave in the exact opposite way, no modifiers. GDK's key events behave in the exact opposite way,
so this translation code is needed. */ so this translation code is needed. */
static jint jint
keyevent_state_to_awt_mods (GdkEvent *event) keyevent_state_to_awt_mods (GdkEvent *event)
{ {
jint result = 0; jint result = 0;
......
...@@ -54,13 +54,11 @@ Java_gnu_java_awt_peer_gtk_GtkTextAreaPeer_create ...@@ -54,13 +54,11 @@ Java_gnu_java_awt_peer_gtk_GtkTextAreaPeer_create
sw = gtk_scrolled_window_new (NULL, NULL); sw = gtk_scrolled_window_new (NULL, NULL);
gtk_container_add (GTK_CONTAINER (sw), text); gtk_container_add (GTK_CONTAINER (sw), text);
gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw), gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw),
/* horizontal scrollbar */ /* horizontal scrollbar */
(scroll == AWT_TEXTAREA_SCROLLBARS_BOTH (scroll == AWT_TEXTAREA_SCROLLBARS_BOTH
|| scroll == AWT_TEXTAREA_SCROLLBARS_HORIZONTAL_ONLY) ? || scroll == AWT_TEXTAREA_SCROLLBARS_HORIZONTAL_ONLY) ?
GTK_POLICY_ALWAYS : GTK_POLICY_NEVER, GTK_POLICY_ALWAYS : GTK_POLICY_NEVER,
/* vertical scrollbar */ /* vertical scrollbar */
(scroll == AWT_TEXTAREA_SCROLLBARS_BOTH (scroll == AWT_TEXTAREA_SCROLLBARS_BOTH
|| scroll == AWT_TEXTAREA_SCROLLBARS_VERTICAL_ONLY) ? || scroll == AWT_TEXTAREA_SCROLLBARS_VERTICAL_ONLY) ?
...@@ -73,12 +71,11 @@ Java_gnu_java_awt_peer_gtk_GtkTextAreaPeer_create ...@@ -73,12 +71,11 @@ Java_gnu_java_awt_peer_gtk_GtkTextAreaPeer_create
JNIEXPORT void JNICALL JNIEXPORT void JNICALL
Java_gnu_java_awt_peer_gtk_GtkTextAreaPeer_gtkTextGetSize Java_gnu_java_awt_peer_gtk_GtkTextAreaPeer_gtkTextGetSize
(JNIEnv *env, jobject obj, jint rows, jint cols, jintArray jdims) (JNIEnv *env, jobject obj, jintArray jdims)
{ {
void *ptr; void *ptr;
jint *dims; jint *dims;
GtkWidget *text; GtkWidget *text;
/* GtkScrolledWindow *sw; */
GtkRequisition requisition; GtkRequisition requisition;
ptr = NSA_GET_PTR (env, obj); ptr = NSA_GET_PTR (env, obj);
...@@ -89,7 +86,6 @@ Java_gnu_java_awt_peer_gtk_GtkTextAreaPeer_gtkTextGetSize ...@@ -89,7 +86,6 @@ Java_gnu_java_awt_peer_gtk_GtkTextAreaPeer_gtkTextGetSize
gdk_threads_enter (); gdk_threads_enter ();
text = GTK_WIDGET (TEXT_FROM_SW (ptr)); text = GTK_WIDGET (TEXT_FROM_SW (ptr));
/* sw = GTK_SCROLLED_WINDOW (ptr); */
gtk_widget_size_request(GTK_WIDGET (text), &requisition); gtk_widget_size_request(GTK_WIDGET (text), &requisition);
dims[0] = requisition.width; dims[0] = requisition.width;
......
...@@ -37,6 +37,7 @@ exception statement from your version. */ ...@@ -37,6 +37,7 @@ exception statement from your version. */
#include "gtkpeer.h" #include "gtkpeer.h"
#include "gnu_java_awt_peer_gtk_GtkComponentPeer.h"
#include "gnu_java_awt_peer_gtk_GtkTextComponentPeer.h" #include "gnu_java_awt_peer_gtk_GtkTextComponentPeer.h"
static void textcomponent_commit_cb (GtkIMContext *context, static void textcomponent_commit_cb (GtkIMContext *context,
...@@ -149,7 +150,6 @@ Java_gnu_java_awt_peer_gtk_GtkTextComponentPeer_setCaretPosition ...@@ -149,7 +150,6 @@ Java_gnu_java_awt_peer_gtk_GtkTextComponentPeer_setCaretPosition
GtkEditable *editable; // type of GtkEntry (TextField) GtkEditable *editable; // type of GtkEntry (TextField)
GtkWidget *text = NULL; // type of GtkTextView (TextArea) GtkWidget *text = NULL; // type of GtkTextView (TextArea)
GtkTextBuffer *buf; GtkTextBuffer *buf;
GtkTextMark *mark;
GtkTextIter iter; GtkTextIter iter;
ptr = NSA_GET_PTR (env, obj); ptr = NSA_GET_PTR (env, obj);
...@@ -174,9 +174,8 @@ Java_gnu_java_awt_peer_gtk_GtkTextComponentPeer_setCaretPosition ...@@ -174,9 +174,8 @@ Java_gnu_java_awt_peer_gtk_GtkTextComponentPeer_setCaretPosition
if (text) if (text)
{ {
buf = gtk_text_view_get_buffer (GTK_TEXT_VIEW (text)); buf = gtk_text_view_get_buffer (GTK_TEXT_VIEW (text));
mark = gtk_text_buffer_get_insert (buf); gtk_text_buffer_get_iter_at_offset (buf, &iter, pos);
gtk_text_buffer_get_iter_at_mark (buf, &iter, mark); gtk_text_buffer_place_cursor (buf, &iter);
gtk_text_iter_set_offset (&iter, pos);
} }
} }
...@@ -417,7 +416,6 @@ Java_gnu_java_awt_peer_gtk_GtkTextComponentPeer_setText ...@@ -417,7 +416,6 @@ Java_gnu_java_awt_peer_gtk_GtkTextComponentPeer_setText
const char *str; const char *str;
GtkWidget *text = NULL; // type of GtkTextView (TextArea) GtkWidget *text = NULL; // type of GtkTextView (TextArea)
GtkTextBuffer *buf; GtkTextBuffer *buf;
jobject *obj_ptr;
ptr = NSA_GET_PTR (env, obj); ptr = NSA_GET_PTR (env, obj);
str = (*env)->GetStringUTFChars (env, contents, NULL); str = (*env)->GetStringUTFChars (env, contents, NULL);
...@@ -458,27 +456,24 @@ textcomponent_commit_cb (GtkIMContext *context, ...@@ -458,27 +456,24 @@ textcomponent_commit_cb (GtkIMContext *context,
{ {
/* str is a \0-terminated UTF-8 encoded character. */ /* str is a \0-terminated UTF-8 encoded character. */
gunichar2 *jc = g_utf8_to_utf16 (str, -1, NULL, NULL, NULL); gunichar2 *jc = g_utf8_to_utf16 (str, -1, NULL, NULL, NULL);
GdkEvent *event = gtk_get_current_event ();
if (jc) if (jc)
(*gdk_env)->CallVoidMethod (gdk_env, peer, (*gdk_env)->CallVoidMethod (gdk_env, peer,
postKeyEventID, postKeyEventID,
(jint) AWT_KEY_TYPED, (jint) AWT_KEY_TYPED,
/* We don't have access to the event (jlong) event->key.time,
that caused this commit signal to keyevent_state_to_awt_mods (event),
be fired. So approximate the event
time... */
(jlong) gdk_event_get_time (NULL),
/* ... and assume no modifiers. */
0,
VK_UNDEFINED, VK_UNDEFINED,
(jchar) jc[0], (jchar) jc[0],
AWT_KEY_LOCATION_UNKNOWN); AWT_KEY_LOCATION_UNKNOWN);
g_free (jc); g_free (jc);
gdk_event_free (event);
} }
static void static void
textcomponent_changed_cb (GtkEditable *editable, textcomponent_changed_cb (GtkEditable *editable,
jobject peer) jobject peer)
{ {
(*gdk_env)->CallVoidMethod (gdk_env, peer, postTextEventID); (*gdk_env)->CallVoidMethod (gdk_env, peer, postTextEventID);
} }
...@@ -54,7 +54,7 @@ Java_gnu_java_awt_peer_gtk_GtkTextFieldPeer_create ...@@ -54,7 +54,7 @@ Java_gnu_java_awt_peer_gtk_GtkTextFieldPeer_create
JNIEXPORT void JNICALL JNIEXPORT void JNICALL
Java_gnu_java_awt_peer_gtk_GtkTextFieldPeer_gtkEntryGetSize Java_gnu_java_awt_peer_gtk_GtkTextFieldPeer_gtkEntryGetSize
(JNIEnv *env, jobject obj, jint cols, jintArray jdims) (JNIEnv *env, jobject obj, jintArray jdims)
{ {
void *ptr; void *ptr;
jint *dims; jint *dims;
......
...@@ -380,6 +380,8 @@ GtkLayout *find_gtk_layout (GtkWidget *parent); ...@@ -380,6 +380,8 @@ GtkLayout *find_gtk_layout (GtkWidget *parent);
void setup_window (JNIEnv *env, jobject obj, GtkWidget *window, jint width, void setup_window (JNIEnv *env, jobject obj, GtkWidget *window, jint width,
jint height, jboolean visible); jint height, jboolean visible);
jint keyevent_state_to_awt_mods (GdkEvent *event);
struct item_event_hook_info struct item_event_hook_info
{ {
jobject peer_obj; jobject peer_obj;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment