X-Git-Url: http://gitweb.fperrin.net/?a=blobdiff_plain;f=src%2Fcom%2Fhughes%2Fandroid%2Fdictionary%2FDictionaryActivity.java;h=76915dfa9c48f90affb7eb896877e74d28166834;hb=83d497f704ad1f8ba85190255d46a3fbe0e3c353;hp=8123c9d6db037e58c0d175bc0c7347f9e9e00f78;hpb=c420b085feb0397ea273bbd00ebeeb67adbcaf78;p=Dictionary.git diff --git a/src/com/hughes/android/dictionary/DictionaryActivity.java b/src/com/hughes/android/dictionary/DictionaryActivity.java index 8123c9d..76915df 100644 --- a/src/com/hughes/android/dictionary/DictionaryActivity.java +++ b/src/com/hughes/android/dictionary/DictionaryActivity.java @@ -784,7 +784,8 @@ public class DictionaryActivity extends ActionBarActivity { Log.e(LOG, "TTS not available in this language: ttsResult=" + ttsResult); } } catch (Exception e) { - Toast.makeText(this, getString(R.string.TTSbroken), Toast.LENGTH_LONG).show(); + if (!isFinishing()) + Toast.makeText(this, getString(R.string.TTSbroken), Toast.LENGTH_LONG).show(); } } @@ -819,7 +820,7 @@ public class DictionaryActivity extends ActionBarActivity { final List installedDicts = application.getDictionariesOnDevice(null); - ListView listView = (ListView) dialog.findViewById(android.R.id.list); + ListView listView = dialog.findViewById(android.R.id.list); final Button button = new Button(listView.getContext()); final String name = getString(R.string.dictionaryManager); button.setText(name); @@ -974,8 +975,6 @@ public class DictionaryActivity extends ActionBarActivity { } }); - application.onCreateGlobalOptionsMenu(this, menu); - { final MenuItem dictionaryManager = menu.add(getString(R.string.dictionaryManager)); MenuItemCompat.setShowAsAction(dictionaryManager, MenuItem.SHOW_AS_ACTION_NEVER); @@ -996,7 +995,7 @@ public class DictionaryActivity extends ActionBarActivity { final Context context = getListView().getContext(); final Dialog dialog = new Dialog(context); dialog.setContentView(R.layout.about_dictionary_dialog); - final TextView textView = (TextView) dialog.findViewById(R.id.text); + final TextView textView = dialog.findViewById(R.id.text); dialog.setTitle(dictFileTitleName); @@ -1046,6 +1045,8 @@ public class DictionaryActivity extends ActionBarActivity { }); } + DictionaryApplication.onCreateGlobalOptionsMenu(this, menu); + return true; } @@ -1061,7 +1062,7 @@ public class DictionaryActivity extends ActionBarActivity { if (clickOpensContextMenu && (row instanceof HtmlEntry.Row || (row instanceof TokenRow && ((TokenRow)row).getIndexEntry().htmlEntries.size() > 0))) { final List html = row instanceof TokenRow ? ((TokenRow)row).getIndexEntry().htmlEntries : Collections.singletonList(((HtmlEntry.Row)row).getEntry()); - final String highlight = row instanceof HtmlEntry.Row ? ((HtmlEntry.Row)row).getTokenRow(true).getToken() : null; + final String highlight = row instanceof HtmlEntry.Row ? row.getTokenRow(true).getToken() : null; final MenuItem open = menu.add("Open"); open.setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() { public boolean onMenuItemClick(MenuItem item) { @@ -1598,6 +1599,7 @@ public class DictionaryActivity extends ActionBarActivity { final int rowCount = entry.pairs.size(); if (result == null) { result = new TableLayout(context); + result.setStretchAllColumns(true); // Because we have a Button inside a ListView row: // http://groups.google.com/group/android-developers/browse_thread/thread/3d96af1530a7d62a?pli=1 result.setDescendantFocusability(ViewGroup.FOCUS_BLOCK_DESCENDANTS); @@ -1611,11 +1613,10 @@ public class DictionaryActivity extends ActionBarActivity { result.removeViews(rowCount, result.getChildCount() - rowCount); } - final TableRow.LayoutParams layoutParams = new TableRow.LayoutParams(); - layoutParams.weight = 0.5f; - layoutParams.leftMargin = mPaddingLarge; - for (int r = result.getChildCount(); r < rowCount; ++r) { + final TableRow.LayoutParams layoutParams = new TableRow.LayoutParams(0, LinearLayout.LayoutParams.WRAP_CONTENT); + layoutParams.leftMargin = mPaddingLarge; + final TableRow tableRow = new TableRow(result.getContext()); final TextView col1 = new TextView(tableRow.getContext()); @@ -1624,6 +1625,8 @@ public class DictionaryActivity extends ActionBarActivity { col1.setTextIsSelectable(true); col2.setTextIsSelectable(true); } + col1.setTextColor(textColorFg); + col2.setTextColor(textColorFg); // Set the columns in the table. if (r > 0) { @@ -1710,8 +1713,6 @@ public class DictionaryActivity extends ActionBarActivity { textView.setOnLongClickListener(indexIndex > 0 ? textViewLongClickListenerIndex1 : textViewLongClickListenerIndex0); textView.setLongClickable(true); - // Doesn't work: - // textView.setTextColor(android.R.color.secondary_text_light); textView.setTypeface(typeface); if (isTokenRow) { textView.setTextAppearance(context, theme.tokenRowFg); @@ -1719,6 +1720,7 @@ public class DictionaryActivity extends ActionBarActivity { } else { textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, fontSizeSp); } + textView.setTextColor(textColorFg); if (!htmlEntries.isEmpty()) { textView.setClickable(true); textView.setMovementMethod(LinkMovementMethod.getInstance()); @@ -1829,7 +1831,7 @@ public class DictionaryActivity extends ActionBarActivity { final Dialog dialog = new Dialog(getListView().getContext()); dialog.setContentView(R.layout.thadolina_dialog); dialog.setTitle("Ti amo, amore mio!"); - final ImageView imageView = (ImageView) dialog.findViewById(R.id.thadolina_image); + final ImageView imageView = dialog.findViewById(R.id.thadolina_image); imageView.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) {