1
0
Fork 0
mirror of https://github.com/rfc2822/GfxTablet synced 2025-10-03 17:49:17 +02:00

Merge remote-tracking branch 'upstream/master'

This commit is contained in:
Kevin Li 2013-10-16 16:25:26 -04:00
commit 3833256848
7 changed files with 49 additions and 18 deletions

View file

@ -1,14 +1,16 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" <manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="at.bitfire.gfxtablet" package="at.bitfire.gfxtablet"
android:versionCode="2" android:versionCode="3"
android:versionName="1.1" > android:versionName="1.2" >
<uses-sdk <uses-sdk
android:minSdkVersion="14" android:minSdkVersion="14"
android:targetSdkVersion="14" /> android:targetSdkVersion="14" />
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.INTERNET" />
<uses-configuration android:reqTouchScreen="stylus"/>
<uses-configuration android:reqTouchScreen="finger"/>
<application <application
android:allowBackup="true" android:allowBackup="true"

View file

@ -3,5 +3,3 @@ Issues URL: https://github.com/rfc2822/GfxTablet/issues/
Possible improvements: Possible improvements:
* allow more than one network host in settings [issue #13] * allow more than one network host in settings [issue #13]
* full-screen mode [issue #24]

View file

@ -7,5 +7,7 @@
<string name="stylus_preference">Sense stylus only</string> <string name="stylus_preference">Sense stylus only</string>
<string name="fullscreen_preference">Fullscreen</string> <string name="fullscreen_preference">Fullscreen</string>
<string name="menu_about">About / Help</string> <string name="menu_about">About / Help</string>
<string name="fullscreen_preference_summary">Title bar will only be hidden when hardware menu button is present</string>
<string name="stylus_preference_summary">Ignores touch events from fingers</string>
</resources> </resources>

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" > <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" >
<CheckBoxPreference android:title="@string/stylus_preference" android:key="stylus_only_preference" android:defaultValue="false"/> <CheckBoxPreference android:title="@string/stylus_preference" android:key="stylus_only_preference" android:defaultValue="false" android:summary="@string/stylus_preference_summary"/>
<CheckBoxPreference android:title="@string/fullscreen_preference" android:key="fullscreen_preference" android:defaultValue="true"/> <CheckBoxPreference android:title="@string/fullscreen_preference" android:key="fullscreen_preference" android:defaultValue="false" android:summary="@string/fullscreen_preference_summary"/>
</PreferenceScreen> </PreferenceScreen>

View file

@ -1,18 +1,18 @@
package at.bitfire.gfxtablet; package at.bitfire.gfxtablet;
import at.bitfire.gfxtablet.R;
import android.net.Uri;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.app.Activity; import android.app.Activity;
import android.content.Intent; import android.content.Intent;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import android.net.Uri;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.view.Menu; import android.view.Menu;
import android.view.MenuItem; import android.view.MenuItem;
import android.view.ViewConfiguration;
import android.view.Window; import android.view.Window;
import android.view.WindowManager; import android.view.WindowManager;
import android.widget.LinearLayout; import android.widget.LinearLayout;
import android.widget.Toast;
public class CanvasActivity extends Activity { public class CanvasActivity extends Activity {
CanvasView canvas; CanvasView canvas;
@ -27,10 +27,14 @@ public class CanvasActivity extends Activity {
PreferenceManager.setDefaultValues(this, R.xml.drawing_preferences, false); PreferenceManager.setDefaultValues(this, R.xml.drawing_preferences, false);
settings = PreferenceManager.getDefaultSharedPreferences(this); settings = PreferenceManager.getDefaultSharedPreferences(this);
if (settings.getBoolean(SettingsActivity.KEY_PREF_FULLSCREEN, true)) { if (settings.getBoolean(SettingsActivity.KEY_PREF_FULLSCREEN, false)) {
this.requestWindowFeature(Window.FEATURE_NO_TITLE); if (ViewConfiguration.get(this).hasPermanentMenuKey())
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, requestWindowFeature(Window.FEATURE_NO_TITLE);
WindowManager.LayoutParams.FLAG_FULLSCREEN); else
Toast.makeText(this, "Limited full-screen due to missing hardware menu button", Toast.LENGTH_LONG).show();
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
} }
setContentView(R.layout.activity_canvas); setContentView(R.layout.activity_canvas);
@ -55,10 +59,20 @@ public class CanvasActivity extends Activity {
} }
public void showAbout(MenuItem item) { public void showAbout(MenuItem item) {
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(("http://rfc2822.github.com/GfxTablet")))); startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(("http://rfc2822.github.io/GfxTablet/"))));
} }
public void showSettings(MenuItem item) { public void showSettings(MenuItem item) {
startActivity(new Intent(CanvasActivity.this, SettingsActivity.class)); startActivityForResult(new Intent(this, SettingsActivity.class), 0);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == SettingsActivity.RESULT_RESTART) {
finish();
Intent i = new Intent(this, CanvasActivity.class);
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);
}
} }
} }

View file

@ -59,6 +59,7 @@ public class NetEvent {
case TYPE_BUTTON: case TYPE_BUTTON:
dos.writeByte(1); dos.writeByte(1);
break; break;
default:
} }
dos.writeShort(x); dos.writeShort(x);

View file

@ -1,25 +1,34 @@
package at.bitfire.gfxtablet; package at.bitfire.gfxtablet;
import android.content.SharedPreferences;
import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
import android.os.Bundle; import android.os.Bundle;
import android.preference.PreferenceActivity; import android.preference.PreferenceActivity;
import android.preference.PreferenceFragment; import android.preference.PreferenceFragment;
import android.preference.PreferenceManager;
import android.view.MenuItem; import android.view.MenuItem;
import java.util.List; import java.util.List;
import at.bitfire.gfxtablet.R; import at.bitfire.gfxtablet.R;
public class SettingsActivity extends PreferenceActivity { public class SettingsActivity extends PreferenceActivity implements OnSharedPreferenceChangeListener {
public static final int RESULT_RESTART = RESULT_FIRST_USER;
public static final String public static final String
KEY_PREF_HOST = "host_preference", KEY_PREF_HOST = "host_preference",
KEY_PREF_STYLUS_ONLY = "stylus_only_preference", KEY_PREF_STYLUS_ONLY = "stylus_only_preference",
KEY_PREF_FULLSCREEN = "fullscreen_preference"; KEY_PREF_FULLSCREEN = "fullscreen_preference";
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
getActionBar().setDisplayHomeAsUpEnabled(true); getActionBar().setDisplayHomeAsUpEnabled(true);
PreferenceManager.getDefaultSharedPreferences(this)
.registerOnSharedPreferenceChangeListener(this);
} }
@Override @Override
@ -34,6 +43,11 @@ public class SettingsActivity extends PreferenceActivity {
return false; return false;
} }
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
if (key.equals(SettingsActivity.KEY_PREF_FULLSCREEN))
setResult(RESULT_RESTART);
}
public static class NetworkPrefsFragment extends PreferenceFragment { public static class NetworkPrefsFragment extends PreferenceFragment {
@Override @Override