summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBrad Stewart <[email protected]>2013-03-31 16:47:05 -0400
committerAndrew Dolgov <[email protected]>2013-04-10 08:03:55 +0400
commitfc42b73ba599211bbdeda5da42d7710eb6976f81 (patch)
tree11fcaf91cd31befbb543a4c31f62c5b0df9fd7af /src
parentbea25547115e26658ce64d4799ad5bd8f3cf48b8 (diff)
View title text on images
Conflicts: res/values-fr/strings.xml res/values/strings.xml
Diffstat (limited to 'src')
-rw-r--r--src/org/fox/ttrss/OnlineActivity.java38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/org/fox/ttrss/OnlineActivity.java b/src/org/fox/ttrss/OnlineActivity.java
index 13b2925c..945ac3b2 100644
--- a/src/org/fox/ttrss/OnlineActivity.java
+++ b/src/org/fox/ttrss/OnlineActivity.java
@@ -44,12 +44,19 @@ import android.webkit.WebView.HitTestResult;
import android.widget.EditText;
import android.widget.SearchView;
import android.widget.ShareActionProvider;
+import android.widget.TextView;
import com.google.gson.Gson;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.reflect.TypeToken;
+import org.jsoup.Jsoup;
+import org.jsoup.nodes.Document;
+import org.jsoup.nodes.Element;
+import org.jsoup.select.Elements;
+
+
public class OnlineActivity extends CommonActivity {
private final String TAG = this.getClass().getSimpleName();
@@ -564,6 +571,37 @@ public class OnlineActivity extends CommonActivity {
startActivity(Intent.createChooser(intent, getLastContentImageHitTestUrl()));
}
return true;
+ case R.id.article_img_view_caption:
+ if (getLastContentImageHitTestUrl() != null) {
+
+ // Android doesn't give us an easy way to access title tags;
+ // we'll use Jsoup on the body text to grab the title text
+ // from the first image tag with this url. This will show
+ // the wrong text if an image is used multiple times.
+ Document doc = Jsoup.parse(ap.getSelectedArticle().content);
+ Elements es = doc.getElementsByAttributeValue("src", getLastContentImageHitTestUrl());
+ if (es.size() > 0){
+ if (es.get(0).hasAttr("title")){
+ Dialog dia = new Dialog(this);
+ if (es.get(0).hasAttr("alt")){
+ dia.setTitle(es.get(0).attr("alt"));
+ } else {
+ dia.setTitle(es.get(0).attr("title"));
+ }
+ TextView titleText = new TextView(this);
+ titleText.setPaddingRelative(24, 24, 24, 24);
+ titleText.setTextSize(16);
+ titleText.setText(es.get(0).attr("title"));
+ dia.setContentView(titleText);
+ dia.show();
+ } else {
+ toast(R.string.no_caption_to_display);
+ }
+ } else {
+ toast(R.string.no_caption_to_display);
+ }
+ }
+ return true;
case R.id.article_link_share:
if (ap != null && ap.getSelectedArticle() != null) {
shareArticle(ap.getSelectedArticle());