Active Topics

 


Reply
Thread Tools
Posts: 55 | Thanked: 72 times | Joined on Nov 2009
#1
In helping a new user get comfortable with their N900, I found that one of their biggest complaints involved not having a dedicated hardware "end call" button to ensure that no active call existed. Sadly shortcutd doesn't quite suffice, since only the half-press of the camera button can have a shortcut; a full press of the camera button with the lens cap closed will always just bring up the camera app and say "Open lens cover". However, I did manage to put an "End call" option in the power-button menu, and that menu works from anywhere on the phone.

I've attached a file endcall.xml.txt. Rename this file to endcall.xml, and put it in /etc/systemui/ ; if you have ssh properly configured, you can just run:
Code:
scp endcall.xml.txt root@n900-hostname-or-ip:/etc/systemui/endcall.xml
You could also use "localhost" from your n900.

After copying the file, you need to restart systemui to make it re-read its configuration files. You can either reboot your phone, or run "killall systemui" via xterm or SSH.

Then, when on a call, you can press the power button and you will have an option "End call", complete with the appropriate icon:

Name:  endcall-screenshot-landscape.jpg
Views: 3673
Size:  21.4 KB

Name:  endcall-screenshot-portrait.jpg
Views: 3422
Size:  21.1 KB

If people find this useful, I may package it up in a Debian package and upload it to extras.

Last edited by josh; 2010-08-26 at 07:41.
 

The Following 8 Users Say Thank You to josh For This Useful Post:
vkv.raju's Avatar
Posts: 402 | Thanked: 451 times | Joined on Dec 2007 @ India
#2
I am sure this would be helpful to many. Also, a deb (with end-call, reboot, etc) would be good for people who don't want to install ssh or sorts.
 
F2thaK's Avatar
Posts: 4,365 | Thanked: 2,467 times | Joined on Jan 2010 @ Australia Mate
#3
 
Posts: 2,829 | Thanked: 1,459 times | Joined on Dec 2009 @ Finland
#4
Hmm. Do people multitasking when speaking on the phone. I mean if we got statistics I would predict that at least nearly 90% people use phone app and close call with phone apps end call button and do not surf around phone*. I do not see how this differs from that button if you have phone app open. Except that with this you have to click twice.

Still itīs nice feature and shows how convertible maemo is.

*Remind me about Operas UI testing where they collected statistics about what features people really use and IIRC it was pretty sad reading for power users. Most of users did use only little tiny amount of features what they were provided :| So...Apple is doing something right
 
Posts: 55 | Thanked: 72 times | Joined on Nov 2009
#5
Implementing the "End call" menu item took a fair bit of exploration and experimentation, so I want to document how it works as an example for how to implement more complex power-key menu items that use D-Bus and keyfile-based visibility.

Code:
<powerkeymenu path="/">
 <menuitem priority="10" name="End call" visible="yes">
  <keyfile>/var/run/mce/call</keyfile>
  <icon>red_end_call</icon>
  <callback service="com.nokia.csd.Call" path="/com/nokia/csd/call" interface="com.nokia.csd.Call" method="Release" bus="system">
  </callback>
 </menuitem>
</powerkeymenu>
A power-button menu file uses XML, and requires a root tag of <powerkeymenu path="/">.

The "End call" item uses a <menuitem> tag, and name="End call" attribute specifies the text that appears in the menu item. (I should really add a <po> tag in the <menuitem> so that this uses the same localized text for "End call" that the Phone UI does.)

priority="10" determines where the item appears in the power button menu. Smaller numbers appear earlier in the menu. priority 10 makes "End call" appear before all the existing defined menu items.

<keyfile>/var/run/mce/call</keyfile> and the visible="yes" attribute on the <menuitem> make the "End call" button only appear when on a call. The file /var/run/mce/call contains "yes" when on a call and "no" when not on a call; visible="yes" says to make this item visible only when the keyfile contains "yes".

The <icon> tag specifies the icon; red_end_call corresponds to the icon used by the phone UI.

