<div dir="ltr">1) follow <a href="http://www.wikihow.com/Change-Keyboard-Layout-in-Ubuntu">http://www.wikihow.com/Change-Keyboard-Layout-in-Ubuntu</a><div><br></div><div>2) switch to the newly added layout of your choice<br><div><br></div><div>3) simulate unwanted interruption (e.g. detach internal or external physical keyboard and reattach it)</div><div><br></div><div>4) enjoy a different layout than the one you switched to in step 2</div></div><div><br></div><div>5) try to correct this wrong behavior in a way, that it won't appear under any circumstances in all mainstream Linux distributions and BSDs and others (and I'm not talking only about X, but also about text and framebuffer consoles, Wayland, and Mir); of course</div><div><br></div><div>6) tell us all in this list what everything in the whole stack needed to be patched, how much, and why exactly</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">2016-12-14 22:46 GMT+01:00 Albert ARIBAUD <span dir="ltr"><<a href="mailto:albert.aribaud@free.fr" target="_blank">albert.aribaud@free.fr</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Bonjour,<br>
<br>
Le Wed, 14 Dec 2016 21:49:13 +0100<br>
dumblob <<a href="mailto:dumblob@gmail.com">dumblob@gmail.com</a>> a écrit:<br>
<span class=""><br>
> Hi Albert,<br>
><br>
> I am far from convinced that all of this is sensitive to whether one<br>
> > keyboard was plugged or unplugged from the system. Why would icons<br>
> > in the tray be affected by the number of keyboards connected to the<br>
> > computer, for instance?<br>
><br>
> because it's an unwritten expectation in HIGs (Human Interface<br>
> Guidelines), that tray icons show and react to events happening close<br>
> to user (physically, theoretically). Hence (un)plugging devices<br>
> inclusive. Unwanted interruptions are then interpreted as unexpected<br>
> (un)plugging.<br>
<br>
</span>Can you provide support for these statements please?<br>
<span class=""><br>
> I am having a hard time trying to make sense of what you're saying,<br>
> > which is frustrating, as I've been doing embedded development for<br>
> > more that 20 years. For instance:<br>
> ><br>
> > - I am surprised that all of a sudden, all SW in a computer has to<br>
> >   handle interruptions. In my time (which extends to just about a<br>
> > few days ago), only drivers did. "Driver" is basically the name we<br>
> > give to thoses pieces of SW which handle interrupts (and talk to HW<br>
> > and do DMA requests and...)<br>
> ><br>
> > - Nor did any of the systems I worked, and still work on, require<br>
> > that the full system state be saved and restored on interrupts; in<br>
> > fact, if they did completely save and restore their state, they<br>
> > interrupts would have no effect whatsoever, which would be a pity.<br>
> > Granted, interrupt handlers must save whatever CPU resources they<br>
> > use, and schedulers must do the same with task states; but that's<br>
> > hardly a concern outside of these two cases.<br>
> ><br>
> > - Finally, the daemons in my time /did/ expect their state to<br>
> > change all the time. They actually were /intended/ to change state,<br>
> > in carefully designed ways; a daemon executing in an immutable<br>
> > environment would have little utility.<br>
> ><br>
><br>
> It's irrelevant who we are and what we do. The fact is, that in case<br>
> of unwanted interruptions, the state shall be 100% preserved. Which is<br>
> currently not implemented in any layer of the common Linux and BSD<br>
> systems except sometimes for the driver.<br>
<br>
</span>Sorry, that makes absolutely zero sense.<br>
<span class=""><br>
> I don't know what is the setup on which you encounter these issues; on<br>
> > mine, I can connect and disconnect keyboards at will, with nothing<br>
> > even so much as flipping a bit when I do, and my keyboards don't<br>
> > even lose their French layout :) -- same goes for USB devices which<br>
> > need to get their firmware uploaded through USB; granted, every<br>
> > time I unplug and replug them, thy take time to get their<br>
> > firmware /again/, and yes, trying to use a video capture device<br>
> > won't work if you unplug it right in the middle of it, but you can<br>
> > hardly expect otherwise, and it's only logical that plugging it<br>
> > back won't fix the overall problem.<br>
><br>
> The whole thread is about unwanted interruptions, not user-initiated.<br>
<br>
</span>Actually, the whole thread is about disconnectable keyboards.<br>
<span class=""><br>
> Refer to the the groups of issues and several specific program names<br>
> affected by unwanted interruptions as mentioned in my previous email<br>
> to get an idea what for a mainstream setup it might be.<br>
<br>
</span>You are trying to prove your point by stating your point. This, a<br>
tautology, amounts to no proof at all.<br>
<span class=""><br>
> > > An extreme case are security modules (e.g. YubiKey)<br>
> > > or security SW demanding uninterrupted connection of a certain<br>
> > > device (due to possible MiM attacks etc.).<br>
> ><br>
> > As you say, this is an extreme example. In fact, it is precisely an<br>
> > example of a setup where continuous connection is laid out a priori<br>
> > as a /requirement/; no wonder, then, that discontinuity of<br>
> > connection is not supported.<br>
> ><br>
><br>
> And therefore we need to make absolutely sure, that all detachable<br>
> "hubs" will prevent unwanted interruptions.<br>
<br>
</span>Only in scenarios which lay out continuity as a requirement, which is<br>
rarely if ever a valid requirement, and certainly not one envisioned<br>
here -- as you actually have acknowledged to Luke, BTW.<br>
<span class=""><br>
> > Just my 2 cents from real world.<br>
> ><br>
> > You should be careful with the way you express yourself: one could<br>
> > be led to believe that here you are implying I would not know of<br>
> > the real world whereas you do, and that this implied difference<br>
> > would make my opinion less worthy than yours. But of course you are<br>
> > not implying that, since you do no know me at all, right ?<br>
> ><br>
> > So let's avoid anyone getting false ideas, and to that effect, let's<br>
> > stay away from hypothetically real vs hypothetically unreal worlds,<br>
> > and let's just keep to technical discussion with technical and<br>
> > precise arguments. Shall we?<br>
><br>
> Maybe English is really still not the language of the world as the<br>
> meaning of "real world" is being undeniably confused with "real world<br>
> without everything Albert ARIBAUD came across".<br>
<br>
</span>Oh, look, you're doing ad hominems as well as projecting your own<br>
shortcoming on your contradictor!<br>
<br>
OK, joke has lasted enough for me (and, more important, for the rest of<br>
the list I suspect). Let me know when you decide to switch from<br>
counter-productive rhetorics to actually productive technical<br>
discussion.<br>
<br>
> Kind regards,<br>
<div class="HOEnZb"><div class="h5">><br>
> -- Jan<br>
<br>
Amicalement,<br>
--<br>
Albert.<br>
</div></div></blockquote></div><br></div>