I was thinking that the hurdle for most existing programs to run on the L5 is just tweaking them to work with the touch interface and UI after, of course be compiled for the arm platform.
However, depending on how convergence works: when the phone is connected to a monitor, keyboard, and mouse a normal program recompiled for arm should run right away, right?
If this is the case then Purism has done even more than I think even they are taking credit for. Your L5 could be your sole computing device right out of the gate. You wouldn’t have access to all of your programs while not docked but they are still there.
I’m not trying to get the cart before the horse here but this sort of thing excites me.
I expect this to be true, but that depends on the modifications that they made. Will the parts that were changed to make the user interface nice on the phone revert to normal desktop operation when using an external screen? Maybe. But if not, this should not be too difficult to fix once phones are in people’s hands. It would be kind of cool to use the tiny phone screen as a second monitor for instant messaging clients. That means that applications on the external monitor are not covered just because someone is slowly chatting with you.
Also, what about a tablet like device does not contain a CPU, but is in fact just an external touch screen monitor with a battery for charging the phone while giving your phone apps a larger screen.
Something that might mess it up is the UI scaling, which is large for the phone screen, due to the high pixel density. Will the scaling be automatically “desktopped” on external monitors in a way that all running application software can recognise?
I don’t know how (or if) per-display scaling is implemented in Gnome/KDE/GTK/Qt/etc, so perhaps this is a non-issue, but if it was originally designed “the wrong way”, then it might be complex to arrange for all flavours of application software to respect the scaling of the monitor they are currently displayed on.
Do the common GUI toolkits support changing display scaling on-the-fly, during the lifetime of a window?
It will be interesting to see how Phosh handles the phone screen while an external monitor is connected. How do we transfer windows between the phone screen and the external monitor? What happens to the windows that are being displayed on the external monitor when the external monitor is unplugged?
Theoretically, adaptive applications could be shifted to the phone screen and automatically adapt to its size when the external monitor is removed. Non-adaptive applications would obviously struggle to display correctly, but could continue running nevertheless. (But some might contain crash bugs triggered by being forced to normally impossible GUI dimensions.)
Ideally, we ought to have per-window UI scaling, so we can selectively scale down some applications in order to use the desktop UI on the phone screen. This would be useful both for applications that aren’t adaptive, and also for adaptive applications if we for some reason would prefer to use the desktop-adapted version of the UI. (Obviously this use case is dependent on having good eyesight and a suitable pointing device, such as a mouse or a stylus.)