GNOME Bugzilla – Bug 640698
Incompatibility in 'matched-selected' signal invocation
Last modified: 2013-09-14 16:54:02 UTC
evolution master glib master gtk+ master When adding a contact in permission dialog. I am auto-completing the email address in permission dialog. (evolution:18982): GLib-GObject-WARNING **: invalid cast from `ETreeModelGenerator' to `GtkTreeModelFilter' (evolution:18982): Gtk-CRITICAL **: gtk_tree_model_filter_convert_iter_to_child_iter: assertion `GTK_IS_TREE_MODEL_FILTER (filter)' failed (evolution:18982): e-data-server-ui-CRITICAL **: e_tree_model_generator_convert_iter_to_child_iter: assertion `ITER_IS_VALID (tree_model_generator, generator_iter)' failed (evolution:18982): e-data-server-ui-CRITICAL **: e_contact_store_get_contact: assertion `ITER_IS_VALID (contact_store, iter)' failed (evolution:18982): libebook-CRITICAL **: e_destination_set_contact: assertion `contact && E_IS_CONTACT (contact)' failed [Thread 0xad351b70 (LWP 19022) exited] (evolution:18982): Gdk-CRITICAL **: gdk_window_get_pointer: assertion `GDK_IS_WINDOW (window)' failed
Could you be more specific with steps, please? I do not see this myself. Thanks in advance.
Steps - 1. Select a folder under Exchange folder hierarchy then File -> Permissions 2. Click on Add 3. In select user dialog, under add user field, add user by auto completion instead of clicking on Address book button and adding the user 4. Once the desired user's email id auto completes, click Ok Can you reproduce with above steps ? Other wise i will try to collect gdb traces.
Confirming and moving to eds, because my steps are simpler: a) home some addressbook set for autocompletion and know a contact from there b) in To field type part of the name, to get a list of possibilities c) when choosing one item from the list by mouse I see above warnings
So it's a gtk+3 bug, they once pass the filter model, the second time the inner model. The later is wrong, as it used to work properly in gtk2. The difference is whether you select item from the completion list by key or by mouse.
Created attachment 179513 [details] [review] propsoed gtk patch for gtk+; This a patch to fix the issue to have it working the way it used to in gtk2.
No, the former was wrong. The filter model is an internal object, and should have not been passed to the callback. This was fixed for bug 555087. But yes, this is an incompatible change. I'll make sure that it gets a prominent mention in the migration guide.
I'm reopening this, it's not fixed, there is still a difference between choosing item by mouse and by keyboard from the completion list. It's really not about the documentation only.
OK, after commit 38f6065b in gtk+ it's returning consistently the inner model, not the filter one, so I'm moving this back to evolution-data-server, which is supposed to be changed too, to reflect new behaviour.
Created commit 19f03bf in eds master (2.91.90+)