Problem with ATOK Japanese Input Method



Hi,

I'm using the Japanese input method called "ATOK" for
inputting text into GtkEntry, and am facing the
following problem: If I have multiple GtkEntry widgets
in my application, and I type something in any field
after enabling the IME (by pressing CTRL + SPACE), and
then I confirm my input (by pressing ENTER), and then
I focus into the next GtkEntry (by pressing TAB). 
What happens is that the ATOK IME bar (which is
displayed at the bottom of the display) suddenly
disappears.  So every time I want to type something in
a GtkEntry, I have restart the IME (by pressing CTRL +
SPACE).

I also noticed a strange behavior, in that once I have
typed something in all the fields, then this problem
doens't happen any longer.  That is, when I type
something in the last GtkEntry (after enabling the
IME), and then press TAB, the focus moves to the first
GtkEntry, and the IME bar remains shown.  In fact it
remains shown now for any subsequent moves across the
GtkEtries.

Could somebody tell me if this is a known problem/bug?
 

The simple GTK program that I'm running for this
testcase is appended below.

Thanks,
Gaurav

----------------------
#include <stdio.h>
#include <stdlib.h>
#include <gtk/gtk.h>
#include <gdk/gdk.h>

int main( int   argc,
          char *argv[] )
{

    GtkWidget *window;
    GtkWidget *vbox, *hbox;
    GtkWidget *entry1;
    GtkWidget *entry2;
    GtkWidget *entry3;
    GtkWidget *entry4;

    gtk_init (&argc, &argv);

    /* create a new window */
    window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
    gtk_widget_set_size_request (GTK_WIDGET (window),
200, 100);
    gtk_window_set_title (GTK_WINDOW (window), "GTK
Entry");
    g_signal_connect (G_OBJECT (window), "destroy",
                      G_CALLBACK (gtk_main_quit),
NULL);
    g_signal_connect_swapped (G_OBJECT (window),
"delete_event",
                              G_CALLBACK
(gtk_widget_destroy),
                              G_OBJECT (window));

    vbox = gtk_vbox_new (FALSE, 0);
    gtk_container_add (GTK_CONTAINER (window), vbox);
    gtk_widget_show (vbox);

    entry1 = gtk_entry_new();
    gtk_box_pack_start (GTK_BOX (vbox), entry1, TRUE,
TRUE, 0);
    gtk_widget_show (entry1);

    entry2 = gtk_entry_new();
    gtk_box_pack_start (GTK_BOX (vbox), entry2, TRUE,
TRUE, 0);
    gtk_widget_show (entry2);

    entry3 = gtk_entry_new();
    gtk_box_pack_start (GTK_BOX (vbox), entry3, TRUE,
TRUE, 0);
    gtk_widget_show (entry3);

    entry4 = gtk_entry_new();
    gtk_box_pack_start (GTK_BOX (vbox), entry4, TRUE,
TRUE, 0);
    gtk_widget_show (entry4);

    hbox = gtk_hbox_new (FALSE, 0);
    gtk_container_add (GTK_CONTAINER (vbox), hbox);
    gtk_widget_show (hbox);

    gtk_widget_show (window);

    gtk_main();

    return 0;
}


__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]