Jump to content

What should happen when phone is flipped closed ?


Recommended Posts

Guest The PocketTV Team
Posted

This is a question for all Flip-type Smartphones.

What do *you* think *should* happen ? [i.e. what would you prefer]

1) Nothing special happens (may drain the battery!)

i.e. the active application continue running as if the phone was still opened. If the application is a game or video player, it continues playing. The drawback is that it could drain your battery in no time. That's currently the situation on the MPx200.

2) The Home screen is called (like if BACK was pressed)

i.e. the active application is minimized. Usually, if the application is well-behaved, it causes it to go in some sleep state, i.e. not using any CPU cycle and not draining the battery (exceptions of course for some applications like music players that continue to run actively in the background). This guarantees that once the phone is flipped-closed, any previously active application (e.g. game) will not drain the battery empty. Apparently that's currently the situation on the i600.

3) The active application is notified and it decides what to do.

For example, if the application uses a lot of CPU power when active (e.g. game or video player), it could pause when the phone is flipped closed, to avoid draining the battery.

What would be your preference ?

Apparently on the MPx200, applications can determine if the phone is flipped-closed. Would you prefer that we emulate 2) (i.e. minimize the application and bring to the Home screen) ? Or would you prefer the application to stay active, but just pause (if it's a game or video application) ?

Personally I think choice 1) is *not good*, as it could easiely drain your battery in no time while the phone is closed in your pocket.

PS: I don't know the behavior of other Flip-type Smartphones, like the Mio 8380... If you know, please tell us what they do.

Guest nickcornaglia
Posted

As discussed...on the i600, the active application is suspended and the screen immediately reverts to the homescreen.

The one exception I can find to this is Windows Media Play, which makes sense as you would want to listen to music with the phone closed. So I would assume that it is possible for an application to decide what to do.

Depends on the app. But I do not like the fact that it automatically reverts back to the homescreen on close. I'd rather the phone just use the homescreen timeout setting under settings.

Guest The PocketTV Team
Posted

> The one exception I can find to this is Windows Media Play, which makes sense as you would want to listen to music with the phone closed. So I would assume that it is possible for an application to decide what to do.

On the i600, it is not possible for applications to decide, however some applications can decide to continue running while in the background.

WMP is doing that is you select "Background play" in the WMP settings.

> Depends on the app.

On the i600, apps are minimized (always, they have no choice!) when the phone is flipped closed.

> But I do not like the fact that it automatically reverts back to the homescreeb on close.

me neither. But if I have the choice between that (i.e. Home screen), and the MPx200 case (i.e. nothing special happens and risk of battery draining because video app or game doesn't de-activate/pause), then I think I would prefer getting the Home screen (i.e. when I close the phone, I know it's in a state that should not drain the battery).

> I'd rather the phone just use the homescreen timeout setting under settings.

Well, this won't work, because when you have an application such as a video player or a game, those application, when active, call SHIdleTimerReset every 8 sec or so to prevent the Homse screen to come after the timout.

So the only way for what you suggest would be that when the phone is flipped-closed, SHIdleTimerReset would in fact *not* reset the timer.

This is a bit convoluted, and I'm not sure that MSFT would do that, but I agree that it would probably be the best way, because it would be implemented in the Shell, and would prevent the Home timeout to be overridden by an application, when the phone is closed.

I think MSFT should read this discussion and do some thinking...

Guest The PocketTV Team
Posted

All the votes go to 3, but 3 is in fact not good because it would require applications to behave properly, and as you all know, many applications don't behave properly (e.g. many applycations don't call SHCloseApps when malloc fails etc).

So ideally there should be a additional choice 4 in the poll, and I would vote for it:

4) The phone notifies the application that it is flipped closed AND disable SHIdleTimerReset when the phone is closed.

[i.e. prevent apps from disabling the Home screen timeout when the phone is closed].

This would *guarantee* that the Home screen would come after its timeout when the phone is closed, regardless of what the application does. So after the Home timeout, the application would be de-activated (i.e. it would, in most cases, stop using the CPU and not drain the battery). It would also notify the application when the phone is flipped closed or opened, so that some applications could do something special when the event occurs.

