Re: Improve word boundaries for text widgets



On Fri, Oct 03, 2014 at 10:25:36PM -0400, Matthias Clasen wrote:
I think I want the default in GtkTextView/Pango to stay basically
Unicode. So the vfunc may be needed sooner if you want to have
vim-like behaviour in GtkSourceView.

What do you mean by basically Unicode?

The problems in GTK+:
- the behavior is not consistent between GtkEntry and GtkTextView (and
  possibly GtkLabel too for word selection).
- the current behaviors don't work well, since it uses only
  natural-language word boundaries.

So I want to fix both points.

When playing with GtkEntry and GtkTextView, we can clearly see some
differences, and we can also see that the behavior is sometimes strange.
For example with this line:

  g_assert_cmpint (pos - str, ==, 5);

In GtkEntry, double click on the 's' of "str". Then double click on the
't' of "str". In the first case, " - str" is selected; in the second
case "str" is selected. With GtkTextView only "str" is selected for both
cases.

Double click on "==", it will select ", ==, ".

In GtkTextView, place the cursor just before "g_assert" (with the two
spaces before). Ctrl+left doesn't go to the start of the line. GtkEntry
does.

And of course "g_assert_cmpint" is not one word.

A more realistic example for GtkEntry:

foobar -- blah

Place the cursor at the start. Press Ctrl+right several times. "--" is
skipped.

Do I continue?

--
Sébastien


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