<string name="prefs_recommend">Recommend to a friend</string>
<string name="prefs_feedback">Feedback</string>
<string name="prefs_imprint">Imprint</string>
-
+ <string name="prefs_remember_last_share_location">Remember share location</string>
+ <string name="prefs_remember_last_upload_location_summary">Remember last share upload location</string>
+
<string name="recommend_subject">"Try %1$s on your smartphone!"</string>
<string name="recommend_text">"I want to invite you to use %1$s on your smartphone!\nDownload here: %2$s"</string>
<string name="uploader_wrn_no_content_text">No content was received. Nothing to upload.</string>
<string name="uploader_error_forbidden_content">%1$s is not allowed to access the shared content</string>
<string name="uploader_info_uploading">Uploading</string>
+ <string name="file_list_seconds_ago">seconds ago</string>
<string name="file_list_empty">Nothing in here. Upload something!</string>
<string name="file_list_loading">Loading...</string>
<string name="local_file_list_empty">There are no files in this folder.</string>
+ <string name="file_list_folder">folder</string>
+ <string name="file_list_folders">folders</string>
+ <string name="file_list_file">file</string>
+ <string name="file_list_files">files</string>
<string name="filedetails_select_file">Tap on a file to display additional information.</string>
<string name="filedetails_size">Size:</string>
<string name="filedetails_type">Type:</string>
<string name="network_error_socket_timeout_exception">An error occurred while waiting for the server, the operation couldn\'t have been done</string>
<string name="network_error_connect_timeout_exception">An error occurred while waiting for the server, the operation couldn\'t have been done</string>
<string name="network_host_not_available">The operation couldn\'t be completed, server is unavailable</string>
+
<string name="empty"></string>
<string name="forbidden_permissions">You do not have permission %s</string>
<string name="actionbar_logger">Logs</string>
<string name="log_send_history_button">Send History</string>
- <string name="log_mail_subject">ownCloud Android app logs</string>
- <string name="log_progress_dialog_text">Loading data...</string>
+ <string name="log_send_no_mail_app">No app for sending logs found. Install mail app!</string>
+ <string name="log_send_mail_subject">%1$s Android app logs</string>
+ <string name="log_progress_dialog_text">Loading data…</string>
<string name="saml_authentication_required_text">Authentication required</string>
<string name="saml_authentication_wrong_pass">Wrong password</string>
<string name="actionbar_move">Move</string>
<string name="file_list_empty_moving">Nothing in here. You can add a folder!</string>
- <string name="move_choose_button_text">Choose</string>
+ <string name="folder_picker_choose_button_text">Choose</string>
<string name="move_file_not_found">Unable to move. Please check whether the file exists</string>
<string name="move_file_invalid_into_descendent">It is not possible to move a folder into a descendant</string>
<string name="prefs_category_instant_uploading">Instant Uploads</string>
<string name="prefs_category_security">Security</string>
+ <string name="prefs_instant_video_upload_path_title">Upload Video Path</string>
+
</resources>
import java.lang.reflect.Field;
import java.util.ArrayList;
+ import android.content.ActivityNotFoundException;
import android.content.Intent;
import android.net.Uri;
import android.os.AsyncTask;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
+ import android.widget.Toast;
import com.actionbarsherlock.app.ActionBar;
import com.actionbarsherlock.app.SherlockFragmentActivity;
private static final String MAIL_ATTACHMENT_TYPE = "text/plain";
+ private static final String KEY_LOG_TEXT = "LOG_TEXT";
+
private static final String TAG = LogHistoryActivity.class.getSimpleName();
private static final String DIALOG_WAIT_TAG = "DIALOG_WAIT";
private String mLogPath = FileStorageUtils.getLogPath();
private File logDIR = null;
+ private String mLogText;
@Override
actionBar.setDisplayHomeAsUpEnabled(true);
Button deleteHistoryButton = (Button) findViewById(R.id.deleteLogHistoryButton);
Button sendHistoryButton = (Button) findViewById(R.id.sendLogHistoryButton);
+ TextView logTV = (TextView) findViewById(R.id.logTV);
deleteHistoryButton.setOnClickListener(new OnClickListener() {
}
});
- if (mLogPath != null) {
- logDIR = new File(mLogPath);
- }
-
- if (logDIR != null && logDIR.isDirectory()) {
- // Show a dialog while log data is being loaded
- showLoadingDialog();
-
- TextView logTV = (TextView) findViewById(R.id.logTV);
+ if (savedInstanceState == null) {
+ if (mLogPath != null) {
+ logDIR = new File(mLogPath);
+ }
- // Start a new thread that will load all the log data
- LoadingLogTask task = new LoadingLogTask(logTV);
- task.execute();
+ if (logDIR != null && logDIR.isDirectory()) {
+ // Show a dialog while log data is being loaded
+ showLoadingDialog();
+ // Start a new thread that will load all the log data
+ LoadingLogTask task = new LoadingLogTask(logTV);
+ task.execute();
+ }
+ } else {
+ mLogText = savedInstanceState.getString(KEY_LOG_TEXT);
+ logTV.setText(mLogText);
}
}
*/
private void sendMail() {
+ // For the moment we need to consider the possibility that setup.xml
+ // does not include the "mail_logger" entry. This block prevents that
+ // compilation fails in this case.
String emailAddress;
try {
Class<?> stringClass = R.string.class;
Field mailLoggerField = stringClass.getField("mail_logger");
- int emailAddressId = (Integer)mailLoggerField.get(null);
+ int emailAddressId = (Integer) mailLoggerField.get(null);
emailAddress = getString(emailAddressId);
-
} catch (Exception e) {
emailAddress = "";
}
-
+
ArrayList<Uri> uris = new ArrayList<Uri>();
// Convert from paths to Android friendly Parcelable Uri's
for (String file : Log_OC.getLogFileNames())
{
- if (new File(mLogPath + File.separator, file).exists()) {
- Uri u = Uri.parse("file://" + mLogPath + File.separator + file);
- uris.add(u);
+ File logFile = new File(mLogPath, file);
+ if (logFile.exists()) {
+ uris.add(Uri.fromFile(logFile));
}
}
Intent intent = new Intent(Intent.ACTION_SEND_MULTIPLE);
- // Explicitly only use Gmail to send
- intent.setClassName("com.google.android.gm","com.google.android.gm.ComposeActivityGmail");
- intent.putExtra(Intent.EXTRA_EMAIL, new String[]{ emailAddress });
- intent.putExtra(Intent.EXTRA_SUBJECT, getText(R.string.log_mail_subject));
+ intent.putExtra(Intent.EXTRA_EMAIL, emailAddress);
+ String subject = String.format(getString(R.string.log_send_mail_subject), getString(R.string.app_name));
+ intent.putExtra(Intent.EXTRA_SUBJECT, subject);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setType(MAIL_ATTACHMENT_TYPE);
intent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, uris);
-
- if (intent.resolveActivity(getPackageManager()) != null) {
+ try {
startActivity(intent);
+ } catch (ActivityNotFoundException e) {
+ Toast.makeText(this, getString(R.string.log_send_no_mail_app), Toast.LENGTH_LONG).show();
+ Log_OC.i(TAG, "Could not find app for sending log history.");
}
+
}
/**
if (textViewReference != null && result != null) {
final TextView logTV = textViewReference.get();
if (logTV != null) {
- logTV.setText(result);
+ mLogText = result;
+ logTV.setText(mLogText);
dismissLoadingDialog();
}
}
loading.dismiss();
}
}
+
+ @Override
+ protected void onSaveInstanceState(Bundle outState) {
+ super.onSaveInstanceState(outState);
+
+ /// global state
+ outState.putString(KEY_LOG_TEXT, mLogText);
+ }
}