* #30525: changed incoming call screen
diff --git a/src/com/savoirfairelinux/sflphone/client/CallActivity.java b/src/com/savoirfairelinux/sflphone/client/CallActivity.java
index 1effb7b..1cf7e55 100644
--- a/src/com/savoirfairelinux/sflphone/client/CallActivity.java
+++ b/src/com/savoirfairelinux/sflphone/client/CallActivity.java
@@ -184,23 +184,8 @@
@Override
protected void onDestroy() {
-
unregisterReceiver(receiver);
-
- try {
- service.createNotification();
- } catch (RemoteException e) {
- Log.e(TAG, e.toString());
- }
- // Log.i(TAG, "Destroying Call Activity for call " + mCall.getCallId());
- // LocalBroadcastManager.getInstance(this).unregisterReceiver(mMessageReceiver);
- try {
- service.destroyNotification();
- } catch (RemoteException e) {
- Log.e(TAG, e.toString());
- }
unbindService(mConnection);
-
super.onDestroy();
}
diff --git a/src/com/savoirfairelinux/sflphone/client/SFLPhoneHomeActivity.java b/src/com/savoirfairelinux/sflphone/client/SFLPhoneHomeActivity.java
index c976eb6..f8814f8 100644
--- a/src/com/savoirfairelinux/sflphone/client/SFLPhoneHomeActivity.java
+++ b/src/com/savoirfairelinux/sflphone/client/SFLPhoneHomeActivity.java
@@ -116,13 +116,13 @@
@Override
protected void onSaveInstanceState(Bundle bundle) {
super.onSaveInstanceState(bundle);
- for (int i = 0; i < mSectionsPagerAdapter.getCount(); i++) {
- try {
- getFragmentManager().putFragment(bundle, mSectionsPagerAdapter.getClassName(i), mSectionsPagerAdapter.getItem(i));
- } catch (IllegalStateException e) {
- Log.e(TAG, "fragment=" + mSectionsPagerAdapter.getItem(i));
- }
- }
+// for (int i = 0; i < mSectionsPagerAdapter.getCount(); i++) {
+// try {
+// getFragmentManager().putFragment(bundle, mSectionsPagerAdapter.getClassName(i), mSectionsPagerAdapter.getItem(i));
+// } catch (IllegalStateException e) {
+// Log.e(TAG, "fragment=" + mSectionsPagerAdapter.getItem(i));
+// }
+// }
getFragmentManager().putFragment(bundle, "ContactsListFragment", mContactsFragment);
Log.w(TAG, "onSaveInstanceState()");
@@ -146,6 +146,9 @@
bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
}
+ if(savedInstanceState != null){
+ mContactsFragment = (ContactListFragment) getFragmentManager().getFragment(savedInstanceState, "ContactsListFragment");
+ }
if (mContactsFragment == null) {
mContactsFragment = new ContactListFragment();
Log.w(TAG, "Recreated mContactListFragment=" + mContactsFragment);
@@ -298,12 +301,12 @@
@Override
protected void onDestroy() {
/* stop the service, if no other bound user, no need to check if it is running */
- try {
- service.createNotification();
-
- } catch (RemoteException e) {
- Log.e(TAG, e.toString());
- }
+// try {
+// service.createNotification();
+//
+// } catch (RemoteException e) {
+// Log.e(TAG, e.toString());
+// }
if (mBound) {
Log.i(TAG, "onDestroy: Unbinding service...");
diff --git a/src/com/savoirfairelinux/sflphone/fragments/CallFragment.java b/src/com/savoirfairelinux/sflphone/fragments/CallFragment.java
index 919e1da..f7a75fd 100644
--- a/src/com/savoirfairelinux/sflphone/fragments/CallFragment.java
+++ b/src/com/savoirfairelinux/sflphone/fragments/CallFragment.java
@@ -315,7 +315,7 @@
}
model.clearAttractors();
-// model.addAttractor(new Attractor(new PointF(model.width * .2f, model.height * 0.9f), ATTRACTOR_SIZE, new Attractor.Callback() {
+// model.addAttractor(new Attractor(new PointF(model.width * 0.9f, model.height * 0.1f), ATTRACTOR_SIZE, new Attractor.Callback() {
// @Override
// public boolean onBubbleSucked(Bubble b) {
// Log.w(TAG, "Bubble sucked ! ");
@@ -378,10 +378,13 @@
mCallbacks.startTimer();
- getBubbleFor(conf.getParticipants().get(0), model.width / 2, model.height / 2);
+ int radiusCalls = (int) (model.width / 2 - BUBBLE_SIZE);
+ getBubbleFor(myself, model.width / 2, model.height / 2 + radiusCalls);
+ getBubbleFor(conf.getParticipants().get(0), model.width / 2, model.height / 2 - radiusCalls);
+
model.clearAttractors();
- model.addAttractor(new Attractor(new PointF(4 * model.width / 5, model.height / 2), ATTRACTOR_SIZE, new Attractor.Callback() {
+ model.addAttractor(new Attractor(new PointF(model.width / 2, model.height / 2), ATTRACTOR_SIZE, new Attractor.Callback() {
@Override
public boolean onBubbleSucked(Bubble b) {
@@ -392,14 +395,6 @@
return false;
}
}, call_icon));
- model.addAttractor(new Attractor(new PointF(model.width / 5, model.height / 2), ATTRACTOR_SIZE, new Attractor.Callback() {
- @Override
- public boolean onBubbleSucked(Bubble b) {
- mCallbacks.onCallRejected(conf.getParticipants().get(0));
- bubbleRemoved(b);
- return true;
- }
- }, hangup_icon));
}
private void initOutGoingCallDisplay() {
diff --git a/src/com/savoirfairelinux/sflphone/fragments/DialingFragment.java b/src/com/savoirfairelinux/sflphone/fragments/DialingFragment.java
index b9d38a6..f3399c1 100644
--- a/src/com/savoirfairelinux/sflphone/fragments/DialingFragment.java
+++ b/src/com/savoirfairelinux/sflphone/fragments/DialingFragment.java
@@ -104,9 +104,7 @@
@Override
public void onCreate(Bundle savedInstanceState) {
- Log.i(TAG,"Create History Fragment");
super.onCreate(savedInstanceState);
-
}
@Override
diff --git a/src/com/savoirfairelinux/sflphone/model/BubbleModel.java b/src/com/savoirfairelinux/sflphone/model/BubbleModel.java
index 8c68499..1ad013e 100644
--- a/src/com/savoirfairelinux/sflphone/model/BubbleModel.java
+++ b/src/com/savoirfairelinux/sflphone/model/BubbleModel.java
@@ -95,11 +95,12 @@
for(int i=0, n=bubbles.size(); i<n; i++) {
Bubble b = bubbles.get(i);
- if(b.markedToDie){
+ if (b.markedToDie){
continue;
}
if(!b.dragged) {
+
float bx=b.getPosX(), by=b.getPosY();
Attractor attractor = null;
@@ -171,8 +172,10 @@
// Log.w(TAG, "update dx="+dt+" dy="+dy);
b.setPos((float)(bx+dx), (float)(by+dy));
+// Log.i(TAG,"Model:");
if(attractor != null && attractor_dist < attractor_dist_suck*attractor_dist_suck) {
b.dragged = false;
+ Log.i(TAG,"Model:Sucking");
if(attractor.callback.onBubbleSucked(b)) {
bubbles.remove(b);
n--;
diff --git a/src/com/savoirfairelinux/sflphone/model/BubblesView.java b/src/com/savoirfairelinux/sflphone/model/BubblesView.java
index 9f61622..573013e 100644
--- a/src/com/savoirfairelinux/sflphone/model/BubblesView.java
+++ b/src/com/savoirfairelinux/sflphone/model/BubblesView.java
@@ -40,8 +40,12 @@
import android.graphics.LinearGradient;
import android.graphics.Paint;
import android.graphics.Paint.Align;
+import android.graphics.Paint.Style;
+import android.graphics.PorterDuffXfermode;
+import android.graphics.RadialGradient;
import android.graphics.RectF;
import android.graphics.Shader.TileMode;
+import android.graphics.Xfermode;
import android.os.Handler;
import android.os.Message;
import android.util.AttributeSet;
@@ -270,26 +274,35 @@
// Draw red gradient around to hang up call
// canvas.drawColor(Color.RED);
- LinearGradient grTop = new LinearGradient(0, 0, 0, 40, Color.RED, Color.WHITE, TileMode.CLAMP);
+ // LinearGradient grTop = new LinearGradient(0, 0, 0, 40, Color.RED, Color.WHITE, TileMode.CLAMP);
+ // RadialGradient gr = new RadialGradient(model.width/2, model.height/2, model.width/2, Color.WHITE, Color.RED, TileMode.CLAMP);
Paint p = new Paint();
p.setDither(true);
- p.setShader(grTop);
- canvas.drawRect(new RectF(0, 0, model.width, 40), p);
+ // p.setShader(gr);
+ p.setColor(getResources().getColor(R.color.holo_red_light));
+ // p.setXfermode(new PorterDuffXfermode(Mode.))
+ p.setStyle(Style.STROKE);
+ // canvas.drawRect(new RectF(0, 0, model.width, 40), p);
+ p.setStrokeWidth(20);
- LinearGradient grBottom = new LinearGradient(0, model.height, 0, model.height - 40, Color.RED, Color.WHITE, TileMode.CLAMP);
- p.setDither(true);
- p.setShader(grBottom);
- canvas.drawRect(new RectF(0, model.height - 40, model.width, model.height), p);
+ canvas.drawRect(new RectF(10, 10, model.width - 10, model.height - 10), p);
- LinearGradient grLeft = new LinearGradient(0, 0, 40, 0, Color.RED, Color.WHITE, TileMode.CLAMP);
- p.setDither(true);
- p.setShader(grLeft);
- canvas.drawRect(new RectF(0, 0, 40, model.height), p);
+ // canvas.drawRoundRect(new RectF(0,0,model.width, model.height), 200, 200, p);
- LinearGradient grRight = new LinearGradient(model.width, 0, model.width - 40, 0, Color.RED, Color.WHITE, TileMode.CLAMP);
- p.setDither(true);
- p.setShader(grRight);
- canvas.drawRect(new RectF(model.width - 40, 0, model.width, model.height), p);
+ // LinearGradient grBottom = new LinearGradient(0, model.height, 0, model.height - 40, Color.RED, Color.WHITE, TileMode.CLAMP);
+ // p.setDither(true);
+ // p.setShader(grBottom);
+ // canvas.drawRect(new RectF(0, model.height - 40, model.width, model.height), p);
+ //
+ // LinearGradient grLeft = new LinearGradient(0, 0, 40, 0, Color.RED, Color.WHITE, TileMode.CLAMP);
+ // p.setDither(true);
+ // p.setShader(grLeft);
+ // canvas.drawRect(new RectF(0, 0, 40, model.height), p);
+ //
+ // LinearGradient grRight = new LinearGradient(model.width, 0, model.width - 40, 0, Color.RED, Color.WHITE, TileMode.CLAMP);
+ // p.setDither(true);
+ // p.setShader(grRight);
+ // canvas.drawRect(new RectF(model.width - 40, 0, model.width, model.height), p);
// tryMe.setColor(getResources().getColor(R.color.lighter_gray));
// tryMe.setStyle(Paint.Style.FILL);
@@ -358,7 +371,7 @@
@Override
public boolean onTouch(View v, MotionEvent event) {
- Log.w(TAG, "onTouch " + event.getAction());
+// Log.w(TAG, "onTouch " + event.getAction());
int action = event.getActionMasked();
@@ -375,7 +388,7 @@
if (b.dragged) {
b.dragged = false;
b.target_scale = 1.f;
- if (b.isOnBorder(model.width, model.height)){
+ if (b.isOnBorder(model.width, model.height)) {
b.markedToDie = true;
((CallActivity) callback.getActivity()).onCallEnded(b.associated_call);
}
@@ -435,7 +448,7 @@
if (!expand.intersects(event.getX(), event.getY())) {
expand.retract();
} else {
- Log.d("Main", "getAction");
+// Log.d("Main", "getAction");
switch (expand.getAction(event.getX(), event.getY())) {
case 0:
expand.retract();
@@ -460,7 +473,7 @@
}
return true;
}
- Log.d("Main", "onDown");
+// Log.d("Main", "onDown");
for (int i = 0; i < n_bubbles; i++) {
Bubble b = bubbles.get(i);
if (b.intersects(event.getX(), event.getY()) && !b.expanded) {
@@ -476,13 +489,13 @@
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
- Log.d("Main", "onFling");
+// Log.d("Main", "onFling");
return true;
}
@Override
public void onLongPress(MotionEvent e) {
- Log.d("Main", "onLongPress");
+// Log.d("Main", "onLongPress");
if (isDraggingBubble()) {
Bubble b = getDraggedBubble(e);
b.expand();
@@ -503,7 +516,7 @@
@Override
public boolean onScroll(MotionEvent e1, MotionEvent event, float distanceX, float distanceY) {
- Log.d("Main", "onScroll");
+// Log.d("Main", "onScroll");
List<Bubble> bubbles = model.getBubbles();
final int n_bubbles = bubbles.size();
long now = System.nanoTime();
@@ -526,13 +539,13 @@
@Override
public void onShowPress(MotionEvent e) {
- Log.d("Main", "onShowPress");
+// Log.d("Main", "onShowPress");
}
@Override
public boolean onSingleTapUp(MotionEvent e) {
- Log.d("Main", "onSingleTapUp");
+// Log.d("Main", "onSingleTapUp");
return true;
}
}