diff options
author | Stefan Niedermann <info@niedermann.it> | 2021-03-13 14:28:23 +0300 |
---|---|---|
committer | Stefan Niedermann <info@niedermann.it> | 2021-03-13 14:28:23 +0300 |
commit | 56c28a296b4624077fb9a7231dea063d49ddd374 (patch) | |
tree | c60e6f628c7540224d01af7279c074e068183997 /app | |
parent | 0c01f258c25d6fa2b162730324ea0e3a821c8fd6 (diff) | |
parent | 40f8fe69de96b228b5cabbe7f7b292181a2d3fd8 (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')
57 files changed, 337 insertions, 543 deletions
diff --git a/app/build.gradle b/app/build.gradle index 5720e7a3..47f4f3a6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -14,8 +14,8 @@ android { applicationId "it.niedermann.owncloud.notes" minSdkVersion 21 targetSdkVersion 30 - versionCode 3001003 - versionName "3.1.3" + versionCode 3002003 + versionName "3.2.3" multiDexEnabled true testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" javaCompileOptions { @@ -58,6 +58,10 @@ android { play { dimension "version" } + pfungstadt { + dimension "version" + applicationIdSuffix ".pfungstadt" + } } } @@ -77,7 +81,7 @@ dependencies { // Android X implementation "androidx.appcompat:appcompat:1.2.0" - implementation "androidx.fragment:fragment:1.3.0" + implementation "androidx.fragment:fragment:1.3.1" implementation "androidx.preference:preference:1.1.1" implementation "androidx.recyclerview:recyclerview:1.1.0" implementation 'androidx.recyclerview:recyclerview-selection:1.0.0' @@ -90,10 +94,10 @@ dependencies { annotationProcessor "androidx.room:room-compiler:2.2.6" implementation 'androidx.multidex:multidex:2.0.1' - coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.1.1' + coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.1.5' // Testing - testImplementation 'junit:junit:4.13.1' + testImplementation 'junit:junit:4.13.2' androidTestImplementation 'com.android.support:support-annotations:28.0.0' androidTestImplementation 'com.android.support.test:runner:1.0.2' androidTestImplementation "androidx.arch.core:core-testing:2.1.0" diff --git a/app/src/test/java/it/niedermann/owncloud/notes/shared/util/NoteUtilTest.java b/app/src/androidTest/java/it/niedermann/owncloud/notes/shared/util/NoteUtilTest.java index baa58536..baa58536 100644 --- a/app/src/test/java/it/niedermann/owncloud/notes/shared/util/NoteUtilTest.java +++ b/app/src/androidTest/java/it/niedermann/owncloud/notes/shared/util/NoteUtilTest.java 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 Binary files differindex 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 diff --git a/app/src/main/res/drawable/single_note_widget.png b/app/src/main/res/drawable/single_note_widget.png Binary files differindex b6f02ff4..7d1f126d 100644 --- a/app/src/main/res/drawable/single_note_widget.png +++ b/app/src/main/res/drawable/single_note_widget.png 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: <a href=\"%1$s\">%1$s</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: <a href=\"%1$s\">%1$s</a></string> + <string name="about_issues">Du kan rapportera fel, förbättringsförslag och funktionsönskningar på GitHub-problemhanteraren: <a href=\"%1$s\">%1$s</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: <a href=\"%1$s\">%1$s</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> diff --git a/app/src/test/java/android/text/TextUtils.java b/app/src/test/java/android/text/TextUtils.java index 52f8b8c5..e69de29b 100644 --- a/app/src/test/java/android/text/TextUtils.java +++ b/app/src/test/java/android/text/TextUtils.java @@ -1,41 +0,0 @@ -package android.text; - -import androidx.annotation.Nullable; - -import java.util.Iterator; - -public class TextUtils { - - /** - * Returns a string containing the tokens joined by delimiters. - * - * @param delimiter a CharSequence that will be inserted between the tokens. If null, the string - * "null" will be used as the delimiter. - * @param tokens an array objects to be joined. Strings will be formed from the objects by - * calling object.toString(). If tokens is null, a NullPointerException will be thrown. If - * tokens is empty, an empty string will be returned. - */ - public static String join(CharSequence delimiter, Iterable<?> tokens) { - final Iterator<?> it = tokens.iterator(); - if (!it.hasNext()) { - return ""; - } - final StringBuilder sb = new StringBuilder(); - sb.append(it.next()); - while (it.hasNext()) { - sb.append(delimiter); - sb.append(it.next()); - } - return sb.toString(); - } - - /** - * Returns true if the string is null or 0-length. - * - * @param str the string to be examined - * @return true if str is null or zero length - */ - public static boolean isEmpty(@Nullable CharSequence str) { - return str == null || str.length() == 0; - } -} |