<callback> says to make a D-Bus call when running this menu item. The method com.nokia.csd.Call.Release will end the current call. (Everything I've found says that I should use Telepathy calls for this instead, but I haven't found the right D-Bus interface to use for that; suggestions welcome.) Since the Release method doesn't take any arguments, I don't have to specify any <argument> elements inside the <callback>.

Last edited by josh; 2010-08-26 at 07:56.
 

The Following 6 Users Say Thank You to josh For This Useful Post:
Posts: 55 | Thanked: 72 times | Joined on Nov 2009
#6
Originally Posted by slender View Post
Hmm. Do people multitasking when speaking on the phone. I mean if we got statistics I would predict that at least nearly 90% people use phone app and close call with phone apps end call button and do not surf around phone*. I do not see how this differs from that button if you have phone app open. Except that with this you have to click twice.
I make use of multitasking while on the phone relatively often, to look something up; even more often now that I have a Bluetooth earpiece. Recent example, when calling my wireless carrier: "Do you have a land-line I can call you back on so you can get the IMEI from your phone?" "Actually, I can look that up while on the phone; one moment please." Menu -> Settings -> About product, ... (They could use the IMEI to look up the phone's capabilities to tell me whether it could successfully roam on their network.)

However, I didn't create the "End call" option for myself; I just switch back to the phone app and end the call. The person I created this option for doesn't really multitask, though they do leave programs running sometimes. However, more than once they've somehow ended up with the screen blanked but a call active (still not quite sure how), and in this situation the phone doesn't give any visible indication of an active call, leading to a request for some way to ensure that the phone is off.

Potential hardware designers, take note: hardware "answer" and "end call" buttons considered essential for some users. And considering the N900's screen has a significant gap between the right edge and the bezel...

Last edited by josh; 2010-08-26 at 07:55.
 
Posts: 2,829 | Thanked: 1,459 times | Joined on Dec 2009 @ Finland
#7
I still donīt get this completely. AFAIK Phone blanks after call if opposite disconnects you or if you press disconnect. Are we dealing with 40+ old users here
 
Posts: 179 | Thanked: 33 times | Joined on Jan 2010
#8
with all due respect i dnt see this much usefull .... ppl wont prefer to click power button and then end call, i would atleast prefer single click or touch.
__________________
Linux | Unix | Solaris | AIX | SAP Basis Consultant

Linux Based Devices : Motorokr e6 | Nokia N900
 
Posts: 58 | Thanked: 10 times | Joined on Jan 2010
#9
@josh : great work dude, had wanted this fixed from day one. Especially useful while receiving calls from land line. Many a time people ask for some detail and you move away from the phone app. And power button menu is the exact place for it , really good for one hand operation.

@Slender: where did you come up with the 90% statistic ? Some people just tend to assume everyone else does things just the way they do.

--Vj



Originally Posted by slender View Post
Hmm. Do people multitasking when speaking on the phone. I mean if we got statistics I would predict that at least nearly 90% people use phone app and close call with phone apps end call button and do not surf around phone*. I do not see how this differs from that button if you have phone app open. Except that with this you have to click twice.

Still itīs nice feature and shows how convertible maemo is.

*Remind me about Operas UI testing where they collected statistics about what features people really use and IIRC it was pretty sad reading for power users. Most of users did use only little tiny amount of features what they were provided :| So...Apple is doing something right
 
Posts: 55 | Thanked: 72 times | Joined on Nov 2009
#10
Originally Posted by sdesai View Post
with all due respect i dnt see this much usefull .... ppl wont prefer to click power button and then end call, i would atleast prefer single click or touch.
I agree entirely that it seems suboptimal. A dedicated "end call" button would work much better, and if shortcutd supported a full press of the camera button rather than just the half-press used for focus, I wouldn't have bothered to build this.

In case it ever does, or some similar solution exists, you can run the same D-Bus call I used via dbus-send on the command line:

Code:
dbus-send --system --dest=com.nokia.csd.Call /com/nokia/csd/call com.nokia.csd.Call.Release
 
Reply


 
Forum Jump


All times are GMT. The time now is 00:38.