After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 301632 - standard Gtk find and replace dialogs
standard Gtk find and replace dialogs
Status: RESOLVED WONTFIX
Product: gtk+
Classification: Platform
Component: .General
unspecified
Other All
: Normal enhancement
: Medium API
Assigned To: gtk-bugs
gtk-bugs
Depends on:
Blocks:
 
 
Reported: 2005-04-22 20:21 UTC by Alan Horkan
Modified: 2014-11-03 06:02 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Alan Horkan 2005-04-22 20:21:43 UTC
bug #85606 calls for the HIG to specify a standard and consistent Find and
Replace dialog.  that is a good idea but simply recommending a standard
behaviour is no way near as effective as providing a standard implementation
included in Gtk which developers are far more likely to use as it is the path of
least resistance.  

libegg is also developing a find toolbar widget (many users and developers are
annoyed by Find dialogs that get in the way of the search results) and perhaps
an underlying API could be created to standardise the functionality but abstract
out the Graphical user interface.
Comment 1 Shaun McCance 2007-03-15 15:57:52 UTC
I'd mentioned before (perhaps on desktop-devel-list, I'm not sure) that one way to make a standard find and replace dialog Just Work would be to add an interface like GtkFindable (yeah, that name sucks).  This could be implemented by GtkTextView and GtkTreeView, although for GtkTreeView the programmer would probably need to specify the columns to use.  It could also be implemented by third-party widgets like gtkmozembed and vte.

gtk_findable_set_case_sensitive (GtkFindable  *finable,
                                 gboolean      sensitive);
gtk_findable_set_find_wrap      (GtkFindable  *findable,
                                 gboolean      wrap);
gtk_findable_find_next          (GtkFindable  *findable,
                                 gchar        *str);
gtk_findable_find_previous      (GtkFindable  *findable,
                                 gchar        *str);
/* more stuff for replace */

Using a standard find dialog could then be as easy as:

gtk_find_dialog_new (GtkFindable *findable);
Comment 2 Reinout van Schouwen 2009-09-04 16:03:31 UTC
If we can't standardize on a Find dialog, then maybe at least we could have a default Find *bar*? I'm prompted by bug 594131 which is the latest in a sequence of Gnome/Gtk+ apps that implement a Find bar in Firefox-style instead of Gnome-style (like Evince, Epiphany, Yelp).
Comment 3 Matthias Clasen 2009-09-04 18:57:26 UTC
My take on this is that the way to have consistency in apps is to 

a) expand the HIG to cover the things you want to be consistent

b) sending patches to those apps

Forcing everything in the toolkit is not really a scalable solution.

Of course, individual cases can always be negotiated; and maybe there is a good argument to be made for GtkTextView to come with a builtin find-replace dialog. Not sure.
Comment 4 Matthias Clasen 2014-11-03 06:02:14 UTC
closing old bugs