Freigeben über


Swipe-Down-to-Kill Changes in Windows 8.1 Store apps

I worked on a recent forum post concerning the "swipe-down-to-kill" behavior in Windows Store applications, and want to fully explain what's going on with a small but important change between Windows 8 and Windows 8.1.  

History

In Windows 8, we introduced Windows Store apps – and one of the great things about a Store app is that its life cycle is managed by Windows 8 for the user. When a Store app is not on screen, it goes into a Suspend mode, which reduces the app’s usage of the CPU and disk i/o – if the system ever needs the memory being used by the suspended app, the app will be terminated to free up the memory. You don’t have to worry about suspending and terminating apps – Windows takes care of that for you!

Even though user termination of Store apps was not necessary in Win8, it was still achievable via a classic means: Alt-F4. Additionally, a new touch-friendly Close gesture was invented for termination: swipe from the edge of the app (across the screen bezel) down to the bottom of the screen. The app would shrink and disappear as you swiped off screen, and terminate – similar to Alt-F4 or the Task Manager.

 

Windows 8.1

A result of the Close gesture behavior in Windows 8 is that whenever an app was terminated, it could take a long time to reload the next time you switch to it (especially on lower-end machines and certain architectures) because the app needs to go through a full restart. In most cases, the user simply wants to remove an app from visibility when the user is done with it – and by terminating the app, the user inadvertently incurs a performance penalty the next time the app is launched.

In Windows 8.1, we made a subtle change to the Close gesture to address this issue: instead of terminating an app, the Close gesture now only suspends an app. This allows the user to easily remove an app from view without terminating it, and also instantly resume the app from suspension to its previous state the next time it's needed – no need to wait for a full app reload!

Additionally, we’ve built in a few extra features to give users a bit more power.

Sometimes your app is buggy, and you simply want to restart it to a fresh state. If you perform the Close gesture on an app, and then immediately relaunch the app (from Start, Search… etc.), the app will terminate and restart as a fresh instance. This allows users to easily restart an app that is misbehaving. For example, if an app hangs on
a particular page, you can do the Close gesture and immediately launch it again to get a fresh instance of the app.

Lastly, if you really need to terminate your app, you can do the same Close gesture but hold the app at the bottom of the screen for a moment and wait for it to “flip” around, then continue swiping it off the screen. This will terminate the app and can be used if you don’t want to resume your app later. However, as we mentioned earlier, for most users the swipe Close gesture that suspends apps should be sufficient – let Windows take care of the rest for you!

Comments are encouraged, and feel free to tweet to me at WinDevMatt.  Also, this blog's hashtag is #WSDevSol

Comments

  • Anonymous
    January 12, 2014
    Hi Thanks for explaining this. I'm having problems in that the swipe down to close gesture is simply not working! All other touch gestures seem to be fine and I can close with Alt-F4 still.  I'm using a Samsung Ultrabook.

  • Anonymous
    January 13, 2014
    Sean - what exactly is your experience?

  • Anonymous
    January 22, 2014
    Sounds great, thanks for explaining this! I think there should be more info about this when you install or upgrade to 8.1 so we know how it works. The GUI is pretty different from previous versions of Windows so no one can barely imagine that all this is going on behind the scenes. BTW, I don't like the fact that the app terminates if  you swipe down and immediately open it again because this will mostly happen when you swipe down by mistake or just because you realized you needed something else from the app immediately after. The flip at the bottom of the screen is the right solution for the needed "app refresh". Is there a time or it is kinda "if it is the next app that is opened after swiping down, even if that is after 2 hours"? Thanks again

  • Anonymous
    January 22, 2014
    Hi McAddress - the answer to your question is: yes, the app will terminate if it's the first app reopened after the swipe-down, even if it's been two hours.

  • Anonymous
    January 23, 2014
    Thanks Matt!

  • Anonymous
    May 01, 2014
    Is there a way to go back to the original method of a simple downward swipe closes the app? An example of an issue: Chrome (running in App Mode) will report it did not shut down correctly and offer to restore your tabs, instead of opening a fresh clean Chrome. Perhaps there is a Group Policy related to this?

  • Anonymous
    May 13, 2014
    bad changes. it would be better if you could give me a page to set up the closing gesture. i want to change the waiting time for fully closing but i can't. by the way, the virtual keyboard is really BAD. big and useless. the keyboard with 12 keys is better.

  • Anonymous
    July 01, 2014
    Another change that has gotten more and more annoying is that in 8 when you would close an app, you were returned to the Start screen, but now when you close an app, you are taken back to whichever app you previously had been in.  If anyone has found a setting that can alter that, let me know.

  • Anonymous
    July 03, 2014
    bad choice indeed. The app developers now have to deal with almost constantly running apps for days, if not months. For actively used app and system with enough memory this is an issue. over time in general the app becomes laggy sometimes due to core framework controls memory leaks. So yes, you save on resumes but it will come bite right back at you when people complain about no good apps.

  • Anonymous
    December 29, 2014
    Start up time is almost never a consideration.   Why optimize for that?   With SSD's IO is not significant.  Most Apps I actually used (news, weather, facebook) need to refresh state continuously/periodically anyhow.   What I do find is that many apps become resource hogs overtime and need to be restarted.    I think appdev has it exactly right.