Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/stefan-niedermann/nextcloud-notes.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Niedermann <info@niedermann.it>2021-03-13 14:28:23 +0300
committerStefan Niedermann <info@niedermann.it>2021-03-13 14:28:23 +0300
commit56c28a296b4624077fb9a7231dea063d49ddd374 (patch)
treec60e6f628c7540224d01af7279c074e068183997 /app/src/main
parent0c01f258c25d6fa2b162730324ea0e3a821c8fd6 (diff)
parent40f8fe69de96b228b5cabbe7f7b292181a2d3fd8 (diff)
Merge branch 'master' into 831-room
# Conflicts: # app/build.gradle # app/src/main/java/it/niedermann/owncloud/notes/shared/util/NoteUtil.java # app/src/main/java/it/niedermann/owncloud/notes/widget/notelist/NoteListWidget.java # app/src/main/java/it/niedermann/owncloud/notes/widget/notelist/NoteListWidgetFactory.java # app/src/main/java/it/niedermann/owncloud/notes/widget/singlenote/SingleNoteWidget.java # app/src/main/java/it/niedermann/owncloud/notes/widget/singlenote/SingleNoteWidgetFactory.java # app/src/test/java/android/text/TextUtils.java
Diffstat (limited to 'app/src/main')
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/edit/SearchableBaseNoteFragment.java2
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/exception/tips/TipsAdapter.java4
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/shared/util/NoteUtil.java5
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/widget/notelist/NoteListWidget.java144
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/widget/notelist/NoteListWidgetFactory.java134
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/widget/singlenote/SingleNoteWidget.java57
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/widget/singlenote/SingleNoteWidgetFactory.java32
-rw-r--r--app/src/main/res/drawable/note_list_widget_preview.pngbin12466 -> 249967 bytes
-rw-r--r--app/src/main/res/drawable/single_note_widget.pngbin11035 -> 265445 bytes
-rw-r--r--app/src/main/res/drawable/widget_background.xml10
-rw-r--r--app/src/main/res/layout/widget_entry.xml8
-rw-r--r--app/src/main/res/layout/widget_entry_add.xml38
-rw-r--r--app/src/main/res/layout/widget_entry_dark.xml39
-rw-r--r--app/src/main/res/layout/widget_note_list.xml60
-rw-r--r--app/src/main/res/layout/widget_note_list_dark.xml77
-rw-r--r--app/src/main/res/layout/widget_single_note.xml8
-rw-r--r--app/src/main/res/layout/widget_single_note_content.xml2
-rw-r--r--app/src/main/res/layout/widget_single_note_content_dark.xml8
-rw-r--r--app/src/main/res/layout/widget_single_note_dark.xml24
-rw-r--r--app/src/main/res/values-ar/strings.xml1
-rw-r--r--app/src/main/res/values-ca/strings.xml1
-rw-r--r--app/src/main/res/values-cs-rCZ/strings.xml5
-rw-r--r--app/src/main/res/values-de/strings.xml5
-rw-r--r--app/src/main/res/values-el/strings.xml1
-rw-r--r--app/src/main/res/values-es/strings.xml2
-rw-r--r--app/src/main/res/values-eu/strings.xml5
-rw-r--r--app/src/main/res/values-fa/strings.xml1
-rw-r--r--app/src/main/res/values-fi-rFI/strings.xml1
-rw-r--r--app/src/main/res/values-fr/strings.xml2
-rw-r--r--app/src/main/res/values-gl/strings.xml5
-rw-r--r--app/src/main/res/values-hr/strings.xml1
-rw-r--r--app/src/main/res/values-hu-rHU/strings.xml1
-rw-r--r--app/src/main/res/values-it/strings.xml2
-rw-r--r--app/src/main/res/values-ja-rJP/strings.xml1
-rw-r--r--app/src/main/res/values-ko/strings.xml1
-rw-r--r--app/src/main/res/values-lt-rLT/strings.xml1
-rw-r--r--app/src/main/res/values-nb-rNO/strings.xml1
-rw-r--r--app/src/main/res/values-night/colors.xml4
-rw-r--r--app/src/main/res/values-nl/strings.xml5
-rw-r--r--app/src/main/res/values-pl/strings.xml5
-rw-r--r--app/src/main/res/values-pt-rBR/strings.xml5
-rw-r--r--app/src/main/res/values-ru/strings.xml3
-rw-r--r--app/src/main/res/values-sc/strings.xml1
-rw-r--r--app/src/main/res/values-sk-rSK/strings.xml1
-rw-r--r--app/src/main/res/values-sl/strings.xml6
-rw-r--r--app/src/main/res/values-sr/strings.xml1
-rw-r--r--app/src/main/res/values-sv/strings.xml3
-rw-r--r--app/src/main/res/values-tr/strings.xml5
-rw-r--r--app/src/main/res/values-uk/strings.xml1
-rw-r--r--app/src/main/res/values-zh-rCN/strings.xml5
-rw-r--r--app/src/main/res/values-zh-rHK/strings.xml68
-rw-r--r--app/src/main/res/values/colors.xml15
-rw-r--r--app/src/main/res/values/dimens.xml6
-rw-r--r--app/src/main/res/values/strings.xml2
54 files changed, 328 insertions, 497 deletions
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/edit/SearchableBaseNoteFragment.java b/app/src/main/java/it/niedermann/owncloud/notes/edit/SearchableBaseNoteFragment.java
index 5ae9b22a..bfbb798b 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/edit/SearchableBaseNoteFragment.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/edit/SearchableBaseNoteFragment.java
@@ -127,7 +127,7 @@ public abstract class SearchableBaseNoteFragment extends BaseNoteFragment {
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
private DelayQueryRunnable delayQueryTask;
- private Handler handler = new Handler();
+ private final Handler handler = new Handler();
@Override
public boolean onQueryTextSubmit(@NonNull String query) {
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/exception/tips/TipsAdapter.java b/app/src/main/java/it/niedermann/owncloud/notes/exception/tips/TipsAdapter.java
index 2f7b9845..694d8a33 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/exception/tips/TipsAdapter.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/exception/tips/TipsAdapter.java
@@ -81,6 +81,10 @@ public class TipsAdapter extends RecyclerView.Adapter<TipsViewHolder> {
}
add(R.string.error_dialog_tip_files_force_stop);
add(R.string.error_dialog_tip_files_delete_storage);
+ Intent intent = new Intent(ACTION_APPLICATION_DETAILS_SETTINGS)
+ .setData(Uri.parse("package:" + BuildConfig.APPLICATION_ID))
+ .putExtra(INTENT_EXTRA_BUTTON_TEXT, R.string.error_action_open_deck_info);
+ add(R.string.error_dialog_tip_clear_storage, intent);
} else if (t instanceof SocketTimeoutException || t instanceof ConnectException) {
add(R.string.error_dialog_timeout_instance);
add(R.string.error_dialog_timeout_toggle, new Intent(Settings.ACTION_WIFI_SETTINGS).putExtra(INTENT_EXTRA_BUTTON_TEXT, R.string.error_action_open_network));
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/shared/util/NoteUtil.java b/app/src/main/java/it/niedermann/owncloud/notes/shared/util/NoteUtil.java
index 32caeaaf..e5b8afae 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/shared/util/NoteUtil.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/shared/util/NoteUtil.java
@@ -10,6 +10,7 @@ import androidx.annotation.Nullable;
import it.niedermann.owncloud.notes.R;
import static it.niedermann.android.markdown.MarkdownUtil.removeMarkdown;
+import static it.niedermann.android.markdown.MarkdownUtil.replaceCheckboxesWithEmojis;
/**
* Provides basic functionality for Note operations.
@@ -63,12 +64,12 @@ public class NoteUtil {
*/
@NonNull
public static String generateNoteExcerpt(@NonNull String content, @Nullable String title) {
- content = removeMarkdown(content.trim());
+ content = removeMarkdown(replaceCheckboxesWithEmojis(content.trim()));
if (TextUtils.isEmpty(content)) {
return "";
}
if (!TextUtils.isEmpty(title)) {
- final String trimmedTitle = removeMarkdown(title.trim());
+ final String trimmedTitle = removeMarkdown(replaceCheckboxesWithEmojis(title.trim()));
if (content.startsWith(trimmedTitle)) {
content = content.substring(trimmedTitle.length());
}
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/widget/notelist/NoteListWidget.java b/app/src/main/java/it/niedermann/owncloud/notes/widget/notelist/NoteListWidget.java
index e4b60ef8..98ebf2fe 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/widget/notelist/NoteListWidget.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/widget/notelist/NoteListWidget.java
@@ -6,129 +6,46 @@ import android.appwidget.AppWidgetProvider;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
-import android.graphics.Color;
import android.net.Uri;
import android.util.Log;
import android.widget.RemoteViews;
-import androidx.core.content.ContextCompat;
+import java.util.NoSuchElementException;
-import it.niedermann.owncloud.notes.NotesApplication;
import it.niedermann.owncloud.notes.R;
-import it.niedermann.owncloud.notes.branding.BrandingUtil;
-import it.niedermann.owncloud.notes.edit.EditNoteActivity;
-import it.niedermann.owncloud.notes.main.MainActivity;
import it.niedermann.owncloud.notes.persistence.NotesDatabase;
-import it.niedermann.owncloud.notes.persistence.entity.Account;
import it.niedermann.owncloud.notes.persistence.entity.NotesListWidgetData;
-import it.niedermann.owncloud.notes.preferences.DarkModeSetting;
-import it.niedermann.owncloud.notes.shared.model.ENavigationCategoryType;
-import it.niedermann.owncloud.notes.shared.model.NavigationCategory;
-
-import static it.niedermann.owncloud.notes.edit.EditNoteActivity.PARAM_CATEGORY;
-import static it.niedermann.owncloud.notes.persistence.entity.NotesListWidgetData.MODE_DISPLAY_ALL;
-import static it.niedermann.owncloud.notes.persistence.entity.NotesListWidgetData.MODE_DISPLAY_CATEGORY;
-import static it.niedermann.owncloud.notes.persistence.entity.NotesListWidgetData.MODE_DISPLAY_STARRED;
public class NoteListWidget extends AppWidgetProvider {
private static final String TAG = NoteListWidget.class.getSimpleName();
- public static final int PENDING_INTENT_NEW_NOTE_RQ = 0;
- public static final int PENDING_INTENT_EDIT_NOTE_RQ = 1;
- public static final int PENDING_INTENT_OPEN_APP_RQ = 2;
-
static void updateAppWidget(Context context, AppWidgetManager awm, int[] appWidgetIds) {
final NotesDatabase db = NotesDatabase.getInstance(context);
+ RemoteViews views;
+
for (int appWidgetId : appWidgetIds) {
- new Thread(() -> {
- RemoteViews views;
- DarkModeSetting darkTheme;
+ try {
final NotesListWidgetData data = db.getWidgetNotesListDao().getNoteListWidgetData(appWidgetId);
- if (data != null) {
- final Account localAccount = db.getAccountDao().getAccountById(data.getAccountId());
-
- String category = data.getCategory();
-
- darkTheme = DarkModeSetting.fromModeID(data.getThemeMode());
-
- Intent serviceIntent = new Intent(context, NoteListWidgetService.class);
- serviceIntent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetId);
- serviceIntent.setData(Uri.parse(serviceIntent.toUri(Intent.URI_INTENT_SCHEME)));
-
- // Launch application when user taps the header icon or app title
- Intent intent = new Intent(Intent.ACTION_MAIN);
- intent.setComponent(new ComponentName(context.getPackageName(),
- MainActivity.class.getName()));
-
- // Open the main app if the user taps the widget header
- PendingIntent openAppI = PendingIntent.getActivity(context, PENDING_INTENT_OPEN_APP_RQ,
- intent,
- PendingIntent.FLAG_UPDATE_CURRENT);
-
- // Launch create note activity if user taps "+" icon on header
- PendingIntent newNoteI = PendingIntent.getActivity(context, (PENDING_INTENT_NEW_NOTE_RQ + appWidgetId),
- new Intent(context, EditNoteActivity.class).putExtra(PARAM_CATEGORY,
- data.getMode() == MODE_DISPLAY_STARRED
- ? new NavigationCategory(ENavigationCategoryType.FAVORITES)
- : new NavigationCategory(localAccount.getId(), category)),
- PendingIntent.FLAG_UPDATE_CURRENT);
-
- PendingIntent templatePI = PendingIntent.getActivity(context, PENDING_INTENT_EDIT_NOTE_RQ,
- new Intent(context, EditNoteActivity.class),
- PendingIntent.FLAG_UPDATE_CURRENT);
-
- Log.v(TAG, "-- data - " + data);
-
- if (NotesApplication.isDarkThemeActive(context, darkTheme)) {
- views = new RemoteViews(context.getPackageName(), R.layout.widget_note_list_dark);
- views.setTextViewText(R.id.widget_note_list_title_tv_dark, getWidgetTitle(context, data.getMode(), category));
- views.setOnClickPendingIntent(R.id.widget_note_header_icon_dark, openAppI);
- views.setOnClickPendingIntent(R.id.widget_note_list_title_tv_dark, openAppI);
- views.setOnClickPendingIntent(R.id.widget_note_list_create_icon_dark, newNoteI);
- views.setPendingIntentTemplate(R.id.note_list_widget_lv_dark, templatePI);
- views.setRemoteAdapter(R.id.note_list_widget_lv_dark, serviceIntent);
- views.setEmptyView(R.id.note_list_widget_lv_dark, R.id.widget_note_list_placeholder_tv_dark);
- awm.notifyAppWidgetViewDataChanged(appWidgetId, R.id.note_list_widget_lv_dark);
- if (BrandingUtil.isBrandingEnabled(context)) {
- views.setInt(R.id.widget_note_header_dark, "setBackgroundColor", localAccount.getColor());
- views.setInt(R.id.widget_note_header_icon_dark, "setColorFilter", localAccount.getTextColor());
- views.setInt(R.id.widget_note_list_create_icon_dark, "setColorFilter", localAccount.getTextColor());
- views.setTextColor(R.id.widget_note_list_title_tv_dark, localAccount.getTextColor());
- } else {
- views.setInt(R.id.widget_note_header_dark, "setBackgroundColor", ContextCompat.getColor(context, R.color.defaultBrand));
- views.setInt(R.id.widget_note_header_icon_dark, "setColorFilter", Color.WHITE);
- views.setInt(R.id.widget_note_list_create_icon_dark, "setColorFilter", Color.WHITE);
- views.setTextColor(R.id.widget_note_list_title_tv_dark, Color.WHITE);
- }
- } else {
- views = new RemoteViews(context.getPackageName(), R.layout.widget_note_list);
- views.setTextViewText(R.id.widget_note_list_title_tv, getWidgetTitle(context, data.getMode(), category));
- views.setOnClickPendingIntent(R.id.widget_note_header_icon, openAppI);
- views.setOnClickPendingIntent(R.id.widget_note_list_title_tv, openAppI);
- views.setOnClickPendingIntent(R.id.widget_note_list_create_icon, newNoteI);
- views.setPendingIntentTemplate(R.id.note_list_widget_lv, templatePI);
- views.setRemoteAdapter(R.id.note_list_widget_lv, serviceIntent);
- views.setEmptyView(R.id.note_list_widget_lv, R.id.widget_note_list_placeholder_tv);
- awm.notifyAppWidgetViewDataChanged(appWidgetId, R.id.note_list_widget_lv);
- if (BrandingUtil.isBrandingEnabled(context)) {
- views.setInt(R.id.widget_note_header, "setBackgroundColor", localAccount.getColor());
- views.setInt(R.id.widget_note_header_icon, "setColorFilter", localAccount.getTextColor());
- views.setInt(R.id.widget_note_list_create_icon, "setColorFilter", localAccount.getTextColor());
- views.setTextColor(R.id.widget_note_list_title_tv, localAccount.getTextColor());
- } else {
- views.setInt(R.id.widget_note_header, "setBackgroundColor", ContextCompat.getColor(context, R.color.defaultBrand));
- views.setInt(R.id.widget_note_header_icon, "setColorFilter", Color.WHITE);
- views.setInt(R.id.widget_note_list_create_icon, "setColorFilter", Color.WHITE);
- views.setTextColor(R.id.widget_note_list_title_tv, Color.WHITE);
- }
- }
- awm.updateAppWidget(appWidgetId, views);
- } else {
- Log.i(TAG, "onUpdate has been triggered before the user finished configuring the widget");
- }
- }).start();
+ final Intent serviceIntent = new Intent(context, NoteListWidgetService.class);
+ serviceIntent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetId);
+ serviceIntent.setData(Uri.parse(serviceIntent.toUri(Intent.URI_INTENT_SCHEME)));
+
+ final PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, new Intent(), PendingIntent.FLAG_UPDATE_CURRENT | Intent.FILL_IN_COMPONENT);
+
+ Log.v(TAG, "-- data - " + data);
+
+ views = new RemoteViews(context.getPackageName(), R.layout.widget_note_list);
+ views.setRemoteAdapter(R.id.note_list_widget_lv, serviceIntent);
+ views.setPendingIntentTemplate(R.id.note_list_widget_lv, pendingIntent);
+ views.setEmptyView(R.id.note_list_widget_lv, R.id.widget_note_list_placeholder_tv);
+
+ awm.notifyAppWidgetViewDataChanged(appWidgetId, R.id.note_list_widget_lv);
+ awm.updateAppWidget(appWidgetId, views);
+ } catch (NoSuchElementException e) {
+ Log.i(TAG, "onUpdate has been triggered before the user finished configuring the widget");
+ }
}
}
@@ -170,23 +87,6 @@ public class NoteListWidget extends AppWidgetProvider {
}
}
- private static String getWidgetTitle(Context context, int displayMode, String category) {
- switch (displayMode) {
- case MODE_DISPLAY_ALL:
- return context.getString(R.string.app_name);
- case MODE_DISPLAY_STARRED:
- return context.getString(R.string.label_favorites);
- case MODE_DISPLAY_CATEGORY:
- if ("".equals(category)) {
- return context.getString(R.string.action_uncategorized);
- } else {
- return category;
- }
- default:
- return null;
- }
- }
-
/**
* Update note list widgets, if the note data was changed.
*/
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/widget/notelist/NoteListWidgetFactory.java b/app/src/main/java/it/niedermann/owncloud/notes/widget/notelist/NoteListWidgetFactory.java
index 21c7788c..40b0a6a4 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/widget/notelist/NoteListWidgetFactory.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/widget/notelist/NoteListWidgetFactory.java
@@ -1,6 +1,7 @@
package it.niedermann.owncloud.notes.widget.notelist;
import android.appwidget.AppWidgetManager;
+import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
@@ -10,65 +11,61 @@ import android.widget.RemoteViews;
import android.widget.RemoteViewsService;
import androidx.annotation.NonNull;
+import androidx.core.content.ContextCompat;
import java.util.ArrayList;
import java.util.List;
-import it.niedermann.owncloud.notes.NotesApplication;
import it.niedermann.owncloud.notes.R;
import it.niedermann.owncloud.notes.edit.EditNoteActivity;
+import it.niedermann.owncloud.notes.main.MainActivity;
import it.niedermann.owncloud.notes.persistence.NotesDatabase;
+import it.niedermann.owncloud.notes.persistence.entity.Account;
import it.niedermann.owncloud.notes.persistence.entity.Note;
import it.niedermann.owncloud.notes.persistence.entity.NotesListWidgetData;
-import it.niedermann.owncloud.notes.preferences.DarkModeSetting;
-
-import static it.niedermann.owncloud.notes.persistence.entity.NotesListWidgetData.MODE_DISPLAY_ALL;
-import static it.niedermann.owncloud.notes.persistence.entity.NotesListWidgetData.MODE_DISPLAY_CATEGORY;
-import static it.niedermann.owncloud.notes.persistence.entity.NotesListWidgetData.MODE_DISPLAY_STARRED;
+import it.niedermann.owncloud.notes.shared.util.NotesColorUtil;
+import static it.niedermann.owncloud.notes.edit.EditNoteActivity.PARAM_CATEGORY;
public class NoteListWidgetFactory implements RemoteViewsService.RemoteViewsFactory {
private static final String TAG = NoteListWidgetFactory.class.getSimpleName();
- private final NotesDatabase db;
- private final int appWidgetId;
private final Context context;
- private boolean darkTheme;
+ private final int appWidgetId;
+ private final NotesDatabase db;
@NonNull
- private final List<Note> noteEntities = new ArrayList<>();
+ private final List<Note> dbNotes = new ArrayList<>();
NoteListWidgetFactory(Context context, Intent intent) {
this.context = context;
-
this.appWidgetId = intent.getIntExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, AppWidgetManager.INVALID_APPWIDGET_ID);
- this.db = NotesDatabase.getInstance(context);
+ db = NotesDatabase.getInstance(context);
}
@Override
public void onCreate() {
- // NoOp
+ // Nothing to do here…
}
@Override
public void onDataSetChanged() {
- noteEntities.clear();
+ dbNotes.clear();
try {
final NotesListWidgetData data = db.getWidgetNotesListDao().getNoteListWidgetData(appWidgetId);
- darkTheme = NotesApplication.isDarkThemeActive(context, DarkModeSetting.fromModeID(data.getThemeMode()));
Log.v(TAG, "--- data - " + data);
switch (data.getMode()) {
- case MODE_DISPLAY_ALL:
- noteEntities.addAll(db.getNoteDao().searchRecentByModified(data.getAccountId(), "%"));
+ case NotesListWidgetData.MODE_DISPLAY_ALL:
+ dbNotes.addAll(db.getNoteDao().searchRecentByModified(data.getAccountId(), "%"));
break;
- case MODE_DISPLAY_STARRED:
- noteEntities.addAll(db.getNoteDao().searchFavoritesByModified(data.getAccountId(), "%"));
+ case NotesListWidgetData.MODE_DISPLAY_STARRED:
+ dbNotes.addAll(db.getNoteDao().searchFavoritesByModified(data.getAccountId(), "%"));
break;
- case MODE_DISPLAY_CATEGORY:
+ case NotesListWidgetData.MODE_DISPLAY_CATEGORY:
default:
if (data.getCategory() != null) {
- noteEntities.addAll(db.getNoteDao().searchCategoryByModified(data.getAccountId(), "%", data.getCategory()));
+ dbNotes.addAll(db.getNoteDao().searchCategoryByModified(data.getAccountId(), "%", data.getCategory()));
} else {
- noteEntities.addAll(db.getNoteDao().searchUncategorizedByModified(data.getAccountId(), "%"));
+ dbNotes.addAll(db.getNoteDao().searchUncategorizedByModified(data.getAccountId(), "%"));
}
break;
}
@@ -79,44 +76,58 @@ public class NoteListWidgetFactory implements RemoteViewsService.RemoteViewsFact
@Override
public void onDestroy() {
- // NoOp
+ //NoOp
}
@Override
public int getCount() {
- return noteEntities.size();
+ return dbNotes.size() + 1;
}
@Override
public RemoteViews getViewAt(int position) {
- RemoteViews note_content;
-
- if (position > noteEntities.size() - 1 || noteEntities.get(position) == null) {
- Log.e(TAG, "Could not find position \"" + position + "\" in dbNotes list.");
- return null;
- }
+ final RemoteViews note_content;
+
+ if (position == 0) {
+ final Account localAccount = db.getAccountDao().getAccountById(data.getAccountId());
+ final Intent openIntent = new Intent(Intent.ACTION_MAIN).setComponent(new ComponentName(context.getPackageName(), MainActivity.class.getName()));
+ final Intent createIntent = new Intent(context, EditNoteActivity.class);
+ final Bundle extras = new Bundle();
+
+ extras.putSerializable(PARAM_CATEGORY, new Category(category, data.getMode() == MODE_DISPLAY_STARRED));
+ extras.putLong(EditNoteActivity.PARAM_ACCOUNT_ID, data.getAccountId());
+
+ createIntent.putExtras(extras);
+ createIntent.setData(Uri.parse(createIntent.toUri(Intent.URI_INTENT_SCHEME)));
+
+ note_content = new RemoteViews(context.getPackageName(), R.layout.widget_entry_add);
+ note_content.setOnClickFillInIntent(R.id.widget_entry_content_tv, openIntent);
+ note_content.setOnClickFillInIntent(R.id.widget_entry_fav_icon, createIntent);
+ note_content.setTextViewText(R.id.widget_entry_content_tv, getCategoryTitle(context, data.getMode(), category));
+ note_content.setImageViewResource(R.id.widget_entry_fav_icon, R.drawable.ic_add_blue_24dp);
+ note_content.setInt(R.id.widget_entry_fav_icon, "setColorFilter", NotesColorUtil.contrastRatioIsSufficient(ContextCompat.getColor(context, R.color.widget_background), localAccount.getColor())
+ ? localAccount.getColor()
+ : ContextCompat.getColor(context, R.color.widget_foreground));
+ } else {
+ position--;
+ if (position > dbNotes.size() - 1 || dbNotes.get(position) == null) {
+ Log.e(TAG, "Could not find position \"" + position + "\" in dbNotes list.");
+ return null;
+ }
- final Note note = noteEntities.get(position);
- final Intent fillInIntent = new Intent();
- final Bundle extras = new Bundle();
+ final Note note = dbNotes.get(position);
+ final Intent fillInIntent = new Intent(context, EditNoteActivity.class);
+ final Bundle extras = new Bundle();
+ extras.putLong(EditNoteActivity.PARAM_NOTE_ID, note.getId());
+ extras.putLong(EditNoteActivity.PARAM_ACCOUNT_ID, note.getAccountId());
- extras.putLong(EditNoteActivity.PARAM_NOTE_ID, note.getId());
- extras.putLong(EditNoteActivity.PARAM_ACCOUNT_ID, note.getAccountId());
- fillInIntent.putExtras(extras);
- fillInIntent.setData(Uri.parse(fillInIntent.toUri(Intent.URI_INTENT_SCHEME)));
+ fillInIntent.putExtras(extras);
+ fillInIntent.setData(Uri.parse(fillInIntent.toUri(Intent.URI_INTENT_SCHEME)));
- if (darkTheme) {
- note_content = new RemoteViews(context.getPackageName(), R.layout.widget_entry_dark);
- note_content.setOnClickFillInIntent(R.id.widget_note_list_entry_dark, fillInIntent);
- note_content.setTextViewText(R.id.widget_entry_content_tv_dark, note.getTitle());
- note_content.setImageViewResource(R.id.widget_entry_fav_icon_dark, note.getFavorite()
- ? R.drawable.ic_star_yellow_24dp
- : R.drawable.ic_star_grey_ccc_24dp);
- } else {
note_content = new RemoteViews(context.getPackageName(), R.layout.widget_entry);
note_content.setOnClickFillInIntent(R.id.widget_note_list_entry, fillInIntent);
note_content.setTextViewText(R.id.widget_entry_content_tv, note.getTitle());
- note_content.setImageViewResource(R.id.widget_entry_fav_icon, note.getFavorite()
+ note_content.setImageViewResource(R.id.widget_entry_fav_icon, note.isFavorite()
? R.drawable.ic_star_yellow_24dp
: R.drawable.ic_star_grey_ccc_24dp);
}
@@ -125,6 +136,21 @@ public class NoteListWidgetFactory implements RemoteViewsService.RemoteViewsFact
}
+ @NonNull
+ private static String getCategoryTitle(@NonNull Context context, int displayMode, String category) {
+ switch (displayMode) {
+ case MODE_DISPLAY_STARRED:
+ return context.getString(R.string.label_favorites);
+ case MODE_DISPLAY_CATEGORY:
+ return "".equals(category)
+ ? context.getString(R.string.action_uncategorized)
+ : category;
+ case MODE_DISPLAY_ALL:
+ default:
+ return context.getString(R.string.app_name);
+ }
+ }
+
@Override
public RemoteViews getLoadingView() {
return null;
@@ -132,12 +158,22 @@ public class NoteListWidgetFactory implements RemoteViewsService.RemoteViewsFact
@Override
public int getViewTypeCount() {
- return 1;
+ return 2;
}
@Override
- public long getItemId(int i) {
- return i;
+ public long getItemId(int position) {
+ if (position == 0) {
+ return -1;
+ } else {
+ position--;
+ if (position > dbNotes.size() - 1 || dbNotes.get(position) == null) {
+ Log.e(TAG, "Could not find position \"" + position + "\" in dbNotes list.");
+ return -2;
+ }
+ DBNote note = dbNotes.get(position);
+ return note.getId();
+ }
}
@Override
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/widget/singlenote/SingleNoteWidget.java b/app/src/main/java/it/niedermann/owncloud/notes/widget/singlenote/SingleNoteWidget.java
index 3637f72d..3ad56c76 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/widget/singlenote/SingleNoteWidget.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/widget/singlenote/SingleNoteWidget.java
@@ -10,13 +10,11 @@ import android.net.Uri;
import android.util.Log;
import android.widget.RemoteViews;
-import it.niedermann.owncloud.notes.NotesApplication;
import it.niedermann.owncloud.notes.R;
-import it.niedermann.owncloud.notes.edit.BaseNoteFragment;
import it.niedermann.owncloud.notes.edit.EditNoteActivity;
+import it.niedermann.owncloud.notes.edit.BaseNoteFragment;
import it.niedermann.owncloud.notes.persistence.NotesDatabase;
import it.niedermann.owncloud.notes.persistence.entity.SingleNoteWidgetData;
-import it.niedermann.owncloud.notes.preferences.DarkModeSetting;
public class SingleNoteWidget extends AppWidgetProvider {
@@ -27,38 +25,27 @@ public class SingleNoteWidget extends AppWidgetProvider {
final NotesDatabase db = NotesDatabase.getInstance(context);
for (int appWidgetId : appWidgetIds) {
- new Thread(() -> {
- final SingleNoteWidgetData data = db.getWidgetSingleNoteDao().getSingleNoteWidgetData(appWidgetId);
- if (data != null) {
- templateIntent.putExtra(BaseNoteFragment.PARAM_ACCOUNT_ID, data.getAccountId());
-
- final PendingIntent templatePendingIntent = PendingIntent.getActivity(context, appWidgetId, templateIntent,
- PendingIntent.FLAG_UPDATE_CURRENT);
-
- Intent serviceIntent = new Intent(context, SingleNoteWidgetService.class);
- serviceIntent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetId);
- serviceIntent.setData(Uri.parse(serviceIntent.toUri(Intent.URI_INTENT_SCHEME)));
-
- RemoteViews views;
-
- if (NotesApplication.isDarkThemeActive(context, DarkModeSetting.fromModeID(data.getThemeMode()))) {
- views = new RemoteViews(context.getPackageName(), R.layout.widget_single_note_dark);
- views.setPendingIntentTemplate(R.id.single_note_widget_lv_dark, templatePendingIntent);
- views.setRemoteAdapter(R.id.single_note_widget_lv_dark, serviceIntent);
- views.setEmptyView(R.id.single_note_widget_lv_dark, R.id.widget_single_note_placeholder_tv_dark);
- awm.notifyAppWidgetViewDataChanged(appWidgetId, R.id.single_note_widget_lv_dark);
- } else {
- views = new RemoteViews(context.getPackageName(), R.layout.widget_single_note);
- views.setPendingIntentTemplate(R.id.single_note_widget_lv, templatePendingIntent);
- views.setRemoteAdapter(R.id.single_note_widget_lv, serviceIntent);
- views.setEmptyView(R.id.single_note_widget_lv, R.id.widget_single_note_placeholder_tv);
- awm.notifyAppWidgetViewDataChanged(appWidgetId, R.id.single_note_widget_lv);
- }
- awm.updateAppWidget(appWidgetId, views);
- } else {
- Log.i(TAG, "onUpdate has been triggered before the user finished configuring the widget");
- }
- }).start();
+ final SingleNoteWidgetData data = db.getWidgetSingleNoteDao().getSingleNoteWidgetData(appWidgetId);
+ if(data != null) {
+ templateIntent.putExtra(BaseNoteFragment.PARAM_ACCOUNT_ID, data.getAccountId());
+
+ final PendingIntent templatePendingIntent = PendingIntent.getActivity(context, appWidgetId, templateIntent,
+ PendingIntent.FLAG_UPDATE_CURRENT);
+
+ final Intent serviceIntent = new Intent(context, SingleNoteWidgetService.class);
+ serviceIntent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetId);
+ serviceIntent.setData(Uri.parse(serviceIntent.toUri(Intent.URI_INTENT_SCHEME)));
+
+ final RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget_single_note);
+ views.setPendingIntentTemplate(R.id.single_note_widget_lv, templatePendingIntent);
+ views.setRemoteAdapter(R.id.single_note_widget_lv, serviceIntent);
+ views.setEmptyView(R.id.single_note_widget_lv, R.id.widget_single_note_placeholder_tv);
+
+ awm.notifyAppWidgetViewDataChanged(appWidgetId, R.id.single_note_widget_lv);
+ awm.updateAppWidget(appWidgetId, views);
+ } else {
+ Log.i(TAG, "onUpdate has been triggered before the user finished configuring the widget");
+ }
}
}
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/widget/singlenote/SingleNoteWidgetFactory.java b/app/src/main/java/it/niedermann/owncloud/notes/widget/singlenote/SingleNoteWidgetFactory.java
index 75afc57b..db26da24 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/widget/singlenote/SingleNoteWidgetFactory.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/widget/singlenote/SingleNoteWidgetFactory.java
@@ -8,24 +8,23 @@ import android.util.Log;
import android.widget.RemoteViews;
import android.widget.RemoteViewsService;
+import androidx.annotation.Nullable;
+
import it.niedermann.android.markdown.MarkdownUtil;
-import it.niedermann.owncloud.notes.NotesApplication;
import it.niedermann.owncloud.notes.R;
import it.niedermann.owncloud.notes.edit.EditNoteActivity;
import it.niedermann.owncloud.notes.persistence.NotesDatabase;
import it.niedermann.owncloud.notes.persistence.entity.Note;
import it.niedermann.owncloud.notes.persistence.entity.SingleNoteWidgetData;
-import it.niedermann.owncloud.notes.preferences.DarkModeSetting;
-
public class SingleNoteWidgetFactory implements RemoteViewsService.RemoteViewsFactory {
private final Context context;
private final int appWidgetId;
- private NotesDatabase db;
+ private final NotesDatabase db;
+ @Nullable
private Note note;
- private boolean darkModeActive = false;
private static final String TAG = SingleNoteWidget.class.getSimpleName();
@@ -33,12 +32,6 @@ public class SingleNoteWidgetFactory implements RemoteViewsService.RemoteViewsFa
this.context = context;
this.appWidgetId = intent.getIntExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, AppWidgetManager.INVALID_APPWIDGET_ID);
this.db = NotesDatabase.getInstance(context);
-// final SingleNoteWidgetData data = db.getWidgetSingleNoteDao().getSingleNoteWidgetData(appWidgetId);
-// if (data != null) {
-// darkModeActive = NotesApplication.isDarkThemeActive(context, DarkModeSetting.fromModeID(data.getThemeMode()));
-// } else {
-// Log.w(TAG, "Widget with ID " + appWidgetId + " seems to be not configured yet.");
-// }
}
@Override
@@ -49,8 +42,7 @@ public class SingleNoteWidgetFactory implements RemoteViewsService.RemoteViewsFa
@Override
public void onDataSetChanged() {
final SingleNoteWidgetData data = db.getWidgetSingleNoteDao().getSingleNoteWidgetData(appWidgetId);
- if (data != null) {
- darkModeActive = NotesApplication.isDarkThemeActive(context, DarkModeSetting.fromModeID(data.getThemeMode()));
+ if(data != null) {
final long noteId = data.getNoteId();
Log.v(TAG, "Fetch note with id " + noteId);
note = db.getNoteDao().getNoteById(noteId);
@@ -90,24 +82,16 @@ public class SingleNoteWidgetFactory implements RemoteViewsService.RemoteViewsFa
return null;
}
- RemoteViews note_content;
-
final Intent fillInIntent = new Intent();
final Bundle extras = new Bundle();
extras.putLong(EditNoteActivity.PARAM_NOTE_ID, note.getId());
extras.putLong(EditNoteActivity.PARAM_ACCOUNT_ID, note.getAccountId());
fillInIntent.putExtras(extras);
- if (darkModeActive) {
- note_content = new RemoteViews(context.getPackageName(), R.layout.widget_single_note_content_dark);
- note_content.setOnClickFillInIntent(R.id.single_note_content_tv_dark, fillInIntent);
- note_content.setTextViewText(R.id.single_note_content_tv_dark, MarkdownUtil.renderForRemoteView(context, note.getContent()));
- } else {
- note_content = new RemoteViews(context.getPackageName(), R.layout.widget_single_note_content);
- note_content.setOnClickFillInIntent(R.id.single_note_content_tv, fillInIntent);
- note_content.setTextViewText(R.id.single_note_content_tv, MarkdownUtil.renderForRemoteView(context, note.getContent()));
- }
+ final RemoteViews note_content = new RemoteViews(context.getPackageName(), R.layout.widget_single_note_content);
+ note_content.setOnClickFillInIntent(R.id.single_note_content_tv, fillInIntent);
+ note_content.setTextViewText(R.id.single_note_content_tv, MarkdownUtil.renderForRemoteView(context, note.getContent()));
return note_content;
}
diff --git a/app/src/main/res/drawable/note_list_widget_preview.png b/app/src/main/res/drawable/note_list_widget_preview.png
index 5fec9ff5..7e8d086c 100644
--- a/app/src/main/res/drawable/note_list_widget_preview.png
+++ b/app/src/main/res/drawable/note_list_widget_preview.png
Binary files differ
diff --git a/app/src/main/res/drawable/single_note_widget.png b/app/src/main/res/drawable/single_note_widget.png
index b6f02ff4..7d1f126d 100644
--- a/app/src/main/res/drawable/single_note_widget.png
+++ b/app/src/main/res/drawable/single_note_widget.png
Binary files differ
diff --git a/app/src/main/res/drawable/widget_background.xml b/app/src/main/res/drawable/widget_background.xml
new file mode 100644
index 00000000..1d348b58
--- /dev/null
+++ b/app/src/main/res/drawable/widget_background.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<shape xmlns:android="http://schemas.android.com/apk/res/android">
+ <solid android:color="@color/widget_background" />
+ <corners android:radius="@dimen/widget_outer_radius" />
+ <padding
+ android:bottom="0dp"
+ android:left="0dp"
+ android:right="0dp"
+ android:top="0dp" />
+</shape> \ No newline at end of file
diff --git a/app/src/main/res/layout/widget_entry.xml b/app/src/main/res/layout/widget_entry.xml
index 81687c72..460a255b 100644
--- a/app/src/main/res/layout/widget_entry.xml
+++ b/app/src/main/res/layout/widget_entry.xml
@@ -6,8 +6,8 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
- android:paddingStart="@dimen/spacer_1hx"
android:paddingTop="@dimen/spacer_1x"
+ android:paddingStart="@null"
android:paddingEnd="@dimen/spacer_1hx"
android:paddingBottom="@dimen/spacer_1x">
@@ -25,14 +25,16 @@
<TextView
android:id="@+id/widget_entry_content_tv"
android:layout_width="0dp"
- android:layout_height="match_parent"
+ android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="1"
android:ellipsize="end"
+ android:gravity="center_vertical"
android:lines="1"
android:paddingStart="@dimen/widget_note_list_inner_padding"
android:paddingEnd="@dimen/widget_note_list_outer_padding"
- android:textColor="@color/widget_fg_default"
+ android:textColor="@color/widget_foreground"
+ android:textSize="14sp"
tools:text="@tools:sample/lorem/random" />
</LinearLayout>
diff --git a/app/src/main/res/layout/widget_entry_add.xml b/app/src/main/res/layout/widget_entry_add.xml
new file mode 100644
index 00000000..0c7787e7
--- /dev/null
+++ b/app/src/main/res/layout/widget_entry_add.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ xmlns:tools="http://schemas.android.com/tools"
+ android:id="@+id/widget_note_list_entry"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:orientation="horizontal">
+
+ <TextView
+ android:id="@+id/widget_entry_content_tv"
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_vertical"
+ android:layout_weight="1"
+ android:ellipsize="middle"
+ android:paddingStart="30dp"
+ android:paddingEnd="@dimen/widget_note_list_outer_padding"
+ android:paddingBottom="@dimen/spacer_1x"
+ android:singleLine="true"
+ android:textColor="@color/widget_foreground"
+ android:textSize="16sp"
+ android:textStyle="bold"
+ tools:text="@string/app_name" />
+
+
+ <ImageView
+ android:id="@+id/widget_entry_fav_icon"
+ android:layout_width="40dp"
+ android:layout_height="match_parent"
+ android:layout_gravity="center_vertical"
+ android:contentDescription="@string/widget_entry_fav_contentDescription"
+ android:foregroundGravity="center_vertical"
+ android:paddingStart="@dimen/spacer_1x"
+ android:paddingEnd="@dimen/spacer_1x"
+ android:paddingBottom="@dimen/spacer_1x"
+ app:srcCompat="@drawable/ic_add_blue_24dp" />
+</LinearLayout>
diff --git a/app/src/main/res/layout/widget_entry_dark.xml b/app/src/main/res/layout/widget_entry_dark.xml
deleted file mode 100644
index 30b12171..00000000
--- a/app/src/main/res/layout/widget_entry_dark.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:app="http://schemas.android.com/apk/res-auto"
- xmlns:tools="http://schemas.android.com/tools"
- android:id="@+id/widget_note_list_entry_dark"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:orientation="horizontal"
- android:paddingStart="@dimen/spacer_1hx"
- android:paddingTop="@dimen/spacer_1x"
- android:paddingEnd="@dimen/spacer_1hx"
- android:paddingBottom="@dimen/spacer_1x"
- tools:background="@color/widget_background_dark_theme">
-
- <ImageView
- android:id="@+id/widget_entry_fav_icon_dark"
- android:layout_width="@dimen/widget_note_list_fav_icon_width"
- android:layout_height="@dimen/widget_note_list_fav_icon_height"
- android:layout_gravity="center_vertical"
- android:contentDescription="@string/widget_entry_fav_contentDescription"
- android:foregroundGravity="center_vertical"
- android:paddingStart="@dimen/widget_note_list_inner_padding"
- android:paddingEnd="@dimen/widget_note_list_outer_padding"
- app:srcCompat="@drawable/ic_star_yellow_24dp" />
-
- <TextView
- android:id="@+id/widget_entry_content_tv_dark"
- android:layout_width="0dp"
- android:layout_height="match_parent"
- android:layout_gravity="center_vertical"
- android:layout_weight="1"
- android:ellipsize="end"
- android:lines="1"
- android:paddingStart="@dimen/widget_note_list_inner_padding"
- android:paddingEnd="@dimen/widget_note_list_outer_padding"
- android:textColor="@color/fg_default_dark_theme"
- tools:text="@tools:sample/lorem/random" />
-
-</LinearLayout>
diff --git a/app/src/main/res/layout/widget_note_list.xml b/app/src/main/res/layout/widget_note_list.xml
index 3ac7d474..ebc3aded 100644
--- a/app/src/main/res/layout/widget_note_list.xml
+++ b/app/src/main/res/layout/widget_note_list.xml
@@ -3,64 +3,20 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:background="@color/widget_background"
- android:orientation="vertical">
-
- <!-- Widget header -->
- <RelativeLayout
- android:id="@+id/widget_note_header"
- android:layout_width="match_parent"
- android:layout_height="@dimen/widget_note_list_header_height"
- android:background="@color/defaultBrand"
- android:padding="@dimen/widget_note_list_hdr_padding">
-
- <ImageView
- android:id="@+id/widget_note_header_icon"
- android:layout_width="@dimen/widget_note_list_icon_width"
- android:layout_height="match_parent"
- android:layout_alignParentStart="true"
- android:layout_alignParentBottom="true"
- android:contentDescription="@string/widget_app_launcher_contentDescription"
- android:paddingStart="@dimen/widget_note_list_outer_padding"
- android:paddingEnd="@dimen/widget_note_list_inner_padding"
- android:scaleX="2"
- android:scaleY="2"
- android:src="@drawable/ic_launcher_foreground" />
-
- <TextView
- android:id="@+id/widget_note_list_title_tv"
- android:layout_width="wrap_content"
- android:layout_height="match_parent"
- android:layout_toStartOf="@id/widget_note_list_create_icon"
- android:layout_toEndOf="@id/widget_note_header_icon"
- android:ellipsize="middle"
- android:gravity="center_vertical"
- android:paddingStart="@dimen/widget_note_list_hdr_padding"
- android:paddingEnd="@dimen/widget_note_list_hdr_padding"
- android:singleLine="true"
- android:textColor="@color/widget_fg_contrast"
- android:textSize="18sp"
- tools:text="@tools:sample/lorem/random" />
-
- <ImageView
- android:id="@+id/widget_note_list_create_icon"
- android:layout_width="@dimen/widget_note_list_icon_width"
- android:layout_height="match_parent"
- android:layout_alignParentEnd="true"
- android:contentDescription="@string/widget_create_note"
- android:paddingStart="@dimen/widget_note_list_inner_padding"
- android:paddingEnd="@dimen/widget_note_list_outer_padding"
- android:src="@drawable/ic_add_white_24dp" />
-
- </RelativeLayout>
- <!-- End header -->
+ android:background="@drawable/widget_background"
+ android:orientation="vertical"
+ android:paddingStart="@dimen/spacer_1x"
+ android:paddingTop="@dimen/spacer_1x"
+ android:paddingEnd="@dimen/spacer_1hx"
+ android:paddingBottom="@dimen/spacer_1x">
<ListView
android:id="@+id/note_list_widget_lv"
android:layout_width="match_parent"
android:layout_height="wrap_content"
+ android:divider="@android:color/transparent"
+ android:dividerHeight="@null"
android:textAppearance="?android:attr/textAppearanceMedium"
- android:textColor="@color/fg_default"
tools:listitem="@layout/widget_entry" />
<TextView
diff --git a/app/src/main/res/layout/widget_note_list_dark.xml b/app/src/main/res/layout/widget_note_list_dark.xml
deleted file mode 100644
index 79f81b05..00000000
--- a/app/src/main/res/layout/widget_note_list_dark.xml
+++ /dev/null
@@ -1,77 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:tools="http://schemas.android.com/tools"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:background="@color/widget_background_dark_theme"
- android:orientation="vertical"
- tools:background="@null">
-
- <!-- Widget header -->
- <RelativeLayout
- android:id="@+id/widget_note_header_dark"
- android:layout_width="match_parent"
- android:layout_height="@dimen/widget_note_list_header_height"
- android:background="@drawable/ic_launcher_background"
- android:padding="@dimen/widget_note_list_hdr_padding">
-
- <ImageView
- android:id="@+id/widget_note_header_icon_dark"
- android:layout_width="@dimen/widget_note_list_icon_width"
- android:layout_height="match_parent"
- android:layout_alignParentStart="true"
- android:layout_alignParentBottom="true"
- android:contentDescription="@string/widget_app_launcher_contentDescription"
- android:paddingStart="@dimen/widget_note_list_outer_padding"
- android:paddingEnd="@dimen/widget_note_list_inner_padding"
- android:scaleX="2"
- android:scaleY="2"
- android:src="@drawable/ic_launcher_foreground" />
-
- <TextView
- android:id="@+id/widget_note_list_title_tv_dark"
- android:layout_width="wrap_content"
- android:layout_height="match_parent"
- android:layout_toStartOf="@id/widget_note_list_create_icon_dark"
- android:layout_toEndOf="@id/widget_note_header_icon_dark"
- android:ellipsize="middle"
- android:gravity="center_vertical"
- android:paddingStart="@dimen/widget_note_list_outer_padding"
- android:paddingEnd="@dimen/widget_note_list_inner_padding"
- android:singleLine="true"
- android:textColor="@color/widget_fg_contrast"
- android:textSize="18sp"
- tools:text="@tools:sample/lorem/random" />
-
- <ImageView
- android:id="@+id/widget_note_list_create_icon_dark"
- android:layout_width="@dimen/widget_note_list_icon_width"
- android:layout_height="match_parent"
- android:layout_alignParentEnd="true"
- android:contentDescription="@string/widget_create_note"
- android:paddingStart="@dimen/widget_note_list_inner_padding"
- android:paddingEnd="@dimen/widget_note_list_outer_padding"
- android:src="@drawable/ic_add_white_24dp" />
-
- </RelativeLayout>
- <!-- End header -->
-
- <ListView
- android:id="@+id/note_list_widget_lv_dark"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:divider="@color/fg_default_low_dark_theme"
- android:textAppearance="?android:attr/textAppearanceMedium"
- android:textColor="@color/fg_default_dark_theme"
- tools:listitem="@layout/widget_entry_dark" />
-
- <TextView
- android:id="@+id/widget_note_list_placeholder_tv_dark"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:gravity="center"
- android:text="@string/widget_note_list_placeholder"
- android:textColor="@color/fg_default_dark_theme"
- tools:visibility="gone" />
-
-</LinearLayout>
diff --git a/app/src/main/res/layout/widget_single_note.xml b/app/src/main/res/layout/widget_single_note.xml
index 5f240c5b..2b936258 100644
--- a/app/src/main/res/layout/widget_single_note.xml
+++ b/app/src/main/res/layout/widget_single_note.xml
@@ -3,13 +3,13 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:background="@color/widget_background">
+ android:background="@drawable/widget_background">
<ListView
android:id="@+id/single_note_widget_lv"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:padding="@dimen/widget_single_note_padding"
+ android:padding="@dimen/spacer_1x"
tools:listitem="@layout/widget_single_note_content" />
<TextView
@@ -17,9 +17,9 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
- android:padding="@dimen/widget_single_note_padding"
+ android:padding="@dimen/spacer_1x"
android:text="@string/widget_single_note_placeholder_tv"
android:textAlignment="center"
- android:textColor="@color/fg_default_high_dark_theme" />
+ android:textColor="@color/widget_foreground" />
</RelativeLayout>
diff --git a/app/src/main/res/layout/widget_single_note_content.xml b/app/src/main/res/layout/widget_single_note_content.xml
index 52c926cf..9ff51b60 100644
--- a/app/src/main/res/layout/widget_single_note_content.xml
+++ b/app/src/main/res/layout/widget_single_note_content.xml
@@ -4,5 +4,5 @@
android:id="@+id/single_note_content_tv"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:textColor="@color/widget_fg_default"
+ android:textColor="@color/widget_foreground"
tools:text="@tools:sample/lorem/random" />
diff --git a/app/src/main/res/layout/widget_single_note_content_dark.xml b/app/src/main/res/layout/widget_single_note_content_dark.xml
deleted file mode 100644
index 44420733..00000000
--- a/app/src/main/res/layout/widget_single_note_content_dark.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<TextView xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:tools="http://schemas.android.com/tools"
- android:id="@+id/single_note_content_tv_dark"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:textColor="@color/fg_default_dark_theme"
- tools:text="@tools:sample/lorem/random" />
diff --git a/app/src/main/res/layout/widget_single_note_dark.xml b/app/src/main/res/layout/widget_single_note_dark.xml
deleted file mode 100644
index 9ede2e1d..00000000
--- a/app/src/main/res/layout/widget_single_note_dark.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:background="@color/widget_background_dark_theme">
-
- <ListView
- android:id="@+id/single_note_widget_lv_dark"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:padding="@dimen/widget_single_note_padding" />
-
- <TextView
- android:id="@+id/widget_single_note_placeholder_tv_dark"
- android:background="@color/widget_background_dark_theme"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:gravity="center"
- android:text="@string/widget_single_note_placeholder_tv"
- android:textColor="@color/fg_default_high_dark_theme"
- android:textAlignment="center"
- android:padding="@dimen/widget_single_note_padding" />
-
-</RelativeLayout>
diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml
index d1e5d01f..1b2df9f8 100644
--- a/app/src/main/res/values-ar/strings.xml
+++ b/app/src/main/res/values-ar/strings.xml
@@ -119,7 +119,6 @@
<string name="error_dialog_tip_token_mismatch_retry">الرجاء محاولة اجبار اغلاق التطبيق واعادة تشغيله، ربما هنالك خطأ في الاتصال مع تطبيق نيكست كلاود nextcloud</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">اذا تكررت المشكلة، حاول تنظيف مساحة التخزين في التطبيقين كلاهما:
نيكست كلاود nextcloud، نيكست كلاود ملاحظات nextcloud notes لحل هذه المشكلة.</string>
- <string name="error_dialog_tip_clear_storage">يمكنك مسح التخزين عن طريق فتح معلومات التطبيق واختيار التخزين ← مسح التخزين.</string>
<string name="error_dialog_tip_files_outdated">تطبيقك نيكست كلاود (Nexcloud) يبدو انه مهمل (لم يحدث منذ زمن). رجاءا زُر بلي ستور او اف-درويد (f-droid) لتحصل على اخر اصدار.</string>
<string name="error_dialog_tip_files_force_stop">يبدو أن هناك خطأ ما في تطبيق Nextcloud الخاص بك. يرجى محاولة فرض إيقاف كلا من تطبيق Nextcloud وتطبيق Nextcloud Notes.</string>
<string name="error_dialog_tip_files_delete_storage">إذا لم يساعد إيقافهم بالقوة ، فيمكنك محاولة مسح تخزين كلا التطبيقين.</string>
diff --git a/app/src/main/res/values-ca/strings.xml b/app/src/main/res/values-ca/strings.xml
index b2e0cc60..67a3c241 100644
--- a/app/src/main/res/values-ca/strings.xml
+++ b/app/src/main/res/values-ca/strings.xml
@@ -114,7 +114,6 @@
<string name="error_dialog_title">Oh, no! I ara què? </string>
<string name="error_dialog_tip_token_mismatch_retry">Proveu de forçar el tancament de l\'aplicació i reinicieu-la. Pot ser que hi hagi hagut una connexió incorrecta a l\'aplicació Nextcloud.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Si el problema persisteix, proveu d\'esborrar l\'emmagatzematge de totes dues aplicacions: Nextcloud i Notes del Nextcloud per tal de resoldre el problema.</string>
- <string name="error_dialog_tip_clear_storage">Per a esborrar l\'emmagatzematge, obriu la informació de l\'aplicació i seleccioneu Emmagatzematge → Esborra l\'emmagatzematge.</string>
<string name="error_dialog_tip_files_outdated">Sembla que la vostra aplicació Nextcloud està obsoleta. Visiteu la Play Store o l\'F-Droid per obtenir la darrera versió.</string>
<string name="error_dialog_tip_files_force_stop">Sembla que hi ha algun problema amb la vostra aplicació Nextcloud. Intenteu forçar l\'aturada tant de l\'aplicació Nextcloud com de l\'aplicació Notes del Nextcloud.</string>
<string name="error_dialog_tip_files_delete_storage">Si forçar-ne l\'aturada no ajuda, podeu provar d\'esborrar l\'emmagatzematge de totes dues aplicacions.</string>
diff --git a/app/src/main/res/values-cs-rCZ/strings.xml b/app/src/main/res/values-cs-rCZ/strings.xml
index 45d3da75..2e55504a 100644
--- a/app/src/main/res/values-cs-rCZ/strings.xml
+++ b/app/src/main/res/values-cs-rCZ/strings.xml
@@ -73,6 +73,9 @@
<string name="about_license_tab_title">Licence</string>
<string name="widget_note_list_title">Seznam poznámek</string>
+ <string name="widget_note_list_add">Přidat novou poznámku</string>
+ <string name="widget_note_list_add_favorite">Přidat novou poznámku do oblíbených</string>
+ <string name="widget_note_list_add_to_category">Přidat novou poznámku do %1$s</string>
<string name="widget_note_list_placeholder">Žádné poznámky</string>
<string name="widget_single_note_title">Jediná poznámka</string>
<string name="widget_single_note_placeholder_tv">Poznámka nenalezena</string>
@@ -114,7 +117,7 @@
<string name="error_dialog_title">Ó ne– co teď? 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Prosím pokuste se vynutit ukončení aplikace a spusťte ji znovu. Možná se něco nepodařilo při spojení s aplikací Nextcloud.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Pokud problém přetrvává, zkuste problém vyřešit vyčištěním úložišť obou aplikací: Nextcloud a Nextcloud poznámky.</string>
- <string name="error_dialog_tip_clear_storage">Úložiště můžete vyčistit otevřením informací o aplikací a vybráním Úložiště → Vyčistit úložiště.</string>
+ <string name="error_dialog_tip_clear_storage">Úložiště můžete vyčistit otevřením nformací o aplikaci a vybráním Úložiště a mezipaměť → Vyčistit úložiště. ⚠️ Varování: toto nenávratně odstraní poznámky, které ještě nebyly synchronizovány se serverem. </string>
<string name="error_dialog_tip_files_outdated">Zdá se, že aplikace Nextcloud, nainstalovaná na vašem zařízení, je staré verze. Přejděte prosím do Play Store nebo F-Droid a nainstalujte si nejnovější verzi.</string>
<string name="error_dialog_tip_files_force_stop">Zdá se, že s vaší aplikací Nextcloud není něco v pořádku. Zkuste vynutit zastavení obojího – aplikace Nextcloud a Nextcloud Poznámky.</string>
<string name="error_dialog_tip_files_delete_storage">Pokud vynucení jejich zastavení nepomůže, můžete zkusit vyčistit úložiště obou aplikací.</string>
diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml
index 8ce88e1d..2d8fa4a1 100644
--- a/app/src/main/res/values-de/strings.xml
+++ b/app/src/main/res/values-de/strings.xml
@@ -73,6 +73,9 @@
<string name="about_license_tab_title">Lizenz</string>
<string name="widget_note_list_title">Liste der Notizen</string>
+ <string name="widget_note_list_add">Neue Notiz hinzufügen</string>
+ <string name="widget_note_list_add_favorite">Neue Notiz zu Favoriten hinzufügen</string>
+ <string name="widget_note_list_add_to_category">Neue Notiz zu %1$s hinzufügen</string>
<string name="widget_note_list_placeholder">Keine Notizen</string>
<string name="widget_single_note_title">Eine Notiz</string>
<string name="widget_single_note_placeholder_tv">Notiz nicht gefunden</string>
@@ -114,7 +117,7 @@
<string name="error_dialog_title">Oh nein - Was jetzt? 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Bitte versuchen Sie, das Schließen der App zu erzwingen und sie erneut zu starten. Möglicherweise bestand eine gestörte Verbindung zur Nextcloud-App.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Wenn das Problem weiterhin besteht, versuchen Sie, den Speicher von Nextcloud und Nextcloud Notes zu leeren, um das Problem zu beheben.</string>
- <string name="error_dialog_tip_clear_storage">Sie können den Speicherinhalt leeren indem Sie die App öffnen und Speicher → Speicherinhalt löschen auswählen.</string>
+ <string name="error_dialog_tip_clear_storage">Sie können den Speicherinhalt leeren indem Sie die App öffnen und Speicher → Speicherinhalt löschen auswählen. ⚠️ Warnung: Noch nicht synchronisierte Notizen werden gelöscht!</string>
<string name="error_dialog_tip_files_outdated">Sie scheinen eine alte Version der Nextcloud-App installiert zu haben. Bitte besuchen Sie den Play Store oder F-Droid, um die neueste Version zu installieren.</string>
<string name="error_dialog_tip_files_force_stop">Mit Ihrer Nextcloud-App scheint etwas nicht zu stimmen. Bitte versuchen Sie, sowohl die Nextcloud-App als auch die Nextcloud Notes-App anzuhalten.</string>
<string name="error_dialog_tip_files_delete_storage">Wenn das erzwungene Stoppen nicht hilft, können Sie versuchen, den Speicher beider Apps zu leeren.</string>
diff --git a/app/src/main/res/values-el/strings.xml b/app/src/main/res/values-el/strings.xml
index cadff94a..cc3b5b3a 100644
--- a/app/src/main/res/values-el/strings.xml
+++ b/app/src/main/res/values-el/strings.xml
@@ -114,7 +114,6 @@
<string name="error_dialog_title">Ωχ όχι - Τώρα τί; 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Δοκιμάστε τερματισμό της εφαρμογή και επανεκκίνηση. Ίσως υπάρχει λάθος σύνδεση.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Εάν το πρόβλημα παραμένει, προσπαθήστε να εκκαθαρίσετε τον χώρο αποθήκευσης και των δύο εφαρμογών: του Nextcloud και του Nextcloud Notes.</string>
- <string name="error_dialog_tip_clear_storage">Μπορείτε να εκκαθαρίσετε τον χώρο αποθήκευσης από τις πληροφορίες εφαρμογής και επιλέγοντας Αποθηκευτικός χώρος → Εκκαθάριση χώρου αποθήκευσης.</string>
<string name="error_dialog_tip_files_outdated">Η εφαρμογή Nextcloud δεν είναι ενημερωμένη. Παρακαλούμε επισκεφθείτε το Play Store ή το F-Groid για λήψη της τελευταίας έκδοσης.</string>
<string name="error_dialog_tip_files_force_stop">Κάτι φαίνεται να πάει στραβά με την εφαρμογή Nextcloud. Προσπαθήστε να τερματίσετε την εφαρμογή Nextcloud και την εφαρμογή Nextcloud Notes.</string>
<string name="error_dialog_tip_files_delete_storage">Εάν ο τερματισμός δεν βοηθήσει, μπορείτε να εκκαθαρίσετε τον αποθηκευτικό χώρο και των δύο εφαρμογών.</string>
diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml
index e2b6429a..86ccdcb6 100644
--- a/app/src/main/res/values-es/strings.xml
+++ b/app/src/main/res/values-es/strings.xml
@@ -114,7 +114,7 @@
<string name="error_dialog_title">Oh no - ¿Ahora qué? 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Por favor, intenta forzar el cierre de la aplicación y vuelve a abrirla. Es posible que haya habido un problema de conexión con la aplicación Nextcloud.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Si el problema persiste, intente borrar el almacenamiento de ambas aplicaciones: Nextcloud y Nextcloud Notas para solucionar este problema.</string>
- <string name="error_dialog_tip_clear_storage">Puedes limpiar el almacenamiento abriendo la información de la app y seleccionando Almacenamiento → Eliminar datos.</string>
+ <string name="error_dialog_tip_clear_storage">Puede borrar el almacenamiento abriendo la información de la app y seleccionando Almacenamiento → Borrar almacenamiento. ⚠️ Advertencia: ¡Esto borrará las notas aún no sincronizadas!</string>
<string name="error_dialog_tip_files_outdated">Su aplicación Nextcloud parece que está desactualizada. Por favor visite la Play Store o F-Droid para conseguir la versión más reciente.</string>
<string name="error_dialog_tip_files_force_stop">Algo parece que va mal con su aplicación Nextcloud. Por favor intente forzar el paro de ambas aplicaciones, Nextcloud y Nextcloud notas.</string>
<string name="error_dialog_tip_files_delete_storage">Si pararlas no ayuda, puede intentar borrar el almacenamiento de ambas aplicaciones.</string>
diff --git a/app/src/main/res/values-eu/strings.xml b/app/src/main/res/values-eu/strings.xml
index 3063a548..b7da4b6c 100644
--- a/app/src/main/res/values-eu/strings.xml
+++ b/app/src/main/res/values-eu/strings.xml
@@ -73,6 +73,9 @@
<string name="about_license_tab_title">Lizentzia</string>
<string name="widget_note_list_title">Oharren zerrenda</string>
+ <string name="widget_note_list_add">Gehitu ohar berria </string>
+ <string name="widget_note_list_add_favorite">Gehitu ohar berria gogokoetara</string>
+ <string name="widget_note_list_add_to_category">Gehitu ohar berria %1$s-(e)ra</string>
<string name="widget_note_list_placeholder">Oharrik ez</string>
<string name="widget_single_note_title">Ohar bakarra</string>
<string name="widget_single_note_placeholder_tv">Oharra ez da aurkitu</string>
@@ -114,7 +117,7 @@
<string name="error_dialog_title">Oh ez - Orain zer? 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Saia zaitez aplikazioa itxi eta berrabiarazten. Agian Nextcloud aplikazioarekin gaizki konektatzea gertatu da.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Arazoak jarraitzen badu, saiatu bi aplikazioen biltegiak garbitzen: Nextcloud eta Nextcloud Oharrak aplikazioen biltegiak.</string>
- <string name="error_dialog_tip_clear_storage">Biltegia garbi dezakezu aplikazioaren informazioa ireki eta hautatuz: Biltegia → Garbitu biltegia.</string>
+ <string name="error_dialog_tip_clear_storage">Biltegia garbi dezakezu aplikazioaren informazioa ireki eta hautatuz: Biltegia → Garbitu biltegia. ⚠️Abisua: Honek oraindik sinkronizatuta ez dauden oharrak ezabatuko ditu!</string>
<string name="error_dialog_tip_files_outdated">Daukazun Nextcloud aplikazioa zaharkituta dagoela dirudi. Zoaz Play Store edo F-Droidera azken bertsioa lortzeko.</string>
<string name="error_dialog_tip_files_force_stop">Daukazun Nextcloud aplikazioan zerbait gaizki dabilela dirudi. Saia zaitez Nextcloud aplikazioa eta Nextcloud Oharrak, biak, geldiarazten. </string>
<string name="error_dialog_tip_files_delete_storage">Geldiarazteak ez badu arazoa konpontzen, bi biltegiak garbitzen saia zaitezke.</string>
diff --git a/app/src/main/res/values-fa/strings.xml b/app/src/main/res/values-fa/strings.xml
index 937361ca..6cc7a8fd 100644
--- a/app/src/main/res/values-fa/strings.xml
+++ b/app/src/main/res/values-fa/strings.xml
@@ -114,7 +114,6 @@
<string name="error_dialog_title">وای نه - حالا چی کار کنیم؟</string>
<string name="error_dialog_tip_token_mismatch_retry">"لطفا از طریق توقف اجباری برنامه را بسته و دوباره اجرا کنید. ممکن است یک اتصال نادرست با ابر سانا ایجاد شده باشد. "</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">اگر این مشکل استمرار داشت، سعی کنید با پاک کردن فضای ذخیره‌سازی هردو برنامک : ابر سانا و یادداشت سانا، این مورد را برطرف کنید.</string>
- <string name="error_dialog_tip_clear_storage">شما می‌توانید فضای ذخیره‌سازی برنامک را با بازکردن اطلاعات برنامه و انتخاب «فضای ذخیره‌سازی و حافظه پنهان» -> «پاک‌کردن محل ذخیره‌سازی»، پاک‌سازی کنید.</string>
<string name="error_dialog_tip_files_outdated">ظاهرا برنامک یادداشت منسوخ شده است. لطفا آخرین نسخه را از سانا مارکت دانلود کنید. </string>
<string name="error_dialog_tip_files_force_stop">به نظر می‌رسد که مشکلی در برنامک نکست‌کلود ایجاد شده است. لطفا سعی کنید با توقف اجباری هر دو برنامک ابر سانا و یادداشت سانا را ببندید. </string>
<string name="error_dialog_tip_files_delete_storage">"اگر توقف اجباری برنامه‌ها کمکی نکرد، می‌توانید پاک‌کردن فضای ذخیره‌سازی هردو برنامه را پاک کنید. "</string>
diff --git a/app/src/main/res/values-fi-rFI/strings.xml b/app/src/main/res/values-fi-rFI/strings.xml
index 0a20aace..e939d311 100644
--- a/app/src/main/res/values-fi-rFI/strings.xml
+++ b/app/src/main/res/values-fi-rFI/strings.xml
@@ -113,7 +113,6 @@
<string name="error_dialog_title">Voi ei - Mitä nyt? 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Yritä pakottaa sovelluksen sulkeminen ja käynnistä se uudelleen. Nextcloud-sovellukseen on saattanut olla virheellinen yhteys.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Jos ongelma jatkuu, yritä tyhjentää sekä Nextcloud- että Nextcloud Notes-sovellusten tallennustilat ratkaistaksesi ongelman.</string>
- <string name="error_dialog_tip_clear_storage">Voit tyhjentää tallennustilan avaamalla sovelluksen tiedot ja valitsemalla Tallennustila → Tyhjennä tallennustila.</string>
<string name="error_dialog_tip_files_outdated">Nextcloud-sovelluksesi on vanhentunut. Lataa uusin version Play Storesta tai F-Droidista.</string>
<string name="error_dialog_tip_files_force_stop">Nextcloud-sovelluksessasi vaikuttaa olevan jokin ongelma. Yritä pakottaa sekä Nextcloud- että Nextcloud Notes-sovelluksen lopetus.</string>
<string name="error_dialog_tip_files_delete_storage">Jos pakotettu lopettaminen ei auta, voit yrittää tyhjentää sovelluksien tallennustilan.</string>
diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml
index a879a96d..00b81c74 100644
--- a/app/src/main/res/values-fr/strings.xml
+++ b/app/src/main/res/values-fr/strings.xml
@@ -114,7 +114,7 @@
<string name="error_dialog_title">Oh non ! - Et maintenant ? 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Essayez de forcer la fermeture de l\'application puis redémarrer la. Il y avait peut-être une mauvaise connexion à Nextcloud.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Si le problème persiste, essayez d\'effacer les données des deux applications : Nextcloud et Nextcloud Notes pour résoudre ce problème.</string>
- <string name="error_dialog_tip_clear_storage">Vous pouvez nettoyer l\'espace de stockage en ouvrant les paramètres de l\'application et en sélectionnant Stockage → Effacer le stockage.</string>
+ <string name="error_dialog_tip_clear_storage">Vous pouvez nettoyer l\'espace de stockage en ouvrant les paramètres Android de l\'application et en sélectionnant Stockage → Effacer le stockage. ⚠️ Attention: cela supprimera les notes non encore synchronisées avec votre serveur Nextcloud!</string>
<string name="error_dialog_tip_files_outdated">Votre application Nextcloud semble ancienne. Veuillez visiter le Play Store ou F-Droid pour installer la dernière version.</string>
<string name="error_dialog_tip_files_force_stop">Quelque chose semble ne pas fonctionner avec votre application Nextcloud. Essayer de forcer l\'arrêt des applications Nextcloud et Nextcloud Notes.</string>
<string name="error_dialog_tip_files_delete_storage">Si l’arrêt forcé ne fonctionne pas, vous pouvez essayer d\'effacer les données des deux applications.</string>
diff --git a/app/src/main/res/values-gl/strings.xml b/app/src/main/res/values-gl/strings.xml
index 07dab5e3..d4aab17d 100644
--- a/app/src/main/res/values-gl/strings.xml
+++ b/app/src/main/res/values-gl/strings.xml
@@ -73,6 +73,9 @@
<string name="about_license_tab_title">Licenza</string>
<string name="widget_note_list_title">Lista de notas</string>
+ <string name="widget_note_list_add">Engadir unha nova nota</string>
+ <string name="widget_note_list_add_favorite">Engadir unha nova nota aos favoritos</string>
+ <string name="widget_note_list_add_to_category">Engadir unha nova nota a %1$s</string>
<string name="widget_note_list_placeholder">Non hai notas</string>
<string name="widget_single_note_title">Nota única</string>
<string name="widget_single_note_placeholder_tv">Non se atopou a nota</string>
@@ -114,7 +117,7 @@
<string name="error_dialog_title">Vaites, e agora que? 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Probe a forzar o peche da apli e reiniciala de novo. Pode haber unha conexión incorrecta coa apli Nextcloud.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Se o problema continúa, tente limpar o almacenamento de ambas as aplis: Nextcloud e Nextcloud Notas para resolver este problema.</string>
- <string name="error_dialog_tip_clear_storage">Pode limpar o almacenamento abrindo a información da apli e seleccionando Almacenamento → Limpar o almacenamento.</string>
+ <string name="error_dialog_tip_clear_storage">Pode limpar o almacenamento abrindo a información da apli e seleccionando Almacenamento → Limpar o almacenamento.⚠️ Advertencia: Isto eliminará as notas que aínda non estean sincronizadas.</string>
<string name="error_dialog_tip_files_outdated">A súa apli Nextcloud semella estar desactualizada. Visite Play Store ou F-Droid para obter a última versión.</string>
<string name="error_dialog_tip_files_force_stop">Semella que algo está mal na súa apli Nextcloud. Tente forzar a parar ambas, a apli Nextcloud e a apli Nextcloud Notes.</string>
<string name="error_dialog_tip_files_delete_storage">Se detelos pola forza non axuda, pode tentar limpar o almacenamento de ambas as aplicacións.</string>
diff --git a/app/src/main/res/values-hr/strings.xml b/app/src/main/res/values-hr/strings.xml
index 72aa1ce9..bc88b475 100644
--- a/app/src/main/res/values-hr/strings.xml
+++ b/app/src/main/res/values-hr/strings.xml
@@ -114,7 +114,6 @@
<string name="error_dialog_title">Ups, što sada? 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Pokušajte prisilno zatvoriti aplikaciju i ponovo je pokrenuti. Možda se radi o nepravilnoj vezi s aplikacijom Nextcloud.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Ako problem i dalje nije otklonjen, pokušajte izbrisati pohranjene podatke iz obje aplikacije: Nextcloud i Nextcloud Notes.</string>
- <string name="error_dialog_tip_clear_storage">Pohranjene podatke možete izbrisati tako da otvorite postavke operacijskog sustava Android i odaberete → Aplikacije → Nextcloud / Nextcloud Notes → Pohrana → Brisanje pohrane podataka.</string>
<string name="error_dialog_tip_files_outdated">Čini se da je vaša aplikacija Nextcloud zastarjela. Posjetite trgovinu Play Store ili F-Droid kako biste dohvatili najnoviju inačicu.</string>
<string name="error_dialog_tip_files_force_stop">Čini se da nešto nije u redu s vašom aplikacijom Nextcloud. Pokušajte prisilno zatvoriti aplikaciju Nextcloud i aplikaciju Nextcloud Notes.</string>
<string name="error_dialog_tip_files_delete_storage">Ako prisilno zatvaranje nije otklonilo problem, pokušajte izbrisati pohranjene podatke iz obje aplikacije.</string>
diff --git a/app/src/main/res/values-hu-rHU/strings.xml b/app/src/main/res/values-hu-rHU/strings.xml
index b71b3aac..502a990f 100644
--- a/app/src/main/res/values-hu-rHU/strings.xml
+++ b/app/src/main/res/values-hu-rHU/strings.xml
@@ -114,7 +114,6 @@
<string name="error_dialog_title">Jaj ne – Most mi legyen? 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Próbálja kényszeríteni az alkalmazás bezárását, és indítsa újra. Lehet, hogy hibás volt a kapcsolat a többi Nextcloud alkalmazással.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Ha a probléma továbbra is fennáll, próbálja kiüríteni mindkét alkalmazás tárolóját: a Nextcloudét és a Nextcloud Jegyzetekét.</string>
- <string name="error_dialog_tip_clear_storage">A tárolót az alkalmazásinformáció megnyitásával, és a Tárhely → Tárhely ürítése választásával törölheti.</string>
<string name="error_dialog_tip_files_outdated">A Nextcloud alkalmazása elavultnak tűnik. Keresse fel a Play Áruházat vagy az F-Droidot, hogy beszerezze a legfrissebb verziót.</string>
<string name="error_dialog_tip_files_force_stop">Valami hibásnak tűnik a Nextcloud alkalmazásában. Próbálja mindkettőt leállítani, a Nextcloud és a Nextcloud Jegyzetek alkalmazást is.</string>
<string name="error_dialog_tip_files_delete_storage">Ha a kényszerített leállítás nem segít, akkor megpróbálhatja mindkét alkalmazás tárolóját kiüríteni.</string>
diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml
index ef8ac5f7..55fe08d5 100644
--- a/app/src/main/res/values-it/strings.xml
+++ b/app/src/main/res/values-it/strings.xml
@@ -114,7 +114,7 @@
<string name="error_dialog_title">Oh no - Cosa succede adesso? 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Prova a forzare la chiusura dell\'applicazione e riavviarla nuovamente. Potrebbe essersi verificato un problema di connessione all\'applicazione Nextcloud. </string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Se il problema persiste, prova a cancellare l\'archiviazione di entrambe le applicazioni Nextcloud e Nextcloud Notes per risolver il problema.</string>
- <string name="error_dialog_tip_clear_storage">Puoi a cancellare l\'archiviazione aprendo le informazioni dell\'applicazione e selezionando Archiviazione → Cancella archiviazione.</string>
+ <string name="error_dialog_tip_clear_storage">Puoi a cancellare l\'archiviazione aprendo le informazioni dell\'applicazione e selezionando Archiviazione → Cancella archiviazione. ⚠️ Avviso: questo eliminerà le note non ancora sincronizzate!</string>
<string name="error_dialog_tip_files_outdated">La tua applicazioni di Nextcloud sembra essere datata. Visita il Play Store o F-Droid per ottenere l\'ultima versione.</string>
<string name="error_dialog_tip_files_force_stop">Sembra che ci sia un problema con la tua applicazione di Nextcloud. Prova a fermare entrambe le applicazioni Nextcloud e Nextcloud Notes.</string>
<string name="error_dialog_tip_files_delete_storage">Se fermarle non aiuta, puoi provare a cancellare l\'archiviazione di entrambe le applicazioni.</string>
diff --git a/app/src/main/res/values-ja-rJP/strings.xml b/app/src/main/res/values-ja-rJP/strings.xml
index 1aedf33f..2aa74150 100644
--- a/app/src/main/res/values-ja-rJP/strings.xml
+++ b/app/src/main/res/values-ja-rJP/strings.xml
@@ -114,7 +114,6 @@
<string name="error_dialog_title">おやまあ、どうしたことでしょう?🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">アプリの強制終了と再起動を試みてください。Nextcloudアプリへの接続が正しくない接続があったかも知れません。</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">この問題が続くようでしたら、下記両方のアプリでストレージをクリアして問題が解決できるか試してください:Nextcloud と Nextcloud Notes</string>
- <string name="error_dialog_tip_clear_storage">以下の方法でストレージをクリアできます:アプリ情報→ストレージ→ストレージをクリア.</string>
<string name="error_dialog_tip_files_outdated">Nextcloudアプリが古いようです。プレイストアかF-Droidから最新版を入手してください。</string>
<string name="error_dialog_tip_files_force_stop">Nextcloudアプリで何か不具合が発生しました。NextcloudアプリとNextcloud Notesアプリの両方を強制終了してください。</string>
<string name="error_dialog_tip_files_delete_storage">強制終了で改善されない場合は、両方のアプリのストレージをクリアしてみてください。</string>
diff --git a/app/src/main/res/values-ko/strings.xml b/app/src/main/res/values-ko/strings.xml
index 39f41db0..876935ed 100644
--- a/app/src/main/res/values-ko/strings.xml
+++ b/app/src/main/res/values-ko/strings.xml
@@ -114,7 +114,6 @@
<string name="error_dialog_title">세상에 - 무슨일이야?</string>
<string name="error_dialog_tip_token_mismatch_retry">앱을 종료하고 다시 시작해주십시오. 아마 Nextcloud에 잘못된 연결이 있었을 것입니다.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">문제가 지속되면 Nextcloud와 Nextcloud Notes 두 앱의 스토리지를 모두 지워 이 문제를 해결해보십시오.</string>
- <string name="error_dialog_tip_clear_storage">저장공간을 비우기 위해 app info를 열고 Storage → Clear storage를 선택해주십시오.</string>
<string name="error_dialog_tip_files_outdated">당신의 Nextcloud 앱은 예전 버전입니다. Play Store나 F-Droid에 가서 최신 버전을 다운로드 하십시오.</string>
<string name="error_dialog_tip_files_force_stop">Nextcloud 앱에 문제가 생겼습니다. Nextcloud 앱과 Nextcloud 노트 앱 둘 다 강제종료 해보십시오.</string>
<string name="error_dialog_tip_files_delete_storage">강제 종료가 도움이 되지 않는다면, 두 앱 모두의 저장공간을 비워보십시오.</string>
diff --git a/app/src/main/res/values-lt-rLT/strings.xml b/app/src/main/res/values-lt-rLT/strings.xml
index 3544df8f..a977ad8f 100644
--- a/app/src/main/res/values-lt-rLT/strings.xml
+++ b/app/src/main/res/values-lt-rLT/strings.xml
@@ -113,7 +113,6 @@
<string name="error_dialog_title">O, ne - Kas dabar? 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Pabandykite priverstinai uždaryti programą ir vėl paleiskite ją iš naujo. Galbūt buvo nepavyko užmegžti ryšį su „Nextcloud“ programa.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Jei problema išlieka, pabandykite išvalyti abiejų programų saugyklą: „Nextcloud“ ir „Nextcloud Notes“.</string>
- <string name="error_dialog_tip_clear_storage">Saugyklą galite išvalyti atidarę programos nustatymus ir pasirinkdami Saugykla → Išvalyti saugyklą.</string>
<string name="error_dialog_tip_files_outdated">Panašu, kad jūsų „Nextcloud“ programos versija yra pasenusi. Norėdami gauti naujausią versiją, apsilankykite „Google Play“ parduotuvėje arba „F-Droid“.</string>
<string name="error_dialog_tip_files_force_stop">Atrodo, kad kažkas negerai su jūsų „Nextcloud“ programa. Pabandykite priverstinai sustabdyti programas: „Nextcloud“ ir „Nextcloud Notes“.</string>
<string name="error_dialog_tip_files_delete_storage">Jei priverstinis programos sustabdymas nepadėjo, galite pabandyti išvalyti abiejų programų saugyklas.</string>
diff --git a/app/src/main/res/values-nb-rNO/strings.xml b/app/src/main/res/values-nb-rNO/strings.xml
index e07a6dc7..0b69815e 100644
--- a/app/src/main/res/values-nb-rNO/strings.xml
+++ b/app/src/main/res/values-nb-rNO/strings.xml
@@ -114,7 +114,6 @@
<string name="error_dialog_title">Å nei - Hva nå? 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Prøv å tvinge avslutning av appen og start den på nytt. Det kan ha vært en feiltilkobling til Nextcloud-appen.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Hvis problemet vedvarer, prøv å tømme lageret for begge disse appene for å løse problemet: Nextcloud og Nextcloud Notes.</string>
- <string name="error_dialog_tip_clear_storage">Du kan tømme lageret ved å åpne App info og velge Lagring og buffer → Tøm lagring.</string>
<string name="error_dialog_tip_files_outdated">Det virker som Nextcloud appen er utdatert. Venligst besøk Play Sore eller F-Droid for å finne siste versjon.</string>
<string name="error_dialog_tip_files_force_stop">Det virker som noe er galt med Nextcloud appen. Vennligst prøv å tvinge avslutning av Nextcloud appen og Nextcloud Notes appen.</string>
<string name="error_dialog_tip_files_delete_storage">Hvis det ikke hjelper med tving avslutt, så kan du prøve å tømme lageret for begge appene.</string>
diff --git a/app/src/main/res/values-night/colors.xml b/app/src/main/res/values-night/colors.xml
index 8d0dd92d..eda73204 100644
--- a/app/src/main/res/values-night/colors.xml
+++ b/app/src/main/res/values-night/colors.xml
@@ -20,4 +20,8 @@
<color name="appbar">#212121</color>
<color name="category_background">@color/defaultBrand</color>
+
+ <color name="widget_background">#dd000000</color>
+ <color name="widget_foreground">#d8d8d8</color>
+ <color name="widget_foreground_strong">#f5f5f5</color>
</resources> \ No newline at end of file
diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml
index e6d8e445..e34e4d4d 100644
--- a/app/src/main/res/values-nl/strings.xml
+++ b/app/src/main/res/values-nl/strings.xml
@@ -73,6 +73,9 @@
<string name="about_license_tab_title">Licentie</string>
<string name="widget_note_list_title">Notitielijst</string>
+ <string name="widget_note_list_add">Toevoegen nieuwe notitie</string>
+ <string name="widget_note_list_add_favorite">Toevoegen nieuwe notitie aan favorieten</string>
+ <string name="widget_note_list_add_to_category">Toevoegen nieuwe notitie aan %1$s</string>
<string name="widget_note_list_placeholder">Geen notities</string>
<string name="widget_single_note_title">Enkele notitie</string>
<string name="widget_single_note_placeholder_tv">Notitie niet gevonden</string>
@@ -114,7 +117,7 @@
<string name="error_dialog_title">Oh nee - wat nu? 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Probeer de app te sluiten en opnieuw te starten. Er was misschien een onjuiste verbinding met de Nextcloud-app.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Als het probleem blijft aanhouden, probeer dan de gegevensopslag bij Nextcloud en de Nextcloud Notes apps te wissen.</string>
- <string name="error_dialog_tip_clear_storage">Je kan de opslag leegmaken door in Android de app info te openen en kies dan Opslag → Gegevens verwijderen.</string>
+ <string name="error_dialog_tip_clear_storage">Je kunt de opslag wissen door de app-info te openen en Opslag → Opslag wissen te selecteren. ⚠️ Waarschuwing: hiermee worden de nog niet gesynchroniseerde notities verwijderd!</string>
<string name="error_dialog_tip_files_outdated">Je Nextcloud app lijkt te zijn verouderd. Download alstublieft de nieuwste versie in de Google Play Store of in F-Droid.</string>
<string name="error_dialog_tip_files_force_stop">Er lijkt iets mis te zijn met je Nextcloud app. Probeer alstublieft de apps geforceerd af te sluiten, zowel de Nextcloud app als de Nextcloud Notes app.</string>
<string name="error_dialog_tip_files_delete_storage">Als geforceerd afsluiten niet helpt, probeer dan van beide apps de gegevensopslag te wissen.</string>
diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml
index b627de18..8dcc6b93 100644
--- a/app/src/main/res/values-pl/strings.xml
+++ b/app/src/main/res/values-pl/strings.xml
@@ -73,6 +73,9 @@
<string name="about_license_tab_title">Licencja</string>
<string name="widget_note_list_title">Lista notatek</string>
+ <string name="widget_note_list_add">Dodaj nową notatkę</string>
+ <string name="widget_note_list_add_favorite">Dodaj nową notatkę do ulubionych</string>
+ <string name="widget_note_list_add_to_category">Dodaj nową notatkę do %1$s</string>
<string name="widget_note_list_placeholder">Brak notatek</string>
<string name="widget_single_note_title">Pojedyncza notatka</string>
<string name="widget_single_note_placeholder_tv">Nie znaleziono notatki</string>
@@ -114,7 +117,7 @@
<string name="error_dialog_title">O nie - co teraz? 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Spróbuj wymusić zamknięcie aplikacji i uruchomić ją ponownie. Być może połączenie z aplikacją Nextcloud było nieprawidłowe.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Jeśli problem będzie się powtarzać, spróbuj wyczyścić pamięć obu aplikacji: Nextcloud i Nextcloud Notes, aby rozwiązać ten problem.</string>
- <string name="error_dialog_tip_clear_storage">Możesz wyczyścić pamięć, otwierając informacje o aplikacji i wybierając Pamięć → Wyczyść pamięć podręczną.</string>
+ <string name="error_dialog_tip_clear_storage">Możesz wyczyścić pamięć, otwierając informacje o aplikacji i wybierając Pamięć → Wyczyść pamięć podręczną. ⚠️ Ostrzeżenie: spowoduje to usunięcie jeszcze niezsynchronizowanych notatek!</string>
<string name="error_dialog_tip_files_outdated">Twoja aplikacja Nextcloud wydaje się, że jest nieaktualna. Odwiedź Sklep Play lub F-Droid, aby pobrać najnowszą wersję.</string>
<string name="error_dialog_tip_files_force_stop">Wydaje się, że coś jest nie tak z Twoją aplikacją Nextcloud. Spróbuj wymusić zatrzymanie aplikacji Nextcloud i Nextcloud Notes.</string>
<string name="error_dialog_tip_files_delete_storage">Jeśli nie pomoże ich zatrzymanie, możesz spróbować wyczyścić pamięć obu aplikacji.</string>
diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml
index ce947069..ea05bb62 100644
--- a/app/src/main/res/values-pt-rBR/strings.xml
+++ b/app/src/main/res/values-pt-rBR/strings.xml
@@ -73,6 +73,9 @@
<string name="about_license_tab_title">Licença</string>
<string name="widget_note_list_title">Lista de notas</string>
+ <string name="widget_note_list_add">Adicionar nova nota</string>
+ <string name="widget_note_list_add_favorite">Adicionar nova nota aos favoritos</string>
+ <string name="widget_note_list_add_to_category">Adicionar nova nota %1$s</string>
<string name="widget_note_list_placeholder">Sem anotações</string>
<string name="widget_single_note_title">Anotação simples</string>
<string name="widget_single_note_placeholder_tv">Anotação não encontrada</string>
@@ -114,7 +117,7 @@
<string name="error_dialog_title">Oh não - E agora? 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Tente forçar o fechamento do aplicativo e reinicie-o novamente. Pode ter havido uma conexão incorreta com o aplicativo Nextcloud.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Se o problema persistir, tente limpar o armazenamento dos dois aplicativos: Nextcloud e Anotações Nextcloud para resolver esse problema.</string>
- <string name="error_dialog_tip_clear_storage">Você pode limpar o armazenamento abrindo as informações do aplicativo e selecionando Armazenamento → Limpar Armazenamento</string>
+ <string name="error_dialog_tip_clear_storage">Você pode limpar o armazenamento ao abrir as informações do aplicativo e selecionar Armazenamento → Limpar armazenamento. ⚠️ Aviso: Isto excluirá as notas ainda não sincronizadas!</string>
<string name="error_dialog_tip_files_outdated">Seu aplicativo Nextcloud parece estar desatualizado. Visite a Play Store ou o F-Droid para obter a versão mais recente.</string>
<string name="error_dialog_tip_files_force_stop">Parece que algo está errado com seu aplicativo Nextcloud. Tente forçar a parada de ambos, o aplicativo Nextcloud e o aplicativo Nextcloud Notes.</string>
<string name="error_dialog_tip_files_delete_storage">Se forçar a parada deles não ajuda, tente limpar o armazenamento dos dois aplicativos.</string>
diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml
index c965e6df..2b24ee63 100644
--- a/app/src/main/res/values-ru/strings.xml
+++ b/app/src/main/res/values-ru/strings.xml
@@ -114,7 +114,6 @@
<string name="error_dialog_title">О нет, что теперь? 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Попробуйте принудительно закрыть приложение и запустить его снова. Это может быть связано с некорректным подключением к приложению Nextcloud.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Если проблема повторилась, попробуйте для ее решения очистить хранилище обоих приложений: Nextcloud и Nextcloud Notes</string>
- <string name="error_dialog_tip_clear_storage">Для очистки хранилища на откройте приложение «Настройки» и выберите Приложения → Nextcloud / Nextcloud Deck → Хранилище → Очистить хранилище</string>
<string name="error_dialog_tip_files_outdated">Ваше приложение Nextcloud устарело. Установите новую версию с Play Store или F-Droid.</string>
<string name="error_dialog_tip_files_force_stop">Похоже что с вашим приложением Nextcloud что-то не так. Попробуйте принудительно остановить оба приложения Nextcloud и Nextcloud Notes. </string>
<string name="error_dialog_tip_files_delete_storage">Если принудительная остановка не поможет, попробуйте очистить хранилище обоих приложений.</string>
@@ -234,11 +233,13 @@
<string name="formatting_help_code_body_2">В Markdown также поддерживается так называемый обособленный блок кода, который содержит несколько строк без абзацного отступа:</string>
<string name="formatting_help_code_body_3">А если Вы хотите включить подсветку синтаксиса, укажите язык:</string>
+ <string name="formatting_help_images_title">Изображения</string>
<string name="simple_other">Другой</string>
<string name="sort_last_modified">Сортировать по дате изменения</string>
<string name="sort_alphabetically">Сортировать по алфавиту</string>
<string name="error_action_open_battery_settings">Настройки баттареи</string>
<string name="error_action_open_deck_info">Открыть информацию о приложении</string>
<string name="error_action_open_network">Параметры сети</string>
+ <string name="no_account_configured_yet">Учётная запись пока не настроена</string>
<string name="no_other_accounts">Вы еще не настроили ни одного аккаунта</string>
</resources>
diff --git a/app/src/main/res/values-sc/strings.xml b/app/src/main/res/values-sc/strings.xml
index 61c47d2f..63c6b5bb 100644
--- a/app/src/main/res/values-sc/strings.xml
+++ b/app/src/main/res/values-sc/strings.xml
@@ -114,7 +114,6 @@
<string name="error_dialog_title">Oh no - Immoe ite ddoe at? 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Proa a serrare a fortza s\'aplicatzione e torrala a aviare. Fortzis ddoe at àpidu unu problema de connessione a s\'aplicatzione de Nextcloud. </string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Si sighit su problema, proa a cantzellare s\'archiviatzione de ambas is aplicatziones Nextcloud e Nextcloud Notes pro isorvere su problema.</string>
- <string name="error_dialog_tip_clear_storage">Podes limpiare s\'archiviatzione aberende is informatziones de s\'aplicatzione e seberende Archiviatzione → Lìmpia archiviatzione.</string>
<string name="error_dialog_tip_files_outdated">S\'aplicatzione tua de Nextcloud paret foras d\'usu. Pro praghere, bìsita su Play Store o F-Droid pro otènnere s\'ùrtima versione.</string>
<string name="error_dialog_tip_files_force_stop">Paret chi b\'at àpidu problemas cun s\'aplicatzione de Nextcloud. Pro praghere proa a ddas firmare ambas, s\'aplicatzione Nextcloud e s\'aplicatzione Nexcloud Notes. </string>
<string name="error_dialog_tip_files_delete_storage">Si a ddas firmare a fortza no agiudat, podes proare a limpiare s\'archiviatzione de ambas is aplicatziones.</string>
diff --git a/app/src/main/res/values-sk-rSK/strings.xml b/app/src/main/res/values-sk-rSK/strings.xml
index 3b4bf5ca..2d399674 100644
--- a/app/src/main/res/values-sk-rSK/strings.xml
+++ b/app/src/main/res/values-sk-rSK/strings.xml
@@ -114,7 +114,6 @@
<string name="error_dialog_title">Ale nie - Čo teraz? 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Skúste vyinútiť zatvorenie aplikácie a znova ju reštartovať. Možno došlo k chybnému pripojeniu k aplikácii Nextcloud.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Ak problém pretrváva, skúste vyčistiť úložisko oboch aplikácií: Nextcloud a Nextcloud Poznámky.</string>
- <string name="error_dialog_tip_clear_storage">Úložisko môžete vyčistiť otvorením informácii o aplikácii a výberom Úložisko → Vyčistiť úložisko.</string>
<string name="error_dialog_tip_files_outdated">Váš Nextcloud vyzerá byť zastaralý. Navštívte Play Store alebo F-Droid pre získanie najnovšej verzie.</string>
<string name="error_dialog_tip_files_force_stop">Niečo s vašim Nextcloudom nie je v poriadku. Skúste vynútiť ukončenie aplikácií Nextcloud a Nextcloud Poznámky.</string>
<string name="error_dialog_tip_files_delete_storage">Ak ich ukončenie nepomôže, môžete skúsiť vyčistiť úložiská oboch aplikácií.</string>
diff --git a/app/src/main/res/values-sl/strings.xml b/app/src/main/res/values-sl/strings.xml
index 8564afba..55e3c41c 100644
--- a/app/src/main/res/values-sl/strings.xml
+++ b/app/src/main/res/values-sl/strings.xml
@@ -73,6 +73,9 @@
<string name="about_license_tab_title">Dovoljenje</string>
<string name="widget_note_list_title">Seznam zabeležk</string>
+ <string name="widget_note_list_add">Dodaj novo zabeležko</string>
+ <string name="widget_note_list_add_favorite">Dodaj novo zabeležko med priljubljene</string>
+ <string name="widget_note_list_add_to_category">Dodaj novo zabeležko v %1$s</string>
<string name="widget_note_list_placeholder">Ni zabeležk</string>
<string name="widget_single_note_title">Samostojna zabeležka</string>
<string name="widget_single_note_placeholder_tv">Zabeležke ni mogoče najti</string>
@@ -114,7 +117,7 @@
<string name="error_dialog_title">Ojoj, kaj pa zdaj? 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Poskusite vsiliti končanje programa in ga ponovno zagnati. Morda je težava v neustrezni povezavi z okoljem Nextcloud</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Če se težava še naprej pojavlja, poskusite počistiti podatke programa Nextcloud in Nextcloud Notes.</string>
- <string name="error_dialog_tip_clear_storage">Shrambo je mogoče počistiti med podrobnostmi programa Shramba → Počisti shrambo.</string>
+ <string name="error_dialog_tip_clear_storage">Shrambo je mogoče počistiti med podrobnostmi programa Shramba → Počisti shrambo. ⚠️ Opozorilo: s tem izbrišete tudi zabeležke, ki še niso usklajene!</string>
<string name="error_dialog_tip_files_outdated">Program Nextcloud je očitno starejše različice. Posodobite jo prek Trgovine Play ali s posodabljalnikom F-Droid.</string>
<string name="error_dialog_tip_files_force_stop">Kaže, da je nekaj narobe s programom Nextcloud. Poskusite vsiljeno zaustaviti programa Nextcloud in Nextcloud Notes.</string>
<string name="error_dialog_tip_files_delete_storage">Vsiljeno zaustavljanje ni imelo ustreznega učinka. Poskusite lahko še počistiti podatke shrambe obeh programov.</string>
@@ -250,6 +253,7 @@
<string name="error_action_open_battery_settings">Nastavitve baterije</string>
<string name="error_action_open_deck_info">Odpri podrobnosti programa</string>
<string name="error_action_open_network">Nastavitve omrežja</string>
+ <string name="no_account_configured_yet">Ni nastavljenega nobenega računa</string>
<string name="no_other_accounts">Ni nastavljenega nobenega drugega računa</string>
<string name="context_based_formatting">Pojavno okno vsebinskega oblikovanja</string>
</resources>
diff --git a/app/src/main/res/values-sr/strings.xml b/app/src/main/res/values-sr/strings.xml
index 2c087a8d..adb308eb 100644
--- a/app/src/main/res/values-sr/strings.xml
+++ b/app/src/main/res/values-sr/strings.xml
@@ -114,7 +114,6 @@
<string name="error_dialog_title">О, не - шта сад? 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Покушајте да форсирано затворите апликацију и стартујете је поново. Можда је била неисправна конекција ка Некстклауд апликацији.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Ако проблем настави да се дешава, пробајте да очистите податке од обе апликације: и Некстклауд и Некстклауд Белешки да бисте решили проблем.</string>
- <string name="error_dialog_tip_clear_storage">Складиште можете очистити ако отворите информације о апликацији и бирањем Меморија → Обриши податке.</string>
<string name="error_dialog_tip_files_outdated">Изгледа да је верзија Некстклауд апликације стара. Посетите Play Store или Ф-дроид да скинете најновију верзију.</string>
<string name="error_dialog_tip_files_force_stop">Нешто није у реду да Вашом Некстклауд апликацијом. Пробајте да форсирано зауставите обе, и Некстклауд апликацију и апликацију Некстклауд Белешки.</string>
<string name="error_dialog_tip_files_delete_storage">Ако ово заустављање не помогне, очистите податке за обе апликације.</string>
diff --git a/app/src/main/res/values-sv/strings.xml b/app/src/main/res/values-sv/strings.xml
index 4ac8996a..9f81a73f 100644
--- a/app/src/main/res/values-sv/strings.xml
+++ b/app/src/main/res/values-sv/strings.xml
@@ -60,7 +60,7 @@
<string name="about_source_title">Källkod</string>
<string name="about_source">Detta projekt finns på GitHub: &lt;a href=\"%1$s\">%1$s&lt;/a></string>
<string name="about_issues_title">Problem</string>
- <string name="about_issues">Du kan rapportera buggar, förbättringsförslag och funktionsönskningar på GitHubs problemhanterare: &lt;a href=\"%1$s\">%1$s&lt;/a></string>
+ <string name="about_issues">Du kan rapportera fel, förbättringsförslag och funktionsönskningar på GitHub-problemhanteraren: &lt;a href=\"%1$s\">%1$s&lt;/a></string>
<string name="about_translate_title">Översätt</string>
<string name="about_translate">Gå med i Nextcloud-gruppen på Transifex och hjälp oss översätta denna app: &lt;a href=\"%1$s\">%1$s&lt;/a></string>
<string name="about_app_license_title">Applicens</string>
@@ -114,7 +114,6 @@
<string name="error_dialog_title">Å nej - Vad händer nu?🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Försök med att Tvinga appen att stänga och återstarta. En felaktig anslutning till Nextcloud-appen kan ha förekommit.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Om problemet kvarstår, prova med att rensa lagringen på både appen Nextcloud och Nextcloud Notes.</string>
- <string name="error_dialog_tip_clear_storage">Du kan rensa diskutrymmet genom att öppna appens info, välj Lagring -> Rensa data</string>
<string name="error_dialog_tip_files_outdated">Din Nextcloud-app verkar utdaterad. Besök Play Butiken eller F-Droid för att hämta senaste versionen</string>
<string name="error_dialog_tip_files_force_stop">Något verkar vara fel med din Nextcloud-app. Försök att tvångsavsluta både Nextcloud- och Nextcloud Notes-apparna.</string>
<string name="error_dialog_tip_files_delete_storage">Om tvångsavslutning ej hjälper kan du försöka rensa datan på båda appar.</string>
diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml
index 16fe5e0a..3c9b0621 100644
--- a/app/src/main/res/values-tr/strings.xml
+++ b/app/src/main/res/values-tr/strings.xml
@@ -73,6 +73,9 @@
<string name="about_license_tab_title">Lisans</string>
<string name="widget_note_list_title">Not listesi</string>
+ <string name="widget_note_list_add">Yeni not ekle</string>
+ <string name="widget_note_list_add_favorite">Sık kullanılanlara yeni not ekle</string>
+ <string name="widget_note_list_add_to_category">%1$s içine yeni not ekle</string>
<string name="widget_note_list_placeholder">Herhangi bir not yok</string>
<string name="widget_single_note_title">Tek not</string>
<string name="widget_single_note_placeholder_tv">Not bulunamadı</string>
@@ -114,7 +117,7 @@
<string name="error_dialog_title">Hayıır. Şimdi ne olacak? 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Lütfen uygulamayı kapanmaya zorlayıp yeniden başlatın. Yanlış bir Nextcloud uygulaması bağlantısı olmalı.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Sorun sürerse, çözmek için hem Nextcloud uygulamasının hem de Nextcloud Notlar uygulamasının depolamalarını temizlemeyi deneyin.</string>
- <string name="error_dialog_tip_clear_storage">Depolamayı temizlemek için uygulama bilgilerini açın ve Depolama (Hafıza) → Depolamayı temizle (Veriyi sil) seçin.</string>
+ <string name="error_dialog_tip_clear_storage">Depolamayı temizlemek için uygulama bilgilerini açın ve Depolama (Hafıza) → Depolamayı temizle (Veriyi sil) seçin. ⚠️ Uyarı: Bu işlem henüz eşitlenmemiş notları silmeyecek!</string>
<string name="error_dialog_tip_files_outdated">Nextcloud uygulamanız eski görünüyor. Lütfen son sürümü almak için Play Store ya da F-Droid mağazalarına gidin.</string>
<string name="error_dialog_tip_files_force_stop">Nextcloud uygulamanızda bir sorun var gibi görünüyor. Lütfen hem Nextcloud uygulamasını hem de Nextcloud Notlar uygulamasını zorla kapatmayı deneyin.</string>
<string name="error_dialog_tip_files_delete_storage">Zorla durdurmak sorunu çözmediyse iki uygulamanın da depolamalarını temizlemeyi deneyebilirsiniz.</string>
diff --git a/app/src/main/res/values-uk/strings.xml b/app/src/main/res/values-uk/strings.xml
index ff778cf8..2fce0b0a 100644
--- a/app/src/main/res/values-uk/strings.xml
+++ b/app/src/main/res/values-uk/strings.xml
@@ -114,7 +114,6 @@
<string name="error_dialog_title">От халепа!</string>
<string name="error_dialog_tip_token_mismatch_retry">Спробуйте примусово закрити застосунок та наново запустити. Можливо, встановлено неправильне з\'єднання із застосунком Nextcloud.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">Якщо проблема не зникає, для її вирішення спробуйте очистити пам’ять обох програм: Nextcloud та Нотатки Nextcloud.</string>
- <string name="error_dialog_tip_clear_storage">Ви можете очистити сховище, відкривши інформацію про програму та вибравши Пам’ять → Очистити пам’ять.</string>
<string name="error_dialog_tip_files_outdated">Ваш додаток Nextcloud здається застарілим. Будь ласка, відвідайте Play Маркет або F-Droid, щоб отримати останню версію.</string>
<string name="error_dialog_tip_files_force_stop">Щось, здається, не так із вашим застосунком Nextcloud. Спробуйте примусово зупинити обидва застосунки: Nextcloud та Нотатки Nextcloud.</string>
<string name="error_dialog_tip_files_delete_storage">Якщо примусове їх завершення не допомагає, спробуйте очистити сховище обох застосунків.</string>
diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml
index e1cefcfb..89bc6b3f 100644
--- a/app/src/main/res/values-zh-rCN/strings.xml
+++ b/app/src/main/res/values-zh-rCN/strings.xml
@@ -73,6 +73,9 @@
<string name="about_license_tab_title">授权</string>
<string name="widget_note_list_title">笔记列表</string>
+ <string name="widget_note_list_add">添加新笔记</string>
+ <string name="widget_note_list_add_favorite">添加新笔记到收藏</string>
+ <string name="widget_note_list_add_to_category">添加新笔记到 %1$s</string>
<string name="widget_note_list_placeholder">没有笔记</string>
<string name="widget_single_note_title">单个笔记</string>
<string name="widget_single_note_placeholder_tv">未找到笔记</string>
@@ -114,7 +117,7 @@
<string name="error_dialog_title">哦,不。所以会怎么样?🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">请尝试强行关闭应用并重新打开。可能是与 Nextcloud 应用的连接不正确。</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">如果问题持续存在,尝试通过清除 Nextcloud 和 Nextcloud 笔记两个应用的缓存来解决问题。</string>
- <string name="error_dialog_tip_clear_storage">你可以通过这个方法来清除应用的存储空间:打开应用信息 → 存储空间 → 清除数据。</string>
+ <string name="error_dialog_tip_clear_storage">你可以通过打开应用信息,选择“存储>清除存储”来清除存储。⚠️ 警告:这将删除尚未同步的笔记!</string>
<string name="error_dialog_tip_files_outdated">您的 Nextcloud 应用似乎已经过时了。请访问 Play 商店或 F-Droid 以获取最新版本。</string>
<string name="error_dialog_tip_files_force_stop">您的 Nextcloud 应用似乎出现了问题。请尝试强行停止 Nextcloud 和 Nextcloud 笔记两个应用。</string>
<string name="error_dialog_tip_files_delete_storage">如果强行停止没有效果,您可以尝试清除两个应用的存储空间。</string>
diff --git a/app/src/main/res/values-zh-rHK/strings.xml b/app/src/main/res/values-zh-rHK/strings.xml
index c6f03157..7583c6d9 100644
--- a/app/src/main/res/values-zh-rHK/strings.xml
+++ b/app/src/main/res/values-zh-rHK/strings.xml
@@ -73,6 +73,9 @@
<string name="about_license_tab_title">授權條款</string>
<string name="widget_note_list_title">筆記清單</string>
+ <string name="widget_note_list_add">添加新筆記</string>
+ <string name="widget_note_list_add_favorite">將新筆記添加到收藏夾</string>
+ <string name="widget_note_list_add_to_category">將新筆記添加到 %1$s</string>
<string name="widget_note_list_placeholder">沒有筆記</string>
<string name="widget_single_note_title">單則筆記</string>
<string name="widget_single_note_placeholder_tv">找不到筆記</string>
@@ -86,7 +89,7 @@
<string name="shortcut_create_long">建立新筆記</string>
<string name="pref_value_font_normal">一般</string>
- <string name="pref_value_wifi_and_mobile">在使用 Wi-Fi 及行動網路時同步</string>
+ <string name="pref_value_wifi_and_mobile">在使用 Wi-Fi 及流動網路時同步</string>
<string name="pref_value_lock">密碼保護</string>
<string name="simple_error">錯誤</string>
@@ -95,12 +98,12 @@
<string name="simple_exception">例外</string>
<string name="pin_to_homescreen">釘選至主畫面</string>
<string name="note_has_been_deleted">此則筆記已被刪除</string>
- <string name="add_account">新增帳戶</string>
+ <string name="add_account">新增賬戶</string>
<string name="category_music">音樂</string>
<string name="category_movies">電影</string>
<string name="category_movie">電影</string>
<string name="category_work">工作</string>
- <string name="account_already_imported">已成功匯入帳戶</string>
+ <string name="account_already_imported">已成功匯入賬戶</string>
<string name="no_notes_yet">尚沒有筆記</string>
<string name="no_notes_yet_description">請按 + 按鈕建立新筆記</string>
<string name="simple_more">更多</string>
@@ -108,22 +111,39 @@
<string name="category_readonly">唯讀</string>
<string name="no_category">沒有分類</string>
<string name="add_category">新增%1$s</string>
- <string name="simple_checkbox">複選框</string>
+ <string name="simple_checkbox">勾選框</string>
<string name="unlock_notes">解鎖筆記</string>
<string name="simple_beta">Beta 測試版</string>
<string name="error_dialog_title">喔不 - 現在怎麼辦?🙁</string>
+ <string name="error_dialog_tip_token_mismatch_retry">請嘗試強行關閉應用程式並重新打開。可能是與Nextcloud應用程式的連接不正確有關。</string>
+ <string name="error_dialog_tip_token_mismatch_clear_storage">如果問題持續,請嘗試清除兩個應用程序的存儲:Nextcloud 和 Nextcloud Notes 的以解決此問題。</string>
+ <string name="error_dialog_tip_clear_storage">您可以通過打開應用程式信息並選擇 存儲→清除存儲 來清除存儲。⚠️警告:這將刪除尚未同步的筆記!</string>
+ <string name="error_dialog_tip_files_outdated">您的 Nextcloud 應用程式似乎已過時。請從 Play Store 或 F-Droid 下載最新版本。 </string>
+ <string name="error_dialog_tip_files_force_stop">您的Nextcloud應用程式似乎出了點問題。 請嘗試同時強行關閉 Nextcloud 應用程序和 Nextcloud Notes 應用程序。</string>
+ <string name="error_dialog_tip_files_delete_storage">如果強行關閉沒有幫助,則可以嘗試清除兩個應用程序的存儲。</string>
+ <string name="error_dialog_timeout_instance">伺服器沒有在規定的時間回應。請確保您的伺服器實例在正常運行。</string>
+ <string name="error_dialog_timeout_toggle">檢查您的網絡連接。 有時候,切換流動數據或Wi-Fi可能會有所幫助。</string>
+ <string name="error_dialog_check_server">您伺服器的回應不正確。請檢查您是否可以通過 web 界面存取筆記。</string>
+ <string name="error_dialog_check_server_logs">您的 Nextcloud 設置存在問題。請查看伺服器記錄檔案。</string>
+ <string name="error_dialog_check_maintenance">請檢查您的 Nextcloud 當前是否在維護模式。</string>
+ <string name="error_dialog_insufficient_storage">您的 Nextcloud 沒有剩餘可用的存儲空間。請刪除一些檔案,以將近端更改同步到雲中。</string>
+ <string name="error_dialog_contact_us">如果問題仍然存在,請不要猶豫與我們聯繫。 您可以在側欄的“關於”部分中找到我們聯絡的信息。</string>
<string name="error_dialog_we_need_info">我們需要以下的技術資訊來幫助您:</string>
+ <string name="error_dialog_server_app_enabled">請確保您已在伺服器上安裝並啟用 Notes 應用程式。</string>
+ <string name="error_dialog_redirect">您的伺服器確實以HTTP 302狀態代碼響應,這表示您尚未在伺服器上安裝 Notes 應用程式或配置錯誤。 這可能是由 .htaccess 檔案中的自定義替代引起的,也可能是由 Nextcloud 應用程式(如 OID 客戶端)引起的。</string>
+ <string name="error_dialog_tip_disable_battery_optimizations">請禁用 Nextcloud 和 Notes 應用程式的所有電池優化。</string>
<string name="added_content">已加入「%1$s」</string>
<string name="shared_text_empty">分享的文字是空的</string>
<string name="append_to_note">附加到筆記</string>
<string name="change_note_title">改變筆記標題</string>
<string name="menu_edit_title">編輯標題</string>
- <string name="settings_gridview">格線檢視 </string>
+ <string name="settings_branding">創建標籤</string>
+ <string name="settings_gridview">網格檢視 🆕</string>
<string name="simple_security">安全性</string>
<string name="simple_appearance">外觀</string>
<string name="simple_synchronization">同步</string>
<string name="simple_behavior">行為</string>
- <string name="manage_accounts">帳戶管理</string>
+ <string name="manage_accounts">賬戶管理</string>
<string name="action_formatting_help">正在格式化</string>
<string-array name="noteMode_entries">
@@ -155,13 +175,13 @@
<item quantity="other">已選擇 %d 則</item>
</plurals>
<plurals name="bulk_notes_deleted">
- <item quantity="other">已刪除 %1$d 記事</item>
+ <item quantity="other">已刪除 %1$d 則記事</item>
</plurals>
<plurals name="bulk_notes_restored">
- <item quantity="other">已回復 %1$d 記事</item>
+ <item quantity="other">已回復 %1$d 則記事</item>
</plurals>
<plurals name="share_multiple">
- <item quantity="other">共享 %1$d 記事內容</item>
+ <item quantity="other">共享 %1$d 則記事內容</item>
</plurals>
<string name="formatting_help_divider" translateable="false">---</string>
@@ -170,22 +190,42 @@
<string name="formatting_help_codefence" translateable="false">```</string>
<string name="formatting_help_codefence_outer" translateable="false">````</string>
<string name="formatting_help_codefence_javascript" translateable="false">```javascript</string>
+ <string name="formatting_help_cbf_title">基於 context 的格式</string>
+ <string name="formatting_help_cbf_body_1">Notes 應用程式的主要設計目標是提供無干擾的工具,儘管您可以使用Markdown設置文本格式。 對於下面提到的各種示例,您可以使用快捷方式,以便無需輸入以下代碼即可格式化便箋。</string>
+ <string name="formatting_help_cbf_body_2">只需選擇一個文本範圍或在任意位置點擊光標,您將彈出一個選項單,該選項單包含默認條目 %1$s,%2$s,%3$s 條目如 %4$s 或 %5$s。</string>
+
<string name="formatting_help_text_title">文字編輯器</string>
+ <string name="formatting_help_text_body">使用 Markdown 可以很容易地使某些單詞變為%1$s粗體%1$s,而其他單詞則變為%2$s斜體%2$s。您可以%3$s刪除%3$s一些單詞,甚至[鏈接到 Nextcloud ](https://nextcloud.com)。</string>
+
<string name="formatting_help_lists_title">清單</string>
- <string name="formatting_help_lists_body_1">有時您想要編號列表:</string>
+ <string name="formatting_help_lists_body_1">有時您想顯示編號列表(numbered list):</string>
<string name="formatting_help_lists_body_2">一</string>
<string name="formatting_help_lists_body_3">二</string>
<string name="formatting_help_lists_body_4">三</string>
- <string name="formatting_help_lists_body_6">以短劃線 (dash) 開頭</string>
+ <string name="formatting_help_lists_body_5">有時您想顯示要點(bullet points):</string>
+ <string name="formatting_help_lists_body_6">以短劃線(dash)開頭</string>
+ <string name="formatting_help_lists_body_7">如果您有子點,請在短劃線(dash)或星號(asterisk)前放置兩個空格:</string>
<string name="formatting_help_lists_body_8">類似這個</string>
<string name="formatting_help_lists_body_9">還有這個</string>
<string name="formatting_help_checkboxes_title">勾選框</string>
+ <string name="formatting_help_checkboxes_body_1">請使用列表後跟方括號去建立勾選框</string>
<string name="formatting_help_checkboxes_body_2">項目 1</string>
<string name="formatting_help_checkboxes_body_3">項目 2</string>
+ <string name="formatting_help_structured_documents_title">結構化文件</string>
+ <string name="formatting_help_structured_documents_body_1">有時,使用不同級別的標題來組織文檔很有用。以 %1$s 開頭的行以創建標題。連續多個 %2$s 表示較小的標題尺寸。</string>
+ <string name="formatting_help_structured_documents_body_2">這是第三層標題</string>
+ <string name="formatting_help_structured_documents_body_3">您可以使用從 %1$s 到 %2$s 等共六個不同等級的標題大小。</string>
+ <string name="formatting_help_structured_documents_body_4">如果您想引用他人的說話,請在該行之前使用%1$s字符:</string>
+ <string name="formatting_help_structured_documents_body_5">Imagination is more important than knowledge. Knowledge is limited. Imagination encircles the world.</string>
<string name="formatting_help_structured_documents_body_6">- 愛因斯坦</string>
+ <string name="formatting_help_code_title">代碼</string>
+ <string name="formatting_help_code_body_1">使用 Markdown 設置代碼樣式的方法有多種。 如果您有內聯代碼塊,請將其包裝在反引號中:</string>
+ <string name="formatting_help_code_body_2">Markdown還支持稱為代碼防護(code fencing)的功能,該功能允許多行不縮進:</string>
+ <string name="formatting_help_code_body_3">如果您想使用語法突出顯示,請指定語言:</string>
+
<string name="formatting_help_tables_title">表</string>
<!-- Column header of a sample table -->
<string name="formatting_help_tables_column">欄 %1d</string>
@@ -193,11 +233,15 @@
<string name="formatting_help_tables_value">值 %1d</string>
<string name="formatting_help_images_title">圖像</string>
+ <string name="formatting_help_images_alt">精美圖像</string>
+
<string name="simple_other">其他</string>
<string name="sort_last_modified">依修改日期排序</string>
<string name="sort_alphabetically">依字母排序</string>
<string name="error_action_open_battery_settings">電池設定</string>
<string name="error_action_open_deck_info">開啟 App 資訊</string>
<string name="error_action_open_network">網路設定</string>
+ <string name="no_account_configured_yet">未有已設定的賬戶</string>
<string name="no_other_accounts">你尚未設定其它帳號。</string>
- </resources>
+ <string name="context_based_formatting">基於 context 的格式彈出框</string>
+</resources>
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index 77db6004..8735993b 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -23,20 +23,13 @@
<color name="icon_color_default">#757575</color>
- <color name="widget_background">#dfffffff</color>
- <color name="widget_fg_default">#000000</color>
- <color name="widget_fg_contrast">#ffffff</color>
-
<color name="category_background">@color/bg_normal</color>
<color name="category_border">@color/defaultBrand</color>
<color name="appbar">@android:color/white</color>
- <!-- Dark Theme -->
- <!-- Defined here until appwidgets can use night/colors -->
- <color name="fg_default_dark_theme">#eeeeee</color>
- <color name="fg_default_low_dark_theme">#666666</color>
- <color name="fg_default_high_dark_theme">#cccccc</color>
-
- <color name="widget_background_dark_theme">#bf222222</color>
+ <color name="widget_background">#ddffffff</color>
+ <color name="widget_foreground">#222222</color>
+ <color name="widget_foreground_strong">#121212</color>
+ <color name="widget_divider">#32d1d1d1</color>
</resources>
diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml
index f869a3a4..08db34b0 100644
--- a/app/src/main/res/values/dimens.xml
+++ b/app/src/main/res/values/dimens.xml
@@ -29,8 +29,11 @@
<dimen name="note_font_size_large">22sp</dimen>
<!-- Widgets -->
+ <dimen name="widget_outer_radius">@dimen/spacer_1x</dimen>
+ <dimen name="widget_inner_radius">@dimen/spacer_1hx</dimen>
+ <dimen name="widget_divider">1dp</dimen>
+
<dimen name="widget_margin">@dimen/spacer_1x</dimen>
- <dimen name="widget_single_note_padding">10dp</dimen>
<dimen name="widget_note_list_hdr_padding">2dp</dimen>
<dimen name="widget_note_list_header_height">36dp</dimen>
@@ -39,6 +42,7 @@
<dimen name="widget_note_list_outer_padding">4dp</dimen>
<dimen name="widget_note_list_inner_padding">4dp</dimen>
+ <dimen name="widget_note_list_entry_add_button">34dp</dimen>
<dimen name="widget_note_list_fav_icon_width">26dp</dimen>
<dimen name="widget_note_list_fav_icon_height">20dp</dimen>
</resources>
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 22ed8077..99cfe3c5 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -148,7 +148,7 @@
<string name="error_dialog_title">Oh no - What now? 🙁</string>
<string name="error_dialog_tip_token_mismatch_retry">Please try to force close the app and restart it again. There might have been an incorrect connection to the Nextcloud app.</string>
<string name="error_dialog_tip_token_mismatch_clear_storage">If the issue persists, try to clear the storage of both apps: Nextcloud and Nextcloud Notes to solve this issue.</string>
- <string name="error_dialog_tip_clear_storage">You can clear the storage by opening the app info and selecting Storage → Clear storage.</string>
+ <string name="error_dialog_tip_clear_storage">You can clear the storage by opening the app info and selecting Storage → Clear storage. ⚠️ Warning: This will delete not yet synchronized notes!</string>
<string name="error_dialog_tip_files_outdated">Your Nextcloud app seems to be outdated. Please visit the Play Store or F-Droid to get the latest version.</string>
<string name="error_dialog_tip_files_force_stop">Something seems to be wrong with your Nextcloud app. Please try to force stop both, the Nextcloud app and the Nextcloud Notes app.</string>
<string name="error_dialog_tip_files_delete_storage">If force stopping them does not help, you can try to clear the storage of both apps.</string>