* #36505: toggle speakers button added in call screen
Ringtones are routed to speakers for incoming calls
diff --git a/src/org/sflphone/adapters/ContactPictureTask.java b/src/org/sflphone/adapters/ContactPictureTask.java
index 8c5d9bb..fd4c0b6 100644
--- a/src/org/sflphone/adapters/ContactPictureTask.java
+++ b/src/org/sflphone/adapters/ContactPictureTask.java
@@ -113,8 +113,9 @@
         paintLine.setDither(true);
         paintLine.setStyle(Style.STROKE);
         paintLine.setColor(Color.WHITE);
-        internalCanvas.drawCircle(externalBMP.getWidth() / 2, externalBMP.getHeight() / 2, externalBMP.getWidth() / 2 - dpiPadding / 2, paintLine);
-        internalCanvas.drawOval(new RectF(PADDING, PADDING, externalBMP.getWidth() - dpiPadding, externalBMP.getHeight() - dpiPadding), paint);
+        // internalCanvas.drawCircle(externalBMP.getWidth() / 2, externalBMP.getHeight() / 2, externalBMP.getWidth() / 2 - dpiPadding / 2, paintLine);
+        // internalCanvas.drawOval(new RectF(PADDING, PADDING, externalBMP.getWidth() - dpiPadding, externalBMP.getHeight() - dpiPadding), paint);
+        internalCanvas.drawOval(new RectF(0, 0, externalBMP.getWidth(), externalBMP.getHeight()), paint);
 
         view.post(new Runnable() {
             @Override
diff --git a/src/org/sflphone/fragments/CallFragment.java b/src/org/sflphone/fragments/CallFragment.java
index 3f68067..01f2655 100644
--- a/src/org/sflphone/fragments/CallFragment.java
+++ b/src/org/sflphone/fragments/CallFragment.java
@@ -252,7 +252,7 @@
         callStatusTxt = (TextView) rootView.findViewById(R.id.call_status_txt);
         call_icon = BitmapFactory.decodeResource(getResources(), R.drawable.ic_action_call);
         
-        speakers = (ToggleButton) rootView.findViewById(R.id.toggle_speaker);
+        speakers = (ToggleButton) rootView.findViewById(R.id.speaker_toggle);
         
         speakers.setOnCheckedChangeListener(new OnCheckedChangeListener() {
             
diff --git a/src/org/sflphone/receivers/IncomingReceiver.java b/src/org/sflphone/receivers/IncomingReceiver.java
index 7d41b73..f15f5b6 100644
--- a/src/org/sflphone/receivers/IncomingReceiver.java
+++ b/src/org/sflphone/receivers/IncomingReceiver.java
@@ -94,7 +94,7 @@
                 callback.getCurrent_calls().put(newCall.getCallId(), newCall);
                 callback.sendBroadcast(toSend);
 
-                callback.mediaManager.obtainAudioFocus();
+                callback.mediaManager.obtainAudioFocus(true);
             } catch (RemoteException e1) {
                 e1.printStackTrace();
             } catch (Exception e) {
diff --git a/src/org/sflphone/service/SipService.java b/src/org/sflphone/service/SipService.java
index 107d5b4..2dc88bd 100644
--- a/src/org/sflphone/service/SipService.java
+++ b/src/org/sflphone/service/SipService.java
@@ -343,7 +343,7 @@
                     // watchout timestamp stored by sflphone is in seconds
                     call.setTimestamp_start(Long.parseLong(details.get(ServiceConstants.call.TIMESTAMP_START)));
                     getCurrent_calls().put(call.getCallId(), call);
-                    mediaManager.obtainAudioFocus();
+                    mediaManager.obtainAudioFocus(false);
                 }
             });
         }
@@ -366,6 +366,7 @@
                 protected void doRun() throws SameThreadException {
                     Log.i(TAG, "SipService.accept() thread running...");
                     callManagerJNI.accept(callID);
+                    mediaManager.RouteToInternalSpeaker();
                 }
             });
         }
diff --git a/src/org/sflphone/utils/MediaManager.java b/src/org/sflphone/utils/MediaManager.java
index 3a3489e..b1963a4 100644
--- a/src/org/sflphone/utils/MediaManager.java
+++ b/src/org/sflphone/utils/MediaManager.java
@@ -35,9 +35,12 @@
         return mAudioManager;
     }
 
-    public void obtainAudioFocus() {
+    public void obtainAudioFocus(boolean requestSpeakerOn) {
         mAudioManager.requestAudioFocus(this, Compatibility.getInCallStream(false), AudioManager.AUDIOFOCUS_GAIN_TRANSIENT);
         mAudioManager.setMode(AudioManager.MODE_IN_COMMUNICATION);
+        if(requestSpeakerOn){
+            RouteToSpeaker();
+        }
     }
 
     @Override