import android.text.TextWatcher;\r
import android.text.style.StyleSpan;\r
import android.util.Log;\r
+import android.util.TypedValue;\r
import android.view.ContextMenu;\r
import android.view.ContextMenu.ContextMenuInfo;\r
import android.view.KeyEvent;\r
});\r
private SearchOperation currentSearchOperation = null;\r
\r
+ int fontSizeSp;\r
EditText searchText;\r
Button langButton;\r
\r
// Never null.\r
private File wordList = null;\r
private boolean saveOnlyFirstSubentry = false;\r
+ private boolean clickOpensContextMenu = false;\r
\r
// Visible for testing.\r
ListAdapter indexAdapter = null;\r
}\r
});\r
\r
+ final String fontSize = prefs.getString(getString(R.string.fontSizeKey), "12");\r
+ try {\r
+ fontSizeSp = Integer.parseInt(fontSize);\r
+ } catch (NumberFormatException e) {\r
+ fontSizeSp = 12;\r
+ }\r
\r
setContentView(R.layout.dictionary_activity);\r
searchText = (EditText) findViewById(R.id.SearchText);\r
+ searchText.setTextSize(TypedValue.COMPLEX_UNIT_SP, fontSizeSp);\r
+ \r
langButton = (Button) findViewById(R.id.LangButton);\r
+ langButton.setTextSize(TypedValue.COMPLEX_UNIT_SP, fontSizeSp);\r
\r
searchText.requestFocus();\r
searchText.addTextChangedListener(searchTextWatcher);\r
wordList = new File(prefs.getString(getString(R.string.wordListFileKey),\r
getString(R.string.wordListFileDefault)));\r
saveOnlyFirstSubentry = prefs.getBoolean(getString(R.string.saveOnlyFirstSubentryKey), false);\r
+ clickOpensContextMenu = prefs.getBoolean(getString(R.string.clickOpensContextMenuKey), false);\r
//if (prefs.getBoolean(getString(R.string.vibrateOnFailedSearchKey), true)) {\r
// vibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);\r
//}\r
searchText.requestFocus();\r
Log.d(LOG, "Trying to show soft keyboard.");\r
final InputMethodManager manager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);\r
- manager.showSoftInput(searchText, InputMethodManager.SHOW_IMPLICIT);\r
+ manager.showSoftInput(searchText, InputMethodManager.SHOW_FORCED);\r
}\r
\r
void updateLangButton() {\r
});\r
}\r
\r
+ {\r
+ final MenuItem about = menu.add(getString(R.string.about));\r
+ about.setOnMenuItemClickListener(new OnMenuItemClickListener() {\r
+ public boolean onMenuItemClick(final MenuItem menuItem) {\r
+ final Intent intent = new Intent().setClassName(AboutActivity.class\r
+ .getPackage().getName(), AboutActivity.class.getCanonicalName());\r
+ startActivity(intent);\r
+ return false;\r
+ }\r
+ });\r
+ }\r
+\r
return true;\r
}\r
\r
\r
@Override\r
protected void onListItemClick(ListView l, View v, int row, long id) {\r
- openContextMenu(v);\r
+ if (clickOpensContextMenu) {\r
+ openContextMenu(v);\r
+ }\r
}\r
\r
void onAppendToWordList(final RowBase row) {\r
rawText.append(row.getTokenRow(true).getToken()).append("\t");\r
rawText.append(row.getRawText(saveOnlyFirstSubentry));\r
Log.d(LOG, "Writing : " + rawText);\r
+\r
+ // Request focus so that if we start typing again, it clears the text input.\r
+ getListView().requestFocus();\r
+\r
try {\r
wordList.getParentFile().mkdirs();\r
final PrintWriter out = new PrintWriter(\r
}\r
\r
void onCopy(final RowBase row) {\r
+ // Request focus so that if we start typing again, it clears the text input.\r
+ getListView().requestFocus();\r
+\r
Log.d(LOG, "Copy, row=" + row);\r
final StringBuilder result = new StringBuilder();\r
result.append(row.getRawText(false));\r
Log.d(LOG, "Clearing dictionary prefs.");\r
DictionaryActivity.clearDictionaryPrefs(this);\r
}\r
+ if (keyCode == KeyEvent.KEYCODE_ENTER) {\r
+// Log.d(LOG, "Trying to hide soft keyboard.");\r
+// final InputMethodManager manager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);\r
+// manager.hideSoftInputFromWindow(searchText, InputMethodManager.SHOW_FORCED);\r
+\r
+ }\r
return super.onKeyDown(keyCode, event);\r
}\r
\r
// IndexAdapter\r
// --------------------------------------------------------------------------\r
\r
- static final class IndexAdapter extends BaseAdapter {\r
+ final class IndexAdapter extends BaseAdapter {\r
\r
final Index index;\r
\r
\r
final String col2Text = index.swapPairEntries ? pair.lang1 : pair.lang2;\r
column2.setText(col2Text, TextView.BufferType.NORMAL);\r
+ \r
+ column1.setTextSize(TypedValue.COMPLEX_UNIT_SP, fontSizeSp);\r
+ column2.setTextSize(TypedValue.COMPLEX_UNIT_SP, fontSizeSp);\r
\r
result.addView(tableRow);\r
}\r
private View getView(TokenRow row, ViewGroup parent) {\r
final TextView textView = new TextView(parent.getContext());\r
textView.setText(row.getToken());\r
- textView.setTextSize(20);\r
+ textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 6 * fontSizeSp / 5);\r
return textView;\r
}\r
\r