The solution, I believe, is something I'm referring to as the Continuous Client.
So what is a Continuous Client you ask? Well the premise is simple: when you leave one device, you pick up your session in exactly the same place on the next device you use. Meaning your IM, Twitter, web browsing, applications, even your windows (given the availability of such a thing on the corresponding platform) appear just as they did on the previous device. The situation I describe above would be obviated by this setup, allowing me to move from my laptop to iPad in a seamless manner which would in no way disrupt the activity I was currently engaged in. This solution seems particularly well suited for desktop to laptop transfers, but allowing for a platform which was rich enough for both PC and mobile devices (hello, Chrome OS), it could very well be carried out through desktops, laptops, tablets, and even mobile phones. Put simply, you are placeshifting your computing experience from one device to the next with no break in your work, timelines, or conversations.
Now a Continuous Client can potentially be three things: the first would be an operating system, the second would be an application available across multiple OSs, and the third would be Continuous Client as a service. An entire OS would obviously be more difficult whip up, while a standalone application would be easier to develop quickly -- a service, on the other hand, might be the real solution in both the short and long term. Regardless, an OS which is currently in existence could very well be ported or evolved into a Continuous Client, as could many applications we use. All of these solutions would heavily rely on the cloud.
Google has been particularly good at creating this experience within their Google Docs suite and Gmail -- allowing for sessions to be started and ended in two different places while keeping the work stationary. Unfortunately, what Google Docs can't do currently is be location aware. There is no way to tell your document that you're leaving from one system and moving to another. In a Continuous Client environment, there could essentially be an "eject button" which would allow you to queue your OS (or app) to "jump" to the next device, places held and all. You would naturally be prompted whenever a new device is opened or switched on to grab your session from the previous device you were working on.
If we were to look at the potential for a Continuous Client as an application, the experience would be largely the same, though obviously there would be limitations to how deep you could go. One of the things which needs to be stressed is that this is not simply about having your data in the cloud -- that isn't much of an issue right now. A Continuous Client would shift your active work from one place to the next: there would be no reloading of applications, web pages, or Twitter clients. In essence, it would "push" your session from device to device.
While someone like Google has a tremendous opportunity to do this with Chrome OS and Android, the ideal execution of this concept would be as a service or layer, meaning almost any application or platform could take advantage of these sessions, as long as each component had a Continuous Client element. A Twitter or IM application or even browser doesn't necessarily have to be built from the same raw materials since they're pulling down content from other sources to begin with -- they just need to be able to receive the signal transmitted from your last session, and bounce it to the next one you start. Think of it as the ultra-productive mutant child of push technology, cloud computing, and open standards.
Developers and OS-makers, when you're ready to get to work on this, you know where to find me.