diff --git a/core/res/drawable-hdpi/ic_action_info_dark.png b/core/res/drawable-hdpi/ic_action_info_dark.png
new file mode 100755
index 00000000..2bc2c0c1
Binary files /dev/null and b/core/res/drawable-hdpi/ic_action_info_dark.png differ
diff --git a/core/res/drawable-hdpi/ic_action_info_light.png b/core/res/drawable-hdpi/ic_action_info_light.png
new file mode 100755
index 00000000..3e1f5b43
Binary files /dev/null and b/core/res/drawable-hdpi/ic_action_info_light.png differ
diff --git a/core/res/drawable-mdpi/ic_action_info_dark.png b/core/res/drawable-mdpi/ic_action_info_dark.png
new file mode 100755
index 00000000..7be15b95
Binary files /dev/null and b/core/res/drawable-mdpi/ic_action_info_dark.png differ
diff --git a/core/res/drawable-mdpi/ic_action_info_light.png b/core/res/drawable-mdpi/ic_action_info_light.png
new file mode 100755
index 00000000..715ffcc3
Binary files /dev/null and b/core/res/drawable-mdpi/ic_action_info_light.png differ
diff --git a/core/res/drawable-xhdpi/ic_action_info_dark.png b/core/res/drawable-xhdpi/ic_action_info_dark.png
new file mode 100755
index 00000000..86ec02dc
Binary files /dev/null and b/core/res/drawable-xhdpi/ic_action_info_dark.png differ
diff --git a/core/res/drawable-xhdpi/ic_action_info_light.png b/core/res/drawable-xhdpi/ic_action_info_light.png
new file mode 100755
index 00000000..13490fd0
Binary files /dev/null and b/core/res/drawable-xhdpi/ic_action_info_light.png differ
diff --git a/core/res/drawable-xxhdpi/ic_action_info_dark.png b/core/res/drawable-xxhdpi/ic_action_info_dark.png
new file mode 100755
index 00000000..2c168948
Binary files /dev/null and b/core/res/drawable-xxhdpi/ic_action_info_dark.png differ
diff --git a/core/res/drawable-xxhdpi/ic_action_info_light.png b/core/res/drawable-xxhdpi/ic_action_info_light.png
new file mode 100755
index 00000000..26bd0768
Binary files /dev/null and b/core/res/drawable-xxhdpi/ic_action_info_light.png differ
diff --git a/core/res/menu/fragment_rssitems_cab.xml b/core/res/menu/fragment_rssitems_cab.xml
index 0edbe7ed..07ca6b1a 100644
--- a/core/res/menu/fragment_rssitems_cab.xml
+++ b/core/res/menu/fragment_rssitems_cab.xml
@@ -22,4 +22,22 @@
android:showAsAction="always"
android:title="@string/action_addall" />
+
+
+
+
+
+
diff --git a/core/res/menu/fragment_searchresults_cab.xml b/core/res/menu/fragment_searchresults_cab.xml
index e80c76c8..5bdbe14c 100644
--- a/core/res/menu/fragment_searchresults_cab.xml
+++ b/core/res/menu/fragment_searchresults_cab.xml
@@ -16,16 +16,16 @@
-->
diff --git a/core/res/values/attrs.xml b/core/res/values/attrs.xml
index 820371c5..71ca0075 100644
--- a/core/res/values/attrs.xml
+++ b/core/res/values/attrs.xml
@@ -23,7 +23,9 @@
+
+
@@ -43,7 +45,6 @@
-
diff --git a/core/res/values/strings.xml b/core/res/values/strings.xml
index 8190c96f..227dacc1 100644
--- a/core/res/values/strings.xml
+++ b/core/res/values/strings.xml
@@ -62,8 +62,11 @@
Remote play in VLC
Download using FTP(S)
Show details
+ Open website
+ Use as new search
Remove settings
Visit transdroid.org
+ Close
%1$s allows you to monitor and manage the torrent client you run at home or on your seedbox. Setting things up can be a bit tricky, but we offer step-by-step guides and promise it\'ll be worth it!
Connected, but no torrents are active within the current filter
diff --git a/core/res/values/styles.xml b/core/res/values/styles.xml
index 35ef04d7..5362cc78 100644
--- a/core/res/values/styles.xml
+++ b/core/res/values/styles.xml
@@ -24,6 +24,7 @@
- @drawable/ic_action_discard_light
- @drawable/ic_action_done_light
- @drawable/ic_action_filter_light
+ - @drawable/ic_action_info_light
- @drawable/ic_action_labels_light
- @drawable/ic_action_new_light
- @drawable/ic_action_pause_light
@@ -58,6 +59,7 @@
- @drawable/ic_action_discard_dark
- @drawable/ic_action_done_dark
- @drawable/ic_action_filter_dark
+ - @drawable/ic_action_info_dark
- @drawable/ic_action_labels_dark
- @drawable/ic_action_new_dark
- @drawable/ic_action_pause_dark
diff --git a/core/src/org/transdroid/core/gui/rss/RssitemsFragment.java b/core/src/org/transdroid/core/gui/rss/RssitemsFragment.java
index 6a92b40b..f8a265aa 100644
--- a/core/src/org/transdroid/core/gui/rss/RssitemsFragment.java
+++ b/core/src/org/transdroid/core/gui/rss/RssitemsFragment.java
@@ -27,13 +27,23 @@ import org.androidannotations.annotations.ItemClick;
import org.androidannotations.annotations.ViewById;
import org.transdroid.core.R;
import org.transdroid.core.gui.TorrentsActivity_;
+import org.transdroid.core.gui.navigation.NavigationHelper;
import org.transdroid.core.gui.navigation.SelectionManagerMode;
+import org.transdroid.core.gui.search.SearchActivity_;
import org.transdroid.core.rssparser.Channel;
import org.transdroid.core.rssparser.Item;
+import android.app.AlertDialog;
+import android.app.Dialog;
+import android.app.SearchManager;
import android.content.Intent;
+import android.net.Uri;
+import android.os.Bundle;
+import android.support.v4.app.DialogFragment;
+import android.text.TextUtils;
import android.view.View;
import android.widget.TextView;
+import android.widget.Toast;
import com.actionbarsherlock.app.SherlockFragment;
import com.actionbarsherlock.view.ActionMode;
@@ -42,6 +52,8 @@ import com.actionbarsherlock.view.MenuItem;
import com.actionbarsherlock.view.SherlockListView;
import com.actionbarsherlock.view.SherlockListView.MultiChoiceModeListenerCompat;
+import de.keyboardsurfer.android.widget.crouton.Crouton;
+
/**
* Fragment that lists the items in a specific RSS feed
* @author Eric Kok
@@ -151,6 +163,35 @@ public class RssitemsFragment extends SherlockFragment {
mode.finish();
return true;
} else {
+ // The other items only operate on one (the first) selected item
+ if (checked.size() < 1)
+ return false;
+ final Item first = checked.get(0);
+ if (itemId == R.id.action_showdetails) {
+ // Show a dialog box with the RSS item description text
+ new DialogFragment() {
+ public Dialog onCreateDialog(Bundle savedInstanceState) {
+ return new AlertDialog.Builder(getActivity()).setMessage(first.getDescription())
+ .setPositiveButton(R.string.action_close, null).create();
+ };
+ }.show(getFragmentManager(), "RssItemDescription");
+ } else if (itemId == R.id.action_openwebsite) {
+ // Open the browser to show the website contained in the item's link tag
+ Toast.makeText(getActivity(), getString(R.string.search_openingdetails, first.getTitle()),
+ Toast.LENGTH_LONG).show();
+ if (!TextUtils.isEmpty(first.getLink())) {
+ startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(first.getLink())));
+ } else {
+ // No URL was specified in the RSS feed item link tag (or no link tag was present)
+ Crouton.showText(getActivity(), R.string.error_no_link, NavigationHelper.CROUTON_ERROR_STYLE);
+ }
+ } else if (itemId == R.id.action_useassearch) {
+ // Use the RSS item title to start a new search (mimicking the search manager style)
+ Intent search = SearchActivity_.intent(getActivity()).get();
+ search.setAction(Intent.ACTION_SEARCH);
+ search.putExtra(SearchManager.QUERY, first.getTitle());
+ startActivity(search);
+ }
return false;
}
}
diff --git a/core/src/org/transdroid/core/service/AppUpdateService.java b/core/src/org/transdroid/core/service/AppUpdateService.java
index 1180442d..381deed0 100644
--- a/core/src/org/transdroid/core/service/AppUpdateService.java
+++ b/core/src/org/transdroid/core/service/AppUpdateService.java
@@ -87,7 +87,7 @@ public class AppUpdateService extends IntentService {
Calendar lastDay = Calendar.getInstance();
lastDay.add(Calendar.DAY_OF_MONTH, -1);
if (lastChecked != null && lastChecked.after(lastDay.getTime())) {
- Log.d(this, "Ship the update service, as we already checked the last 24 hours (or to be exact at "
+ Log.d(this, "Skip the update service, as we already checked the last 24 hours (or to be exact at "
+ lastChecked.toString() + ").");
return;
}