We did not write about release v0.6.0. It’s main feature is that InPlace can now be installed conveniently on both MacOsx and Linux. However, the new version v0.7.0 has an important new feature. It checks each modification received from a peer against the relevant model, rejecting any changes that the peer is not authorised to make. To be precise: the peer must fulfil a role that has a perspective on the object that he has changed, that allows that change.
The movie below shows this in action. In it, you’ll see two InPlace user windows. In the upper window, user “Joop” creates a new Chat and invites user “Cor” to it. While both can enter their messages and have them delivered to the other side, only Joop can change the title of the chat – because he is in the Initiator role, while Cor is in the Partner role (for the Chat). This is how it is modelled (model shown at the end of the movie).
When you watch the movie, you’ll notice that the peer (in the lower window) can actually change the title locally – that is, in his own screen. It just doesn’t make it to the other side! You might be excused for thinking that this is rather confusing: user Cor may be right in thinking he has actually changed the title. And you’re right! The screen for the Partner should never allow him to make changes to the title at all. A well-written App would not give him the opportunity. However, a hacker might change that screen, so he can actually – and illegally – change the title. But that would do him no good, as we’ve seen: no other user will ever accept his changes. The fraud cannot spread.
A further major change is that the application can now be completely controlled with the keyboard. Appropriate ARIA labeling has been added, too, to make InPlace accessible to those who need assistence.