That's what I think should happen with Flip-type Smartphones. But we'll have to wait a couple of years before we see that (if ever!).

Posted

i think i would like all my applications to close. it would be a good way of task ending all the programs so that when you open it back up its fresh and ready to go. now i say this without having owned a flip phone. For all I know, I would be adjusting the settings or viewing internet explorer or writing an email, had to go somewhere real fast, flipped the phone, just to find everything closed. so I might not want this. I think the best bet would be "nothing special" enless the program needs to do something special. So it would keep everything open and eventually "time out" to the homescreen, enless the application like WMP needs it to keep playing or go intoa different mode when its closed

Guest The PocketTV Team
Posted

> I think the best bet would be "nothing special" enless the program needs to do something special.

As I explained in the posts above, "do nothing special" is really the worse solution.

That's because the active application, if it's a game or video player, probably calls SHIdleTimerReset to defeat the Home screen timeout.

> So it would keep everything open and eventually "time out" to the homescreen.

Yes, so what you want in fact is option 4) [see above posts], i.e.:

"notify the application that the phone is flipped closed AND disable SHIdleTimerReset when the phone is closed".

This will appear (for the user) to do nothing, but it will ALWAYS bring the Home screen after a timeout when the phone is flipped closed, i.e. it will prevent the application from defeating the Home screen timeout, i.e. it will reduce the chances that a game or video application will run your batteries empty in a few hours while the phone is closed in your pocket.

Posted

now youre making the assumption that cell phone users are walking drones. I dont own a flip cell phone, so essentially every time i put my phone in my pocket, i chose the the "do nothing special" option, which you call "the worse solution."

Chances are if Im playing a game or watching a movie or recording a video, im going to stop playing and close out before I put my phone in my pocket. You're assuming that if your phone flips shut, users are going to leave games playing and movies recording as they shut their phone and put it in their pocket?

Guest The PocketTV Team
Posted
now youre making the assumption that cell phone users are walking drones.  I dont own a flip cell phone, so essentially every time i put my phone in my pocket, i chose the the "do nothing special" option, which you call "the worse solution."

That's no what I'm saying.

The "do nothing" solution that you describe is in fact our option 4), i.e. you said yourself, you want the Home to come after the timeout!

So, what you want is to flip the phone closed and be relatively certain that whatever you had on the screen before, the battery will not run empty abnormally fast.

Above, you did write: <>

So based on what you said, what you want is choice 4)...

Choice 1) will not always bring the Home screen after the timeout, and it may drain the batteries of your phone to empty, which many people would not like. Choice 4) is just like Choice 1), but it will garantee that the Home screen will come after the timeout, when the phone is closed (which is what we want). It's the phone internally does things to do all that. The human just flips the phone closed and does nothing special.

I am assuming that you are a developer and understand the subtile differences between choice 1) and 4). If you are not a developer, then no problem, I understand what you mean, and I agree with you.

Posted

Add the option to decide in the options menu of your program?

Have it look for a flip closed call and then have a switch with suspend/background play or suchlike.

I wouldn't think that would necessitate that much extra code.

Guest The PocketTV Team
Posted
Add the option to decide in the options menu of your program?

Have it look for a flip closed call and then have a switch with suspend/background play or suchlike.

I wouldn't think that would necessitate that much extra code.

Of course.

All the applications for which background play makes sense already have some setting to allow that (e.g. WMP). Typically those are music players.

But the type of applications that may cause problem with flip phones are games or video players, i.e. applications that use a lot of CPU cycles (and drain the battery) when they are active.

Guest jtsaint
Posted

Billie Jean should be played and at the point where it says "not my ..." it should stop and flashing lights should come on. Then a little robitic arm should come out and clean my car

Guest midnight
Posted

hehe, errr, if you put a poll, surely you shouldnt argue the outcome? sounds like you've already made up your mind and dont really care what others think :lol:

i choose do nothing, why? simple, i want to still play my wma/mp3's, its my own daft fault if i leave a game running ;)

Guest The PocketTV Team
Posted
hehe, errr, if you put a poll, surely you shouldnt argue the outcome? sounds like you've already made up your mind and dont really care what others think :lol:

