Re: Atk focus change capture fail. Why?

Piñeiro <[email protected]>
Newsgroups gmane.comp.gnome.accessibility.general
Message-ID <[email protected]>
What do you mean of "how to get focus changes of all windows, not just
in the same process"?

Do you mean that you have two applications (ie: gedit and gcalculator)
and you want to know when one of the windows get the focus?

BR
On 10/04/2012 11:18 AM, Tal Hadad wrote:
> I found the problem I had:
> The windows I showed up are blank windows. If I added them some
> widgets they work fine.
> Also, I can't find in Google how to get focus change of all windows,
> not just in the same process.
> Is this possible?
>
> Thanks
> Tal
>
> ------------------------------------------------------------------------
> Date: Thu, 4 Oct 2012 11:04:58 +0200
> From: [email protected]
> To: [email protected]
> Subject: Re: Atk focus change capture fail. Why?
>
> That code (although I didn't test it), seems fine, and should work if
> you are using a recent gtk version. If not, that will only work if
> accessibility is enabled.
>
> Anyway, FWIW, we plan to deprecate those methods at some moment of the
> future:
> https://bugzilla.gnome.org/show_bug.cgi?id=649575#c4
>
> If you want to track when the focus change, you can also add a global
> event, and filter state-change:focus events.
>
> BR
>
> On 10/04/2012 12:42 AM, Tal Hadad wrote:
>
>     I tried to make my first steps in ATK, but I can't understand what
>     I'm doing wrong.
>     Here is my Vala code:
>     using GLib;
>     using Atk;
>     using Gtk;
>
>     void _my_focus_tracker (Atk.Object object) {
>         stdout.printf ("Tracked!\n");
>     }
>
>     int main (string[] args) {
>         Gtk.init (ref args);
>         Util.add_focus_tracker (_my_focus_tracker);
>        
>         Gtk.Window window1 = new Gtk.Window ();   
>         window1.show ();
>        
>         Gtk.Window window2 = new Gtk.Window ();   
>         window2.show ();
>        
>         Gtk.main ();
>        
>         return 0;
>     }
>
>     add_docus_tracker doesn't call _my_focus_tracker when focus get
>     changed.
>     I know that most of you may not know Vala, so here is part of
>     the C generated/equated code:
>     void _my_focus_tracker (AtkObject* object) {
>         FILE* _tmp0_;
>         g_return_if_fail (object != NULL);
>         _tmp0_ = stdout;
>         fprintf (_tmp0_, "Tracked!\n");
>     }
>
>     gint _vala_main (gchar** args, int args_length1) {
>         gint result = 0;
>         GtkWindow* _tmp0_;
>         GtkWindow* _tmp1_;
>         GtkWindow* window1;
>         GtkWindow* _tmp2_;
>         GtkWindow* _tmp3_;
>         GtkWindow* window2;
>         gtk_init (&args_length1, &args);
>         atk_add_focus_tracker (_my_focus_tracker_atk_event_listener);
>         _tmp0_ = (GtkWindow*) gtk_window_new (GTK_WINDOW_TOPLEVEL);
>         _tmp1_ = g_object_ref_sink (_tmp0_);
>         window1 = _tmp1_;
>         gtk_widget_show ((GtkWidget*) window1);
>         _tmp2_ = (GtkWindow*) gtk_window_new (GTK_WINDOW_TOPLEVEL);
>         _tmp3_ = g_object_ref_sink (_tmp2_);
>         window2 = _tmp3_;
>         gtk_widget_show ((GtkWidget*) window2);
>         gtk_main ();
>         result = 0;
>         _g_object_unref0 (window2);
>         _g_object_unref0 (window1);
>         return result;
>     }
>
>     int main (int argc, char ** argv) {
>         g_type_init ();
>         return _vala_main (argv, argc);
>     }
>
>     For some reason, even when GLib main loop is running, no focus
>     change detection between the two windows.
>     Have I miss something? I think I haven't initialize something or
>     forgot to active watcher...
>
>     Hope for your reply
>     Tal
>
>
>     _______________________________________________
>     gnome-accessibility-list mailing list
>     [email protected] <mailto:[email protected]>
>     https://mail.gnome.org/mailman/listinfo/gnome-accessibility-list
>
>
>
> -- 
> Alejandro Piñeiro Iglesias
>
> _______________________________________________
> gnome-accessibility-list mailing list
> [email protected]
> https://mail.gnome.org/mailman/listinfo/gnome-accessibility-list
>
>
> _______________________________________________
> gnome-accessibility-list mailing list
> [email protected]
> https://mail.gnome.org/mailman/listinfo/gnome-accessibility-list


-- 
Alejandro Piñeiro Iglesias

_______________________________________________
gnome-accessibility-list mailing list
[email protected]
https://mail.gnome.org/mailman/listinfo/gnome-accessibility-list
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.