diff --git a/app-android/res/drawable-hdpi/layout_bg.xml b/app-android/res/drawable-hdpi/layout_bg.xml
new file mode 100644
index 0000000..cf1bf73
--- /dev/null
+++ b/app-android/res/drawable-hdpi/layout_bg.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app-android/res/layout/activity_canvas.xml b/app-android/res/layout/activity_canvas.xml
index 126b1ed..17b2a7e 100644
--- a/app-android/res/layout/activity_canvas.xml
+++ b/app-android/res/layout/activity_canvas.xml
@@ -12,6 +12,7 @@
android:layout_height="fill_parent"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
+ android:background="@drawable/layout_bg"
android:orientation="vertical" >
diff --git a/app-android/src/at/bitfire/gfxtablet/CanvasActivity.java b/app-android/src/at/bitfire/gfxtablet/CanvasActivity.java
index 3d3b54a..c0ff1d6 100644
--- a/app-android/src/at/bitfire/gfxtablet/CanvasActivity.java
+++ b/app-android/src/at/bitfire/gfxtablet/CanvasActivity.java
@@ -4,6 +4,7 @@ import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
+import android.graphics.drawable.GradientDrawable;
import android.net.Uri;
import android.os.Bundle;
import android.preference.PreferenceManager;
@@ -21,6 +22,8 @@ public class CanvasActivity extends Activity implements OnSharedPreferenceChange
SharedPreferences settings;
NetworkClient netClient;
+ LinearLayout layout;
+
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@@ -41,19 +44,23 @@ public class CanvasActivity extends Activity implements OnSharedPreferenceChange
}
setContentView(R.layout.activity_canvas);
- LinearLayout layout = (LinearLayout)findViewById(R.id.canvas_layout);
+ layout = (LinearLayout)findViewById(R.id.canvas_layout);
new Thread(netClient = new NetworkClient(PreferenceManager.getDefaultSharedPreferences(this))).start();
-
+
canvas = new CanvasView(this, netClient);
layout.addView(canvas);
+
this.reconfigureLayout();
+ this.reconfigureColor();
}
@Override
public void onSharedPreferenceChanged(SharedPreferences pref, String key) {
if (key.equals(SettingsActivity.KEY_PREF_PADDING))
this.reconfigureLayout();
+ else if (key.equals(SettingsActivity.KEY_PREF_DARKCANVAS))
+ this.reconfigureColor();
}
void reconfigureLayout()
@@ -64,6 +71,16 @@ public class CanvasActivity extends Activity implements OnSharedPreferenceChange
l.setPadding(p, p, p, p);
}
+ void reconfigureColor()
+ {
+ GradientDrawable sd = (GradientDrawable) layout.getBackground().mutate();
+ if (settings.getBoolean(SettingsActivity.KEY_PREF_DARKCANVAS, false))
+ sd.setColor(0xFF263248);
+ else
+ sd.setColor(0xFF7E8AA2);
+ sd.invalidateSelf();
+ }
+
@Override
protected void onDestroy() {
netClient.getQueue().add(new NetEvent(NetEvent.Type.TYPE_DISCONNECT));
diff --git a/app-android/src/at/bitfire/gfxtablet/CanvasView.java b/app-android/src/at/bitfire/gfxtablet/CanvasView.java
index 96e7f11..7c4c6c6 100644
--- a/app-android/src/at/bitfire/gfxtablet/CanvasView.java
+++ b/app-android/src/at/bitfire/gfxtablet/CanvasView.java
@@ -1,10 +1,17 @@
package at.bitfire.gfxtablet;
+import org.xmlpull.v1.XmlPullParser;
+
import android.annotation.SuppressLint;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
+import android.graphics.Color;
+import android.graphics.drawable.Drawable;
+import android.graphics.drawable.GradientDrawable;
+import android.graphics.drawable.LayerDrawable;
+import android.graphics.drawable.ShapeDrawable;
import android.os.AsyncTask;
import android.preference.PreferenceManager;
import android.view.MotionEvent;
@@ -30,7 +37,7 @@ public class CanvasView extends View implements OnSharedPreferenceChangeListener
reconfigureAcceptedInputDevices();
- this.reconfigureLayout();
+ //this.reconfigureLayout();
this.netClient = netClient;
new ConfigureNetworkingTask().execute();
}
@@ -41,17 +48,8 @@ public class CanvasView extends View implements OnSharedPreferenceChangeListener
new ConfigureNetworkingTask().execute();
else if (key.equals(SettingsActivity.KEY_PREF_STYLUS_ONLY))
this.reconfigureAcceptedInputDevices();
- else if (key.equals(SettingsActivity.KEY_PREF_DARKCANVAS))
- this.reconfigureLayout();
}
- void reconfigureLayout()
- {
- if (settings.getBoolean(SettingsActivity.KEY_PREF_DARKCANVAS, false))
- setBackgroundColor(0xFF2E2E2E);
- else
- setBackgroundColor(0xFFD0D0D0);
- }
void reconfigureAcceptedInputDevices() {
acceptStylusOnly = settings.getBoolean(SettingsActivity.KEY_PREF_STYLUS_ONLY, false);
diff --git a/app-android/src/at/bitfire/gfxtablet/SettingsActivity.java b/app-android/src/at/bitfire/gfxtablet/SettingsActivity.java
index 2c35aad..9f588cc 100644
--- a/app-android/src/at/bitfire/gfxtablet/SettingsActivity.java
+++ b/app-android/src/at/bitfire/gfxtablet/SettingsActivity.java
@@ -32,7 +32,7 @@ public class SettingsActivity extends PreferenceActivity implements OnSharedPref
PreferenceManager.getDefaultSharedPreferences(this)
.registerOnSharedPreferenceChangeListener(this);
}
-
+
@Override
public void onBuildHeaders(List target) {
loadHeadersFromResource(R.xml.preference_headers, target);