i choose do nothing, why? simple, i want to still play my wma/mp3's, its my own daft fault if i leave a game running ;)

Yes, choice 4) will let your MP3 =/wma play fine in the background, no problem.

But If you play pacman and flip the phone without quitting the game, choice 1) will drain your battery while choice 4) will not...

Actually when I created the pool, I did not think that a fourth option (choice 4) was missing, and after thinking about it, I came to the conclusion that it would have all the advantages of choice 1) and will also prevent the battery from draining.

But as you know it's impossible to add an option to an existing poll.

Now, if you chose choice 1) rather than choice 4), I'd like to know why ?

Because both will let you play your MP3 with the phone closed anyway...

Any choice will, actually, as long as the application continues to play when in the background (like WMP does).

Guest midnight
Posted
But as you know it's impossible to add an option to an existing poll. 

Not impossible :lol:

my point is, why wouldnt people close apps before closing the phone (why close the phone with a game already currently active)? I know i wouldnt

so, yes, i'd choose option 1, cos it makes no difference to me whether its 1 or 4, also, what if i use pocketmvp for playing music, or pocketmusic for that matter, and, windows media player could still play movies anyways, even in the background, so still doesnt solve your little problem

Guest The PocketTV Team
Posted

You did not explain why option 4) would have any effect that you wouldn't like.

To me it would be just like option 1), with the added bonus of avoiding to accidentally draining your battery in some cases.

Option 4) has another added bonus: if allows some applications to know when the phone is flipped open or closed, and they can reacte the way the want. With option 1), application are not notifies that the phone is closed.

So I understand you don't want the added bonus, fine, but what do you *not like* in option 4) ?

Sorry, I still don't get it...

Guest midnight
Posted

no, i never said i wouldnt have option 4, all im saying is, option 1 for me is fine aswell (as it is currently, so no need to change), going back to home is a definite no-no to me, what if you want to be sneaky at work, or just simply hide what you are writing in a text and only want to breifly close the lid for a matter of seconds? you dont want it to go back to home (not that i'm suggesting people should be playing games at work of course hehe)

Guest The PocketTV Team
Posted

no, i never said i wouldnt have option 4, all im saying is, option 1 for me is fine aswell (as it is currently, so no need to change), going back to home is a definite no-no to me,

I totally agree that going back to home is not nice, but that's what happens on the Verizon/Samsung i600.

> what if you want to be sneaky at work, or just simply hide what you are writing in a text and only want to breifly close the lid for a matter of seconds?

Yes, that's why option 4) would let you do, but if say you were playing pacman or another game, then the boss enters and you flip the phone closed in your pocket, go in a 3 hour meeting, forget about the game. Then option 4 would prevent the battery to go empty by causing the home screen to re-appear after the timeout (say one minute), and then the game would de-activate and stop sucking the battery.

So we seem to agree... :lol:

Guest midnight
Posted

yeh, it needs an application timeoutr aswell as homescreen timeout, and that could actually be programmed, you could also add an 'exclusion list' where you could add windows media player etc so that those apps never timeout, oops, think i just designed a candidate for modaco's innovation award hehe (cos this would work on non-flips aswell)

Guest The PocketTV Team
Posted
yeh, it needs an application timeoutr aswell as http://smartphone.MoDaCo.com/viewtopic.php?t=714>homescreen timeout, and that could actually be programmed, you could also add an 'exclusion list' where you could add windows media player etc so that those apps never timeout, oops, think i just designed a candidate for MoDaCo's innovation award hehe (cos this would work on non-flips aswell)

Actually the WMP already has an option to run in the background with no timeout.

Any app that need to run in the background (e.g. PocketMVP when playing MP3) can do that, and it will not be impacted by anything to do with flipping the phone closed.

Application that want to defeat the home timout do it by calling SHResetIdleItimer every 8 seconds. This is already in the Smartphone API, and we checked, it works. So you don't need an exclusion list, it's done by each application.

The option 4) would only enforce that home comes after the timeout programmed in Settings > Home, and that the active application cannot defeat this when the phone is closed - it can only defeat it when the phone is opened (i.e. all games and video player know how to do that, by calling SHResetIdleItimer). The idea of option 4 is that SHResetIdleItimer would stop working when the phone is closed - it would reset the Home timer only when the phone is opened.

