<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Apr 10, 2013 at 6:51 AM, Pekka Paalanen <span dir="ltr"><<a href="mailto:ppaalanen@gmail.com" target="_blank">ppaalanen@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On Sun, 07 Apr 2013 21:51:44 -0400<br>
Weng Xuetian <<a href="mailto:wengxt@gmail.com">wengxt@gmail.com</a>> wrote:<br>
<br>
> can't this be extended in a way that in a more key value like favor?<br>
><br>
> Input method annouce what value it's interested first, and text_model<br>
> set the corresponding value upon change. Now, for every field you<br>
> want to set, will introduce a new protocol.<br>
><br>
> Text, Numeric, Accept sound recignotion, extra button on OSK, and<br>
> there can be so many possiblility which this way doesn't scale at all.<br>
<br>
</div>Hi,<br>
<br>
the general problem with key/value or arbitrary properties is that they<br>
break easily, and you can create a huge mess without really even<br>
realizing it. The point is, that if one side of an IPC sets a property<br>
the other side does not know to look for, the system will silently<br>
misbehave, because the first side does not know that the other side is<br>
not using the property.<br></blockquote><div><br></div><div style>This will not be a problem because all of these properties are just suggestions for the input method. (It may make sense to have explicit requests for the other way around, i.e. input method properties though.)</div>

<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Such mismatches are obvious, if the protocol is explicit instead of a<br>
property system. The protocol already has also versioning, and a<br>
standard procedure for adding new messages. Writing strict protocol<br>
forces people to think more carefully about the design, and it also<br>
forces them to handle version mismatches explicitly.<br>
<br>
Properties *are* protocol, they are just easier to get wrong and not<br>
notice. When you add new properties, you have the same versioning<br>
problem that Wayland protocol already solved: do both sides know about<br>
the property, and do they know that the other side knows.<br>
<br>
<br>
Thanks,<br>
pq<br>
<div class="HOEnZb"><div class="h5">_______________________________________________<br>
wayland-devel mailing list<br>
<a href="mailto:wayland-devel@lists.freedesktop.org">wayland-devel@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/wayland-devel" target="_blank">http://lists.freedesktop.org/mailman/listinfo/wayland-devel</a><br>
</div></div></blockquote></div><br></div></div>