Guest midnight
Posted

the reason i said that is cos you could force ANY application to timeout, cos you will end up with some naughty programmers calling SHResetIdleItimer whether they need to or not :lol:

and i'm not just talking about going back to home, i am talking about physically closing the application, which even includes media player if you dont add it to the exclusion list (even though i'm sure everyone would want it to stay open, but then, you could set individual timeouts per app, so you could set media player to timeout after 1 hr, but everything else after 5 mins if you so required) again, this would work even with candybar phones so isnt restricted to flips

just my thoughts ;)

Guest The PocketTV Team
Posted
the reason i said that is cos you could force ANY application to timeout,

No, that's not how it works in Smartphones.

On Smartphone, application don't timeout. The timeout only applies to the fact that the Home screen come up after a delay.

But this does not mean that the applications stops when that happens. The application is just loosing the foreground i.e. display. Applications such as audio player continue to play fine when in the background, because they have been designed to do that.

> cos you will end up with some naughty programmers calling SHResetIdleItimer whether they need to or not :lol:

Well, that's exactly the point of option 4. When the phone is closed, SHResetIdleItimer would becode ineffective.

> and i'm not just talking about going back to home, i am talking about physically closing the application.

Then that's a totally different story. Some applications can decide to "Exit" when the loose the foreground, most application just go in a de-activated state, so that they restart must faster later. That's the choice of the developer.

Some applications have a command to Exit explicitely. Most don't. Microsoft's applications don't, for example.

> which even includes media player if you dont add it to the exclusion list (even though i'm sure everyone would want it to stay open, but then, you could set individual timeouts per app, so you could set media player to timeout after 1 hr, but everything else after 5 mins if you so required) again, this would work even with candybar phones so isnt restricted to flips

I understand, but there should be a "default" behavior that does not require any configuration, and that should work fine.

I think individual timeouts, as you see them, should be handled individually by each application, because they could mean different things and do it differently.

Sincerely, I don't know what you mean by "application timeout". All I know if the Homescreen timeout, which involves the Shell, in fact. The shell detects that no button was pressed for the duration of the timeout, and when the timeout expires, it activates the Home screen.

I don't see why applications should have their own timeout, as you suggest. But I see why they would want, in some cases, to defeat the Home screen timeout, and that's handled already by MSFT. That the purpose of SHResetIdleItimer works, as you certainely know, since you are a developer.

Guest midnight
Posted

i'm thinking out loud about a new application, completely independent of the current os, that would use application timeouts, irrelevant of what the homescreen timeout is set to, meaning that individual apps could quit after a given time, this could be set the same as the homescreen timeout, or a new setting (eg making media player quit after 1 hr whether its finished playing or not), this could be used with flip phones (to allow different states for when the flip is closed eg, quit app immediatly, quit after homescreen timeout, quit after x minutes), thinking more of an app for modaco's innovation competition :lol:

Guest The PocketTV Team
Posted
i'm thinking out loud about a new application, completely independent of the current os, that would use application timeouts, irrelevant of what the http://smartphone.MoDaCo.com/viewtopic.php?t=714>homescreen timeout is set to, meaning that individual apps could quit after a given time, this could be set the same as the http://smartphone.MoDaCo.com/viewtopic.php?t=714>homescreen timeout, or a new setting (eg making media player quit after 1 hr whether its finished playing or not), this could be used with flip phones (to allow different states for when the flip is closed eg, quit app immediatly, quit after http://smartphone.MoDaCo.com/viewtopic.php?t=714>homescreen timeout, quit after x minutes), thinking more of an app for MoDaCo's innovation competition :lol:

Ok, I understand.

I was more thinking about a way MSFT could "patch" the current OS to improve its behavior on Flip-type Smartphones.

After talking to MSFT about this issue, it appears that they never thought about it, i.e. they never considered that anything special should be done with flip phones.

Now they realize it was a mistake, and the current situation where each flip-type Smartphone manufacturer does something different becomes a nightmare for software developers.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.