Merge branch 'develop' into feature/ons/device_manager_security_sessions

This commit is contained in:
Onuray Sahin 2022-09-23 16:16:49 +03:00
commit 7cd30a1ed4
207 changed files with 3389 additions and 1137 deletions

View file

@ -1,3 +1,39 @@
Changes in Element v1.5.0 (2022-09-23)
======================================
Features ✨
----------
- Deferred DMs - Enable and move the feature to labs settings ([#7180](https://github.com/vector-im/element-android/issues/7180))
Bugfixes 🐛
----------
- Fix text margin in QR code view when no display name is set ([#5424](https://github.com/vector-im/element-android/issues/5424))
- [App Layout] Recents carousel now scrolled to first position when new item added to or moved to this position ([#6776](https://github.com/vector-im/element-android/issues/6776))
- Fixed problem when room list's scroll did jump after rooms placeholders were replaced with rooms summary items ([#7079](https://github.com/vector-im/element-android/issues/7079))
- Fixes crash when quickly double clicking FABs in the new app layout ([#7102](https://github.com/vector-im/element-android/issues/7102))
- Fixes space list and new chat bottom sheets showing too small in New App Layout (especially evident in landscape) ([#7103](https://github.com/vector-im/element-android/issues/7103))
- [App Layout] Room leaving prompt dialog now waits user to confirm leaving before do so ([#7122](https://github.com/vector-im/element-android/issues/7122))
- Fix empty verification bottom sheet. ([#7130](https://github.com/vector-im/element-android/issues/7130))
- [New Layout] Fixes new chat dialog not getting dismissed after selecting its actions ([#7132](https://github.com/vector-im/element-android/issues/7132))
- Fixes Room List not getting updated when fragment is not in focus ([#7186](https://github.com/vector-im/element-android/issues/7186))
In development 🚧
----------------
- Create DM room only on first message - Add a spinner when sending the first message ([#6970](https://github.com/vector-im/element-android/issues/6970))
- [Device Manager] Filter Other Sessions ([#7045](https://github.com/vector-im/element-android/issues/7045))
- [Device management] Session details screen ([#7077](https://github.com/vector-im/element-android/issues/7077))
- Create DM room only on first message - Fix glitch in the room list ([#7121](https://github.com/vector-im/element-android/issues/7121))
- Create DM room only on first message - Handle the local rooms within the new AppLayout ([#7153](https://github.com/vector-im/element-android/issues/7153))
Other changes
-------------
- [Modules] Lifts the application variants to the app module ([#6779](https://github.com/vector-im/element-android/issues/6779))
- Ensure that we do not expect all the Event fields when requesting `rooms/{roomId}/hierarchy` endpoint. ([#7035](https://github.com/vector-im/element-android/issues/7035))
- Move some GitHub actions to buildjet runners, and remove the second attempt to run integration tests. ([#7108](https://github.com/vector-im/element-android/issues/7108))
- Exclude legacy android support annotation library ([#7140](https://github.com/vector-im/element-android/issues/7140))
- Pulling no longer hosted im.dlg:android-dialer directly into the repository and removing legacy support library usages ([#7142](https://github.com/vector-im/element-android/issues/7142))
- Fixing build cache misses when compiling the vector module ([#7157](https://github.com/vector-im/element-android/issues/7157))
Changes in Element v1.4.36 (2022-09-10)
=======================================

View file

@ -1,10 +1,42 @@
# Contributing code to Matrix
# Contributing to Element Android
<!--- TOC -->
* [Contributing code to Matrix](#contributing-code-to-matrix)
* [Android Studio settings](#android-studio-settings)
* [Template](#template)
* [Compilation](#compilation)
* [I want to help translating Element](#i-want-to-help-translating-element)
* [I want to submit a PR to fix an issue](#i-want-to-submit-a-pr-to-fix-an-issue)
* [Kotlin](#kotlin)
* [Changelog](#changelog)
* [Code quality](#code-quality)
* [Internal tool](#internal-tool)
* [ktlint](#ktlint)
* [lint](#lint)
* [Unit tests](#unit-tests)
* [Tests](#tests)
* [Internationalisation](#internationalisation)
* [Adding new string](#adding-new-string)
* [Plurals](#plurals)
* [Editing existing strings](#editing-existing-strings)
* [Removing existing strings](#removing-existing-strings)
* [Renaming string ids](#renaming-string-ids)
* [Reordering strings](#reordering-strings)
* [Accessibility](#accessibility)
* [Layout](#layout)
* [Authors](#authors)
* [Thanks](#thanks)
<!--- END -->
## Contributing code to Matrix
Please read https://github.com/matrix-org/synapse/blob/master/CONTRIBUTING.md
Element Android support can be found in this room: [![Element Android Matrix room #element-android:matrix.org](https://img.shields.io/matrix/element-android:matrix.org.svg?label=%23element-android:matrix.org&logo=matrix&server_fqdn=matrix.org)](https://matrix.to/#/#element-android:matrix.org).
# Specific rules for Matrix Android projects
The rest of the document contains specific rules for Matrix Android projects
## Android Studio settings
@ -120,17 +152,21 @@ You should consider adding Unit tests with your PR, and also integration tests (
Translations are handled using an external tool: [Weblate](https://translate.element.io/projects/element-android/)
As a general rule, please never edit or add or remove translations to the project in a Pull Request. It can lead to merge conflict if the translations are also modified in Weblate side.
**As a general rule, please never edit or add or remove translations to the project in a Pull Request**. It can lead to merge conflict if the translations are also modified in Weblate side. Pull Request containing change(s) on the translation files cannot be merged.
#### Adding new string
When adding new string resources, please only add new entries in the file `value/strings.xml`. Translations will be added later by the community of translators using Weblate.
When adding new string resources, please only add new entries in the file `values/strings.xml` ([this file](./library/ui-strings/src/main/res/values/strings.xml)). Translations will be added later by the community of translators using Weblate.
The file `value/strings.xml` must only contain American English (U. S. English) values, as this is the default language of the Android operating system. So for instance, please use "color" instead of "colour". Element Android will still use the language set on the system by the user, like any other Android applications which provide translations. The system language can be any other English language variants, or any other languages. Note that this is also possible to override the system language using the Element Android in-app language settings.
The file `values/strings.xml` must only contain American English (U. S. English) values, as this is the default language of the Android operating system. So for instance, please use "color" instead of "colour". Element Android will still use the language set on the system by the user, like any other Android applications which provide translations. The system language can be any other English language variants, or any other languages. Note that this is also possible to override the system language using the Element Android in-app language settings.
New strings can be added anywhere in the file `value/strings.xml`, not necessarily at the end of the file. Generally, it's even better to add the new strings in some dedicated section per feature, and not at the end of the file, to avoid merge conflict between 2 PR adding strings at the end of the same file.
New strings can be added anywhere in the file `values/strings.xml`, not necessarily at the end of the file. Generally, it's even better to add the new strings in some dedicated section per feature, and not at the end of the file, to avoid merge conflict between 2 PR adding strings at the end of the same file.
Do not hesitate to use plurals when appropriate.
##### Plurals
Please use `plurals` resources when appropriate, and note that some languages have specific rules for `plurals`, so even if the string will always be at the plural form for English, please always create a `plurals` resource.
Specific plural forms can be found [here](https://unicode-org.github.io/cldr-staging/charts/37/supplemental/language_plural_rules.html).
#### Editing existing strings
@ -150,6 +186,23 @@ And add `tools:ignore="UnusedResources"` to the string, to let lint ignore that
The string will be removed during the next sync with Weblate.
#### Renaming string ids
This is possible to rename ids of the String resources, but since translation files cannot be edited, add TODO in the main strings.xml file above the strings you want to rename.
```xml
<!-- TODO Rename id to put_new_id_here -->
<string name="current_id">Hello Matrix world!</string>
```
The string id(s) will be renamed during the next Weblate sync.
#### Reordering strings
To group strings per feature, or for any other reasons, it is possible to reorder string resources, but only in the [main strings.xml file](./library/ui-strings/src/main/res/values/strings.xml). ). We do not mind about ordering in the translation files, and anyway this is forbidden to edit manually the translation files.
It is also possible to add empty lines between string resources, and to add XML comments. Please note that the XML comment just above a String resource will also appear on Weblate and be visible to the translators.
### Accessibility
Please consider accessibility as an important point. As a minimum requirement, in layout XML files please use attributes such as `android:contentDescription` and `android:importantForAccessibility`, and test with a screen reader if it's working well. You can add new string resources, dedicated to accessibility, in this case, please prefix theirs id with `a11y_`.

View file

@ -44,10 +44,12 @@ If you would like to receive releases more quickly (bearing in mind that they ma
## Contributing
Please refer to [CONTRIBUTING.md](https://github.com/vector-im/element-android/blob/develop/CONTRIBUTING.md) if you want to contribute on Matrix Android projects!
Please refer to [CONTRIBUTING.md](./CONTRIBUTING.md) if you want to contribute on Matrix Android projects!
Come chat with the community in the dedicated Matrix [room](https://matrix.to/#/#element-android:matrix.org).
Also [this documentation](./docs/_developer_onboarding.md) can hopefully help developers to start working on the project.
## Triaging issues
Issues are triaged by community members and the Android App Team, following the [triage process](https://github.com/vector-im/element-meta/wiki/Triage-process).

View file

@ -71,6 +71,14 @@ allprojects {
groups.mavenCentral.group.each { includeGroup it }
}
}
// snapshots repository
maven {
url "https://oss.sonatype.org/content/repositories/snapshots"
content {
groups.snapshot.regex.each { includeGroupByRegex it }
groups.snapshot.group.each { includeGroup it }
}
}
maven {
url 'https://jitpack.io'
content {

View file

@ -1 +0,0 @@
Fix text margin in QR code view when no display name is set

View file

@ -1 +0,0 @@
[App Layout] Recents carousel now scrolled to first position when new item added to or moved to this position

View file

@ -1 +0,0 @@
[Modules] Lifts the application variants to the app module

1
changelog.d/6929.misc Normal file
View file

@ -0,0 +1 @@
Target API 12 and compile with Android SDK 32.

View file

@ -1 +0,0 @@
Create DM room only on first message - Add a spinner when sending the first message

View file

@ -1 +0,0 @@
Ensure that we do not expect all the Event fields when requesting `rooms/{roomId}/hierarchy` endpoint.

View file

@ -1 +0,0 @@
[Device Manager] Filter Other Sessions

View file

@ -1 +0,0 @@
[Device management] Session details screen

View file

@ -1 +0,0 @@
Fixed problem when room list's scroll did jump after rooms placeholders were replaced with rooms summary items

View file

@ -1 +0,0 @@
Fixes crash when quickly double clicking FABs in the new app layout

View file

@ -1 +0,0 @@
Fixes space list and new chat bottom sheets showing too small in New App Layout (especially evident in landscape)

View file

@ -1 +0,0 @@
Move some GitHub actions to buildjet runners, and remove the second attempt to run integration tests.

1
changelog.d/7114.wip Normal file
View file

@ -0,0 +1 @@
[Device management] Verify current session

View file

@ -1 +0,0 @@
Create DM room only on first message - Fix glitch in the room list

View file

@ -1 +0,0 @@
[App Layout] Room leaving prompt dialog now waits user to confirm leaving before do so

1
changelog.d/7126.doc Normal file
View file

@ -0,0 +1 @@
Draft onboarding documentation of the project at `./docs/_developer_onboarding.md`

1
changelog.d/7126.misc Normal file
View file

@ -0,0 +1 @@
Add support to `/devtools` command.

View file

@ -1 +0,0 @@
Fix empty verification bottom sheet.

View file

@ -1 +0,0 @@
[New Layout] Fixes new chat dialog not getting dismissed after selecting its actions

View file

@ -1 +0,0 @@
Exclude legacy android support annotation library

View file

@ -1 +0,0 @@
Pulling no longer hosted im.dlg:android-dialer directly into the repository and removing legacy support library usages

1
changelog.d/7143.wip Normal file
View file

@ -0,0 +1 @@
[Device management] Verify another session

View file

@ -1 +0,0 @@
Create DM room only on first message - Handle the local rooms within the new AppLayout

View file

@ -1 +0,0 @@
Fixing build cache misses when compiling the vector module

1
changelog.d/7159.misc Normal file
View file

@ -0,0 +1 @@
Fix lint warning, and cleanup the code

View file

@ -1 +0,0 @@
New App Layout is now enabled by default! Go to the Settings > Labs to toggle this

1
changelog.d/7198.sdk Normal file
View file

@ -0,0 +1 @@
Allow the sync timeout to be configured (mainly useful for testing)

1
changelog.d/7211.misc Normal file
View file

@ -0,0 +1 @@
CI: Prevent modification of translations by developer.

View file

@ -1,20 +1,17 @@
ext.versions = [
'minSdk' : 21,
'compileSdk' : 31,
'targetSdk' : 31,
'compileSdk' : 32,
'targetSdk' : 32,
'sourceCompat' : JavaVersion.VERSION_11,
'targetCompat' : JavaVersion.VERSION_11,
]
// Pinned to 7.1.3 because of https://github.com/vector-im/element-android/issues/6142
// Please test carefully before upgrading again.
def gradle = "7.1.3"
def gradle = "7.2.2"
// Ref: https://kotlinlang.org/releases.html
def kotlin = "1.6.21"
def kotlin = "1.7.10"
def kotlinCoroutines = "1.6.4"
def dagger = "2.42"
def dagger = "2.43.2"
def appDistribution = "16.0.0-beta04"
def retrofit = "2.9.0"
def arrow = "0.8.2"
@ -28,7 +25,9 @@ def mavericks = "2.7.0"
def glide = "4.13.2"
def bigImageViewer = "1.8.1"
def jjwt = "0.11.5"
def vanniktechEmoji = "0.15.0"
// Temporary version to unblock #6929. Once 0.16.0 is released we should use it, and revert
// the whole commit which set version 0.16.0-SNAPSHOT
def vanniktechEmoji = "0.16.0-SNAPSHOT"
def fragment = "1.5.2"
@ -51,7 +50,7 @@ ext.libs = [
],
androidx : [
'activity' : "androidx.activity:activity:1.5.1",
'appCompat' : "androidx.appcompat:appcompat:1.4.2",
'appCompat' : "androidx.appcompat:appcompat:1.5.1",
'biometric' : "androidx.biometric:biometric:1.1.0",
'core' : "androidx.core:core-ktx:1.8.0",
'recyclerview' : "androidx.recyclerview:recyclerview:1.2.1",

View file

@ -38,6 +38,13 @@ ext.groups = [
'com.google.testing.platform',
]
],
snapshot: [
regex: [
],
group: [
'com.vanniktech',
]
],
mavenCentral: [
regex: [
],
@ -118,7 +125,7 @@ ext.groups = [
'com.sun.xml.bind.mvn',
'com.sun.xml.fastinfoset',
'com.thoughtworks.qdox',
'com.vanniktech',
// 'com.vanniktech',
'commons-cli',
'commons-codec',
'commons-io',

View file

@ -0,0 +1,259 @@
# Developer on boarding
<!--- TOC -->
* [Introduction](#introduction)
* [Quick introduction to Matrix](#quick-introduction-to-matrix)
* [Matrix data](#matrix-data)
* [Room](#room)
* [Event](#event)
* [Sync](#sync)
* [Glossary about syncs](#glossary-about-syncs)
* [The Android project](#the-android-project)
* [Matrix SDK](#matrix-sdk)
* [Application](#application)
* [MvRx](#mvrx)
* [Behavior](#behavior)
* [Epoxy](#epoxy)
* [Other frameworks](#other-frameworks)
* [Push](#push)
* [Dependencies management](#dependencies-management)
* [Test](#test)
* [Other points](#other-points)
* [Logging](#logging)
* [Rageshake](#rageshake)
* [Tips](#tips)
* [Happy coding!](#happy-coding)
<!--- END -->
## Introduction
This doc is a quick introduction about the project and its architecture.
It's aim is to help new developers to understand the overall project and where to start developing.
Other useful documentation:
- all the docs in this folder!
- the [contributing doc](../CONTRIBUTING.md), that you should also read carefully.
### Quick introduction to Matrix
Matrix website: [matrix.org](https://matrix.org), [discover page](https://matrix.org/discover).
*Note*: Matrix.org is also hosting a homeserver ([.well-known file](https://matrix.org/.well-known/matrix/client)).
The reference homeserver (this is how Matrix servers are called) implementation is [Synapse](https://github.com/matrix-org/synapse/). But other implementations exist. The Matrix specification is here to ensure that any Matrix client, such as Element Android and its SDK can talk to any Matrix server.
Have a quick look to the client-server API documentation: [Client-server documentation](https://spec.matrix.org/v1.3/client-server-api/). Other network API exist, the list is here: (https://spec.matrix.org/latest/)
Matrix is an open source protocol. Change are possible and are tracked using [this GitHub repository](https://github.com/matrix-org/matrix-doc/). Changes to the protocol are called MSC: Matrix Spec Change. These are PullRequest to this project.
Matrix object are Json data. Unstable prefixes must be used for Json keys when the MSC is not merged (i.e. accepted).
#### Matrix data
There are many object and data in the Matrix worlds. Let's focus on the most important and used, `Room` and `Event`
##### Room
`Room` is a place which contains ordered `Event`s. They are identified with their `room_id`. Nearly all the data are stored in rooms, and shared using homeserver to all the Room Member.
*Note*: Spaces are also Rooms with a different `type`.
##### Event
`Events` are items of a Room, where data is embedded.
There are 2 types of Room Event:
- Regular Events: contain useful content for the user (message, image, etc.), but are not necessarily displayed as this in the timeline (reaction, message edition, call signaling).
- State Events: contain the state of the Room (name, topic, etc.). They have a non null value for the key `state_key`.
Also all the Room Member details are in State Events: one State Event per member. In this case, the `state_key` is the matrixId (= userId).
Important Fields of an Event:
- `event_id`: unique across the Matrix universe;
- `room_id`: the room the Event belongs to;
- `type`: describe what the Event contain, especially in the `content` section, and how the SDK should handle this Event;
- `content`: dynamic Event data; depends on the `type`.
So we have a triple `event_id`, `type`, `state_key` which uniquely defines an Event.
#### Sync
The `Sync` is a way for the Matrix client to be up to date regarding the user data hosted by the server. All the Events are coming through the sync response. More details can be found here: [spec.matrix.org/v1.3/client-server-api/#syncing](https://spec.matrix.org/v1.3/client-server-api/#syncing)
When the application is in foreground, this is a looping request. We are using Https requests, which offer the advantage to be compatible with any homeserver. A sync token is used as request parameter, to let the server know what the client knows.
The `SyncThread` is responsible to manage the sync request loop.
When the application is in background, a Push will trigger a sync request.
##### Glossary about syncs
- **initial sync**: a sync request without a token. This is the first request a client perform after login or after a clear cache. The server will include in the response all your rooms with the full state (all the room membership Event will not be present), with the latest messages for each room. We are in the process to replace this by version 3: sliding sync. All data are inserted to the Database (currently [Realm](https://www.mongodb.com/docs/realm/sdk/java/)).
- **incremental sync**: sync request with a token.
- **gappy sync**: sync request where all the new Events are not returned for one or several Rooms. Also called `limited sync`. It can be limited per Room. To get all the missing Events, a Room pagination API has to be called.
- **sync token**: `next_batch` value in the previous sync response. Will be provided as the `since` parameter for the next sync request.
### The Android project
The project should compile out of the box.
The project is split into several modules. The main ones are:
For the app
- `vector-app`: application entry point;
- `vector`: legacy application, but now a library. In the process of being split into several modules;
- `vector-config`: this is where all the configuration of the application should occurs. Should because we are in the process of migrating all the configuration here;
- `library/ui-strings`: this is where all the string resources are stored. Please refer to [contributing doc](../CONTRIBUTING.md) to know how to make change on this module;
- `library/ui-styles`: this is where the Android styles are defined.
For the SDK
- `matrix-sdk-android`: the main SDK module. The sources are in this project, but are also exported to [its own project](https://github.com/matrix-org/matrix-android-sdk2). All the PRs and issues related to the SDK take place in the Element Android project;
- `matrix-sdk-android-flow`: contains some wrapper to expose `Flow` to the application.
### Matrix SDK
SDK exposes `Services` to the client application. `Services` are public interface, and are defined in this parent package: `org.matrix.android.sdk.api`. Default implementation are internal to the SDK, in this parent package: `org.matrix.android.sdk.internal`. Note that you also have to declare the classes as `internal` when adding classes to the `org.matrix.android.sdk.internal` package.
Interface allows us to replace the implementation for testing purpose.
A generated documentation of the SDK is available [here](https://matrix-org.github.io/matrix-android-sdk2/). Updated after each release. Please ensure that the documentation (KDoc) of all the SDK Services is up to date, and is clear for a SDK user.
The SDK generated documentation also contains information about the entry points of the SDK.
[Dagger](https://dagger.dev/) is used to inject all the dependencies to the SDK classes.
SDK is exposing data as `LiveData`, but we are progressively migrating to `Flow`. Database is the source of truth.
Example:
- Client send an Event using the `SendService`;
- At the end a `SendEvent` task is used;
- Retrofit API is used to send data to the server;
- Goes to the server, which returns only the `event_id`;
- The `Event` is coming back from the `sync` response with eventually extra added data.
### Application
This is the UI part of the project.
There are two variants of the application: `Gplay` and `Fdroid`.
The main difference is about using Firebase on `Gplay` variant, to have Push from Google Services. `FDroid` variant cannot contain closed source dependency.
`Fdroid` is using background polling to lack the missing of Pushed. Now a solution using UnifiedPush has ben added to the project. See refer to [the dedicated documentation](./unifiedpush.md) for more details.
#### MvRx
[Maverick](https://airbnb.io/mavericks/#/README) (or MvRx) is an Android MVI framework that helps to develop Reactive application on Android.
- Activity: holder for Fragment. See the parent [VectorBaseActivity](../vector/src/main/java/im/vector/app/core/platform/VectorBaseActivity.kt);
- Fragment: manage screen of the application. See the parent [VectorBaseFragment](../vector/src/main/java/im/vector/app/core/platform/VectorBaseFragment.kt);
- BottomSheet: see the parent [VectorBaseBottomSheetDialogFragment](../vector/src/main/java/im/vector/app/core/platform/VectorBaseBottomSheetDialogFragment.kt);
- ViewModel: this is where the logic is placed. All our ViewModel has a `handle()` which takes action as parameter. See the parent [VectorViewModel](../vector/src/main/java/im/vector/app/core/platform/VectorViewModel.kt);
- VectorSharedActionViewModel: Specific ViewModel that can be used to communicate between Fragment(s) and the host Activity. See the parent [VectorSharedActionViewModel](../vector/src/main/java/im/vector/app/core/platform/VectorSharedActionViewModel.kt);
- ViewState: this are `data class`, and this represent the state of the View. Has to be copied and set to be updated. Fragment will update the UI regarding the current state (`invalidate()` method). `Async` class from MvRx can be used in the ViewState, especially for asynchronous data loading. Nullability can also be used for optional data. ViewStates have to implement `MavericksState`;
- ViewEvents: useful when the ViewModel asks the View to trigger a specific action: navigation, show dialog, etc. See the parent [VectorViewEvents](../vector/src/main/java/im/vector/app/core/platform/VectorViewEvents.kt);
- ViewAction (`VectorViewModelAction`): useful when the UI (generally the Fragment) asks the ViewModel to do something. See the parent [VectorViewModelAction](../vector/src/main/java/im/vector/app/core/platform/VectorViewModelAction.kt);
- Controller: see the `Epoxy` section just below.
##### Behavior
Fragment asks the ViewModel to perform an action (coming from the user, but not necessarily. ViewModel can then talk to the SDK, updates the state once or several times. Fragment update the UI regarding the new state.
When ViewModel is instantiated, it can subscribe using the SDK Services to get live state of the data.
`invalidate()` has to be used by default, but it's possible to listen to specific member(s) of the `ViewState` using `onEach`. TODO Add an example.
`awaitState()` method
#### Epoxy
[Epoxy](https://github.com/airbnb/epoxy) is an Android library for building complex screens in a RecyclerView. Please read [the introduction](https://github.com/airbnb/epoxy#epoxy).
- Controller declares items of the RecyclerView. Controller is injected in the Fragment. Controller extends `EpoxyController`, or one of its subclass, especially `TypedEpoxyController`;
- Fragment gives the state to the controller using `setData`;
- `buildModels` will be called by the framework;
- Controller will create ordered Items.
Epoxy does the diffing, and handle many other thing for us, like handling item type, etc.
See for instance the controller [AccountDataEpoxyController](../vector/src/main/java/im/vector/app/features/settings/devtools/AccountDataEpoxyController.kt)) for a simple example.
Warning: do not use twice the same item `id` or it will crash.
#### Other frameworks
- Dependency injection is managed by [Dagger](https://dagger.dev/) (SDK) and [Hilt](https://developer.android.com/training/dependency-injection/hilt-android) (App);
- [Retrofit](https://square.github.io/retrofit/) and [OkHttp3](https://square.github.io/okhttp/): network requests;
- [Moshi](https://github.com/square/moshi) is used to parse and serialize Json object;
### Push
Please see the dedicated documentation for more details.
This is the classical scenario:
- App receives a Push. Note: Push is ignored if app is in foreground;
- App asks the SDK to load Event data (fastlane mode). We have a change to get the data faster and display the notification faster;
- App asks the SDK to perform a sync request.
### Dependencies management
All the dependencies are declared in `build.gradle` files. But some versions are declared in [this dedicated file](../dependencies.gradle).
When adding a new dependency, you will have to update the file [dependencies_groups.gradle](../dependencies_groups.gradle) to allow the dependency to be downloaded from the artifact repository. Sometimes sub-dependencies need to be added too, until the project can compile.
[Dependabot](https://github.com/dependabot) is set up on the project. This tool will automatically create Pull Request to upgrade our dependencies one by one.
dependencies_group, gradle files, Dependabot, etc.
### Test
Please refer to [this dedicated document](./ui-tests.md).
TODO add link to the dedicated screenshot test documentation
### Other points
#### Logging
**Important warning: ** NEVER log private user data, or use the flag `LOG_PRIVATE_DATA`. Be very careful when logging `data class`, all the content will be output!
[Timber](https://github.com/JakeWharton/timber) is used to log data to logcat. We do not use directly the `Log` class. If possible please use a tag, as per
````kotlin
Timber.tag(loggerTag.value).d("my log")
````
because automatic tag (= class name) will not be available on the release version.
Also generally it is recommended to provide the `Throwable` to the Timber log functions.
Last point, not that `Timber.v` function may have no effect on some devices. Prefer using `Timber.d` and up.
#### Rageshake
Rageshake is a feature to send bug report directly from the application. Just shake your phone and you will be prompted to send a bug report.
Bug report can contain:
- a screenshot of the current application state
- the application logs from up to 15 application starts
- the logcat logs
- the key share history (crypto data)
The data will be sent to an internal server, which is not publicly accessible. A GitHub issue will also be created to a private GitHub repository.
Rageshake can be very useful to get logs from a release version of the application.
### Tips
- Element Android has a `developer mode` in the `Settings/Advanced settings`. Other useful options are available here;
- Show hidden Events can also help to debug feature. When developer mode is enabled, it is possible to view the source (= the Json content) of any Events;
- Type `/devtools` in a Room composer to access a developer menu. There are some other entry points. Developer mode has to be enabled;
- Hidden debug menu: when developer mode is enabled and on debug build, there are some extra screens that can be accessible using the green wheel. In those screens, it will be possible to toggle some feature flags;
- Using logcat, filtering with `onResume` can help you to understand what screen are currently displayed on your device. Searching for string displayed on the screen can also help to find the running code in the codebase.
- When this is possible, prefer using `sealed interface` instead of `sealed class`;
- When writing temporary code, using the string "DO NOT COMMIT" in a comment can help to avoid committing things by mistake. If committed and pushed, the CI will detect this String and will warn the user about it.
## Happy coding!
The team is here to support you, feel free to ask anything to other developers.
Also please feel to update this documentation, if incomplete/wrong/obsolete/etc.
**Thanks!**

View file

@ -28,6 +28,7 @@ Here are the checks that Danger does so far:
- PR with change on layout should include screenshot in the description
- PR which adds png file warn about the usage of vector drawables
- non draft PR should have a reviewer
- files containing translations are not modified by developers
### Quality check

View file

@ -0,0 +1,2 @@
Main changes in this version: Deferred DM enabled by default.
Full changelog: https://github.com/vector-im/element-android/releases

View file

@ -0,0 +1,42 @@
Element yra ir saugaus žinučių siuntimo, ir produktyvaus komandinio bendradarbiavimo programėlė, puikiai tinkanti grupiniams pokalbiams dirbant nuotoliniu būdu. Ši pokalbių programa naudoja visapusį šifravimą, kad užtikrintų galingas vaizdo konferencijas, dalijimąsi failais ir balso skambučius.
<b>Element funkcijos turi:</b>
- Išplėstinės bendravimo internetu priemonės
- Visiškai užšifruotos žinutės, kad būtų galima saugiau bendrauti su įmone, net ir su nuotoliniais darbuotojais
- Decentralizuoti pokalbiai, pagrįsti atvirojo kodo sistema Matrix
- Saugus dalijimasis failais su šifruotais duomenimis valdant projektus
- Vaizdo pokalbiai su IP balso perdavimu ir ekrano bendrinimu
- Lengva integracija su mėgstamiausiomis internetinėmis bendradarbiavimo priemonėmis, projektų valdymo įrankiais, VoIP paslaugomis ir kitomis komandinių pokalbių programomis
Element visiškai skiriasi nuo kitų žinučių siuntimo ir bendradarbiavimo programėlių. Ji veikia Matrix - atvirame tinkle, skirtame saugiam žinučių siuntimui ir decentralizuotam bendravimui. Jame galima savarankiškai talpinti duomenis ir žinutes savo serveryje, kad naudotojai galėtų maksimaliai valdyti ir kontroliuoti savo duomenis ir žinutes.
<b>Privatumas ir šifruotos žinutės</b>
Element apsaugo jus nuo nepageidaujamų reklamų, duomenų gavybos ir uždarų sodų. Jis taip pat apsaugo visus jūsų duomenis, "vienas su vienu" vaizdo ir balso ryšį, naudodamas visapusį šifravimą ir kryžmiškai pasirašytą įrenginių patvirtinimą.
Element suteikia galimybę kontroliuoti savo privatumą ir kartu saugiai bendrauti su visais, esančiais Matrix tinkle, arba kitais verslo bendradarbiavimo įrankiais integruojantis su tokiomis programėlėmis kaip Slack.
<b>Element gali būti savarankiškai talpinamas</b>
Kad galėtumėte geriau kontroliuoti savo slaptus duomenis ir pokalbius, Element gali būti savarankiškai talpinamas arba galite pasirinkti bet kurį Matrix pagrindu veikiantį serverį - atvirojo kodo decentralizuoto bendravimo standartu. Element suteikia privatumą, saugumo atititikimą ir integracijos lankstumą.
<b>Jūsų duomenys priklauso jums</b>
Jūs nusprendžiate, kur laikyti savo duomenis ir žinutes. Be duomenų gavybos ar trečiųjų šalių prieigos rizikos.
Element suteikia jums kontrolę įvairiais būdais:
1. Gaukite nemokamą paskyrą viešajame serveryje matrix.org, kurį talpina Matrix kūrėjai, arba rinkitės iš tūkstančių viešųjų serverių, kurių talpinimą teikia savanoriai
2. Savarankiškai talpinkite savo paskyrą, naudodami serverį savo IT infrastruktūroje
3. Užsisakykite paskyrą nuosavame serveryje tiesiog užsisakydami "Element Matrix Services" talpinimo paslaugą
<b>Atviras žinučių siuntimas ir bendradarbiavimas</b>
Galite bendrauti su bet kuriuo Matrix tinklo nariu, nesvarbu, ar jis naudojasi Element, kita Matrix programėle, ar net jei naudoja kitą žinučių siuntimo programėlę.
<b>Super saugus</b>
Tikras visapusis šifravimas (žinutes gali iššifruoti tik pokalbio dalyviai) ir kryžminiu parašu patvirtintas įrenginių patvirtinimas.
<b>Pilnas bendravimas ir integracija</b>
Žinučių siuntimas, balso ir vaizdo skambučiai, failų ir ekrano bendrinimas ir daugybė integracijų, robotų ir valdiklių. Kurkite kambarius, bendruomenes, palaikykite ryšį ir atlikite darbus.
<b>Tęskite darbą ten, kur baigėte</b>
Palaikykite ryšį, kad ir kur būtumėte, naudodami visiškai sinchronizuotą žinučių istoriją visuose įrenginiuose ir internete adresu https://app.element.io
<b>Atviras kodas</b>
Element Android yra atvirojo kodo projektas, kurį talpina GitHub. Praneškite apie klaidas ir (arba) prisidėkite prie jo kūrimo adresu https://github.com/vector-im/element-android

View file

@ -0,0 +1 @@
Grupiniai pokalbiai - šifruotos žinutės ir vaizdo skambučiai

View file

@ -0,0 +1 @@
Element - Saugūs pokalbiai

View file

@ -0,0 +1,2 @@
Belangrijkste veranderingen in deze versie: Verscheidene foutoplossingen en stabiliteitsverbeteringen.
Volledige lijst met veranderingen: https://github.com/vector-im/element-android/releases

View file

@ -0,0 +1,2 @@
Belangrijkste veranderingen in deze versie: Verscheidene foutoplossingen en stabiliteitsverbeteringen.
Volledige lijst met veranderingen: https://github.com/vector-im/element-android/releases

View file

@ -0,0 +1,2 @@
Belangrijkste veranderingen in deze versie: Verscheidene foutoplossingen en stabiliteitsverbeteringen.
Volledige lijst met veranderingen: https://github.com/vector-im/element-android/releases

View file

@ -0,0 +1,2 @@
Belangrijkste veranderingen in deze versie: Verscheidene foutoplossingen en stabiliteitsverbeteringen.
Volledige lijst met veranderingen: https://github.com/vector-im/element-android/releases

View file

@ -0,0 +1,2 @@
Belangrijkste veranderingen in deze versie: Verscheidene foutoplossingen en stabiliteitsverbeteringen.
Volledige lijst met veranderingen: https://github.com/vector-im/element-android/releases

View file

@ -0,0 +1,2 @@
Belangrijkste veranderingen in deze versie: Verscheidene foutoplossingen en stabiliteitsverbeteringen.
Volledige lijst met veranderingen: https://github.com/vector-im/element-android/releases

View file

@ -0,0 +1,2 @@
Belangrijkste veranderingen in deze versie: Verscheidene foutoplossingen en stabiliteitsverbeteringen.
Volledige lijst met veranderingen: https://github.com/vector-im/element-android/releases

View file

@ -0,0 +1,2 @@
Belangrijkste veranderingen in deze versie: Verscheidene foutoplossingen en stabiliteitsverbeteringen.
Volledige lijst met veranderingen: https://github.com/vector-im/element-android/releases

View file

@ -0,0 +1,2 @@
Belangrijkste veranderingen in deze versie: Verscheidene foutoplossingen en stabiliteitsverbeteringen.
Volledige lijst met veranderingen: https://github.com/vector-im/element-android/releases

View file

@ -0,0 +1,2 @@
Belangrijkste veranderingen in deze versie: Verscheidene foutoplossingen en stabiliteitsverbeteringen.
Volledige lijst met veranderingen: https://github.com/vector-im/element-android/releases

View file

@ -0,0 +1,2 @@
Belangrijkste veranderingen in deze versie: Verscheidene foutoplossingen en stabiliteitsverbeteringen.
Volledige lijst met veranderingen: https://github.com/vector-im/element-android/releases

View file

@ -17,7 +17,6 @@
package im.vector.lib.attachmentviewer
import android.annotation.SuppressLint
import android.graphics.Color
import android.os.Build
import android.os.Bundle
@ -136,7 +135,6 @@ abstract class AttachmentViewerActivity : AppCompatActivity(), AttachmentEventLi
}
}
@Suppress("DEPRECATION")
private fun setDecorViewFullScreen() {
// This is important for the dispatchTouchEvent, if not we must correct
// the touch coordinates
@ -144,22 +142,20 @@ abstract class AttachmentViewerActivity : AppCompatActivity(), AttachmentEventLi
// New API instead of SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN and SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
window.setDecorFitsSystemWindows(false)
// New API instead of SYSTEM_UI_FLAG_IMMERSIVE
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
window.decorView.windowInsetsController?.systemBarsBehavior = WindowInsetsController.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE
} else {
@SuppressLint("WrongConstant")
window.decorView.windowInsetsController?.systemBarsBehavior = WindowInsetsController.BEHAVIOR_SHOW_BARS_BY_SWIPE
}
window.decorView.windowInsetsController?.systemBarsBehavior = WindowInsetsController.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE
// New API instead of FLAG_TRANSLUCENT_STATUS
window.statusBarColor = ContextCompat.getColor(this, R.color.half_transparent_status_bar)
// new API instead of FLAG_TRANSLUCENT_NAVIGATION
window.navigationBarColor = ContextCompat.getColor(this, R.color.half_transparent_status_bar)
} else {
@Suppress("DEPRECATION")
window.decorView.systemUiVisibility = (
View.SYSTEM_UI_FLAG_LAYOUT_STABLE
or View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
or View.SYSTEM_UI_FLAG_IMMERSIVE)
@Suppress("DEPRECATION")
window.setFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS, WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS)
@Suppress("DEPRECATION")
window.setFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION, WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION)
}
}
@ -344,7 +340,6 @@ abstract class AttachmentViewerActivity : AppCompatActivity(), AttachmentEventLi
?.handleCommand(commands)
}
@Suppress("DEPRECATION")
private fun hideSystemUI() {
systemUiVisibility = false
// Enables regular immersive mode.
@ -356,17 +351,13 @@ abstract class AttachmentViewerActivity : AppCompatActivity(), AttachmentEventLi
// new API instead of SYSTEM_UI_FLAG_HIDE_NAVIGATION
window.decorView.windowInsetsController?.hide(WindowInsets.Type.navigationBars())
// New API instead of SYSTEM_UI_FLAG_IMMERSIVE
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
window.decorView.windowInsetsController?.systemBarsBehavior = WindowInsetsController.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE
} else {
@SuppressLint("WrongConstant")
window.decorView.windowInsetsController?.systemBarsBehavior = WindowInsetsController.BEHAVIOR_SHOW_BARS_BY_SWIPE
}
window.decorView.windowInsetsController?.systemBarsBehavior = WindowInsetsController.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE
// New API instead of FLAG_TRANSLUCENT_STATUS
window.statusBarColor = ContextCompat.getColor(this, R.color.half_transparent_status_bar)
// New API instead of FLAG_TRANSLUCENT_NAVIGATION
window.navigationBarColor = ContextCompat.getColor(this, R.color.half_transparent_status_bar)
} else {
@Suppress("DEPRECATION")
window.decorView.systemUiVisibility = (View.SYSTEM_UI_FLAG_IMMERSIVE
// Set the content to appear under the system bars so that the
// content doesn't resize when the system bars hide and show.
@ -381,13 +372,13 @@ abstract class AttachmentViewerActivity : AppCompatActivity(), AttachmentEventLi
// Shows the system bars by removing all the flags
// except for the ones that make the content appear under the system bars.
@Suppress("DEPRECATION")
private fun showSystemUI() {
systemUiVisibility = true
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
// New API instead of SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN and SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
window.setDecorFitsSystemWindows(false)
} else {
@Suppress("DEPRECATION")
window.decorView.systemUiVisibility = (View.SYSTEM_UI_FLAG_LAYOUT_STABLE
or View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
or View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN)

View file

@ -1470,7 +1470,7 @@
<item quantity="one">%d sessió activa</item>
<item quantity="other">%d sessions actives</item>
</plurals>
<string name="settings_active_sessions_verified_device_desc">Aquesta sessió és de confiança per a xats segurs ja que l\'has verificada tu:</string>
<string name="settings_active_sessions_verified_device_desc">Aquesta sessió és de confiança per a missatges segurs ja que l\'has verificada tu:</string>
<string name="settings_active_sessions_signout_device">Desconnecta aquesta sessió</string>
<string name="settings_active_sessions_manage">Gestió de sessions</string>
<string name="settings_active_sessions_show_all">Veure totes les sessions</string>
@ -1844,7 +1844,7 @@
<string name="choose_locale_other_locales_title">Altres idiomes disponibles</string>
<string name="choose_locale_current_locale_title">Idioma actual</string>
<string name="delete_event_dialog_reason_hint">Motiu de l\'eliminació</string>
<string name="verification_profile_device_verified_because">Aquesta sessió és de confiança per a xats segurs ja que %1$s (%2$s) l\'ha verificat:</string>
<string name="verification_profile_device_verified_because">Aquesta sessió és de confiança per a missatges segurs ja que %1$s (%2$s) l\'ha verificat:</string>
<string name="bootstrap_progress_compute_curve_key">Obtenint clau de corba</string>
<string name="create_room_dm_failure">No s\'ha pogut crear el xat. Comprova els usuaris que vols convidar i torna-ho a provar.</string>
<string name="cross_signing_verify_by_text">Verifica manualment mitjançant text</string>
@ -2225,7 +2225,7 @@
<string name="ftue_auth_carousel_control_body">Tria on es desen les teves converses, et dona control i independència. Connectat a través de Matrix.</string>
<string name="ftue_auth_carousel_secure_body">Comunicació segura i independent que t\'ofereix el mateix nivell de privadesa que una conversa cara a cara a casa teva.</string>
<string name="ftue_auth_carousel_workplace_title">Missatgeria pel teu equip.</string>
<string name="ftue_auth_carousel_encrypted_title">Missatgeria segura.</string>
<string name="ftue_auth_carousel_encrypted_title">Missatges segurs.</string>
<string name="ftue_auth_carousel_secure_title">Ets propietari de les teves converses.</string>
<string name="ftue_auth_carousel_control_title">Tu tens el control.</string>
<string name="call_tile_voice_call_has_ended">Trucada finalitzada • %1$s</string>
@ -2619,14 +2619,11 @@
<string name="device_manager_settings_active_sessions_show_all">Mostra totes les sessions (V2, WIP)</string>
<string name="create_room">Crea sala</string>
<string name="start_chat">Inicia xat</string>
<string name="device_manager_verification_status_detail_unverified">Verifica la teva sessió actual per a missatges segurs millorats.</string>
<string name="device_manager_other_sessions_description_verified">Verificada · Última activitat %1$s</string>
<string name="device_manager_other_sessions_description_unverified">No verificada · Última activitat %1$s</string>
<string name="device_manager_other_sessions_view_all">Veure-ho tot (%1$d)</string>
<string name="device_manager_header_section_current_session">Sessió actual</string>
<string name="device_manager_view_details">Veure detalls</string>
<string name="device_manager_verify_session">Verifica sessió</string>
<string name="device_manager_verification_status_detail_verified">La sessió actual està llesta per la missatgeria segura.</string>
<string name="device_manager_verification_status_unverified">Sessió no verificada</string>
<string name="device_manager_verification_status_verified">Sessió verificada</string>
<string name="a11y_device_manager_device_type_unknown">Tipus de dispositiu desconegut</string>
@ -2636,4 +2633,45 @@
<string name="timeline_error_room_not_found">Aquesta sala no s\'ha trobat.
\nTorna-ho a provar més tard.%s</string>
<string name="invites_title">Invitacions</string>
</resources>
<string name="home_empty_no_rooms_title">${app_name}
\nHola, %s.</string>
<string name="onboarding_new_app_layout_welcome_title">Nova visualització!</string>
<string name="onboarding_new_app_layout_button_try">Prova-ho</string>
<string name="onboarding_new_app_layout_spaces_title">Entra a espais</string>
<string name="home_empty_no_rooms_message">L\'aplicació de xats segurs tot en un. Per a equips, amics i organitzacions. Crea un xat o uneix-te a una sala existent per començar.</string>
<plurals name="device_manager_inactive_sessions_description">
<item quantity="one">Pensa en tancar sessió de les sessions antigues (%1$d dia o més) que ja no utilitzis.</item>
<item quantity="other">Pensa en tancar sessió de les sessions antigues (%1$d dies o més) que ja no utilitzis.</item>
</plurals>
<string name="onboarding_new_app_layout_feedback_message">Prem la part superior dreta per veure l\'opció d\'enviar comentaris.</string>
<string name="onboarding_new_app_layout_feedback_title">Envia comentaris</string>
<string name="home_empty_no_unreads_message">Aquí es mostraran els teus missatges no llegits, quan en tinguis.</string>
<string name="home_empty_no_unreads_title">Sense novetats.</string>
<string name="device_manager_unverified_sessions_description">Verifica les sessions o tanca\'n la sessió si no estan verificades.</string>
<string name="onboarding_new_app_layout_welcome_message">Per simplificar ${app_name}, les pestanyes ara son opcionals. Gestiona-les mitjançant el menú de la part superior dreta.</string>
<string name="home_empty_space_no_rooms_title">%s
\nsembla una mica buit.</string>
<string name="device_manager_inactive_sessions_title">Sessions inactives</string>
<string name="device_manager_unverified_sessions_title">Sessions no verificades</string>
<string name="device_manager_header_section_security_recommendations_description">Millora la seguretat del teu compte seguint aquestes recomanacions.</string>
<string name="device_manager_header_section_security_recommendations_title">Recomanacions de seguretat</string>
<plurals name="device_manager_other_sessions_description_inactive">
<item quantity="one">Actiu fa %1$d dia (%2$s)</item>
<item quantity="other">Actiu fa més de %1$d dies (%2$s)</item>
</plurals>
<string name="invites_empty_message">Aquí és on apareixeran les teves sol·licituds i invitacions.</string>
<string name="invites_empty_title">Res de nou.</string>
<string name="onboarding_new_app_layout_spaces_message">Accedeix als teus espais (part inferior dreta) més ràpid i fàcilment.</string>
<string name="home_empty_space_no_rooms_message">Els espais són una nova manera d\'agrupar sales i gent. Afegeix una sala o crea\'n una de nova mitjançant el botó de la part inferior dreta.</string>
<string name="space_list_empty_message">Els espais són una nova manera d\'agrupar sales i gent. Crea\'n un per començar.</string>
<string name="space_list_empty_title">Cap espai, encara.</string>
<string name="a11y_collapse_space_children">Amaga els continguts de %s</string>
<string name="a11y_expand_space_children">Mostra el contingut de %s</string>
<string name="change_space">Canvia espai</string>
<string name="device_manager_other_sessions_recommendation_description_unverified">Verifica les teves sessions per obtenir missatges segurs millorats o tanca les sessions que no reconeguis o ja no utilitzis.</string>
<string name="device_manager_filter_option_unverified_description">No llest per a missatges segurs</string>
<string name="device_manager_filter_option_verified_description">Llest per a missatges segurs</string>
<string name="device_manager_verification_status_detail_other_session_verified">Aquesta sessió està llesta per a missatges segurs.</string>
<string name="device_manager_verification_status_detail_current_session_verified">La teva sessió actual està llesta per a missatges segurs.</string>
<string name="device_manager_verification_status_detail_current_session_unverified">Verifica la teva sessió actual obtenir missatges segurs millorats.</string>
</resources>

View file

@ -2672,11 +2672,8 @@
<string name="device_manager_other_sessions_description_unverified">Neověřeno · Poslední aktivita %1$s</string>
<string name="device_manager_other_sessions_description_verified">Ověřeno · Poslední aktivita %1$s</string>
<string name="device_manager_other_sessions_view_all">Zobrazit všechny (%1$d)</string>
<string name="device_manager_header_section_current_session">Aktuální relace</string>
<string name="device_manager_view_details">Zobrazit podrobnosti</string>
<string name="device_manager_verify_session">Ověřit relaci</string>
<string name="device_manager_verification_status_detail_unverified">Ověřte svou aktuální relaci pro vylepšené zabezpečené zasílání zpráv.</string>
<string name="device_manager_verification_status_detail_verified">Vaše aktuální relace je připravena pro bezpečné zasílání zpráv.</string>
<string name="device_manager_verification_status_unverified">Neověřená relace</string>
<string name="device_manager_verification_status_verified">Ověřená relace</string>
<string name="a11y_device_manager_device_type_unknown">Neznámý typ zařízení</string>
@ -2686,4 +2683,41 @@
<string name="timeline_error_room_not_found">Je nám líto, tato místnost nebyla nalezena.
\nZkuste to prosím později.%s</string>
<string name="invites_title">Pozvánky</string>
<string name="onboarding_new_app_layout_button_try">Vyzkoušejte to</string>
<string name="onboarding_new_app_layout_feedback_message">Klepnutím vpravo nahoře zobrazíte možnost zpětné vazby.</string>
<string name="onboarding_new_app_layout_feedback_title">Poskytněte zpětnou vazbu</string>
<string name="onboarding_new_app_layout_spaces_message">Přístup k vašim prostorům (vpravo dole) je rychlejší a snazší než kdykoli předtím.</string>
<string name="onboarding_new_app_layout_spaces_title">Přístup do prostorů</string>
<string name="onboarding_new_app_layout_welcome_message">Pro zjednodušení aplikace ${app_name} jsou nyní karty nepovinné. Spravujte je pomocí nabídky vpravo nahoře.</string>
<string name="onboarding_new_app_layout_welcome_title">Vítejte v novém zobrazení!</string>
<string name="home_empty_no_unreads_message">Zde se zobrazí nepřečtené zprávy, pokud nějaké máte.</string>
<string name="home_empty_no_unreads_title">Nic k nahlášení.</string>
<string name="home_empty_no_rooms_message">Univerzální zabezpečená chatovací aplikace pro týmy, přátele a organizace. Vytvořte si chat nebo se připojte k existující místnosti a začněte.</string>
<string name="home_empty_no_rooms_title">Vítejte v aplikaci ${app_name},
\n%s.</string>
<string name="home_empty_space_no_rooms_message">Prostory představují nový způsob seskupování místností a osob. Pomocí tlačítka vpravo dole můžete přidat stávající místnost nebo vytvořit novou.</string>
<string name="home_empty_space_no_rooms_title">%s
\nvypadá trochu prázdně.</string>
<plurals name="device_manager_inactive_sessions_description">
<item quantity="one">Zvažte odhlášení ze starých relací (%1$d den nebo více), které již nepoužíváte.</item>
<item quantity="few">Zvažte odhlášení ze starých relací (%1$d dny nebo více), které již nepoužíváte.</item>
<item quantity="other">Zvažte odhlášení ze starých relací (%1$d dnů nebo více), které již nepoužíváte.</item>
</plurals>
<string name="device_manager_inactive_sessions_title">Neaktivní relace</string>
<string name="device_manager_unverified_sessions_description">Ověřte nebo se odhlaste z neověřených relací.</string>
<string name="device_manager_unverified_sessions_title">Neověřené relace</string>
<string name="device_manager_header_section_security_recommendations_description">Zlepšete zabezpečení svého účtu dodržováním těchto doporučení.</string>
<string name="device_manager_header_section_security_recommendations_title">Bezpečnostní doporučení</string>
<plurals name="device_manager_other_sessions_description_inactive">
<item quantity="one">Neaktivní po dobu %1$d+ dne (%2$s)</item>
<item quantity="few">Neaktivní po dobu %1$d+ dnů (%2$s)</item>
<item quantity="other">Neaktivní po dobu %1$d+ dnů (%2$s)</item>
</plurals>
<string name="invites_empty_message">Zde se budou nacházet vaše nové žádosti a pozvánky.</string>
<string name="invites_empty_title">Nic nového.</string>
<string name="space_list_empty_message">Prostory představují nový způsob seskupování místností a osob. Vytvořte si prostor a začněte.</string>
<string name="space_list_empty_title">Zatím žádné prostory.</string>
<string name="a11y_collapse_space_children">Sbalit podprostory %s</string>
<string name="a11y_expand_space_children">Rozbalit podprostory %s</string>
<string name="change_space">Změnit prostor</string>
</resources>

View file

@ -20,7 +20,7 @@
<string name="notice_placed_voice_call">%s hat einen Sprachanruf getätigt.</string>
<string name="notice_answered_call">%s hat den Anruf angenommen.</string>
<string name="notice_ended_call">%s hat den Anruf beendet.</string>
<string name="notice_made_future_room_visibility">%1$s hat den zukünftigen Chatverlauf sichtbar gemacht für %2$s</string>
<string name="notice_made_future_room_visibility">%1$s hat den zukünftigen Nachrichtenverlauf sichtbar gemacht für %2$s</string>
<string name="notice_room_visibility_invited">alle Mitglieder, ab Einladung.</string>
<string name="notice_room_visibility_joined">alle Mitglieder, ab Beitritt.</string>
<string name="notice_room_visibility_shared">alle Mitglieder.</string>
@ -265,11 +265,11 @@
<string name="rooms_header">Räume</string>
<string name="send_bug_report_include_logs">Logdateien übermitteln</string>
<string name="send_bug_report_include_crash_logs">Absturzberichte übermitteln</string>
<string name="send_bug_report_include_screenshot">Screenshot übermitteln</string>
<string name="send_bug_report_include_screenshot">Bildschirmfoto übermitteln</string>
<string name="send_bug_report">Problem melden</string>
<string name="send_bug_report_description">Bitte beschreibe das Problem. Was hast du genau gemacht\? Was sollte passieren\? Was ist tatsächlich passiert\?</string>
<string name="send_bug_report_placeholder">Problembeschreibung</string>
<string name="send_bug_report_logs_description">Um Probleme diagnostizieren zu können, werden Protokolle des Clients zusammen mit dem Fehlerbericht übermittelt. Dieser Fehlerbericht wird, wie die Protokolle und der Screenshot, nicht öffentlich sichtbar sein. Wenn du nur den oben eingegebenen Text senden möchtest, die nachfolgenden Haken entsprechend entfernen:</string>
<string name="send_bug_report_logs_description">Um Probleme diagnostizieren zu können, werden Protokolle des Clients zusammen mit dem Fehlerbericht übermittelt. Dieser Fehlerbericht wird, wie die Protokolle und das Bildschirmfoto, nicht öffentlich sichtbar sein. Wenn du nur den oben eingegebenen Text senden möchtest, die nachfolgenden Haken entsprechend entfernen:</string>
<string name="send_bug_report_alert_message">Du scheinst dein Telefon frustriert zu schütteln. Möchtest du das Fenster zum Senden eines Fehlerberichts öffnen\?</string>
<string name="send_bug_report_sent">Dein Fehlerbericht wurde erfolgreich übermittelt</string>
<string name="send_bug_report_failed">Der Fehlerbericht konnte nicht übermittelt werden (%s)</string>
@ -908,7 +908,7 @@
<string name="edited_suffix">(bearbeitet)</string>
<string name="message_edits">Nachrichtenbearbeitung</string>
<string name="no_message_edits_found">Keine Änderungen gefunden</string>
<string name="room_filtering_filter_hint">Gespräche filtern</string>
<string name="room_filtering_filter_hint">Konversationen filtern </string>
<string name="room_filtering_footer_create_new_direct_message">Sende eine neue Direktnachricht</string>
<string name="room_filtering_footer_open_room_directory">Das Raumverzeichnis anzeigen</string>
<string name="link_copied_to_clipboard">Link in die Zwischenablage kopiert</string>
@ -994,7 +994,7 @@
<string name="settings_text_message_sent">Eine Textnachricht wurde an %s gesendet. Bitte gib den Verifizierungscode ein, den sie enthält.</string>
<string name="labs_allow_extended_logging">Aktiviere ausführliche Logs.</string>
<string name="labs_allow_extended_logging_summary">Ausführliche Logs werden der Entwicklung der App dadurch helfen, dass mehr Informationen übertragen werden, wenn du einen Fehlerbericht sendest. Auch wenn dies aktiviert ist, werden keine Nachrichteninhalte oder andere privaten Daten aufgezeichnet.</string>
<string name="error_terms_not_accepted">Bitte erneut versuchen, nachdem du die Nutzungsbedingungen deines Homeservers akzeptiert hast.</string>
<string name="error_terms_not_accepted">Bitte erneut versuchen, nachdem du die Nutzungsbedingungen deines Heimservers akzeptiert hast.</string>
<string name="room_widget_permission_webview_shared_info_title">Bei Benutzung könnten Cookies gesetzt werden und es könnten Daten mit %s geteilt werden:</string>
<string name="room_widget_permission_shared_info_title">Bei Benutzung könnten Daten mit %s geteilt werden:</string>
<string name="settings_discovery_no_msisdn">Optionen zum Finden werden erscheinen, sobald du eine Telefonnummer hinzugefügt hast.</string>
@ -1409,8 +1409,8 @@
<string name="bootstrap_migration_use_recovery_key">nutze deinen Schlüsselbackup-Wiederherstellungsschlüssel</string>
<string name="bootstrap_migration_with_passphrase_helper_with_link">Wenn du dein Schlüsselbackup-Passwort nicht weißt, kannst du %s.</string>
<string name="bootstrap_migration_backup_recovery_key">Schlüsselbackup-Wiederherstellungsschlüssel</string>
<string name="settings_security_prevent_screenshots_title">Screenshots innerhalb der Anwendung verhindern</string>
<string name="settings_security_prevent_screenshots_summary">Das Aktivieren dieser Einstellung setzt das FLAG_SECURE in allen Aktivitäten. Starte die Anwendung neu, damit die Änderung wirksam wird.</string>
<string name="settings_security_prevent_screenshots_title">Bildschirmfotos der Anwendung verhindern</string>
<string name="settings_security_prevent_screenshots_summary">Das Aktivieren dieser Einstellung setzt FLAG_SECURE in allen Aktivitäten. Starte die Anwendung neu, damit die Änderung wirksam wird.</string>
<string name="change_password_summary">Neues Benutzerpasswort festlegen…</string>
<string name="use_other_session_content_description">Nutze die neueste Version von ${app_name} auf deinen anderen Geräten, ${app_name} Web, ${app_name} Desktop, ${app_name} iOS, ${app_name} für Android oder einen anderen cross-signing-fähigen Matrix-Client</string>
<string name="app_desktop_web">${app_name} Web
@ -1461,7 +1461,7 @@
<string name="action_dismiss">Ablehnen</string>
<string name="dialog_title_success">Erfolg</string>
<string name="call_failed_no_connection_description">Echtzeitverbindung konnte nicht hergestellt werden.
\nBitte den Administrator deines Homeservers, einen TURN-Server zu konfigurieren, dass Anrufe zuverlässig funktionieren.</string>
\nBitte den Administrator deines Heimservers, einen TURN-Server zu konfigurieren, damit Anrufe zuverlässig funktionieren.</string>
<string name="call_select_sound_device">Audiogerät auswählen</string>
<string name="sound_device_phone">Telefon</string>
<string name="sound_device_speaker">Lautsprecher</string>
@ -1744,13 +1744,13 @@
<string name="room_member_open_or_create_dm">Direktnachricht</string>
<string name="send_bug_report_include_key_share_history">Verlauf der Anfragen von Schlüsselfreigaben senden</string>
<string name="no_more_results">Keine weiteren Ergebnisse</string>
<string name="start_chatting">Starte die Diskussion</string>
<string name="start_chatting">Beginne ein Gespräch</string>
<string name="settings_discovery_consent_action_give_consent">Autorisieren</string>
<string name="settings_discovery_consent_action_revoke">Meine Zustimmung widerrufen</string>
<string name="settings_discovery_consent_notice_on">Du hast zugestimmt E-Mails und Telefonnummern an diesen Identitätsserver zu senden, um von anderen Nutzern entdeckt zu werden.</string>
<string name="settings_discovery_consent_title">E-Mails und Telefonnummern senden</string>
<string name="direct_room_user_list_suggestions_title">Vorschläge</string>
<string name="direct_room_user_list_known_title">Bekannte Nutzer</string>
<string name="direct_room_user_list_known_title">Bekannte Personen</string>
<string name="qr_code">QR-Code</string>
<string name="add_by_qr_code">Hinzufügen via QR-Code</string>
<string name="permissions_denied_add_contact">Gib die Erlaubnis, um auf die Kamera zu zugreifen.</string>
@ -1794,7 +1794,7 @@
<string name="create_room_alias_invalid">Manche Zeichen sind nicht zulässig</string>
<string name="create_room_alias_empty">Bitte gib eine Raumadresse an</string>
<string name="create_room_alias_already_in_use">Diese Adresse ist bereits vergeben</string>
<string name="create_room_disable_federation_description">Aktivieren, wenn der Raum nur von Mitgliedern deines Homeservers zur internen Kommunikation verwendet wird. Das kann später nicht mehr geändert werden.</string>
<string name="create_room_disable_federation_description">Aktivieren, wenn der Raum nur von Mitgliedern deines Heimservers zur internen Kommunikation verwendet wird. Das kann später nicht mehr geändert werden.</string>
<string name="create_room_disable_federation_title">Begrenze Zugang zu diesem Raum (für immer!) auf Mitglieder von %s</string>
<string name="attachment_viewer_item_x_of_y">%1$d von %2$d</string>
<string name="room_preview_no_preview_join">Keine Vorschau für diesen Raum verfügbar. Willst du direkt beitreten\?</string>
@ -1845,7 +1845,7 @@
<string name="login_social_sso">Einmalanmeldung</string>
<string name="login_social_signin_with">Anmelden mit %s</string>
<string name="login_social_signup_with">Registrieren mit %s</string>
<string name="login_social_continue_with">Mit %s weitermachen</string>
<string name="login_social_continue_with">Weiter mit %s</string>
<string name="settings_show_emoji_keyboard_summary">Knopf zum Nachrichteneditor hinzufügen, der die Emoji-Tastatur öffnet</string>
<string name="settings_show_emoji_keyboard">Emoji-Tastatur anzeigen</string>
<string name="settings_chat_effects_description">Nutze /confetti oder sende Nachrichten mit ❄️ oder 🎉</string>
@ -2188,7 +2188,7 @@
<string name="settings_developer_mode_show_info_on_screen_summary">Hilfreiche Informationen zur Fehlersuche anzeigen</string>
<string name="settings_developer_mode_show_info_on_screen_title">Debug-Info anzeigen</string>
<string name="does_not_look_like_valid_email">Das schaut nicht nach einer gültigen E-Mail-Adresse aus</string>
<string name="user_directory_search_hint_2">Nach Name, ID oder E-Mail suchen</string>
<string name="user_directory_search_hint_2">Mittels Name, ID oder E-Mail-Adresse suchen</string>
<string name="create_new_space">Neuen Space erstellen</string>
<string name="room_settings_space_access_title">Zugriff</string>
<string name="room_settings_access_rules_pref_dialog_title">Wer hat Zugriff\?</string>
@ -2620,6 +2620,23 @@
\nBitte versuche es später erneut.%s</string>
<string name="invites_title">Einladungen</string>
<string name="device_manager_other_sessions_description_unverified">Nicht verifiziert · Letzte Aktivität %1$s</string>
<string name="device_manager_verification_status_detail_unverified">Verifiziere deine aktuelle Sitzung für besonders sichere Nachrichtenübertragung.</string>
<string name="device_manager_verification_status_unverified">Nicht verifizierte Sitzung</string>
<string name="device_manager_unverified_sessions_title">Nicht verifizierte Sitzung</string>
<string name="device_manager_header_section_security_recommendations_description">Verbessere deine Kontosicherheit, indem du diese Empfehlungen beherzigst.</string>
<string name="device_manager_header_section_security_recommendations_title">Sicherheitsempfehlungen</string>
<plurals name="device_manager_other_sessions_description_inactive">
<item quantity="one">Inaktiv seit %1$d+ Tag (%2$s)</item>
<item quantity="other">Inaktiv seit %1$d+ Tagen (%2$s)</item>
</plurals>
<string name="device_manager_other_sessions_description_verified">Verifiziert · Letzte Aktivität %1$s</string>
<string name="device_manager_verification_status_verified">Verifizierte Sitzung</string>
<string name="a11y_device_manager_device_type_unknown">Unbekannter Gerätetyp</string>
<string name="invites_empty_title">Nichts Neues.</string>
<string name="space_list_empty_message">Spaces sind eine neue Art, Räume und Personen zu organisieren. Erstelle einen Space, um zu beginnen.</string>
<string name="space_list_empty_title">Noch keine Spaces.</string>
<string name="home_empty_no_unreads_message">Hier werden deine ungelesenen Nachrichten erscheinen, wenn du welche hast.</string>
<string name="home_empty_no_unreads_title">Es gibt nichts Neues.</string>
<string name="all_chats">Alle Unterhaltungen</string>
<string name="change_space">Space wechseln</string>
<string name="start_chat">Unterhaltung beginnen</string>
</resources>

View file

@ -2518,4 +2518,136 @@
<string name="settings_troubleshoot_test_endpoint_registration_success">El destino se ha registrado de forma satisfactoria al servidor doméstico.</string>
<string name="settings_troubleshoot_test_endpoint_registration_title">Registración de punto final</string>
<string name="action_next">Siguiente</string>
<string name="onboarding_new_app_layout_button_try">Pruébalo</string>
<string name="onboarding_new_app_layout_feedback_title">Danos tu opinión</string>
<string name="onboarding_new_app_layout_spaces_title">Acceder a espacios</string>
<string name="onboarding_new_app_layout_welcome_message">Para simplificar ${app_name}, las pestañas son opcionales. Gestiónalas usando el menú en la esquina superior derecha.</string>
<string name="onboarding_new_app_layout_welcome_title">¡Bienvenido a una nueva interfaz!</string>
<string name="home_empty_no_unreads_title">Nada que reportar.</string>
<string name="home_empty_no_rooms_title">Bienvenido a ${app_name},
\n%s.</string>
<string name="home_empty_space_no_rooms_title">%s
\nparece un poco vacío.</string>
<string name="device_manager_inactive_sessions_title">Sesiones inactivas</string>
<string name="device_manager_unverified_sessions_description">Verifica o cierra sesión de sesiones sin verificar.</string>
<string name="device_manager_unverified_sessions_title">Sesiones sin verificar</string>
<string name="device_manager_header_section_security_recommendations_description">Mejora la seguridad de tu cuenta siguiendo estas recomendaciones.</string>
<string name="device_manager_header_section_security_recommendations_title">Consejos de seguridad</string>
<plurals name="device_manager_other_sessions_description_inactive">
<item quantity="one">Inactiva por %1$d+ día (%2$s)</item>
<item quantity="other">Inactiva por %1$d+ días (%2$s)</item>
</plurals>
<string name="device_manager_other_sessions_description_unverified">Sin verificar · Última actividad %1$s</string>
<string name="device_manager_other_sessions_description_verified">Verificada · Última actividad %1$s</string>
<string name="device_manager_other_sessions_view_all">Ver todos (%1$d)</string>
<string name="device_manager_view_details">Ver detalles</string>
<string name="device_manager_verify_session">Verificar sesión</string>
<string name="device_manager_verification_status_unverified">Sesión sin verificar</string>
<string name="device_manager_verification_status_verified">Sesión verificada</string>
<string name="a11y_device_manager_device_type_unknown">Tipo de dispositivo desconocido</string>
<string name="a11y_device_manager_device_type_desktop">Escritorio</string>
<string name="a11y_device_manager_device_type_web">Web</string>
<string name="a11y_device_manager_device_type_mobile">Móvil</string>
<string name="device_manager_settings_active_sessions_show_all">Mostrar todas las sesiones (V2, WIP)</string>
<string name="labs_enable_element_call_permission_shortcuts_summary">Auto aprovar widgets de Element Call y dar permisos de cámara y micrófono</string>
<plurals name="room_removed_messages">
<item quantity="one">%d mensaje borrado</item>
<item quantity="other">%d mensajes borrados</item>
</plurals>
<string name="live_location_description">Ubicación en tiempo real</string>
<string name="live_location_share_location_item_share">Compartir ubicación</string>
<string name="live_location_not_enough_permission_dialog_description">Debes tener el permiso correspondiente para compartir ubicaciones en esta sala.</string>
<string name="live_location_not_enough_permission_dialog_title">No tienes permiso para compartir ubicaciones</string>
<string name="location_share_loading_map_error">No se pudo cargar el mapa
\nEste servidor doméstico puede que no esté configurado para mostrar mapas.</string>
<string name="poll_undisclosed_not_ended">Los resultados podrán verse cuando la encuesta termine</string>
<string name="labs_enable_msc3061_share_history">MSC3061: Compartir claves de sala para mensajes anteriores</string>
<string name="a11y_open_settings">Abrir ajustes</string>
<string name="send_your_first_msg_to_invite">Envía tu primer mensaje para invitar a %s</string>
<string name="direct_room_encryption_enabled_tile_description_future">Los mensajes en esta sala están encriptados de extremo a extremo.</string>
<string name="verify_invalid_qr_notice">Este código QR parece incorrecto. Por favor, intente verificar con otro método.</string>
<string name="crosssigning_cannot_verify_this_session_desc">No serás capaz de acceder al historial de mensajes encriptado. Restablece tu backup de mensajes seguro y las claves de verificación para empezar de cero.</string>
<string name="crosssigning_cannot_verify_this_session">No se ha podido verificar el dispositivo</string>
<string name="device_manager_sessions_other_description">Para más seguridad, verifica tus sesiones y cierra cualquiera que no reconozcas o hayas dejado de usar.</string>
<string name="device_manager_sessions_other_title">Otras sesiones</string>
<string name="settings_sessions_list">Sesiones</string>
<string name="permalink_unsupported_groups">No se puede abrir este enlace: las comunidades han sido reemplazadas por espacios</string>
<string name="ftue_auth_login_username_entry">Usuario / Email / Teléfono</string>
<string name="ftue_auth_captcha_title">¿Eres una persona\?</string>
<string name="ftue_auth_password_reset_email_confirmation_subtitle">Sigue las instrucciones enviadas a %s</string>
<string name="ftue_auth_password_reset_confirmation">Restablecer contraseña</string>
<string name="ftue_auth_forgot_password">Olvidé mi contraseña</string>
<string name="ftue_auth_email_resend_email">Volver a enviar correo</string>
<string name="ftue_auth_email_verification_footer">¿No recibiste ningún email\?</string>
<string name="ftue_auth_email_verification_subtitle">Sigue las instrucciones enviadas a %s</string>
<string name="ftue_auth_email_verification_title">Verifica tu email</string>
<string name="ftue_auth_phone_confirmation_resend_code">Volver a enviar código</string>
<string name="ftue_auth_phone_confirmation_subtitle">Código enviado a %s</string>
<string name="ftue_auth_phone_confirmation_title">Confirma tu número de teléfono</string>
<string name="ftue_auth_sign_out_all_devices">Cerrar sesión en todos los dispositivos</string>
<string name="ftue_auth_reset_password">Restablecer contraseña</string>
<string name="ftue_auth_new_password_subtitle">Asegúrate de que tiene al menos 8 caracteres.</string>
<string name="ftue_auth_new_password_title">Elige una nueva contraseña</string>
<string name="ftue_auth_new_password_entry_title">Nueva contraseña</string>
<string name="ftue_auth_reset_password_breaker_title">Comprueba tu email.</string>
<string name="ftue_auth_reset_password_email_subtitle">%s te enviará un enlace de verificación</string>
<string name="ftue_auth_phone_confirmation_entry_title">Código de confirmación</string>
<string name="ftue_auth_phone_entry_title">Número de teléfono</string>
<string name="ftue_auth_phone_subtitle">%s necesita verificar tu cuenta</string>
<string name="ftue_auth_phone_title">Escribe tu número de teléfono</string>
<string name="ftue_auth_email_entry_title">Email</string>
<string name="ftue_auth_email_subtitle">%s necesita verificar tu cuenta</string>
<string name="ftue_auth_email_title">Introduce tu email</string>
<string name="ftue_auth_terms_subtitle">Por favor, lee las condiciones de uso de %s</string>
<string name="ftue_auth_terms_title">Políticas del servidor</string>
<string name="ftue_auth_choose_server_ems_cta">Ponte en contacto</string>
<string name="ftue_auth_choose_server_ems_title">¿Deseas hospedar tu propio servidor\?</string>
<string name="ftue_auth_choose_server_entry_hint">URL del servidor</string>
<string name="ftue_auth_choose_server_sign_in_subtitle">¿Cuál es la dirección de tu servidor\?</string>
<string name="ftue_auth_choose_server_subtitle">¿Cuál es la dirección de tu servidor\? Será donde se guarden todos tus datos</string>
<string name="ftue_auth_choose_server_title">Selecciona un servidor</string>
<string name="ftue_auth_welcome_back_title">¡Hola de nuevo!</string>
<string name="ftue_auth_create_account_edit_server_selection">Editar</string>
<string name="ftue_auth_create_account_sso_section_header">O</string>
<string name="ftue_auth_sign_in_choose_server_header">Dónde se guardarán tus conversaciones</string>
<string name="ftue_auth_create_account_choose_server_header">Dónde se guardarán tus conversaciones</string>
<string name="ftue_auth_create_account_password_entry_footer">Debe tener al menos 8 caracteres</string>
<string name="ftue_auth_create_account_username_entry_footer">Otros pueden buscarte como %s</string>
<string name="ftue_auth_create_account_title">Crea tu cuenta</string>
<string name="a11y_open_spaces">Abrir lista de espacios</string>
<string name="a11y_create_message">Crear una nueva conversación o sala</string>
<string name="create_room_action_go">Ir</string>
<string name="updating_your_data">Actualizando tus datos…</string>
<string name="room_list_filter_people">Personas</string>
<string name="room_list_filter_favourites">Favoritos</string>
<string name="room_list_filter_unreads">Sin leer</string>
<string name="room_list_filter_all">Todo</string>
<string name="timeline_error_room_not_found">Lo sentimos, esta sala no se ha encontrado.
\nPor favor, inténtelo de nuevo.%s</string>
<string name="font_size_use_system">Usar ajustes por defecto del sistema</string>
<string name="font_size_section_manually">Escoger manualmente</string>
<string name="font_size_section_auto">Tamaño automático de fuente</string>
<string name="font_size_title">Escoger tamaño de la fuente</string>
<plurals name="search_space_multiple_parents">
<item quantity="one">%1$s y %2$d otro</item>
<item quantity="other">%1$s y %2$d otros</item>
</plurals>
<string name="search_space_two_parents">%1$s y %2$s</string>
<string name="auth_reset_password_error_unverified">Email no verificado, comprueba tu bandeja de entrada</string>
<string name="invites_empty_message">Aquí es donde tus nuevas solicitudes y invitaciones estarán.</string>
<string name="invites_empty_title">Nada nuevo.</string>
<string name="invites_title">Invitaciones</string>
<string name="space_list_empty_message">Los espacios son una nueva forma de agrupar salas y personas. Crea un espacio para empezar.</string>
<string name="space_list_empty_title">No hay espacios aún.</string>
<string name="home_layout_preferences_sort_name">A - Z</string>
<string name="home_layout_preferences_sort_activity">Actividad</string>
<string name="home_layout_preferences_sort_by">Ordenar por</string>
<string name="home_layout_preferences_recents">Mostrar recientes</string>
<string name="home_layout_preferences_filters">Mostrar filtros</string>
<string name="home_layout_preferences">Ajustes de disposición</string>
<string name="explore_rooms">Explorar salas</string>
<string name="change_space">Cambiar espacio</string>
<string name="create_room">Crear sala</string>
<string name="start_chat">Iniciar conversación</string>
<string name="all_chats">Todas las conversaciones</string>
</resources>

View file

@ -2613,11 +2613,8 @@
<string name="device_manager_other_sessions_description_unverified">Verifitseerimata · Viimati kasutusel %1$s</string>
<string name="device_manager_other_sessions_description_verified">Verifitseeritud · Viimati kasutusel %1$s</string>
<string name="device_manager_other_sessions_view_all">Näita kõiki (%1$d)</string>
<string name="device_manager_header_section_current_session">Praegune sessioon</string>
<string name="device_manager_view_details">Vaata lisateavet</string>
<string name="device_manager_verify_session">Verifitseeri sessioon</string>
<string name="device_manager_verification_status_detail_unverified">Turvalise sõnumivahetuse nimel palun verifitseeri oma praegune sessioon.</string>
<string name="device_manager_verification_status_detail_verified">Sinu praegune sessioon on valmis turvaliseks sõnumivahetuseks.</string>
<string name="device_manager_verification_status_unverified">Verifitseerimata sessioon</string>
<string name="device_manager_verification_status_verified">Verifitseeritud sessioon</string>
<string name="a11y_device_manager_device_type_unknown">Tundmatu seadme tüüp</string>
@ -2627,4 +2624,39 @@
<string name="timeline_error_room_not_found">Vabandust, aga seda jututuba ei õnnestu leida.
\nPalun proovi hiljem uuesti.%s</string>
<string name="invites_title">Kutsed</string>
<string name="invites_empty_title">Uut teavet ei leidu.</string>
<string name="space_list_empty_message">Kogukonnad on viis jututubade ja inimeste ühendamiseks. Alustamiseks võid luua uue kogukonna.</string>
<string name="space_list_empty_title">Siin veel pole kogukondi.</string>
<string name="change_space">Vaheta kogukonda</string>
<string name="onboarding_new_app_layout_button_try">Proovi nüüd</string>
<string name="onboarding_new_app_layout_feedback_message">Tagasiside valikute nägemiseks klõpsi ülal paremal.</string>
<string name="onboarding_new_app_layout_feedback_title">Jaga tagasisidet</string>
<string name="onboarding_new_app_layout_spaces_message">Kogukonnad leiad alt paremalt kiiremini ja lihtsamini, kui varem.</string>
<string name="onboarding_new_app_layout_spaces_title">Ligipääs kogukondadele</string>
<string name="onboarding_new_app_layout_welcome_message">Et ${app_name}\'i kasutamine oleks lihtsam, siis kaardid on nüüd valikulised. Neid saad hallata ülal paremal avanevast menüüst.</string>
<string name="onboarding_new_app_layout_welcome_title">Meie liidesel on nüüd uus vaade!</string>
<string name="home_empty_no_unreads_message">Kui sul on lugemata sõnumeid, siis nad on siit leitavad.</string>
<string name="home_empty_no_unreads_title">Hetkel siin polegi midagi põnevat.</string>
<string name="home_empty_no_rooms_message">Paljude võimalustega turvaline suhtlusrakendus sõprade, kogukondade ja tiimide jaoks. Alustamiseks loo mõni uus vestlus või liitu olemasoleva jututoaga.</string>
<string name="home_empty_no_rooms_title">%s,
\ntere tulemast ${app_name} kasutajaks.</string>
<string name="home_empty_space_no_rooms_message">Kogukonnad on võimalus jututubade ja inimeste ühendamiseks. Kasutades all paremal olevat nuppu lisa mõni olemasolev jututuba või loo uus.</string>
<string name="home_empty_space_no_rooms_title">%s
\ntundub olema tühjavõitu.</string>
<plurals name="device_manager_inactive_sessions_description">
<item quantity="one">Logi välja sellisest vanast sessioonist (vanem kui %1$d päev), mida sa enam ei kasuta.</item>
<item quantity="other">Logi välja sellistest vanadest sessioonidest (vanemad kui %1$d päeva), mida sa enam ei kasuta.</item>
</plurals>
<string name="device_manager_inactive_sessions_title">Mitteaktiivsed sessioonid</string>
<string name="device_manager_unverified_sessions_description">Logi verifitseerimata sessioonidest välja või verifitseeri nad.</string>
<string name="device_manager_unverified_sessions_title">Verifitseerimata sessioonid</string>
<string name="device_manager_header_section_security_recommendations_description">Kui järgid neid soovitusi, siis sa parandad oma kasutajakonto turvalisust.</string>
<string name="device_manager_header_section_security_recommendations_title">Turvalisusega seotud soovitused</string>
<plurals name="device_manager_other_sessions_description_inactive">
<item quantity="one">Pole olnud kasutusel %1$d+ päeva (%2$s)</item>
<item quantity="other">Pole olnud kasutusel %1$d+ päeva (%2$s)</item>
</plurals>
<string name="invites_empty_message">Siin saavad olema sinu tulevased päringud ja kutsed.</string>
<string name="a11y_collapse_space_children">Ahenda %s alamkogukonnad</string>
<string name="a11y_expand_space_children">Näita %s alamkogukondi</string>
</resources>

View file

@ -2622,11 +2622,8 @@
<string name="device_manager_other_sessions_description_unverified">تأیید نشده · آخرین فعّالیت %1$s</string>
<string name="device_manager_other_sessions_description_verified">تأیید شده · آخرین فعّالیت %1$s</string>
<string name="device_manager_other_sessions_view_all">دیدن همه (%1$d)</string>
<string name="device_manager_header_section_current_session">نشست کنونی</string>
<string name="device_manager_view_details">دیدن جزییات</string>
<string name="device_manager_verify_session">تأیید نشست</string>
<string name="device_manager_verification_status_detail_unverified">نشست کنونیتان را برای پیام‌رسانی امن بهبود یافته تأیید کنید.</string>
<string name="device_manager_verification_status_detail_verified">نشست کنونیتان برای پیام‌رسانی امن آماده است.</string>
<string name="device_manager_verification_status_unverified">نشست تأیید نشده</string>
<string name="device_manager_verification_status_verified">نشست تأیید شده</string>
<string name="a11y_device_manager_device_type_unknown">گونهٔ افزاره ناشناخته</string>
@ -2636,4 +2633,71 @@
<string name="timeline_error_room_not_found">متأسفانه این اتاق پیدا نشد.
\nلطفاً بعداً دوباره تلاش کنید.%s</string>
<string name="invites_title">دعوت‌ها</string>
</resources>
<string name="onboarding_new_app_layout_feedback_message">زدن بالا سمت چپ برای دیدن گزینهٔ بازخورد.</string>
<string name="onboarding_new_app_layout_spaces_message">دسترسی به فضاهایتان (پایین سمت چپ) سریع‌تر و ساده‌تر از همیشه.</string>
<string name="onboarding_new_app_layout_welcome_message">برای ساده‌سازی ${app_name} زبانه‌ها اختیاری شده‌اند. مدیریت با استفاده از فهرست بالا سمت چپ.</string>
<string name="home_empty_no_unreads_message">این جایی است که پیام‌های ناخوانده‌تان در صورت وجود ظاهر خواهند شد.</string>
<string name="home_empty_no_rooms_message">کارهٔ گپ امن یکپارچه برای گروه‌ها، دوستان و سازمان‌ها. برای آغاز، گپی ساخته یا به اتاقی بپیوندید.</string>
<string name="home_empty_space_no_rooms_message">فضاها راهی جدید برای گروه‌بندی اتاق‌ها و افراد است. با استفاده از دکمهٔ پایین سمت چپ فضایی ساخته یا اتاقی را بیفزایید.</string>
<string name="home_empty_space_no_rooms_title">%s
\nکمی خالی به نظر می‌رسد.</string>
<plurals name="device_manager_inactive_sessions_description">
<item quantity="one">در نظر گرفتن خروج از نشست‌های قدیمی (۱ روز یا بیش‌تر) که دیگر استفاده نمی‌کنید.</item>
<item quantity="other">در نظر گرفتن خروج از نشست‌های قدیمی (%1$d روز یا بیش‌تر) که دیگر استفاده نمی‌کنید.</item>
</plurals>
<string name="device_manager_unverified_sessions_description">تأیید یا خروج از نشست‌های تأییدنشده.</string>
<string name="device_manager_header_section_security_recommendations_description">بهبود امنیت حسابتان با پیروی از این توصیه‌ها.</string>
<plurals name="device_manager_other_sessions_description_inactive">
<item quantity="one">غیرفعّال برای بیش از %1$d روز (%2$s)</item>
<item quantity="other">غیرفعّال برای بیش از %1$d روز (%2$s)</item>
</plurals>
<string name="invites_empty_message">این جایی است که درخواست‌ها و دعوت‌های جدیدتان خواهند بود.</string>
<string name="space_list_empty_message">فضاها راهی جدید برای گروه‌بندی اتاق‌ها و افراد است. برای آغاز، فضایی بسازید.</string>
<string name="onboarding_new_app_layout_button_try">بیازماییدش</string>
<string name="onboarding_new_app_layout_feedback_title">دادن بازخورد</string>
<string name="onboarding_new_app_layout_spaces_title">دسترسی به فضاها</string>
<string name="onboarding_new_app_layout_welcome_title">به نمایی جدید خوش آمدید!</string>
<string name="home_empty_no_unreads_title">چیزی برای گزارش نیست.</string>
<string name="home_empty_no_rooms_title">%s
\nبه ${app_name} خوش آمدی.</string>
<string name="device_manager_inactive_sessions_title">نشست‌های غیرفعّال</string>
<string name="device_manager_unverified_sessions_title">نشست‌های تأیید نشده</string>
<string name="device_manager_header_section_security_recommendations_title">توصیه‌های امنیتی</string>
<string name="invites_empty_title">چیز جدیدی نیست.</string>
<string name="space_list_empty_title">هنوز فضایی وجود ندارد.</string>
<string name="a11y_collapse_space_children">جمع کردن فرزندان %s</string>
<string name="a11y_expand_space_children">گسترش فرزندان %s</string>
<string name="change_space">تغییر فضا</string>
<string name="device_manager_session_details_device_ip_address">نشانی آی‌پی</string>
<string name="device_manager_session_details_session_last_activity">واپسین فعّالیت</string>
<string name="device_manager_session_details_session_name">نام نشست</string>
<string name="device_manager_session_details_description">اطّلاعات برنامه، افزاره و فعّالیت.</string>
<string name="device_manager_session_details_title">جزییات نشست</string>
<string name="device_manager_other_sessions_clear_filter">پاک‌سازی پالایه</string>
<string name="device_manager_other_sessions_no_inactive_sessions_found">هیچ نشست غیرفعّالی پیدا نشد.</string>
<string name="device_manager_other_sessions_no_unverified_sessions_found">هیچ نشست تأیید نشده‌ای پیدا نشد.</string>
<string name="device_manager_other_sessions_no_verified_sessions_found">هیچ نشست تأیید نشده‌ای پیدا نشد.</string>
<string name="device_manager_other_sessions_recommendation_title_inactive">غیرفعّال</string>
<string name="device_manager_other_sessions_recommendation_title_unverified">تأیید نشده</string>
<string name="device_manager_other_sessions_recommendation_description_verified">برای بهترین امنیت، از هرنشستی که تشخیصش نمی‌دهید یا دیگر استفاده نمی‌کنید، خارج شوید.</string>
<string name="device_manager_other_sessions_recommendation_title_verified">تأیید شده</string>
<string name="a11y_device_manager_filter">پالایه</string>
<string name="device_manager_filter_option_inactive">غیرفعّال</string>
<string name="device_manager_filter_option_unverified_description">نا آماده برای پیام‌رسانی امن</string>
<string name="device_manager_filter_option_unverified">تأیید نشده</string>
<string name="device_manager_filter_option_verified_description">آمادهٔ پیام‌رسانی امن</string>
<string name="device_manager_filter_option_verified">تأیید شده</string>
<string name="device_manager_filter_option_all_sessions">تمامی نشست‌ها</string>
<string name="device_manager_filter_bottom_sheet_title">پالایه</string>
<string name="device_manager_session_last_activity">آخرین فعّالیت %1$s</string>
<string name="device_manager_device_title">افزاره</string>
<string name="device_manager_session_title">نشست</string>
<string name="device_manager_current_session_title">نشست کنونی</string>
<string name="device_manager_verification_status_detail_other_session_unverified">برای بهترین امنیت و اطمینان این نشست را تأیید کرده یا خارج شوید.</string>
<string name="device_manager_verification_status_detail_current_session_unverified">تأیید نشست کنونیتان برای پیام‌رسانی امن.</string>
<string name="device_manager_verification_status_detail_other_session_verified">این نشست برای پیام‌رسانی امن آماده است.</string>
<string name="device_manager_verification_status_detail_current_session_verified">نشست کنونیتان برای پیام‌رسانی امن آماده است.</string>
<string name="labs_enable_deferred_dm_summary">ایجاد پیام خصوصی فقط در نخستین پیام</string>
<string name="labs_enable_new_app_layout_summary">المنتی ساده شده با زبانه‌های انتخابی</string>
<string name="labs_enable_new_app_layout_title">به کار انداختن چینش جدید</string>
</resources>

View file

@ -2622,11 +2622,8 @@
<string name="device_manager_other_sessions_description_unverified">Non vérifiée · Dernière activité %1$s</string>
<string name="device_manager_other_sessions_description_verified">Vérifié · Dernière activité %1$s</string>
<string name="device_manager_other_sessions_view_all">Tout voir (%1$d)</string>
<string name="device_manager_header_section_current_session">Cette session</string>
<string name="device_manager_view_details">Voir les détails</string>
<string name="device_manager_verify_session">Vérifier la session</string>
<string name="device_manager_verification_status_detail_unverified">Vérifiez votre session pour une sécurité renforcée de votre messagerie.</string>
<string name="device_manager_verification_status_detail_verified">Votre session est prête pour lenvoi de messages sécurisés.</string>
<string name="device_manager_verification_status_unverified">Session non vérifiée</string>
<string name="device_manager_verification_status_verified">Session vérifiée</string>
<string name="a11y_device_manager_device_type_unknown">Type de périphérique inconnu</string>
@ -2636,4 +2633,39 @@
<string name="timeline_error_room_not_found">Désolé, impossible de trouver ce salon.
\nVeuillez réessayer plus tard.%s</string>
<string name="invites_title">Invitations</string>
<string name="onboarding_new_app_layout_button_try">Essayez</string>
<string name="onboarding_new_app_layout_feedback_message">Appuyez en haut à droite pour les options des avis.</string>
<string name="onboarding_new_app_layout_feedback_title">Donner mon avis</string>
<string name="onboarding_new_app_layout_spaces_message">Accédez à vos espaces (en bas à droite) plus rapidement et facilement quavant.</string>
<string name="onboarding_new_app_layout_spaces_title">Accéder aux espaces</string>
<string name="onboarding_new_app_layout_welcome_message">Pour simplifier Element, les onglets sont désormais facultatifs. Gérez les depuis le menu en haut à droite.</string>
<string name="onboarding_new_app_layout_welcome_title">Bienvenu dans une nouvelle vue !</string>
<string name="home_empty_no_unreads_message">C\'est ici que vos messages non-lus safficheront lorsque vous en aurez.</string>
<string name="home_empty_no_unreads_title">Rien à signaler.</string>
<string name="home_empty_no_rooms_message">La messagerie sécurisée tout-en-un pour les équipes, les amis, et les organisations. Créez une discussion ou rejoignez un salon pour démarrer.</string>
<string name="home_empty_no_rooms_title">Bienvenue dans ${app_name},
\n%s.</string>
<string name="home_empty_space_no_rooms_message">Les espaces sont un nouveau moyen de grouper les salons et les gens. Ajoutez un salon, ou créez en un nouveau à laide du bouton en bas à droite.</string>
<string name="home_empty_space_no_rooms_title">%s
\na lair un peu vide.</string>
<plurals name="device_manager_inactive_sessions_description">
<item quantity="one">Pensez à vous déconnecter des anciennes sessions (%1$d jour ou plus) que vous nutilisez plus.</item>
<item quantity="other">Pensez à vous déconnecter des anciennes sessions (%1$d jours ou plus) que vous nutilisez plus.</item>
</plurals>
<string name="device_manager_inactive_sessions_title">Sessions inactives</string>
<string name="device_manager_unverified_sessions_description">Vérifier ou déconnecter les sessions non vérifiées.</string>
<string name="device_manager_unverified_sessions_title">Sessions non vérifiées</string>
<string name="device_manager_header_section_security_recommendations_description">Améliorez la sécurité de votre compte à laide de ces recommandations.</string>
<string name="device_manager_header_section_security_recommendations_title">Recommandations de sécurité</string>
<plurals name="device_manager_other_sessions_description_inactive">
<item quantity="one">Inactif depuis %1$d+ jour (%2$s)</item>
<item quantity="other">Inactif depuis %1$d+ jours (%2$s)</item>
</plurals>
<string name="invites_empty_message">Cest lendroit où se trouveront vos nouvelles requêtes et invitations.</string>
<string name="invites_empty_title">Rien de neuf.</string>
<string name="space_list_empty_message">Les espaces sont un nouveau moyen de regrouper les salons et les gens. Créez un espace pour commencer.</string>
<string name="space_list_empty_title">Pas despace pour linstant.</string>
<string name="a11y_collapse_space_children">Réduire %s enfants</string>
<string name="a11y_expand_space_children">Développer %s enfants</string>
<string name="change_space">Changer despace</string>
</resources>

View file

@ -2603,11 +2603,8 @@ A Visszaállítási Kulcsot tartsd biztonságos helyen, mint pl. egy jelszókeze
<string name="device_manager_other_sessions_description_unverified">Nem ellenőrzött - Utolsó aktivitás %1$s</string>
<string name="device_manager_other_sessions_description_verified">Ellenőrzött - Utolsó tevékenység %1$s</string>
<string name="device_manager_other_sessions_view_all">Összes megtekintése (%1$d)</string>
<string name="device_manager_header_section_current_session">Jelenlegi munkamenet</string>
<string name="device_manager_view_details">Részletek megtekintése</string>
<string name="device_manager_verify_session">Munkamenet hitelesítése</string>
<string name="device_manager_verification_status_detail_unverified">Az aktuális munkamenet készen áll a biztonságos üzenetküldésre.</string>
<string name="device_manager_verification_status_detail_verified">Az aktuális munkamenet készen áll a biztonságos üzenetküldésre.</string>
<string name="device_manager_verification_status_unverified">Ellenőrizetlen munkamenet</string>
<string name="device_manager_verification_status_verified">Ellenőrzött munkamenet</string>
<string name="a11y_device_manager_device_type_unknown">Ismeretlen eszköztípus</string>
@ -2620,7 +2617,7 @@ A Visszaállítási Kulcsot tartsd biztonságos helyen, mint pl. egy jelszókeze
<string name="settings_sessions_list">Munkamenetek</string>
<string name="a11y_open_spaces">Nyitott területek listája</string>
<string name="a11y_create_message">Új beszélgetés vagy szoba létrehozása</string>
<string name="room_list_filter_people">Résztvevők</string>
<string name="room_list_filter_people">Emberek</string>
<string name="room_list_filter_favourites">Kedvencek</string>
<string name="room_list_filter_unreads">Olvasatlan</string>
<string name="room_list_filter_all">Mind</string>
@ -2636,4 +2633,39 @@ A Visszaállítási Kulcsot tartsd biztonságos helyen, mint pl. egy jelszókeze
<string name="explore_rooms">Szobák felfedezése</string>
<string name="create_room">Szoba létrehozása</string>
<string name="start_chat">Chat indítása</string>
<string name="onboarding_new_app_layout_button_try">Próbáld ki</string>
<string name="onboarding_new_app_layout_feedback_title">Visszajelzés adása</string>
<string name="onboarding_new_app_layout_spaces_message">A terekhez való hozzáférés (jobbra lent) gyorsabb és egyszerűbb mint valaha.</string>
<string name="onboarding_new_app_layout_spaces_title">Hozzáférés a terekhez</string>
<string name="onboarding_new_app_layout_welcome_message">${app_name} egyszerűsítéséhez a lapok mostantól választhatók. Beállítani a jobb felső menüből lehet.</string>
<string name="onboarding_new_app_layout_welcome_title">Üdv az új kinézetben!</string>
<string name="home_empty_no_unreads_message">Ez az a hely ahol az olvasatlan üzeneteid megjelennek, ha lesznek.</string>
<string name="home_empty_no_unreads_title">Nincs semmi említésre méltó.</string>
<string name="home_empty_no_rooms_message">A minden-egyben biztonságos csevegő alkalmazás csapatoknak, barátoknak és szervezeteknek. Kezd egy csevegést vagy lépj be egy meglévő szobába kezdésnek.</string>
<string name="home_empty_no_rooms_title">Üdv itt: ${app_name}!
\n%s.</string>
<string name="home_empty_space_no_rooms_message">Szobák és emberek csoportokba rendezésének új mondja a terek használata. Létező szoba hozzáadása vagy új készítése a jobb alsó gombbal.</string>
<string name="home_empty_space_no_rooms_title">%s
\nkicsit üresnek tűnik.</string>
<string name="device_manager_inactive_sessions_title">Nem aktív munkamenetek</string>
<string name="device_manager_unverified_sessions_description">Ellenőrizd vagy jelentkezz ki az ellenőrizetlen munkamenetekből.</string>
<string name="device_manager_unverified_sessions_title">Meg nem erősített munkamenetek</string>
<string name="device_manager_header_section_security_recommendations_description">Javítsa a fiókja biztonságát azzal, hogy követi a következő javaslatokat.</string>
<string name="device_manager_header_section_security_recommendations_title">Biztonsági javaslatok</string>
<string name="invites_empty_title">Semmi új.</string>
<string name="space_list_empty_message">Terekkel lehet szobákat és személyeket csoportokba rendezni. Készíts egyet indulásnak.</string>
<string name="space_list_empty_title">Nincsenek terek egyelőre.</string>
<string name="a11y_collapse_space_children">%s összezárása</string>
<string name="a11y_expand_space_children">%s kinyitása</string>
<string name="change_space">Tér cseréje</string>
<string name="onboarding_new_app_layout_feedback_message">A visszajelzési lehetőségekhez koppint jobb felső sarokba.</string>
<plurals name="device_manager_inactive_sessions_description">
<item quantity="one">Fontold meg, hogy a régi már nem használt (%1$d napja vagy régebben) munkamenetből kijelentkezel.</item>
<item quantity="other">Fontold meg, hogy a régi már nem használt (%1$d napja vagy régebben) munkamenetből kijelentkezel.</item>
</plurals>
<plurals name="device_manager_other_sessions_description_inactive">
<item quantity="one">%1$d+ napja inaktív (%2$s)</item>
<item quantity="other">%1$d+ napja inaktív (%2$s)</item>
</plurals>
<string name="invites_empty_message">Itt láthatók a meghívók és elvégzendő műveletek.</string>
</resources>

View file

@ -593,7 +593,7 @@ Di masa mendatang proses verifikasi ini akan dimutakhirkan.</string>
<string name="room_participants_action_ignore_title">Abaikan pengguna</string>
<string name="room_participants_power_level_demote">Turunkan</string>
<string name="room_participants_power_level_demote_warning_prompt">Anda tidak akan dapat membatalkan perubahan ini karena Anda menurunkan diri sendiri, jika Anda adalah pengguna istimewa terakhir di ruangan itu akan tidak mungkin untuk mendapatkan kembali hak istimewa.</string>
<string name="room_participants_power_level_demote_warning_title">Turunkan dirimu\?</string>
<string name="room_participants_power_level_demote_warning_title">Turunkan diri Anda\?</string>
<string name="room_participants_action_cancel_invite">Batalkan undangan</string>
<string name="room_participants_leave_private_warning">Ruangan ini tidak umum. Anda tidak akan dapat bergabung kembali tanpa undangan.</string>
<string name="permissions_denied_add_contact">Izinkan untuk mengakses kontak.</string>
@ -2576,11 +2576,8 @@ Di masa mendatang proses verifikasi ini akan dimutakhirkan.</string>
<string name="device_manager_other_sessions_description_unverified">Belum diverifikasi · Aktivitas terakhir %1$s</string>
<string name="device_manager_other_sessions_description_verified">Terverifikasi · Aktivitas terakhir %1$s</string>
<string name="device_manager_other_sessions_view_all">Tampilkan Semua (%1$d)</string>
<string name="device_manager_header_section_current_session">Sesi Saat Ini</string>
<string name="device_manager_view_details">Tampilkan Detail</string>
<string name="device_manager_verify_session">Verifikasi Sesi</string>
<string name="device_manager_verification_status_detail_unverified">Verifikasi sesi Anda saat ini untuk perpesanan yang aman.</string>
<string name="device_manager_verification_status_detail_verified">Sesi Anda saat ini siap untuk perpesanan yang aman.</string>
<string name="device_manager_verification_status_unverified">Sesi belum diverifikasi</string>
<string name="device_manager_verification_status_verified">Sesi terverifikasi</string>
<string name="a11y_device_manager_device_type_unknown">Tipe perangkat tidak diketahui</string>
@ -2588,4 +2585,37 @@ Di masa mendatang proses verifikasi ini akan dimutakhirkan.</string>
<string name="a11y_device_manager_device_type_web">Web</string>
<string name="a11y_device_manager_device_type_mobile">Ponsel</string>
<string name="invites_title">Undangan</string>
<string name="onboarding_new_app_layout_button_try">Coba</string>
<string name="onboarding_new_app_layout_feedback_message">Ketuk kanan atas untuk melihat opsi untuk memberikan masukan.</string>
<string name="onboarding_new_app_layout_feedback_title">Beri Masukan</string>
<string name="home_empty_no_rooms_message">Aplikasi obrolan aman untuk tim, teman, dan organisasi. Buat sebuah obrolan, atau bergabung ke ruangan yang sudah ada, untuk memulai.</string>
<string name="onboarding_new_app_layout_spaces_message">Akses Space Anda (di kanan bawah) dengan lebih cepat dan lebih mudah dari sebelumnya.</string>
<string name="onboarding_new_app_layout_spaces_title">Akses Space</string>
<string name="onboarding_new_app_layout_welcome_message">Untuk membuat ${app_name} Anda lebih sederhana, fitur tab sekarang opsional. Kelola menggunakan menu kanan atas.</string>
<string name="onboarding_new_app_layout_welcome_title">Selamat datang di tampilan yang baru!</string>
<string name="home_empty_no_unreads_message">Ini di mana pesan Anda yang belum dibaca akan ditampilkan, ketika Anda menerimanya.</string>
<string name="home_empty_no_unreads_title">Tidak ada untuk dilaporkan.</string>
<string name="home_empty_no_rooms_title">Selamat datang di ${app_name},
\n%s.</string>
<string name="home_empty_space_no_rooms_message">Space adalah cara baru untuk mengelompokkan ruangan dan orang. Tambahkan ruangan yang sudah ada, atau buat yang baru, dengan tombol di kanan bawah.</string>
<string name="home_empty_space_no_rooms_title">%s
\nkelihatannya masih kosong.</string>
<plurals name="device_manager_inactive_sessions_description">
<item quantity="other">Pertimbangkan untuk mengeluarkan sesi lawas (%1$d hari atau lebih) yang Anda tidak gunakan lagi.</item>
</plurals>
<string name="device_manager_inactive_sessions_title">Sesi yang tidak aktif</string>
<string name="device_manager_unverified_sessions_description">Verifikasi atau keluarkan sesi yang belum diverifikasi.</string>
<string name="device_manager_unverified_sessions_title">Sesi yang belum diverifikasi</string>
<string name="device_manager_header_section_security_recommendations_description">Perbaiki keamanan akun Anda dengan mengikuti saran berikut.</string>
<string name="device_manager_header_section_security_recommendations_title">Saran keamanan</string>
<plurals name="device_manager_other_sessions_description_inactive">
<item quantity="other">Tidak aktif selama %1$d+ hari (%2$s)</item>
</plurals>
<string name="invites_empty_message">Ini di mana permintaan dan undangan baru Anda akan berada.</string>
<string name="invites_empty_title">Belum ada yang baru.</string>
<string name="space_list_empty_message">Space adalah cara baru untuk mengelompokkan ruangan dan orang. Buat sebuah space untuk memulai.</string>
<string name="space_list_empty_title">Belum ada space.</string>
<string name="a11y_collapse_space_children">Tutup %s anak</string>
<string name="a11y_expand_space_children">Buka %s anak</string>
<string name="change_space">Buat Space</string>
</resources>

View file

@ -2613,11 +2613,8 @@
<string name="device_manager_other_sessions_description_unverified">Non verificata · Ultima attività %1$s</string>
<string name="device_manager_other_sessions_description_verified">Verificata · Ultima attività %1$s</string>
<string name="device_manager_other_sessions_view_all">Vedi tutte (%1$d)</string>
<string name="device_manager_header_section_current_session">Sessione attuale</string>
<string name="device_manager_view_details">Vedi dettagli</string>
<string name="device_manager_verify_session">Verifica la sessione</string>
<string name="device_manager_verification_status_detail_unverified">Verifica la tua sessione attuale per messaggi più sicuri.</string>
<string name="device_manager_verification_status_detail_verified">La tua sessione attuale è pronta per i messaggi sicuri.</string>
<string name="device_manager_verification_status_unverified">Sessione non verificata</string>
<string name="device_manager_verification_status_verified">Sessione verificata</string>
<string name="a11y_device_manager_device_type_unknown">Tipo di dispositivo sconosciuto</string>
@ -2627,4 +2624,39 @@
<string name="timeline_error_room_not_found">Spiacenti, questa stanza non è stata trovata.
\nRiprova più tardi.%s</string>
<string name="invites_title">Inviti</string>
<string name="onboarding_new_app_layout_button_try">Provalo</string>
<string name="onboarding_new_app_layout_feedback_message">Tocca in alto a destra per vedere l\'opzione feedback.</string>
<string name="onboarding_new_app_layout_feedback_title">Invia un feedback</string>
<string name="onboarding_new_app_layout_spaces_message">Accedi ai tuoi spazi (in basso a destra) più velocemente e più facilmente che mai.</string>
<string name="onboarding_new_app_layout_spaces_title">Accedi agli spazi</string>
<string name="onboarding_new_app_layout_welcome_message">Per semplificare ${app_name}, le schede ora sono opzionali. Gestiscile usando il menu in alto a destra.</string>
<string name="onboarding_new_app_layout_welcome_title">Benvenuti ad una nuova panoramica!</string>
<string name="home_empty_no_unreads_message">Qui è dove verranno mostrati i messaggi non letti, quando ne avrai qualcuno.</string>
<string name="home_empty_no_unreads_title">Niente da segnalare.</string>
<string name="home_empty_no_rooms_message">L\'app di chat tutto-in-uno per team, amici e organizzazioni. Inizia una conversazione o entra in una stanza esistente per cominciare.</string>
<string name="home_empty_no_rooms_title">Benvenuto/a in ${app_name},
\n%s.</string>
<string name="home_empty_space_no_rooms_message">Gli spazi sono un modo nuovo di raggruppare stanze e persone. Aggiungi una stanza esistente, o creane una nuova usando il pulsante in basso a destra.</string>
<string name="home_empty_space_no_rooms_title">%s
\nsembra un po\' vuoto.</string>
<plurals name="device_manager_inactive_sessions_description">
<item quantity="one">Considera di disconnettere le sessioni vecchie (%1$d giorno o più) che non usi più.</item>
<item quantity="other">Considera di disconnettere le sessioni vecchie (%1$d giorni o più) che non usi più.</item>
</plurals>
<string name="device_manager_inactive_sessions_title">Sessioni inattive</string>
<string name="device_manager_unverified_sessions_description">Verifica o disconnetti le sessioni non verificate.</string>
<string name="device_manager_unverified_sessions_title">Sessioni non verificate</string>
<string name="device_manager_header_section_security_recommendations_description">Migliora la sicurezza del tuo account seguendo questi consigli.</string>
<string name="device_manager_header_section_security_recommendations_title">Consigli di sicurezza</string>
<plurals name="device_manager_other_sessions_description_inactive">
<item quantity="one">Inattivo da %1$d+ giorno (%2$s)</item>
<item quantity="other">Inattivo da %1$d+ giorni (%2$s)</item>
</plurals>
<string name="invites_empty_message">Qui è dove troverai le nuove richieste e gli inviti.</string>
<string name="invites_empty_title">Niente di nuovo.</string>
<string name="space_list_empty_message">Gli spazi sono un modo nuovo di raggruppare stanze e persone. Crea uno spazio per iniziare.</string>
<string name="space_list_empty_title">Ancora nessuno spazio.</string>
<string name="a11y_collapse_space_children">Riduci contenuto di %s</string>
<string name="a11y_expand_space_children">Espandi contenuto di %s</string>
<string name="change_space">Cambia spazio</string>
</resources>

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<resources xmlns:tools="http://schemas.android.com/tools">
<string name="notice_room_invite_no_invitee">Naudotojo %s pakvietimas</string>
<string name="notice_room_join_by_you">Jūs prisijungėte prie kambario</string>
<string name="notice_room_join">%1$s prisijungė prie kambario</string>
@ -668,12 +668,12 @@
<string name="notice_widget_added_by_you">Pridėjote %1$s valdiklį</string>
<string name="notice_widget_added">%1$s pridėjo %2$s valdiklį</string>
<string name="notice_room_third_party_invite">%1$s išsiuntė kvietimą %2$s prisijungti prie kambario</string>
<string name="notice_room_third_party_revoked_invite">%1$s atšaukė %2$s kvietimą prisijungti prie kambario</string>
<string name="notice_room_third_party_revoked_invite">%1$s atšaukė %2$s pakvietimą prisijungti prie kambario</string>
<string name="notice_room_third_party_registered_invite_by_you">Priėmėte kvietimą į %1$s</string>
<string name="notice_room_third_party_registered_invite">%1$s priėmė kvietimą į %2$s</string>
<string name="notice_direct_room_third_party_revoked_invite_by_you">Atšaukėte kvietimą %1$s</string>
<string name="notice_direct_room_third_party_revoked_invite">%1$s atšaukė %2$s kvietimą</string>
<string name="notice_room_third_party_revoked_invite_by_you">Atšaukėte %1$s kvietimą prisijungti prie kambario</string>
<string name="notice_room_third_party_revoked_invite_by_you">Atšaukėte %1$s pakvietimą prisijungti prie kambario</string>
<string name="notice_room_server_acl_updated_no_change">Pakeitimų nėra.</string>
<string name="notice_room_server_acl_updated_was_allowed">• Serveriai atitinkantys %s buvo pašalinti iš leidžiamų sąrašo.</string>
<string name="notice_room_server_acl_updated_allowed">• Serveriai atitinkantys %s dabar yra leidžiami.</string>
@ -681,4 +681,729 @@
<string name="notice_room_server_acl_updated_banned">• Serveriai atitinkantys %s dabar yra uždrausti.</string>
<string name="notice_room_server_acl_set_allowed">• Serveriai atitinkantys %s yra leidžiami.</string>
<string name="notice_room_server_acl_set_banned">• Serveriai atitinkantys %s yra uždrausti.</string>
</resources>
<string name="room_permissions_send_m_room_server_acl_events">Siųsti m.room.server_acl įvykius</string>
<string name="room_participants_ban_title">Užblokuoti naudotoją</string>
<string name="room_participants_remove_prompt_msg">Naudotojas bus pašalintas iš šio kambario.
\n
\nKad jis negalėtų prisijungti dar kartą, turėtumėte jį užblokuoti.</string>
<string name="room_participants_remove_reason">Pašalinimo priežastis</string>
<string name="room_participants_remove_title">Pašalinti naudotoją</string>
<string name="room_participants_action_cancel_invite_prompt_msg">Ar tikrai norite atšaukti kvietimą šiam naudotojui\?</string>
<string name="room_participants_action_cancel_invite_title">Atšaukti kvietimą</string>
<string name="room_participants_action_unignore">Nebeignoruoti</string>
<string name="room_participants_action_unignore_prompt_msg">Nebeignoruojant šio naudotojo, vėl bus rodomos visos jo žinutės.</string>
<string name="room_participants_action_unignore_title">Nebeignoruoti naudotojo</string>
<string name="room_participants_action_ignore_prompt_msg">Ignoruodami šį naudotoją nebematysite jo žinučių bendruose kambariuose.
\n
\nŠį veiksmą bet kada galite atšaukti bendruosiuose nustatymuose.</string>
<string name="room_participants_action_ignore_title">Ignoruoti naudotoją</string>
<string name="room_participants_power_level_demote">Pažeminti</string>
<string name="room_participants_power_level_demote_warning_prompt">Negalėsite atšaukti šio pakeitimo, nes pažeminsite save, o jei esate paskutinis privilegijuotas naudotojas kambaryje, bus neįmanoma susigrąžinti privilegijų.</string>
<string name="room_participants_power_level_demote_warning_title">Nuleisti save į žemesnes pareigas\?</string>
<string name="room_participants_power_level_prompt">Šio pakeitimo atšaukti negalėsite, nes padidinsite naudotojo galią, kad jis turėtų tokį patį galios lygį, kaip ir jūs pats.
\nAr esate tikri\?</string>
<string name="room_participants_action_mention">Paminėti</string>
<string name="room_participants_action_remove">Pašalinti iš pokalbio</string>
<string name="room_participants_action_cancel_invite">Atšaukti kvietimą</string>
<string name="room_participants_header_direct_chats">Tiesioginiai pokalbiai</string>
<string name="room_participants_leave_private_warning">Šis kambarys nėra viešas. Negalėsite vėl prisijungti be kvietimo.</string>
<string name="room_participants_leave_prompt_msg">Ar tikrai norite palikti kambarį\?</string>
<string name="room_participants_leave_prompt_title">Palikti kambarį</string>
<plurals name="room_title_members">
<item quantity="one">%d narys</item>
<item quantity="few">%d nariai</item>
<item quantity="other">%d narių</item>
</plurals>
<string name="room_jump_to_first_unread">Pereiti prie neskaitytų</string>
<string name="list_members">Nariai</string>
<string name="permissions_denied_add_contact">Suteikite leidimą prieiti prie savo kontaktų.</string>
<string name="permissions_denied_qr_code">Jei norite nuskaityti QR kodą, turite leisti kameros prieigą.</string>
<string name="permissions_rationale_msg_camera_and_audio">${app_name} reikia leidimo prieiti prie jūsų kameros ir mikrofono, kad galėtumėte atlikti vaizdo skambučius.
\n
\nKad galėtumėte skambinti, kituose iškylančiuose languose leiskite prieigą.</string>
<string name="invites_empty_message">Čia bus pateikiamos naujos užklausos ir kvietimai.</string>
<string name="invites_empty_title">Nieko naujo.</string>
<string name="start_chat">Pradėti pokalbį</string>
<string name="notice_room_server_acl_updated_ip_literals_not_allowed">• Serveriai atitinkantys IP dabar yra užblokuoti.</string>
<string name="notice_room_server_acl_updated_ip_literals_allowed">• Serveriai atitinkantys IP dabar yra leidžiami.</string>
<plurals name="notice_room_server_acl_changes">
<item quantity="one">%d serverių ACL pakeitimas</item>
<item quantity="few">%d serverių ACL pakeitimai</item>
<item quantity="other">%d serverių ACL pakeitimų</item>
</plurals>
<string name="notice_room_server_acl_updated_title_by_you">Pakeitėte serverių ACL šiam kambariui.</string>
<string name="notice_room_server_acl_updated_title">%s pakeitė serverių ACL šiam kambariui.</string>
<string name="notice_room_server_acl_set_ip_literals_not_allowed">• Serveriai atitinkantys IP yra užblokuoti.</string>
<string name="notice_room_server_acl_set_ip_literals_allowed">• Serveriai atitinkantys IP yra leidžiami.</string>
<string name="notice_room_server_acl_set_title_by_you">Nustatėte serverių ACL šiam kambariui.</string>
<string name="notice_room_server_acl_set_title">%s nustatė serverių ACL šiam kambariui.</string>
<string name="onboarding_new_app_layout_button_try">Išbandyti</string>
<string name="onboarding_new_app_layout_feedback_message">Bakstelėkite viršuje dešinėje, kad pamatytumėte atsiliepimų parinktį.</string>
<string name="onboarding_new_app_layout_feedback_title">Pateikite atsiliepimus</string>
<string name="onboarding_new_app_layout_spaces_title">Pasiekti erdves</string>
<string name="onboarding_new_app_layout_spaces_message">Pasiekite erdves (apačioje dešinėje) greičiau ir paprasčiau nei bet kada anksčiau.</string>
<string name="onboarding_new_app_layout_welcome_message">Siekiant supaprastinti jūsų ${app_name}, skirtukai dabar yra neprivalomi. Tvarkykite juos naudodami viršutinį dešinės pusės meniu.</string>
<string name="onboarding_new_app_layout_welcome_title">Sveiki atvykę į naują vaizdą!</string>
<string name="home_empty_no_unreads_message">Čia bus rodomos jūsų neperskaitytos žinutės, kai jų turėsite.</string>
<string name="home_empty_no_unreads_title">Nėra apie ką pranešti.</string>
<string name="home_empty_no_rooms_message">\"viskas viename\" saugi pokalbių programėlė komandoms, draugams ir organizacijoms. Sukurkite pokalbį arba prisijunkite prie esamo kambario ir pradėkite.</string>
<string name="home_empty_no_rooms_title">Sveiki atvykę į ${app_name},
\n%s.</string>
<string name="home_empty_space_no_rooms_message">Erdvės - tai naujas kambarių ir žmonių grupavimo būdas. Pridėkite esamą kambarį arba sukurkite naują naudodami apatinį dešinįjį mygtuką.</string>
<string name="home_empty_space_no_rooms_title">%s
\natrodo šiek tiek tuščia.</string>
<plurals name="device_manager_inactive_sessions_description">
<item quantity="one">Apsvarstykite galimybę atsijungti iš senų sesijų (%1$d diena ar daugiau), kurių nebenaudojate.</item>
<item quantity="few">Apsvarstykite galimybę atsijungti iš senų sesijų (%1$d dienos ar daugiau), kurių nebenaudojate.</item>
<item quantity="other">Apsvarstykite galimybę atsijungti iš senų sesijų (%1$d dienų ar daugiau), kurių nebenaudojate.</item>
</plurals>
<string name="device_manager_inactive_sessions_title">Neaktyvios sesijos</string>
<string name="device_manager_unverified_sessions_description">Patvirtinkite nepatvirtintas sesijas arba atjunkite jas.</string>
<string name="device_manager_unverified_sessions_title">Nepatvirtintos sesijos</string>
<string name="device_manager_header_section_security_recommendations_description">Pagerinkite savo paskyros saugumą laikydamiesi šių rekomendacijų.</string>
<string name="device_manager_header_section_security_recommendations_title">Saugumo rekomendacijos</string>
<plurals name="device_manager_other_sessions_description_inactive">
<item quantity="one">Neaktyvus %1$d+ dieną (%2$s)</item>
<item quantity="few">Neaktyvus %1$d+ dienas (%2$s)</item>
<item quantity="other">Neaktyvus %1$d+ dienų (%2$s)</item>
</plurals>
<string name="device_manager_other_sessions_description_unverified">Nepatvirtinta · Paskutinė veikla %1$s</string>
<string name="device_manager_other_sessions_description_verified">Patvirtinta · Paskutinė veikla %1$s</string>
<string name="device_manager_other_sessions_view_all">Peržiūrėti visas (%1$d)</string>
<string name="device_manager_view_details">Peržiūrėti detales</string>
<string name="device_manager_verify_session">Patvirtinti sesiją</string>
<string name="device_manager_verification_status_unverified">Nepatvirtinta sesija</string>
<string name="device_manager_verification_status_verified">Patvirtinta sesija</string>
<string name="a11y_device_manager_device_type_unknown">Nežinomas įrenginio tipas</string>
<string name="a11y_device_manager_device_type_desktop">Stalinis kompiuteris</string>
<string name="a11y_device_manager_device_type_web">Naršyklė</string>
<string name="a11y_device_manager_device_type_mobile">Mobilus</string>
<plurals name="room_removed_messages">
<item quantity="one">%d žinutė pašalinta</item>
<item quantity="few">%d žinutės pašalintos</item>
<item quantity="other">%d žinučių pašalinta</item>
</plurals>
<string name="live_location_labs_promotion_switch_title">Įjungti vietos bendrinimą</string>
<string name="live_location_labs_promotion_description">Atkreipkite dėmesį, kad tai yra laboratorinė funkcija, kuri įgyvendinama laikinai. Tai reiškia, kad negalėsite ištrinti savo buvimo vietos istorijos, o pažengę naudotojai galės matyti jūsų buvimo vietos istoriją net tada, kai nustosite bendrinti savo tiesioginę buvimo vietą su šiuo kambariu.</string>
<string name="live_location_labs_promotion_title">Tiesioginės buvimo vietos bendrinimas</string>
<string name="settings_troubleshoot_test_current_gateway">Dabartiniai vartai: %s</string>
<string name="settings_troubleshoot_test_current_gateway_title">Vartai</string>
<string name="settings_troubleshoot_test_current_endpoint_failed">Nepavyksta rasti galinio taško.</string>
<string name="settings_troubleshoot_test_current_endpoint_success">Dabartinis galinis taškas: %s</string>
<string name="settings_troubleshoot_test_current_endpoint_title">Galinis taškas</string>
<string name="settings_troubleshoot_test_current_distributor">Šiuo metu naudojamas %s.</string>
<string name="settings_troubleshoot_test_current_distributor_title">Metodas</string>
<plurals name="settings_troubleshoot_test_distributors_many">
<item quantity="one">Rastas %d metodas.</item>
<item quantity="few">Rasti %d metodai.</item>
<item quantity="other">Rasti %d metodų.</item>
</plurals>
<string name="settings_troubleshoot_test_distributors_fdroid">Nerastas joks kitas metodas, išskyrus foninį sinchronizavimą.</string>
<string name="settings_troubleshoot_test_distributors_gplay">Nerastas joks kitas būdas, išskyrus Google Play paslaugas.</string>
<string name="settings_troubleshoot_test_distributors_title">Galimi metodai</string>
<string name="settings_notification_method">Pranešimo metodas</string>
<string name="unifiedpush_distributor_background_sync">Foninis sinchronizavimas</string>
<string name="unifiedpush_distributor_fcm_fallback">Google Paslaugos</string>
<string name="unifiedpush_getdistributors_dialog_title">Pasirinkite, kaip gauti pranešimus</string>
<string name="screen_sharing_notification_description">Vyksta ekrano bendrinimas</string>
<string name="screen_sharing_notification_title">${app_name} Ekrano bendrinimas</string>
<string name="room_message_autocomplete_notification">Kambario pranešimas</string>
<string name="room_message_autocomplete_users">Naudotojai</string>
<string name="room_message_notify_everyone">Pranešti visam kambariui</string>
<plurals name="message_reaction_show_more">
<item quantity="one">%1$d daugiau</item>
<item quantity="few">%1$d daugiau</item>
<item quantity="other">%1$d daugiau</item>
</plurals>
<string name="message_reaction_show_less">Rodyti mažiau</string>
<string name="tooltip_attachment_location">Bendrinti vietą</string>
<string name="tooltip_attachment_poll">Kurti apklausą</string>
<string name="tooltip_attachment_contact">Atidaryti kontaktus</string>
<string name="tooltip_attachment_sticker">Siųsti lipduką</string>
<string name="tooltip_attachment_file">Įkelti failą</string>
<string name="upgrade_required">Reikalingas atnaujinimas</string>
<string name="upgrade">Atnaujinti</string>
<string name="it_may_take_some_time">Būkite kantrūs, tai gali užtrukti.</string>
<string name="joining_replacement_room">Prisijungti prie pakaitinio kambario</string>
<string name="unnamed_room">Nepavadintas kambarys</string>
<string name="space_leave_prompt_msg_as_admin">Jūs esate vienintelis šios erdvės administratorius. Jei ją paliksite, tai reikš, kad niekas jos nebekontroliuos.</string>
<string name="space_leave_prompt_msg_private">Negalėsite prisijungti vėl, nebent būsite pakviestas iš naujo.</string>
<string name="space_leave_prompt_msg_only_you">Jūs esate vienintelis čia esantis asmuo. Jei paliksite, ateityje niekas, įskaitant jus, negalės prisijungti.</string>
<string name="space_leave_prompt_msg_with_name">Ar tikrai norite palikti %s\?</string>
<string name="space_leave_radio_button_none">Nepalikti nė vieno</string>
<string name="space_leave_radio_button_all">Palikti visus</string>
<string name="space_leave_radio_buttons_title">Dalykai šioje erdvėje</string>
<string name="join_anyway">Vistiek prisijungti</string>
<string name="skip_for_now">Kol kas praleisti</string>
<string name="finish_setting_up_discovery">Baigti nustatyti atradimą.</string>
<string name="room_alias_preview_not_found">Šiuo metu šis pseudonimas neprieinamas.
\nPabandykite vėliau arba paprašykite kambario administratoriaus patikrinti, ar turite prieigą.</string>
<string name="discovery_section">Atradimas (%s)</string>
<string name="finish_setup">Užbaigti sąranka</string>
<string name="discovery_invite">Kvieskite el. paštu, ieškokite kontaktų ir daugiau…</string>
<string name="invite_just_to_this_room_desc">Jie nebus %s dalis</string>
<string name="invite_just_to_this_room">Tik į šį kambarį</string>
<string name="create_space_identity_server_info_none">Šiuo metu nenaudojate tapatybės serverio. Norėdami pakviesti komandos draugus ir būti jų atrandami, sukonfigūruokite jį toliau.</string>
<string name="join_space">Prisijungti prie erdvės</string>
<string name="create_space">Sukurti erdvę</string>
<string name="share_space_link_message">Prisijunkite prie mano erdvės %1$s %2$s</string>
<string name="invite_to_space_with_name_desc">Jie galės tyrinėti %s</string>
<string name="invite_to_space_with_name">Pakvietimas į %s</string>
<string name="invite_people_to_your_space">Kviesti žmones į savo erdvę</string>
<string name="create_space_topic_hint">Aprašymas</string>
<string name="create_spaces_loading_message">Kuriama erdvė…</string>
<string name="create_spaces_default_public_random_room_name">Atsitiktinis</string>
<string name="create_spaces_default_public_room_name">Bendra</string>
<string name="create_spaces_room_private_header_desc">Sukurkime kiekvienai iš jų po kambarį. Vėliau galite pridėti ir daugiau, įskaitant jau esamus.</string>
<string name="create_spaces_room_private_header">Su kokiais dalykais dirbate\?</string>
<string name="create_spaces_invite_public_header_desc">Užtikrinkite, kad prieigą prie %s kompanijos turėtų tinkami žmonės. Vėliau galite pakviesti daugiau.</string>
<string name="create_spaces_invite_public_header">Kas yra jūsų komandos draugai\?</string>
<string name="create_spaces_room_public_header_desc">Mes sukursime joms kambarius. Vėliau galėsite pridėti ir daugiau.</string>
<string name="create_spaces_room_public_header">Kokias diskusijas norite turėti %s\?</string>
<string name="create_space_error_empty_field_space_name">Suteikite jai pavadinimą, kad galėtumėte tęsti.</string>
<string name="create_spaces_details_private_header">Pridėkite šiek tiek detalių, kad žmonės galėtų ją atpažinti. Jas galite keisti bet kuriuo metu.</string>
<string name="create_spaces_details_public_header">Įtraukite keletą detalių, kurios padės išsiskirti. Jas galite keisti bet kuriuo metu.</string>
<string name="activity_create_space_title">Sukurti erdvę</string>
<string name="create_spaces_private_teammates">Privati erdvė jums &amp; jūsų komandos draugams</string>
<string name="create_spaces_me_and_teammates">Aš ir komandos draugai</string>
<string name="create_spaces_organise_rooms">Privati erdvė kambariams organizuoti</string>
<string name="create_spaces_just_me">Tik aš</string>
<string name="create_spaces_make_sure_access">Užtikrinkite, kad prieigą prie %s turėtų tinkami asmenys.</string>
<string name="create_spaces_who_are_you_working_with">Su kuo dirbate\?</string>
<string name="create_spaces_join_info_help">Norėdami prisijungti prie esamos erdvės, turite gauti kvietimą.</string>
<string name="create_spaces_you_can_change_later">Galite tai pakeisti vėliau</string>
<string name="create_spaces_choose_type_label">Kokio tipo erdvę norite sukurti\?</string>
<string name="your_private_space">Jūsų privati erdvė</string>
<string name="your_public_space">Jūsų vieša erdvė</string>
<string name="add_space">Pridėti erdvę</string>
<string name="private_space">Privati erdvė</string>
<string name="public_space">Vieša erdvė</string>
<string name="command_description_join_space">Prisijungti prie erdvės su nurodytu id</string>
<string name="command_description_add_to_space">Pridėti prie nurodytos erdvės</string>
<string name="command_description_create_space">Sukurti erdvę</string>
<string name="auth_invalid_login_param_space_in_password">Neteisingas naudotojo vardas ir (arba) slaptažodis. Įvestas slaptažodis prasideda arba baigiasi tarpais, patikrinkite jį.</string>
<string name="create_space_in_progress">Kuriama erdvė…</string>
<string name="create_space_alias_hint">Erdvės adresas</string>
<string name="permalink_unsupported_groups">Negalima atidaryti šios nuorodos: bendruomenės buvo pakeistos erdvėmis</string>
<string name="a11y_open_spaces">Atidaryti erdvių sąrašą</string>
<string name="send_feedback_space_info">Naudojate erdvių beta versiją. Jūsų atsiliepimai padės parengti kitas versijas. Jūsų platforma ir naudotojo vardas bus pažymėti, kad galėtume kuo geriau pasinaudoti jūsų atsiliepimais.</string>
<string name="send_feedback_space_title">Atsiliepimai apie erdves</string>
<string name="create_new_space">Sukurti naują erdvę</string>
<string name="other_spaces_or_rooms_you_might_not_know">Kitos erdvės ar kambariai, apie kuriuos galbūt nežinote</string>
<string name="space_you_know_that_contains_this_room">Erdvė, apie kurią žinote, kurioje yra šis kambarys</string>
<string name="tap_to_edit_spaces">Bakstelėkite, kad redaguoti erdves</string>
<string name="select_spaces">Pasirinkti erdves</string>
<string name="decide_which_spaces_can_access">Nuspręskite, kurios erdvės gali prieit prie šio kambario. Jei pasirinkta erdvė, jos nariai galės rasti kambario pavadinimą ir prie jo prisijungti.</string>
<string name="spaces_which_can_access">Erdvės, kurios gali pasiekti</string>
<string name="allow_space_member_to_find_and_access">Leisti erdvės nariams rasti ir pasiekti.</string>
<string name="room_create_member_of_space_name_can_join">Erdvės %s nariai gali rasti, peržiūrėti ir prisijungti.</string>
<string name="room_settings_room_access_restricted_description">Kiekvienas, esantis erdvėje, kurioje yra šis kambarys, gali jį rasti ir prie jo prisijungti. Tik šio kambario administratoriai gali jį įtraukti į erdvę.</string>
<string name="room_settings_room_access_restricted_title">Tik erdvės nariams</string>
<string name="room_settings_space_access_public_description">Bet kas gali rasti šią erdvę ir prisijungti</string>
<string name="space_settings_alias_subtitle">Peržiūrėti ir valdyti šios erdvės adresus.</string>
<string name="space_settings_alias_title">Erdvės adresai</string>
<string name="room_settings_space_access_title">Erdvės prieiga</string>
<plurals name="search_space_multiple_parents">
<item quantity="one">%1$s ir %2$d kitas</item>
<item quantity="few">%1$s ir %2$d kiti</item>
<item quantity="other">%1$s ir %2$d kitų</item>
</plurals>
<string name="room_permissions_upgrade_the_space">Atnaujinti erdvę</string>
<string name="room_permissions_change_space_name">Keisti erdvės pavadinimą</string>
<string name="room_permissions_enable_space_encryption">Įjungti erdvės šifravimą</string>
<string name="room_permissions_change_main_address_for_the_space">Keisti erdvės pagrindinį adresą</string>
<string name="room_permissions_change_space_avatar">Keisti erdvės avatarą</string>
<string name="space_permissions_notice_read_only">Neturite leidimo atnaujinti roles, reikalingas įvairioms šios erdvės dalims keisti</string>
<string name="space_permissions_notice">Pasirinkite roles, reikalingas įvairioms šios erdvės dalims keisti</string>
<string name="space_settings_permissions_subtitle">Peržiūrėkite ir atnaujinkite roles, reikalingas įvairioms erdvės dalims keisti.</string>
<string name="space_settings_permissions_title">Erdvės leidimai</string>
<string name="space_participants_unban_prompt_msg">Atblokavus naudotoją, jis vėl galės prisijungti prie erdvės.</string>
<string name="space_participants_ban_prompt_msg">Užblokavus naudotoją, jis bus pašalintas iš šios erdvės ir negalės prisijungti dar kartą.</string>
<string name="space_participants_remove_prompt_msg">Naudotojas bus pašalintas iš šios erdvės.
\n
\nKad jis negalėtų prisijungti dar kartą, turėtumėte jį užblokuoti.</string>
<string name="spaces_header">Erdvės</string>
<string name="space_list_empty_message">Erdvės - tai naujas kambarių ir žmonių grupavimo būdas. Sukurkite erdvę ir pradėkite.</string>
<string name="space_list_empty_title">Erdvių dar nėra.</string>
<string name="spaces">Erdvės</string>
<string name="change_space">Keisti erdvę</string>
<string name="keys_backup_settings_valid_signature_from_unverified_device">Atsarginė kopija turi galiojantį parašą iš nepatvirtintos sesijos %s</string>
<string name="keys_backup_settings_valid_signature_from_verified_device">Atsarginė kopija turi galiojantį parašą iš patvirtintos sesijos %s.</string>
<string name="keys_backup_settings_valid_signature_from_this_device">Atsarginė kopija turi galiojantį šios sesijos parašą.</string>
<string name="keys_backup_settings_signature_from_this_user">Atsarginė kopija turi galiojantį šio naudotojo parašą.</string>
<string name="keys_backup_settings_signature_from_unknown_device">Atsarginė kopija turi nežinomos sesijos parašą su ID %s.</string>
<string name="keys_backup_settings_status_not_setup">Jūsų raktų atsarginės kopijos iš šios sesijos nedaromos.</string>
<string name="keys_backup_settings_status_ko">Šioje sesijoje raktų atsarginė kopija nėra aktyvi.</string>
<string name="keys_backup_settings_status_ok">Šiai sesijai teisingai nustatyta atsarginė raktų kopija.</string>
<string name="keys_backup_settings_delete_backup_button">Ištrinti atsarginę kopiją</string>
<string name="keys_backup_settings_restore_backup_button">Atkurti iš atsarginės kopijos</string>
<string name="keys_backup_get_version_error">Nepavyko gauti naujausios atkūrimo raktų versijos (%s).</string>
<plurals name="keys_backup_restore_success_description_part2">
<item quantity="one">%d naujas raktas buvo pridėtas prie šios sesijos.</item>
<item quantity="few">%d nauji raktai buvo pridėti prie šios sesijos.</item>
<item quantity="other">%d naujų raktų buvo pridėta prie šios sesijos.</item>
</plurals>
<plurals name="keys_backup_restore_success_description_part1">
<item quantity="one">Atkurta atsarginė kopija su %d raktu.</item>
<item quantity="few">Atkurta atsarginė kopija su %d raktais.</item>
<item quantity="other">Atkurta atsarginė kopija su %d raktų.</item>
</plurals>
<string name="keys_backup_restore_success_title">Atkurta atsarginė kopija %s !</string>
<string name="keys_backup_recovery_code_error_decrypt">Atsarginės kopijos nepavyko iššifruoti naudojant šį atkūrimo raktą: patikrinkite, ar įvedėte teisingą atkūrimo raktą.</string>
<string name="keys_backup_recovery_code_empty_error_message">Įveskite atkūrimo raktą</string>
<string name="keys_backup_unlock_button">Atrakinti istoriją</string>
<string name="keys_backup_restoring_importing_keys_waiting_message">Importuojami raktai…</string>
<string name="keys_backup_restoring_downloading_backup_waiting_message">Atsisiunčiami raktai…</string>
<string name="keys_backup_restoring_computing_key_waiting_message">Apskaičiuojame atkūrimo raktą…</string>
<string name="keys_backup_restoring_waiting_message">Atkuriama atsarginė kopija:</string>
<string name="keys_backup_passphrase_error_decrypt">Atsarginės kopijos nepavyko iššifruoti naudojant šią slaptafrazę: patikrinkite, ar įvedėte teisingą atkūrimo slaptafrazę.</string>
<string name="keys_backup_restore_with_key_helper">Pametėte atkūrimo raktą\? Galite nustatyti naują nustatymuose.</string>
<string name="keys_backup_restore_key_enter_hint">Įvesti atkūrimo raktą</string>
<string name="keys_backup_restore_with_recovery_key">Naudoti atkūrimo raktą, kad atrakinti užšifruotų žinučių istoriją</string>
<string name="keys_backup_restore_with_passphrase_helper_with_link">Nežinote savo atkūrimo slaptafrazės, galite %s.</string>
<string name="keys_backup_restore_use_recovery_key">naudokite savo atkūrimo raktą</string>
<string name="keys_backup_restore_with_passphrase">Naudokite atkūrimo slaptafrazę, kad atrakintumėte užšifruotų žinučių istoriją</string>
<string name="keys_backup_restore_is_getting_backup_version">Gauname atsarginę versiją…</string>
<string name="keys_backup_setup_skip_msg">Jei atsijungsite arba prarasite šį prietaisą, galite prarasti prieigą prie savo žinučių.</string>
<string name="keys_backup_setup_skip_title">Ar esate tikri\?</string>
<string name="unexpected_error">Netikėta klaida</string>
<string name="recovery_key">Atkūrimo raktas</string>
<string name="keys_backup_setup_step3_generating_key_status">Generuojame atkūrimo raktą naudojant slaptafrazę, šis procesas gali užtrukti kelioliką sekundžių.</string>
<string name="keys_backup_setup_step3_share_intent_chooser_title">Bendrinti atkūrimo raktą su…</string>
<string name="keys_backup_setup_step3_please_make_copy">Prašome pasidaryti kopiją</string>
<string name="keys_backup_setup_override_stop">Sustabdyti</string>
<string name="keys_backup_setup_override_replace">Pakeisti</string>
<string name="keys_backup_setup_override_backup_prompt_description">Atrodo, kad jau esate sukūrę atsarginę raktų kopiją iš kitos sesijos. Ar norite ją pakeisti kuriama\?</string>
<string name="keys_backup_setup_override_backup_prompt_tile">Jūsų namų serveryje jau yra atsarginė kopija</string>
<string name="recovery_key_export_saved">Atkūrimo raktas buvo išsaugotas.</string>
<string name="keys_backup_setup_step3_save_button_title">Įrašyti kaip failą</string>
<string name="keys_backup_setup_step3_share_recovery_file">Bendrinti</string>
<string name="keys_backup_setup_step3_copy_button_title">Išsaugoti atkūrimo raktą</string>
<string name="keys_backup_setup_step3_button_title_no_passphrase">Padariau kopiją</string>
<string name="keys_backup_setup_step3_button_title">Baigta</string>
<string name="keys_backup_setup_step3_text_line2_no_passphrase">Atkūrimo raktą laikykite labai saugioje vietoje, pvz., slaptažodžių tvarkyklėje (arba seife)</string>
<string name="keys_backup_setup_step3_text_line2">Atkūrimo raktas yra apsauginis tinklas - juo galite atkurti prieigą prie užšifruotų žinučių, jei pamiršite slaptafrazę.
\nAtkūrimo raktą laikykite labai saugioje vietoje, pvz., slaptažodžių tvarkyklėje (arba seife)</string>
<string name="keys_backup_setup_step3_text_line1">Jūsų raktų atsarginė kopija yra kuriama.</string>
<string name="keys_backup_setup_step3_success_title">Sėkmė !</string>
<string name="keys_backup_setup_step2_skip_button_title">(Išplėstinė) Nustatyti su atkūrimo raktu</string>
<string name="keys_backup_setup_step1_recovery_key_alternative">Arba apsaugokite atsarginę kopiją naudodami atkūrimo raktą ir išsaugokite ją saugioje vietoje.</string>
<string name="keys_backup_setup_creating_backup">Atsarginės kopijos kūrimas</string>
<string name="keys_backup_setup_step2_button_title">Nustatyti slaptafrazę</string>
<string name="keys_backup_setup_step2_text_description">Jūsų namų serveryje išsaugosime šifruotą raktų kopiją. Apsaugokite atsarginę kopiją slaptafraze, kad ji būtų saugi.
\n
\nSiekiant maksimalaus saugumo, ji turėtų skirtis nuo jūsų paskyros slaptažodžio.</string>
<string name="keys_backup_setup_step2_text_title">Apsaugokite atsarginę kopiją slaptafraze.</string>
<string name="keys_backup_setup_step1_manual_export">Eksportuoti raktus rankiniu būdu</string>
<string name="keys_backup_setup_step1_advanced">(Išplėstiniai)</string>
<string name="keys_backup_setup">Pradėti naudoti raktų atsarginį kopijavimą</string>
<string name="keys_backup_setup_step1_description">Užšifruotuose kambariuose siunčiamos žinutės yra apsaugotos šifravimu nuo galo iki galo. Tik jūs ir gavėjas (-ai) turite raktus, kad galėtumėte perskaityti šias žinutes.
\n
\nSaugiai kurkite atsargines raktų kopijas, kad jų neprarastumėte.</string>
<string name="keys_backup_setup_step1_title">Niekada nepraraskite užšifruotų žinučių</string>
<string name="keys_backup_passphrase_not_empty_error_message">Ištrinkite slaptafrazę, jei norite, kad ${app_name} sugeneruotų atkūrimo raktą.</string>
<string name="passphrase_passphrase_too_weak">Slaptafrazė yra per silpna</string>
<string name="passphrase_empty_error_message">Įveskite slaptafrazę</string>
<string name="passphrase_passphrase_does_not_match">Slaptafrazė nesutampa</string>
<string name="passphrase_enter_passphrase">Įvesti slaptafrazę</string>
<string name="passphrase_confirm_passphrase">Patvirtinti slaptafrazę</string>
<string name="passphrase_create_passphrase">Sukurti slaptafrazę</string>
<string name="no_valid_google_play_services_apk">Nerastas galiojantis Google Play Paslaugų APK. Pranešimai gali neveikti tinkamai.</string>
<string name="x_plus">+%d</string>
<string name="generic_label_and_value">%1$s: %2$s</string>
<string name="merged_events_collapse">suskleisti</string>
<string name="merged_events_expand">išplėsti</string>
<string name="unknown_error">Atsiprašome, įvyko klaida</string>
<string name="resource_limit_hard_contact">Jei norite toliau naudotis šia paslauga, prašome %s.</string>
<string name="resource_limit_soft_contact">Prašome %s kad padidinti šią ribą.</string>
<string name="resource_limit_hard_mau">Šis namų serveris pasiekė savo mėnesio aktyviųjų naudotojų limitą.</string>
<string name="resource_limit_soft_mau"> Šis namų serveris pasiekė mėnesio aktyviųjų naudotojų limitą, todėl <b>kai kurie naudotojai negalės prisijungti</b>.</string>
<string name="resource_limit_hard_default">Šis namų serveris viršijo vieną iš savo išteklių limitų.</string>
<string name="resource_limit_soft_default">Šis namų serveris viršijo vieną iš savo išteklių limitų, todėl <b>kai kurie naudotojai negalės prisijungti</b>.</string>
<string name="resource_limit_contact_admin">kreipkitės į savo paslaugų administratorių</string>
<string name="room_tombstone_predecessor_link">Spustelėkite čia, kad pamatytumėte senesnes žinutes</string>
<string name="room_tombstone_continuation_description">Šis kambarys yra kito pokalbio tęsinys</string>
<string name="room_tombstone_continuation_link">Pokalbis tęsiamas čia</string>
<string name="room_tombstone_versioned_description">Šis kambarys buvo pakeistas ir nebėra aktyvus.</string>
<string name="error_empty_field_your_password">Įveskite savo slaptažodį.</string>
<string name="error_empty_field_enter_user_name">Įveskite naudotojo vardą.</string>
<string name="deactivate_account_submit">Deaktyvuoti paskyrą</string>
<string name="deactivate_account_delete_checkbox">Prašau pamiršti visas mano išsiųstas žinutes, kai mano paskyra bus deaktyvuota (Įspėjimas: dėl to būsimi naudotojai matys nepilną pokalbių vaizdą)</string>
<string name="deactivate_account_content">Dėl to jūsų paskyra visam laikui taps netinkama naudoti. Negalėsite prisijungti ir niekas negalės iš naujo užregistruoti to paties naudotojo ID. Dėl to jūsų paskyra išeis iš visų kambarių, kuriuose dalyvauja, ir iš jūsų tapatybės serverio bus pašalinti jūsų paskyros duomenys. <b>Šis veiksmas yra negrįžtamas</b>.
\n
\nDeaktyvavus paskyrą <b>pagal numatytuosius nustatymus nepamirštame jūsų išsiųstų žinučių</b>. Jei norite, kad pamirštume jūsų žinutes, pažymėkite toliau esantį langelį.
\n
\nŽinučių matomumas Matrix sistemoje yra panašus į el. pašto matomumą. Mūsų jūsų žinučių užmiršimas reiškia, kad jūsų išsiųstomis žinutėmis nebus dalijamasi su jokiais naujais ar neregistruotais naudotojais, tačiau registruoti naudotojai, kurie jau turi prieigą prie šių žinučių, vis tiek turės prieigą prie jų kopijos.</string>
<string name="deactivate_account_title">Deaktyvuoti paskyrą</string>
<string name="dialog_user_consent_submit">Peržiūrėti dabar</string>
<string name="dialog_user_consent_content">Norėdami toliau naudoti %1$s namų serverį, turite peržiūrėti ir sutikti su nuostatomis ir sąlygomis.</string>
<string name="avatar">Avataras</string>
<string name="reason_colon">Priežastis: %1$s</string>
<string name="has_been_banned">%2$s jus užblokavo iš %1$s</string>
<string name="has_been_removed">%2$s jus pašalino iš %1$s</string>
<string name="invited">Pakviestas</string>
<string name="rooms">Kambariai</string>
<string name="group_details_home">Pradžia</string>
<string name="create">Sukurti</string>
<string name="encrypted_message">Šifruota žinutė</string>
<string name="notification_noisy">Triukšmingas</string>
<string name="notification_silent">Tylus</string>
<string name="widget_integration_no_permission_in_room">Jūs neturite leidimo tai daryti šiame kambaryje.</string>
<string name="widget_integration_must_be_in_room">Jūs nesate šiame kambaryje.</string>
<string name="room_add_matrix_apps">Pridėti Matrix programėlių</string>
<string name="widget_integration_missing_parameter">Trūksta reikalingo parametro.</string>
<string name="widget_integration_room_not_visible">Kambarys %s nėra matomas.</string>
<string name="room_widget_resource_decline_permission">Blokuoti visus</string>
<string name="room_widget_resource_grant_permission">Leisti</string>
<string name="room_widget_permission_room_id">Kambario ID</string>
<string name="room_widget_webview_access_microphone">Naudoti mikrofoną</string>
<string name="room_widget_webview_access_camera">Naudoti kamerą</string>
<string name="room_manage_integrations">Tvarkyti integracijas</string>
<string name="your_unverified_device_requesting">Jūsų nepatvirtinta sesija \'%s\' prašo šifravimo raktų.</string>
<string name="you_added_a_new_device_with_info">Nauja sesija prašo šifravimo raktų.
\nSesijos pavadinimas: %1$s
\nPaskutinį kartą matyta: %2$s
\nJei neprisijungėte prie kitos sesijos, ignoruokite šią užklausą.</string>
<string name="you_added_a_new_device">Pridėjote naują sesiją \'%s\', kuri prašo šifravimo raktų.</string>
<string name="your_unverified_device_requesting_with_info">Nepatvirtinta sesija prašo šifravimo raktų.
\nSesijos pavadinimas: %1$s
\nPaskutinį kartą matyta: %2$s
\nJei neprisijungėte prie kitos sesijos, ignoruokite šią užklausą.</string>
<string name="command_description_op_user">Nustatyti naudotojo galios lygį</string>
<string name="command_description_unignore_user">Nustoja ignoruoti naudotoją ir rodo jo žinutes nuo dabar</string>
<string name="command_description_ignore_user">ignoruoja naudotoją, slepiant jo žinutes nuo jūsų</string>
<string name="command_description_unban_user">Atblokuoja naudotoją su nurodytu id</string>
<string name="command_description_ban_user">Užblokuoja naudotoją su nurodytu id</string>
<string name="command_description_emote">Rodo veiksmą</string>
<string name="command_description_join_room">Prisijungia prie kambario su nurodytu adresu</string>
<string name="command_description_invite_user">Pakviečia naudotoją su nurodytu id į šį kambarį</string>
<string name="command_description_room_name">Nustato kambario pavadinimą</string>
<string name="markdown_has_been_disabled">Markdown buvo išjungtas.</string>
<string name="markdown_has_been_enabled">Markdown buvo įjungtas.</string>
<string name="command_description_whois">Rodo informaciją apie naudotoją</string>
<string name="command_description_room_avatar">Pakeičia šio kambario avatarą</string>
<string name="command_description_nick_for_room">Pakeičia jūsų rodomą slapyvardį tik šiame kambaryje</string>
<string name="command_description_avatar_for_room">Pakeičia jūsų avatarą tik šiame kambaryje</string>
<string name="command_description_nick">Pakeičia jūsų rodomą slapyvardį</string>
<string name="command_description_remove_user">Pašalina naudotoją su nurodytu id iš šio kambario</string>
<string name="command_description_topic">Nustatyti kambario temą</string>
<string name="command_description_part_room">Palikti kambarį</string>
<string name="unrecognized_command">Neatpažinta komanda: %s</string>
<string name="start_verification">Pradėti patvirtinimą</string>
<string name="command_error">Komandos klaida</string>
<string name="ignore_request_short_label">Ignoruoti</string>
<string name="share_without_verifying_short_label">Bendrinti</string>
<string name="command_not_supported_in_threads">Komanda \"%s\" atpažįstama, bet nepalaikoma temose.</string>
<string name="command_problem_with_parameters">Komandai \"%s\" reikia daugiau parametrų arba kai kurie parametrai yra neteisingi.</string>
<plurals name="room_details_selected">
<item quantity="one">%d pasirinktas</item>
<item quantity="few">%d pasirinkti</item>
<item quantity="other">%d pasirinktų</item>
</plurals>
<string name="room_permissions_change_topic">Keisti temą</string>
<string name="room_permissions_upgrade_the_room">Atnaujinti kambarį</string>
<string name="room_permissions_default_role">Numatyta rolė</string>
<string name="room_permissions_notice_read_only">Neturite leidimo atnaujinti roles, reikalingas įvairioms kambario dalims keisti</string>
<string name="room_permissions_notice">Pasirinkite roles, reikalingas įvairioms kambario dalims keisti</string>
<string name="room_permissions_title">Leidimai</string>
<string name="room_settings_permissions_subtitle">Peržiūrėti ir atnaujinti roles, reikalingas įvairioms kambario dalims keisti.</string>
<string name="room_settings_permissions_title">Kambario leidimai</string>
<string name="ssl_only_accept">Sertifikatą priimkite tik tuo atveju, jei serverio administratorius yra paskelbęs antspaudą, atitinkantį pirmiau nurodytą.</string>
<string name="ssl_expected_existing_expl">Sertifikatas pakeistas iš anksčiau patikimo į nepatikimą. Serveris galėjo atnaujinti savo sertifikatą. Kreipkitės į serverio administratorių dėl numatyto antspaudo.</string>
<string name="ssl_unexpected_existing_expl">Sertifikatas pakeistas iš to, kuriuo pasitikėjo jūsų telefonas. Tai LABAI NEĮPRASTA. Rekomenduojama NEPATVIRTINTI šio naujo sertifikato.</string>
<string name="ssl_cert_new_account_expl">Jei serverio administratorius nurodė, kad to tikimasi, įsitikinkite, kad toliau pateiktas antspaudas atitinka jo pateiktą antspaudą.</string>
<string name="ssl_cert_not_trust">Tai gali reikšti, kad kažkas piktavališkai perima jūsų duomenų srautą arba kad telefonas nepasitiki nuotolinio serverio pateiktu sertifikatu.</string>
<string name="ssl_could_not_verify">Nepavyko patvirtinti nuotolinio serverio tapatybės.</string>
<string name="ssl_fingerprint_hash">Antspaudas (%s):</string>
<string name="ssl_remain_offline">Ignoruoti</string>
<string name="ssl_do_not_trust">Nepasitikėti</string>
<string name="ssl_trust">Pasitikėti</string>
<plurals name="room_new_messages_notification">
<item quantity="one">%d nauja žinutė</item>
<item quantity="few">%d naujos žinutės</item>
<item quantity="other">%d naujų žinučių</item>
</plurals>
<string name="room_unsupported_e2e_algorithm_as_admin">Šifravimas buvo neteisingai sukonfigūruotas, todėl negalite siųsti žinučių. Spustelėkite, kad atidarytumėte nustatymus.</string>
<string name="room_unsupported_e2e_algorithm">Šifravimas buvo neteisingai sukonfigūruotas, todėl negalite siųsti žinučių. Susisiekite su administratoriumi, kad būtų atkurta galiojanti šifravimo būsena.</string>
<string name="room_do_not_have_permission_to_post">Jūs neturite leidimo rašyti šiame kambaryje.</string>
<string name="room_notification_more_than_two_users_are_typing">%1$s, %2$s ir kiti</string>
<string name="room_notification_two_users_are_typing">%1$s ir %2$s</string>
<string name="room_many_users_are_typing">%1$s &amp; %2$s &amp; kiti rašo…</string>
<string name="room_two_users_are_typing">%1$s &amp; %2$s rašo…</string>
<string name="room_one_user_is_typing">%s rašo…</string>
<string name="room_participants_unban_prompt_msg">Atblokavus naudotoją, jis vėl galės prisijungti prie kambario.</string>
<string name="room_participants_ban_prompt_msg">Užblokavus naudotoją, jis bus pašalintas iš šio kambario ir negalės prisijungti dar kartą.</string>
<string name="room_participants_unban_title">Atblokuoti naudotoją</string>
<string name="room_participants_ban_reason">Priežastis užblokavimui</string>
<string name="settings_advanced">Išplėstiniai</string>
<string name="settings_other">Kita</string>
<string name="settings_ignored_users">Ignoruojami naudotojai</string>
<string name="settings_user_settings">Naudotojo nustatymai</string>
<string name="settings_clear_media_cache">Išvalyti medijos talpyklą</string>
<string name="settings_clear_cache">Išvalyti talpyklą</string>
<string name="settings_keep_media">Saugoti mediją</string>
<string name="settings_privacy_policy">Privatumo politika</string>
<string name="settings_copyright">Autorinės teisės</string>
<string name="settings_third_party_notices">Trečiųjų šalių pastabos</string>
<string name="settings_app_term_conditions">Terminai ir sąlygos</string>
<plurals name="seconds">
<item quantity="one">%d sekundė</item>
<item quantity="few">%d sekundės</item>
<item quantity="other">%d sekundžių</item>
</plurals>
<string name="settings_set_sync_delay">Uždelsimas tarp kiekvieno sinchronizavimo</string>
<string name="settings_set_sync_timeout">Sinchronizavimo užklausos laiko limitas</string>
<string name="settings_start_on_boot">Paleisti sistemos paleidimo metu</string>
<string name="settings_background_fdroid_sync_mode_disabled_description">Kai programėlė yra fone, apie gautus pranešimus nebūsite informuojami.</string>
<string name="settings_background_fdroid_sync_mode_disabled">Nėra foninio sinchronizavimo</string>
<string name="settings_background_fdroid_sync_mode_real_time_description">${app_name} sinchronizuosis fone periodiškai tiksliai nustatytu laiku (galima konfigūruoti).
\nTai turės įtakos radijo ryšio ir baterijos naudojimui, bus rodomas nuolatinis pranešimas, kad ${app_name} klausosi įvykių.</string>
<string name="settings_background_fdroid_sync_mode_real_time">Optimizuotas realiajam laikui</string>
<string name="settings_background_fdroid_sync_mode_battery_description">${app_name} bus sinchronizuojama fone taip, kad būtų tausojami riboti įrenginio ištekliai (akumuliatorius).
\nPriklausomai nuo įrenginio išteklių būklės, operacinė sistema gali atidėti sinchronizavimą.</string>
<string name="settings_background_fdroid_sync_mode_battery">Optimizuotas akumuliatoriui</string>
<string name="settings_background_fdroid_sync_mode">Foninio sinchronizavimo režimas</string>
<string name="settings_background_sync">Foninis sinchronizavimas</string>
<string name="settings_mentions_and_keywords_encryption_notice">Mobiliuosiuose įrenginiuose negausite pranešimų apie užšifruotuose kambariuose esančius paminėjimus ir raktažodžius.</string>
<string name="settings_room_upgrades">Kambario atnaujinimai</string>
<string name="settings_messages_by_bot">Boto žinutės</string>
<string name="settings_call_invitations">Kvietimai skambinti</string>
<string name="settings_room_invitations">Kvietimai į kambarį</string>
<string name="settings_messages_containing_keywords">Raktažodžiai</string>
<string name="settings_mentions_at_room">\@kambarys</string>
<string name="settings_encrypted_group_messages">Šifruotos grupių žinutės</string>
<string name="settings_group_messages">Grupių žinutės</string>
<string name="settings_encrypted_direct_messages">Šifruotos tiesioginės žinutės</string>
<string name="settings_messages_direct_messages">Tiesioginės žinutės</string>
<string name="settings_messages_containing_username">Mano naudotojo vardas</string>
<string name="settings_messages_containing_display_name">Mano rodomas vardas</string>
<string name="settings_messages_at_room">Žinutės, kuriose yra @room</string>
<string name="settings_messages_sent_by_bot">Boto išsiųstos žinutės</string>
<string name="settings_invited_to_room">Kai mane pakviečia į kambarį</string>
<string name="settings_messages_in_group_chat">Žinutės grupiniuose pokalbiuose</string>
<string name="settings_messages_in_one_to_one">Žinutės pokalbiuose vienas su vienu</string>
<string name="settings_containing_my_user_name">Žinutės, kuriose yra mano naudotojo vardas</string>
<string name="settings_containing_my_display_name">Žinutės, kuriose yra mano rodomas vardas</string>
<string name="settings_when_rooms_are_upgraded">Kai kambariai atnaujinami</string>
<string name="settings_messages_in_e2e_group_chat">Šifruotos žinutės grupiniuose pokalbiuose</string>
<string name="settings_messages_in_e2e_one_to_one">Šifruotos žinutės pokalbiuose vienas su vienu</string>
<string name="settings_system_preferences_summary">Pasirinkti LED spalvą, vibraciją, garsą…</string>
<string name="settings_silent_notifications_preferences">Tyliųjų pranešimų konfigūravimas</string>
<string name="settings_call_notifications_preferences">Skambučių pranešimų konfigūravimas</string>
<string name="settings_noisy_notifications_preferences">Triukšmingų pranešimų konfigūravimas</string>
<string name="settings_enable_this_device">Įjungti pranešimus šiai sesijai</string>
<string name="settings_enable_all_notif">Įjungti pranešimus šiai paskyrai</string>
<string name="settings_notification_ringtone">Pranešimo garsas</string>
<string name="settings_troubleshoot_test_battery_quickfix">Ignoruoti optimizavimą</string>
<string name="settings_troubleshoot_test_battery_failed">Jei naudotojas kurį laiką palieka prietaisą atjungtą nuo elektros tinklo ir nejudantį, su išjungtu ekranu, prietaisas įjungia \"Doze\" režimą. Tai neleidžia programoms prisijungti prie tinklo ir atideda jų darbus, sinchronizavimą ir standartinius žadintuvus.</string>
<string name="settings_troubleshoot_test_battery_success">Akumuliatoriaus optimizavimas neįtakoja ${app_name}.</string>
<string name="settings_troubleshoot_test_battery_title">Akumuliatoriaus optimizavimas</string>
<string name="settings_troubleshoot_test_bg_restricted_quickfix">Išjungti apribojimus</string>
<string name="settings_troubleshoot_test_bg_restricted_failed">Įjungti foniniai apribojimai ${app_name}.
\nDarbas, kurį programa bando atlikti, bus agresyviai ribojamas, kol ji yra fone, ir tai gali turėti įtakos pranešimams.
\n%1$s</string>
<string name="settings_troubleshoot_test_bg_restricted_success">Fono apribojimai išjungti ${app_name}. Šis testas turėtų būti atliekamas naudojant mobiliuosius duomenis (be WIFI).
\n%1$s</string>
<string name="settings_troubleshoot_test_bg_restricted_title">Patikrinti fono apribojimus</string>
<string name="settings_troubleshoot_test_service_boot_quickfix">Įjungti paleidimą sistemos paleidimo metu</string>
<string name="settings_troubleshoot_test_service_boot_failed">Paslauga nebus paleista iš naujo paleidus įrenginį, pranešimų negausite, kol vieną kartą nebus atidaryta ${app_name}.</string>
<string name="settings_troubleshoot_test_service_boot_success">Paslauga bus paleista iš naujo paleidus įrenginį.</string>
<string name="settings_troubleshoot_test_service_boot_title">Paleisti sistemos paleidimo metu</string>
<string name="settings_troubleshoot_test_notification_notification_clicked">Pranešimas buvo paspaustas!</string>
<string name="settings_troubleshoot_test_notification_notice">Spustelėkite pranešimą. Jei pranešimo nematote, patikrinkite sistemos nustatymus.</string>
<string name="settings_troubleshoot_test_notification_title">Pranešimo rodymas</string>
<string name="settings_troubleshoot_test_push_notification_content">Jūs žiūrite pranešimą! Spausk ant manęs!</string>
<string name="settings_troubleshoot_test_bing_settings_failed">Kai kurie pranešimai yra išjungti pasirinktiniuose nustatymuose.</string>
<string name="settings_troubleshoot_test_bing_settings_success_with_warn">Atkreipkite dėmesį, kad kai kurie pranešimų tipai nustatyti kaip tylūs (pranešimas bus be garso).</string>
<string name="settings_troubleshoot_test_bing_settings_title">Pasirinktiniai nustatymai.</string>
<string name="settings_troubleshoot_test_device_settings_failed">Šioje sesijoje pranešimai neįjungti.
\nPatikrinkite ${app_name} nustatymus.</string>
<string name="settings_troubleshoot_test_device_settings_success">Šioje sesijoje pranešimai yra įjungti.</string>
<string name="settings_troubleshoot_test_device_settings_title">Sesijos nustatymai.</string>
<string name="settings_troubleshoot_test_account_settings_failed">Pranešimai jūsų paskyroje yra išjungti.
\nPatikrinkite paskyros nustatymus.</string>
<string name="settings_troubleshoot_test_account_settings_success">Jūsų paskyroje pranešimai yra įjungti.</string>
<string name="settings_troubleshoot_test_account_settings_title">Paskyros nustatymai.</string>
<string name="open_settings">Atidaryti nustatymus</string>
<string name="settings_troubleshoot_test_system_settings_failed">Sistemos nustatymuose pranešimai yra išjungti.
\nPatikrinkite sistemos nustatymus.</string>
<string name="settings_troubleshoot_test_system_settings_success">Pranešimai yra įjungti sistemos nustatymuose.</string>
<string name="settings_troubleshoot_test_system_settings_title">Sistemos nustatymai.</string>
<string name="settings_troubleshoot_diagnostic_failure_status_no_quickfix">Vienas ar daugiau testų nepavyko, pateikite pranešimą apie klaidą ir padėkite mums ją ištirti.</string>
<string name="settings_troubleshoot_diagnostic_failure_status_with_quickfix">Vienas ar daugiau testų nepavyko, išbandykite siūlomą (-us) pataisymą (-us).</string>
<string name="settings_troubleshoot_diagnostic_success_status">Pagrindinė diagnostika yra gera. Jei vis dar negaunate pranešimų, pateikite pranešimą apie klaidą ir padėkite mums ją ištirti.</string>
<string name="settings_troubleshoot_diagnostic_running_status">Vykdoma… (%1$d iš %2$d)</string>
<string name="settings_troubleshoot_diagnostic_run_button_title">Atlikti bandymus</string>
<string name="settings_troubleshoot_diagnostic">Trikčių diagnostika</string>
<string name="settings_notification_troubleshoot">Pranešimų trikčių šalinimas</string>
<string name="settings_notification_keyword_contains_invalid_character">Raktažodžiai negali turėti \'%s\'</string>
<string name="settings_notification_keyword_contains_dot">Raktažodžiai negali prasidėti su \'.\'</string>
<string name="settings_notification_new_keyword">Pridėti naują raktažodį</string>
<string name="settings_notification_your_keywords">Jūsų raktažodžiai</string>
<string name="settings_notification_notify_me_for">Praneškite man apie</string>
<string name="settings_notification_other">Kita</string>
<string name="settings_notification_mentions_and_keywords">Paminėjimai ir raktažodžiai</string>
<string name="settings_notification_default">Numatyti pranešimai</string>
<string name="settings_notification_emails_enable_for_email">Įjungti pranešimus el. paštu %s</string>
<string name="settings_notification_emails_no_emails">Norėdami gauti pranešimą el. paštu, susiekite el. paštą su savo Matrix paskyra</string>
<string name="settings_notification_emails_category">Pranešimas el. paštu</string>
<string name="settings_notification_by_event">Pranešimo svarba pagal įvykį</string>
<string name="settings_notification_advanced">Išplėstiniai pranešimų nustatymai</string>
<string name="error_threepid_auth_failed">Įsitikinkite, kad paspaudėte jums atsiųstame el. laiške esančią nuorodą.</string>
<string name="settings_remove_three_pid_confirmation_content">Pašalinti %s\?</string>
<string name="settings_phone_numbers">Telefono numeriai</string>
<string name="settings_emails_empty">Prie jūsų paskyros nepridėtas joks el. paštas</string>
<string name="settings_emails">El. pašto adresai</string>
<string name="settings_app_info_link_summary">Rodyti programos informaciją sistemos nustatymuose.</string>
<string name="settings_app_info_link_title">Programos informacija</string>
<string name="settings_add_phone_number">Pridėti telefono numerį</string>
<string name="settings_phone_number_empty">Prie jūsų paskyros nepridėtas joks telefono numeris</string>
<string name="settings_add_email_address">Pridėti el. pašto adresą</string>
<string name="settings_display_name">Rodomas vardas</string>
<string name="settings_profile_picture">Profilio nuotrauka</string>
<string name="shortcut_disabled_reason_sign_out">Sesija buvo atjungta!</string>
<string name="search_space_two_parents">%1$s ir %2$s</string>
<string name="search_no_results">Nėra rezultatų</string>
<string name="search_banned_user_hint">Filtruoti užblokuotus narius</string>
<string name="search_members_hint">Filtruoti kambario narius</string>
<string name="search_hint">Ieškoti</string>
<string name="shortcut_disabled_reason_room_left">Kambarys buvo paliktas!</string>
<string name="room_settings_add_homescreen_shortcut">Pridėti prie pagrindinio ekrano</string>
<string name="room_settings_none">Nėra</string>
<string name="room_settings_mention_and_keyword_only">Tik paminėjimai &amp; raktažodžiai</string>
<string name="room_settings_all_messages">Visos žinutės</string>
<string name="room_threads_filter">Filtruoti temas kambaryje</string>
<string name="threads_notice_migration_title">Temos artėja prie beta versijos 🎉</string>
<string name="tooltip_attachment_gallery">Siųsti nuotraukas ir vaizdo įrašus</string>
<string name="tooltip_attachment_photo">Atidaryti fotoaparatą</string>
<string name="message_bubbles">Rodyti žinučių burbulus</string>
<string name="live_location_description">Tiesioginė buvimo vieta</string>
<string name="live_location_share_location_item_share">Bendrinti vietą</string>
<string name="live_location_not_enough_permission_dialog_description">Norėdami bendrinti tiesioginę buvimo vietą šiame kambaryje, turite turėti tinkamus leidimus.</string>
<string name="live_location_not_enough_permission_dialog_title">Neturite leidimo bendrinti tiesioginę buvimo vietą</string>
<string name="live_location_bottom_sheet_last_updated_at">Atnaujinta prieš %1$s</string>
<string name="labs_enable_live_location_summary">Laikinas pritaikymas: vietos išlieka kambario istorijoje</string>
<string name="labs_enable_live_location">Įjungti tiesioginį buvimo vietos bendrinimą</string>
<string name="live_location_sharing_notification_description">Bendrinama buvimo vieta</string>
<string name="live_location_sharing_notification_title">${app_name} tiesioginė buvimo vieta</string>
<string name="location_share_live_remaining_time">%1$s liko</string>
<string name="location_share_live_stop">Sustabdyti</string>
<string name="location_share_live_until">Tiesiogiai iki %1$s</string>
<string name="location_share_live_view">Žiūrėti tiesioginę buvimo vietą</string>
<string name="location_share_live_ended">Tiesioginė buvimo vieta baigėsi</string>
<string name="location_share_live_started">Įkeliama tiesioginė vieta…</string>
<string name="location_share_live_enabled">Tiesioginė buvimo vieta įjungta</string>
<string name="location_share_loading_map_error">Nepavyksta įkelti žemėlapio
\nŠis namų serveris gali būti nesukonfigūruotas rodyti žemėlapius.</string>
<string name="location_timeline_failed_to_load_map">Nepavyko įkelti žemėlapio</string>
<string name="location_share_external">Atidaryti per</string>
<string name="location_not_available_dialog_content">${app_name} negalėjo pasiekti jūsų vietos. Prašome pabandyti vėliau.</string>
<string name="location_not_available_dialog_title">${app_name} negalėjo pasiekti jūsų vietos</string>
<string name="location_share_live_select_duration_option_3">8 valandas</string>
<string name="location_share_live_select_duration_option_2">1 valandą</string>
<string name="location_share_live_select_duration_option_1">15 minučių</string>
<string name="location_share_live_select_duration_title">Bendrinti savo tiesioginę buvimo vietą</string>
<string name="a11y_location_share_option_pinned_icon">Bendrinti šią vietą</string>
<string name="location_share_option_pinned">Bendrinti šią vietą</string>
<string name="a11y_location_share_option_user_live_icon">Bendrinti tiesioginę buvimo vietą</string>
<string name="location_share_option_user_live">Bendrinti tiesioginę buvimo vietą</string>
<string name="a11y_location_share_option_user_current_icon">Bendrinti mano dabartinę vietą</string>
<string name="location_share_option_user_current">Bendrinti mano dabartinę vietą</string>
<string name="a11y_location_share_locate_button">Priartinti esamą vietą</string>
<string name="a11y_location_share_pin_on_map">Pasirinktos vietos smeigtukas žemėlapyje</string>
<string name="a11y_static_map_image">Žemėlapis</string>
<string name="closed_poll_option_description">Rezultatai atskleidžiami tik tada, kai baigiate apklausą</string>
<string name="closed_poll_option_title">Uždaryta apklausa</string>
<string name="open_poll_option_description">Balsuotojai mato rezultatus iškart po balsavimo</string>
<string name="open_poll_option_title">Atidaryti apklausą</string>
<string name="poll_type_title">Apklausos tipas</string>
<string name="edit_poll_title">Redaguoti apklausą</string>
<string name="delete_poll_dialog_content">Ar tikrai norite pašalinti šią apklausą\? Pašalinę ją negalėsite susigrąžinti.</string>
<string name="end_poll_confirmation_description">Tai neleis žmonėms balsuoti ir bus rodomi galutiniai apklausos rezultatai.</string>
<string name="delete_poll_dialog_title">Pašalinti apklausą</string>
<string name="poll_end_room_list_preview">Apklausa baigėsi</string>
<string name="poll_response_room_list_preview">Prabalsuota</string>
<string name="end_poll_confirmation_approve_button">Baigti apklausą</string>
<string name="a11y_poll_winner_option">laimėtojo parinktis</string>
<string name="poll_undisclosed_not_ended">Rezultatai bus matomi pasibaigus apklausai</string>
<string name="poll_no_votes_cast">Nėra balsų</string>
<string name="restart_the_application_to_apply_changes">Iš naujo paleiskite programą, kad pakeitimas įsigaliotų.</string>
<string name="labs_enable_latex_maths">Įjungti LaTeX matematika</string>
<string name="link_this_email_with_your_account">%s nustatymuose, kad gautumėte kvietimus tiesiogiai į ${app_name}.</string>
<string name="this_invite_to_this_space_was_sent">Kvietimas į šią erdvę buvo išsiųstas į %s, kuris nėra susijęs su jūsų paskyra</string>
<string name="this_invite_to_this_room_was_sent">Kvietimas į šį kambarį buvo išsiųstas į %s, kuris nėra susijęs su jūsų paskyra</string>
<string name="upgrade_room_for_restricted_note">Atkreipkite dėmesį, kad atnaujinus bus sukurta nauja kambario versija. Visos dabartinės žinutės liks šiame archyvuotame kambaryje.</string>
<string name="upgrade_room_for_restricted">Kiekvienas iš %s galės rasti šį kambarį ir prisijungti prie jo - nereikės visų kviesti rankiniu būdu. Tai galėsite bet kada pakeisti kambario nustatymuose.</string>
<string name="audio_message_file_size">(%1$s)</string>
<string name="audio_message_reply_content">%1$s (%2$s)</string>
<string name="error_audio_message_unable_to_play">Nepavyko paleisti %1$s</string>
<string name="a11y_pause_audio_message">Pristabdyti %1$s</string>
<string name="a11y_play_audio_message">Paleisti %1$s</string>
<string name="a11y_audio_playback_duration" tools:ignore="PluralsCandidate">%1$d minutės %2$d sekundės</string>
<string name="a11y_audio_message_item">%1$s, %2$s, %3$s</string>
<string name="voice_message_n_seconds_warning_toast">%1$ds liko</string>
<string name="error_failed_to_join_room">Atsiprašome, bandant prisijungti įvyko klaida: %s</string>
<string name="room_upgrade_to_recommended_version">Atnaujinti į rekomenduojamą kambario versiją</string>
<string name="room_using_unstable_room_version">Šiame kambaryje naudojama kambario versija %s, kurią šis namų serveris pažymėjo kaip nestabilią.</string>
<string name="upgrade_room_no_power_to_manage">Norint atnaujinti kambarį, reikia leidimo</string>
<string name="upgrade_public_room_from_to">Jūs atnaujinsite šį kambarį iš %1$s į %2$s.</string>
<string name="upgrade_room_warning">Kambario atnaujinimas yra išplėstinis veiksmas ir paprastai rekomenduojamas, kai kambarys yra nestabilus dėl klaidų, trūkstamų funkcijų ar saugumo spragų.
\nPaprastai tai turi įtakos tik tam, kaip kambarys apdorojamas serveryje.</string>
<string name="upgrade_private_room">Atnaujinti privatų kambarį</string>
<string name="upgrade_public_room">Atnaujinti viešą kambarį</string>
<string name="this_space_has_no_rooms_admin">Kai kurie kambariai gali būti paslėpti, nes yra privatūs ir į juos reikia pakvietimo.</string>
<string name="this_space_has_no_rooms_not_admin">Kai kurie kambariai gali būti paslėpti, nes yra privatūs ir į juos reikia pakvietimo.
\nJūs neturite leidimo pridėti kambarių.</string>
<string name="this_space_has_no_rooms">Šioje erdvėje nėra kambarių</string>
<string name="spaces_no_server_support_description">Dėl papildomos informacijos kreipkitės į savo namų serverio administratorių</string>
<string name="spaces_no_server_support_title">Atrodo, kad jūsų namų serveris dar nepalaiko erdvių</string>
<string name="spaces_feeling_experimental_subspace">Norite eksperimentuoti\?
\nĮ erdvę galite įtraukti esamas erdves.</string>
<string name="all_rooms_youre_in_will_be_shown_in_home">Visi kambariai kuriuose esate, bus rodomi pradžioje.</string>
<string name="space_manage_rooms_and_spaces">Valdyti kambarius ir erdves</string>
<string name="space_mark_as_not_suggested">Pažymėti kaip nesiūlomą</string>
<string name="space_mark_as_suggested">Pažymėti kaip siūlomą</string>
<string name="space_suggested">Siūlomas</string>
<string name="space_settings_manage_rooms">Valdyti kambarius</string>
<string name="looking_for_someone_not_in_space">Ieškote ko nors ne iš %s\?</string>
<string name="user_invites_you">%s kviečia tave</string>
<string name="settings_show_latest_profile_description">Rodyti naujausią profilio informaciją (avatarą ir rodomą vardą) visose žinutėse.</string>
<string name="settings_show_latest_profile">Rodyti naujausią naudotojo informaciją</string>
<string name="labs_enable_thread_messages_desc">Pastaba: programa bus paleista iš naujo</string>
<string name="labs_enable_thread_messages">Įjungti temų žinutes</string>
<string name="labs_auto_report_uisi_desc">Jūsų sistema automatiškai išsiųs žurnalus, kai įvyks negalėjimo iššifruoti klaida</string>
<string name="labs_auto_report_uisi">Automatiškai pranešti apie iššifravimo klaidas.</string>
<string name="spaces_beta_welcome_to_spaces_desc">Erdvės - tai naujas kambarių ir žmonių grupavimo būdas.</string>
<string name="space_add_space_to_any_space_you_manage">Įtraukite erdvę į bet kurią valdomą erdvę.</string>
<string name="space_add_existing_spaces">Pridėti esamas erdves</string>
<string name="space_add_existing_rooms_only">Pridėti esamus kambarius</string>
<string name="space_add_existing_rooms">Pridėti esamus kambarius ir erdvę</string>
<string name="space_explore_filter_no_result_description">Kai kurie rezultatai gali būti paslėpti, nes jie yra privatūs ir į juos reikia pakvietimo.</string>
<string name="space_explore_filter_no_result_title">Rezultatų nerasta</string>
<string name="search_thread_from_a_thread">Iš temos</string>
<string name="thread_list_empty_notice">Patarimas: Ilgai bakstelėkite žinutę ir naudokite “%s”.</string>
<string name="thread_list_empty_subtitle">Temos padeda išlaikyti pokalbių temą ir lengviau juos sekti.</string>
<string name="thread_list_empty_title">Išlaikykite diskusijas organizuotas su temomis</string>
<string name="thread_list_modal_my_threads_subtitle">Rodo visas temas, kuriose dalyvavote</string>
<string name="thread_list_modal_my_threads_title">Mano temos</string>
<string name="thread_list_modal_all_threads_subtitle">Rodo visas temas iš dabartinio kambario</string>
<string name="thread_list_modal_all_threads_title">Visos temos</string>
<string name="thread_list_modal_title">Filtras</string>
<string name="thread_list_title">Visos temos</string>
<string name="thread_timeline_title">Tema</string>
<string name="room_permissions_change_permissions">Keisti leidimus</string>
<string name="room_permissions_change_main_address_for_the_room">Keisti pagrindinį kambario adresą</string>
<string name="room_permissions_change_room_avatar">Keisti kambario avatarą</string>
<string name="room_permissions_modify_widgets">Keisti valdiklius</string>
<string name="room_permissions_notify_everyone">Pranešti visiems</string>
<string name="room_permissions_remove_messages_sent_by_others">Pašalinti kitų išsiųstas žinutes</string>
<string name="room_permissions_ban_users">Užblokuoti naudotojus</string>
<string name="room_permissions_remove_users">Pašalinti naudotojus</string>
<string name="room_permissions_change_settings">Keisti nustatymus</string>
<string name="room_permissions_invite_users">Kviesti naudotojus</string>
<string name="room_permissions_send_messages">Siųsti žinutes</string>
<string name="room_permissions_enable_room_encryption">Įjungti kambario šifravimą</string>
<string name="room_permissions_change_room_name">Keisti kambario pavadinimą</string>
<string name="room_permissions_change_history_visibility">Keisti istorijos matomumą</string>
<string name="notice_direct_room_update">%s atnaujino čia.</string>
</resources>

View file

@ -3,10 +3,10 @@
<string name="notice_room_invite_no_invitee">Uitnodiging van %s</string>
<string name="notice_room_invite">%1$s heeft %2$s uitgenodigd</string>
<string name="notice_room_invite_you">%1$s heeft u uitgenodigd</string>
<string name="notice_room_join">%1$s neemt nu deel aan het gesprek</string>
<string name="notice_room_leave">%1$s heeft het gesprek verlaten</string>
<string name="notice_room_join">%1$s is deelnemer geworden van de kamer</string>
<string name="notice_room_leave">%1$s heeft het de kamer verlaten</string>
<string name="notice_room_reject">%1$s heeft de uitnodiging geweigerd</string>
<string name="notice_room_remove">%1$s heeft %2$s uit het gesprek verwijderd</string>
<string name="notice_room_remove">%1$s heeft %2$s verwijderd</string>
<string name="notice_room_unban">%1$s heeft %2$s ontbannen</string>
<string name="notice_room_ban">%1$s heeft %2$s verbannen</string>
<string name="notice_room_withdraw">%1$s heeft de uitnodiging van %2$s ingetrokken</string>
@ -15,20 +15,20 @@
<string name="notice_display_name_changed_from">%1$s heeft zijn/haar naam aangepast van %2$s naar %3$s</string>
<string name="notice_display_name_removed">%1$s heeft zijn/haar naam verwijderd (%2$s)</string>
<string name="notice_room_topic_changed">%1$s heeft het onderwerp veranderd naar: %2$s</string>
<string name="notice_room_name_changed">%1$s heeft de gespreksnaam veranderd naar: %2$s</string>
<string name="notice_room_name_changed">%1$s heeft de kamernaam veranderd naar: %2$s</string>
<string name="notice_placed_video_call">%s heeft een video-oproep gemaakt.</string>
<string name="notice_placed_voice_call">%s heeft een spraakoproep gemaakt.</string>
<string name="notice_answered_call">%s heeft de oproep beantwoord.</string>
<string name="notice_ended_call">%s heeft de oproep beëindigd.</string>
<string name="notice_made_future_room_visibility">%1$s heeft de toekomstige gespreksgeschiedenis zichtbaar gemaakt voor %2$s</string>
<string name="notice_room_visibility_invited">alle deelnemers aan het gesprek, vanaf het punt dat ze zijn uitgenodigd.</string>
<string name="notice_room_visibility_joined">alle deelnemers aan het gesprek, vanaf het punt dat ze zijn toegetreden.</string>
<string name="notice_room_visibility_shared">alle deelnemers aan het gesprek.</string>
<string name="notice_made_future_room_visibility">%1$s heeft de toekomstige kamergeschiedenis zichtbaar gemaakt voor %2$s</string>
<string name="notice_room_visibility_invited">alle kamerdeelnemers, vanaf het punt dat ze zijn uitgenodigd.</string>
<string name="notice_room_visibility_joined">alle kamerdeelnemers, vanaf het punt dat ze deelnemer zijn geworden.</string>
<string name="notice_room_visibility_shared">alle kamerdeelnemers.</string>
<string name="notice_room_visibility_world_readable">iedereen.</string>
<string name="notice_avatar_changed_too">(avatar is ook veranderd)</string>
<string name="notice_room_name_removed">%1$s heeft de gespreksnaam verwijderd</string>
<string name="notice_room_topic_removed">%1$s heeft het gespreksonderwerp verwijderd</string>
<string name="notice_room_third_party_invite">%1$s heeft een uitnodiging naar %2$s gestuurd om het gesprek toe te treden</string>
<string name="notice_room_name_removed">%1$s heeft de kamernaam verwijderd</string>
<string name="notice_room_topic_removed">%1$s heeft het kameronderwerp verwijderd</string>
<string name="notice_room_third_party_invite">%1$s heeft een uitnodiging naar %2$s gestuurd om deelnemer te worden van de kamer</string>
<string name="notice_room_third_party_registered_invite">%1$s heeft de uitnodiging voor %2$s aanvaard</string>
<string name="notice_crypto_unable_to_decrypt">** Kan niet ontsleutelen: %s **</string>
<string name="notice_crypto_error_unknown_inbound_session_id">Het apparaat van de afzender heeft geen sleutels voor dit bericht gestuurd.</string>
@ -36,27 +36,27 @@
<string name="matrix_error">Matrix-fout</string>
<string name="medium_email">E-mailadres</string>
<string name="medium_phone_number">Telefoonnummer</string>
<string name="room_displayname_room_invite">Gespreksuitnodiging</string>
<string name="room_displayname_room_invite">Kameruitnodiging</string>
<string name="room_displayname_two_members">%1$s en %2$s</string>
<string name="room_displayname_empty_room">Leeg gesprek</string>
<string name="room_displayname_empty_room">Lege kamer</string>
<string name="initial_sync_start_importing_account">Initiële synchronisatie:
\nAccount wordt geïmporteerd…</string>
<string name="initial_sync_start_importing_account_crypto">Initiële synchronisatie:
\nCrypto wordt geïmporteerd</string>
<string name="initial_sync_start_importing_account_rooms">Initiële synchronisatie:
\nGesprekken worden geïmporteerd</string>
\nKamers importeren</string>
<string name="initial_sync_start_importing_account_joined_rooms">Initiële synchronisatie:
\nDeelgenomen gesprekken worden geïmporteerd
\nDit kan enige tijd in beslag nemen</string>
\nGesprekken worden geladen
\nAls u aan veel kamers deelneemt kan dit even duren</string>
<string name="initial_sync_start_importing_account_invited_rooms">Initiële synchronisatie:
\nUitgenodigde gesprekken worden geïmporteerd</string>
\nUitgenodigde kamers worden geïmporteerd</string>
<string name="initial_sync_start_importing_account_left_rooms">Initiële synchronisatie:
\nVerlaten gesprekken worden geïmporteerd</string>
\nVerlaten kamers worden geïmporteerd</string>
<string name="initial_sync_start_importing_account_data">Initiële synchronisatie:
\nAccountgegevens worden geïmporteerd</string>
<string name="notice_room_update">%s heeft dit gesprek geüpgraded.</string>
<string name="notice_room_update">%s heeft deze kamer geüpgraded.</string>
<string name="event_status_sending_message">Bericht wordt verstuurd…</string>
<string name="notice_room_third_party_revoked_invite">%1$s heeft de uitnodiging voor %2$s om het gesprek toe te treden ingetrokken</string>
<string name="notice_room_third_party_revoked_invite">%1$s heeft de uitnodiging voor %2$s om deelnemer te worden van de kamer ingetrokken</string>
<string name="notice_room_invite_no_invitee_with_reason">Uitnodiging van %1$s. Reden: %2$s</string>
<string name="notice_room_invite_with_reason">%1$s heeft %2$s uitgenodigd. Reden: %3$s</string>
<string name="notice_room_invite_you_with_reason">%1$s heeft u uitgenodigd. Reden: %2$s</string>
@ -69,8 +69,8 @@
<string name="notice_room_third_party_registered_invite_with_reason">%1$s heeft de uitnodiging voor %2$s aanvaard. Reden: %3$s</string>
<string name="notice_room_withdraw_with_reason">%1$s heeft de uitnodiging van %2$s ingetrokken. Reden: %3$s</string>
<plurals name="notice_room_aliases_added">
<item quantity="one">%1$s heeft %2$s als gespreksadres toegevoegd.</item>
<item quantity="other">%1$s heeft %2$s als gespreksadressen toegevoegd.</item>
<item quantity="one">%1$s heeft %2$s als kameradres toegevoegd.</item>
<item quantity="other">%1$s heeft %2$s als kameradressen toegevoegd.</item>
</plurals>
<plurals name="notice_room_aliases_removed">
<item quantity="one">%1$s heeft %2$s als gespreksadres verwijderd.</item>
@ -123,7 +123,7 @@
<string name="send_bug_report_include_logs">Logboek versturen</string>
<string name="send_bug_report_include_crash_logs">Crash-logboek versturen</string>
<string name="send_bug_report_include_screenshot">Schermafdruk versturen</string>
<string name="send_bug_report">Fout melden</string>
<string name="send_bug_report">Probleem melden</string>
<string name="send_bug_report_description">Beschrijf de fout. Wat heeft u gedaan\? Wat verwachtte u dat er zou gebeuren\? Wat is er echt gebeurd\?</string>
<string name="send_bug_report_placeholder">Beschrijf hier uw probleem</string>
<string name="send_bug_report_logs_description">Om het probleem te kunnen onderzoeken worden logboeken van deze cliënt met de foutmelding verstuurd. Deze foutmelding, inclusief de logboeken en schermafdruk, zullen niet openbaar zichtbaar zijn. Indien u liever alleen de bovenstaande tekst verstuurt, haal dan het vinkje weg:</string>
@ -132,7 +132,7 @@
<string name="send_bug_report_failed">Versturen van foutmelding is mislukt (%s)</string>
<string name="send_bug_report_progress">Voortgang (%s%%)</string>
<string name="send_bug_report_app_crashed">De toepassing is de vorige keer gecrasht. Wilt u dit melden\?</string>
<string name="join_room">Gesprek toetreden</string>
<string name="join_room">Deelnemen aan kamer</string>
<string name="username">Inlognaam</string>
<string name="logout">Afmelden</string>
<string name="hs_url">Server-URL</string>
@ -172,9 +172,9 @@
<string name="no">NEE</string>
<string name="_continue">Verdergaan</string>
<string name="action_remove">Verwijderen</string>
<string name="action_join">Toetreden</string>
<string name="action_join">Deelnemen</string>
<string name="action_reject">Afwijzen</string>
<string name="room_jump_to_first_unread">Ga naar ongelezen</string>
<string name="room_jump_to_first_unread">Naar ongelezen springen</string>
<string name="room_participants_leave_prompt_title">Gesprek verlaten</string>
<string name="room_participants_leave_prompt_msg">Weet u zeker dat u het gesprek wilt verlaten\?</string>
<string name="room_participants_header_direct_chats">TWEEGESPREKKEN</string>
@ -210,7 +210,7 @@
<string name="settings_add_phone_number">Telefoonnummer toevoegen</string>
<string name="settings_app_info_link_summary">Toon informatie over de app in de systeeminstellingen.</string>
<string name="settings_app_info_link_title">App-informatie</string>
<string name="settings_enable_all_notif">Meldingen voor deze account inschakelen</string>
<string name="settings_enable_all_notif">Meldingen voor dit account inschakelen</string>
<string name="settings_enable_this_device">Meldingen voor deze sessie inschakelen</string>
<string name="settings_messages_in_one_to_one">Berichten in één-op-één-gesprekken</string>
<string name="settings_messages_in_group_chat">Berichten in groepsgesprekken</string>
@ -227,7 +227,7 @@
<string name="settings_copyright">Copyright</string>
<string name="settings_privacy_policy">Privacybeleid</string>
<string name="settings_clear_cache">Cache wissen</string>
<string name="settings_user_settings">Persoonsinstellingen</string>
<string name="settings_user_settings">Gebruikersinstellingen</string>
<string name="settings_notifications">Meldingen</string>
<string name="settings_ignored_users">Genegeerde personen</string>
<string name="settings_other">Overige</string>
@ -265,7 +265,7 @@
<string name="room_settings_read_history_entry_anyone">Iedereen</string>
<string name="room_settings_read_history_entry_members_only_option_time_shared">Alleen deelnemers (vanaf het moment dat deze optie wordt geselecteerd)</string>
<string name="room_settings_read_history_entry_members_only_invited">Alleen deelnemers (vanaf het moment dat ze worden uitgenodigd)</string>
<string name="room_settings_read_history_entry_members_only_joined">Alleen deelnemers (vanaf het moment dat ze toetreden)</string>
<string name="room_settings_read_history_entry_members_only_joined">Alleen deelnemers (vanaf het moment dat ze deelnemer zijn geworden)</string>
<string name="room_settings_banned_users_title">Verbannen personen</string>
<string name="room_settings_category_advanced_title">Geavanceerd</string>
<string name="room_settings_room_internal_id">Interne ID van dit gesprek</string>
@ -275,7 +275,7 @@
<string name="room_settings_unset_main_address">Niet instellen als hoofdadres</string>
<string name="encryption_information_decryption_error">Ontsleutelingsfout</string>
<string name="encryption_information_device_name">Publieke naam</string>
<string name="device_manager_session_details_session_id">Sessie ID</string>
<string name="device_manager_session_details_session_id">Sessie-ID</string>
<string name="encryption_information_device_key">Sessiesleutel</string>
<string name="encryption_export_e2e_room_keys">E2E-gesprekssleutels exporteren</string>
<string name="encryption_export_room_keys">Gesprekssleutels exporteren</string>
@ -294,7 +294,7 @@
<string name="encryption_information_verify">Verifiëren</string>
<string name="encryption_information_verify_device_warning">Om te verifiëren dat deze sessie vertrouwd kan worden, contacteert u de eigenaar via een andere methode (bv. persoonlijk of via een telefoontje) en vraagt u hem/haar of de sleutel die hij/zij ziet in zijn/haar persoonsinstellingen van deze sessie overeenkomt met de sleutel hieronder:</string>
<string name="encryption_information_verify_device_warning2">Als het overeenkomt, drukt u op de knop Verifiëren hieronder. Als het niet overeenkomt, dan onderschept iemand anders deze sessie en zou u het beter blokkeren. In de toekomst zal dit verificatieproces verbeterd worden.</string>
<string name="select_room_directory">Kies een gesprekscatalogus</string>
<string name="select_room_directory">Kamermap kiezen</string>
<string name="directory_server_placeholder">Servernaam</string>
<string name="directory_server_all_rooms_on_server">Alle gesprekken op server %s</string>
<string name="directory_server_native_rooms">Alle lokale gesprekken op %s</string>
@ -334,7 +334,7 @@
<string name="widget_integration_missing_user_id">user_id ontbreekt in het verzoek.</string>
<string name="widget_integration_room_not_visible">Gesprek %s is niet zichtbaar.</string>
<string name="room_add_matrix_apps">Matrix-apps toevoegen</string>
<string name="notification_noisy_notifications">Geluidsmeldingen</string>
<string name="notification_noisy_notifications">Belangrijke meldingen</string>
<string name="notification_silent_notifications">Stille meldingen</string>
<string name="title_activity_bug_report">Foutmelding</string>
<string name="option_take_photo">Foto maken</string>
@ -423,7 +423,7 @@
<string name="error_empty_field_your_password">Voer uw wachtwoord in.</string>
<string name="send_bug_report_description_in_english">Beschrijf het probleem in het Engels, indien mogelijk.</string>
<string name="settings_preview_media_before_sending">Media bekijken vóór het versturen</string>
<string name="command_description_emote">Toont een actie</string>
<string name="command_description_emote">Geeft activiteit weer</string>
<string name="command_description_ban_user">Verbant persoon met gegeven ID</string>
<string name="command_description_unban_user">Heft verbanning van persoon met gegeven ID op</string>
<string name="command_description_op_user">Stel het machtsniveau van een persoon in</string>
@ -456,7 +456,7 @@
<string name="action_accept">Aanvaarden</string>
<string name="auth_accept_policies">Gelieve het beleid van deze server te lezen en aanvaarden:</string>
<string name="settings_call_category">Oproepen</string>
<string name="settings_call_ringtone_use_app_ringtone">Gebruik de standaardbeltoon van ${app_name} voor inkomende oproepen</string>
<string name="settings_call_ringtone_use_app_ringtone">Standaardbeltoon van ${app_name} gebruiken voor inkomende oproepen</string>
<string name="settings_call_ringtone_title">Beltoon voor inkomende oproepen</string>
<string name="settings_call_ringtone_dialog_title">Selecteer beltoon voor oproepen:</string>
<string name="room_participants_action_remove">Eruit sturen</string>
@ -551,7 +551,7 @@
<string name="settings_troubleshoot_test_battery_success">${app_name} wordt niet beperkt door accuoptimalisatie.</string>
<string name="settings_troubleshoot_test_battery_failed">Als een persoon een apparaat los van de oplader een tijd laat stilliggen, met het scherm uitgeschakeld, gaat het apparaat in slaapmodus. Dit verhindert apps de toegang tot het netwerk, en stelt hun taken, synchronisaties en standaardalarmen uit.</string>
<string name="settings_troubleshoot_test_battery_quickfix">Optimalisatie negeren</string>
<string name="settings_noisy_notifications_preferences">Lawaaiierige meldingen configureren</string>
<string name="settings_noisy_notifications_preferences">Belangrijke meldingen configureren</string>
<string name="settings_call_notifications_preferences">Oproepmeldingen configureren</string>
<string name="settings_silent_notifications_preferences">Stille meldingen configureren</string>
<string name="settings_system_preferences_summary">Bepaal de LED-kleur, vibratie, geluid, …</string>
@ -722,7 +722,7 @@
<string name="settings_integrations_summary">Gebruik een integratiebeheerder om bots, bruggen, widgets en stickerpakketten te beheren.
\nIntegratiebeheerders ontvangen configuratiedata en kunnen widgets aanpassen, gespreksuitnodigingen versturen en bestuursniveaus instellen namens u.</string>
<string name="settings_discovery_category">Ontdekken</string>
<string name="settings_discovery_manage">Beheer uw ontdekinstellingen.</string>
<string name="settings_discovery_manage">Beheer uw ontdekkingsinstellingen.</string>
<string name="settings_integration_allow">Integraties toestaan</string>
<string name="settings_integration_manager">Integratiebeheerder</string>
<string name="room_widget_activity_title">Widget</string>
@ -774,18 +774,18 @@
<string name="event_redacted_by_user_reason">Gebeurtenis verwijderd door persoon</string>
<string name="event_redacted_by_admin_reason">Gebeurtenis gemodereerd door gesprek beheerder</string>
<string name="malformed_message">Niet correcte gebeurtenis, kan niet weergeven</string>
<string name="create_new_room">Maak een nieuw gesprek aan</string>
<string name="create_new_room">Nieuwe kamer aanmaken</string>
<string name="error_no_network">Geen netwerk. Controleer uw internet verbinding.</string>
<string name="action_change">Wijzigen</string>
<string name="change_room_directory_network">Wijzig netwerk</string>
<string name="change_room_directory_network">Netwerk wijzigen</string>
<string name="please_wait">Even wachten…</string>
<string name="room_preview_no_preview">Dit gesprek kan niet worden voorvertoond</string>
<string name="room_preview_no_preview">Deze kamer kan niet worden voorvertoond</string>
<string name="fab_menu_create_room">Gesprekken</string>
<string name="fab_menu_create_chat">Directe Berichten</string>
<string name="create_room_action_create">AANMAKEN</string>
<string name="create_room_name_hint">Gespreksnaam</string>
<string name="create_room_name_hint">Naam</string>
<string name="create_room_public_title">Publiek</string>
<string name="create_room_public_description">Iedereen kan deze kamer kunnen toetreden</string>
<string name="create_room_public_description">Iedereen kan deelnemer worden van deze kamer</string>
<string name="action_play">Afspelen</string>
<string name="notice_room_canonical_alias_unset_by_you">U heeft het hoofdadres voor dit gesprek verwijderd.</string>
<string name="notice_room_invite_with_reason_by_you">U heeft %1$s uitgenodigd. Reden: %2$s</string>
@ -861,8 +861,8 @@
<string name="notice_placed_voice_call_by_you">U heeft een audiogesprek geopend.</string>
<string name="notice_placed_video_call_by_you">U heeft een videogesprek geopend.</string>
<string name="notice_room_name_changed_by_you">U heeft de kamernaam veranderd naar: %1$s</string>
<string name="notice_room_avatar_changed_by_you">U heeft de kamer afbeelding aangepast</string>
<string name="notice_room_avatar_changed">%1$s heeft de kamer afbeelding aangepast</string>
<string name="notice_room_avatar_changed_by_you">U heeft de kamerafbeelding aangepast</string>
<string name="notice_room_avatar_changed">%1$s heeft de kamerafbeelding aangepast</string>
<string name="notice_room_topic_changed_by_you">U heeft het onderwerp gewijzigd naar: %1$s</string>
<string name="notice_display_name_removed_by_you">U heeft uw weergavenaam verwijderd (voorheen %1$s)</string>
<string name="notice_room_withdraw_by_you">U heeft de uitnodiging van %1$s ingetrokken</string>
@ -891,8 +891,8 @@
<item quantity="other">U heeft %1$s als gespreksadressen verwijderd.</item>
</plurals>
<plurals name="notice_room_aliases_added_by_you">
<item quantity="one">U heeft %1$s als gespreksadres toegevoegd.</item>
<item quantity="other">U heeft %1$s als gespreksadressen toegevoegd.</item>
<item quantity="one">U heeft %1$s als kameradres toegevoegd.</item>
<item quantity="other">U heeft %1$s als kameradressen toegevoegd.</item>
</plurals>
<string name="notice_room_withdraw_with_reason_by_you">U heeft de uitnodiging van %1$s ingetrokken. Reden: %2$s</string>
<string name="notice_room_third_party_registered_invite_with_reason_by_you">U heeft de uitnodiging voor %1$s aanvaard. Reden: %2$s</string>
@ -913,12 +913,12 @@
<string name="notice_room_server_acl_set_banned">• Servers die overeenkomen met %s zijn verbannen.</string>
<string name="notice_direct_room_update_by_you">U heeft hier geüpgraded.</string>
<string name="notice_direct_room_update">%s heeft hier geüpgraded.</string>
<string name="notice_made_future_room_visibility_by_you">U heeft toekomstige gespreksgeschiedenis zichtbaar gemaakt voor %1$s</string>
<string name="notice_made_future_room_visibility_by_you">U heeft toekomstige kamergeschiedenis zichtbaar gemaakt voor %1$s</string>
<string name="voice_message_n_seconds_warning_toast">%1$ds over</string>
<string name="direct_room_created_summary_item">%s is toegetreden.</string>
<string name="sent_verification_conclusion">Conclusie Bevestiging</string>
<string name="create_room_settings_section">Kamerinstellingen</string>
<string name="create_room_name_section">Gespreksnaam</string>
<string name="create_room_name_section">Kamernaam</string>
<string name="room_manage_integrations">Integraties Beheren</string>
<plurals name="notification_invitations">
<item quantity="one">%d uitnodiging</item>
@ -940,7 +940,7 @@
<string name="create_pin_confirm_title">PIN Bevestigen</string>
<string name="three_pid_revoke_invite_dialog_title">Uitnodiging intrekken</string>
<string name="contacts_book_title">Contactpersonen</string>
<string name="room_settings_name_hint">Gespreksnaam</string>
<string name="room_settings_name_hint">Kamernaam</string>
<string name="set_a_security_phrase_hint">Beveiligingszin</string>
<string name="bottom_sheet_setup_secure_backup_submit">Instellen</string>
<string name="bottom_sheet_setup_secure_backup_title">Beveiligde backup</string>
@ -962,7 +962,7 @@
<string name="settings_key_requests">Sleutelverzoeken</string>
<string name="delete_event_dialog_title">Verwijderen Bevestigen</string>
<string name="settings_account_data">Accountgegevens</string>
<string name="settings_dev_tools">Ontwikkel Gereedschap</string>
<string name="settings_dev_tools">Ontwikkelaarsgereedschap</string>
<string name="a11y_qr_code_for_verification">QR-code</string>
<string name="reset_cross_signing">Sleutels herstellen</string>
<string name="initialize_cross_signing">Gekruist Ondertekenen Initialiseren</string>
@ -971,7 +971,7 @@
<string name="settings_active_sessions_list">Actieve Sessies</string>
<string name="room_settings_enable_encryption_dialog_submit">Versleuteling inschakelen</string>
<string name="room_settings_enable_encryption_dialog_title">Versleuteling inschakelen\?</string>
<string name="settings_category_composer">Berichtverwerker</string>
<string name="settings_category_composer">Berichtbewerker</string>
<string name="room_profile_section_more_leave">Gesprek Verlaten</string>
<plurals name="room_profile_section_more_member_list">
<item quantity="one">Eén persoon</item>
@ -1043,7 +1043,7 @@
<string name="bottom_action_people_x">Directe Berichten</string>
<string name="feedback">Feedback</string>
<string name="settings_troubleshoot_test_token_registration_quick_fix">Token registreren</string>
<string name="settings_push_rules">Pushregels</string>
<string name="settings_push_rules">Push-regels</string>
<string name="event_redacted">Bericht verwijderd</string>
<string name="secure_backup_banner_setup_line1">Beveiligde Backup</string>
<string name="active_widgets_title">Actieve widgets</string>
@ -1061,7 +1061,7 @@
<string name="login_error_ssl_other">SSL-fout.</string>
<string name="call_switch_camera">Camera wisselen</string>
<string name="sound_device_wireless_headset">Draadloze Koptelefoon</string>
<string name="spaces_header">Spaces</string>
<string name="spaces_header">Ruimten</string>
<string name="action_switch">Wisselen</string>
<string name="upgrade">Opwaarderen</string>
<string name="space_suggested">Aanbevolen</string>
@ -1187,7 +1187,7 @@
<string name="action_copy">Kopiëren</string>
<string name="denied_permission_camera">Geef toestemming om de camera te gebruiken via de systeeminstellingen om deze actie uit te voeren.</string>
<string name="denied_permission_generic">Sommige rechten ontbreken om deze actie uit te voeren, geeft a.u.b. toestemming via de systeeminstellingen.</string>
<string name="spaces">Spaces</string>
<string name="spaces">Ruimten</string>
<string name="start_chatting">Begin met chatten</string>
<string name="action_reset">Herstellen</string>
<string name="action_dismiss">Afwijzen</string>
@ -1224,13 +1224,13 @@
<string name="login_splash_submit">Aan de slag</string>
<string name="space_settings_permissions_title">Spacerechten</string>
<string name="room_settings_permissions_title">Gespreksrechten</string>
<string name="space_participants_unban_prompt_msg">Door deze persoon niet meer de verbannen kan hij/zij opnieuw toetreden tot de space.</string>
<string name="room_participants_unban_prompt_msg">Door deze persoon niet meer de verbannen kan hij/zij opnieuw toetreden tot het gesprek.</string>
<string name="space_participants_unban_prompt_msg">Door de verbanning op te heffen kan deze gebruiker opnieuw deelnemer worden van de ruimte.</string>
<string name="room_participants_unban_prompt_msg">Door de verbanning op te heffen kan deze gebruiker opnieuw deelnemer worden van de kamer.</string>
<string name="space_participants_ban_prompt_msg">Door deze persoon te verbannen zal hij/zij verwijderd worden uit deze space en voorkomen dat hij/zij opnieuw toetreedt.</string>
<string name="room_participants_ban_reason">Reden voor verbanning</string>
<string name="space_participants_remove_prompt_msg">Door deze persoon de verwijderen zal hij/zij niet meer in deze space zitten.
<string name="space_participants_remove_prompt_msg">De gebruiker zal worden verwijderd uit deze ruimte.
\n
\nOm te voorkomen dat hij/zij opnieuw toetreedt, kunt u hem/haar ook verbannen.</string>
\nOm te voorkomen dat ze opnieuw toetreden, kunt u ze verbannen.</string>
<string name="room_participants_remove_prompt_msg">Door deze persoon te verwijderen zal hij/zij niet meer in dit gesprek zitten.
\n
\nOm te voorkomen dat hij/zij opnieuw toetreedt, kun je hem/haar ook verbannen.</string>
@ -1241,7 +1241,7 @@
\n
\nU kunt deze actie op elk moment ongedaan maken in de algemene instellingen.</string>
<string name="room_participants_power_level_demote_warning_prompt">U kunt deze wijziging niet ongedaan maken omdat uzelf degradeert, als u de laatste persoon met rechten bent in het gesprek zal het onmogelijk zijn om opnieuw rechten te krijgen.</string>
<string name="room_participants_leave_private_warning">Dit gesprek is niet publiek. U kunt niet opnieuw toetreden zonder uitnodiging.</string>
<string name="room_participants_leave_private_warning">Deze kamer is niet publiek. U kunt niet opnieuw deelnemer worden zonder uitnodiging.</string>
<string name="permissions_denied_add_contact">Toegang verlenen tot uw contactpersonen.</string>
<string name="permissions_denied_qr_code">Om de QR-code te scannen moet u toegang verlenen tot de camera.</string>
<string name="call_remove_jitsi_widget_progress">Oproep beëindigen…</string>
@ -1353,7 +1353,7 @@
<string name="room_list_quick_actions_low_priority_add">Toevoegen aan lage prioriteit</string>
<string name="room_list_quick_actions_favorite_remove">Verwijder van favorieten</string>
<string name="room_list_quick_actions_favorite_add">Toevoegen aan favorieten</string>
<string name="room_list_quick_actions_notifications_all_noisy">Alle berichten (luidruchtig)</string>
<string name="room_list_quick_actions_notifications_all_noisy">Alle belangrijke berichten</string>
<string name="content_reported_as_inappropriate_content">Deze inhoud is als ongepast gerapporteerd.
\n
\nAls u geen inhoud van deze persoon meer wilt zien, kunt u deze negeren om hun berichten te verbergen.</string>
@ -1396,7 +1396,7 @@
<string name="error_network_timeout">Het lijkt erop dat de server er te lang over doet om te reageren. Dit kan worden veroorzaakt door een slechte verbinding of een fout met de server. Probeer het over een tijdje opnieuw.</string>
<string name="error_terms_not_accepted">Probeer het opnieuw zodra u de algemene voorwaarden van uw homeserver hebt geaccepteerd.</string>
<string name="labs_allow_extended_logging_summary">Uitgebreide logboeken helpen ontwikkelaars door meer logboeken te verstrekken wanneer u een RageShake verzendt. Zelfs wanneer ingeschakeld, registreert de toepassing geen berichtinhoud of andere privégegevens.</string>
<string name="labs_allow_extended_logging">Uitgebreide logboeken inschakelen.</string>
<string name="labs_allow_extended_logging">Uitgebreide logboeken inschakelen</string>
<string name="settings_agree_to_terms">Ga akkoord met de servicevoorwaarden van de identiteitsserver (%s), zodat u vindbaar bent op e-mailadres of telefoonnummer.</string>
<string name="settings_discovery_disconnect_with_bound_pid">U deelt momenteel e-mailadressen of telefoonnummers op de identiteitsserver %1$s. U moet opnieuw verbinding maken met %2$s om ze niet meer te delen.</string>
<string name="settings_text_message_sent_wrong_code">De verificatiecode is niet correct.</string>
@ -1411,7 +1411,7 @@
<string name="identity_server_consent_dialog_title_2">Stuur e-mailadressen en telefoonnummers naar %s</string>
<string name="settings_discovery_consent_action_give_consent">Toestemming geven</string>
<string name="settings_discovery_consent_action_revoke">Mijn toestemming intrekken</string>
<string name="legals_home_server_title">Uw server-beleid</string>
<string name="legals_home_server_title">Uw thuisserverbeleid</string>
<string name="login_error_homeserver_from_url_not_found">Kan geen server bereiken op de URL %s. Controleer uw link of kies handmatig een server.</string>
<string name="settings_discovery_consent_notice_off_2">Uw contacten zijn privé. Om personen van uw contacten te ontdekken, hebben we uw toestemming nodig om contactgegevens naar uw identiteitsserver te sturen.</string>
<string name="settings_discovery_confirm_mail_not_clicked">We hebben u een bevestigingsmail gestuurd naar %s, controleer eerst uw e-mail en klik op de bevestigingslink</string>
@ -1467,8 +1467,8 @@
<string name="send_file_step_compressing_image">Afbeelding comprimeren…</string>
<string name="send_file_step_sending_file">Bestand versturen (%1$s / %2$s)</string>
<string name="send_file_step_sending_thumbnail">Miniatuur versturen (%1$s / %2$s)</string>
<string name="settings_labs_show_complete_history_in_encrypted_room">Toon volledige geschiedenis in versleutelde kamers</string>
<string name="settings_labs_show_hidden_events_in_timeline">Toon verborgen gebeurtenissen op de tijdlijn</string>
<string name="settings_labs_show_complete_history_in_encrypted_room">Volledige geschiedenis in versleutelde kamers weergeven</string>
<string name="settings_labs_show_hidden_events_in_timeline">Verborgen gebeurtenissen op de tijdlijn weergeven</string>
<string name="give_feedback">Geef feedback</string>
<string name="feedback_failed">De feedback kan niet worden verzonden (%s)</string>
<string name="feedback_sent">Bedankt, uw feedback is succesvol verzonden</string>
@ -1479,8 +1479,8 @@
<string name="send_suggestion_sent">Bedankt, de suggestie is succesvol verzonden</string>
<string name="send_suggestion_report_placeholder">Beschrijf hier uw suggestie</string>
<string name="send_suggestion_content">Schrijf hieronder uw suggestie.</string>
<string name="send_suggestion">Doe een suggestie</string>
<string name="preference_system_settings">Systeem instellingen</string>
<string name="send_suggestion">Een voorstel doen</string>
<string name="preference_system_settings">Systeeminstellingen</string>
<string name="preference_versions">Versies</string>
<string name="preference_help_summary">Hulp bij het gebruik van ${app_name}</string>
<string name="preference_help_title">Hulp en ondersteuning</string>
@ -1500,9 +1500,9 @@
\n
\n%s</string>
<string name="create_room_topic_section">Kameronderwerp (optioneel)</string>
<string name="create_new_space">Aanmaken nieuwe Space</string>
<string name="settings_show_redacted_summary">Toon een aanduiding voor verwijderde berichten</string>
<string name="settings_show_redacted">Toon verwijderde berichten</string>
<string name="create_new_space">Nieuwe ruimte aanmaken</string>
<string name="settings_show_redacted_summary">Geeft een plaatsvervangende melding weer voor verwijderde berichten.</string>
<string name="settings_show_redacted">Verwijderde berichten weergeven</string>
<string name="secure_backup_setup">Beveiligde back-up instellen</string>
<string name="secure_backup_banner_setup_line2">Beveiliging tegen verlies van toegang tot versleutelde berichten en gegevens</string>
<string name="recovery_key_export_saved">De herstelsleutel is opgeslagen.</string>
@ -1565,7 +1565,7 @@
<string name="room_alias_published_alias_subtitle">Gepubliceerde adressen kunnen door iedereen op elke server worden gebruikt om lid te worden van uw kamer. Om een adres te publiceren, moet het eerst als lokaal adres worden ingesteld.</string>
<string name="room_alias_published_alias_title">Gepubliceerde adressen</string>
<string name="space_settings_alias_subtitle">Adressen van deze kamer bekijken en beheren.</string>
<string name="space_settings_alias_title">Spaceadressen</string>
<string name="space_settings_alias_title">Ruimte-adressen</string>
<string name="room_settings_alias_subtitle">Bekijk en beheer de adressen van deze kamer en de zichtbaarheid ervan in de kamerdirectory.</string>
<string name="room_settings_alias_title">Kameradressen</string>
<string name="room_settings_guest_access_title">Sta toe om gasten te laten deelnemen</string>
@ -1584,7 +1584,7 @@
<string name="legals_no_policy_provided">Deze server biedt geen beleid.</string>
<string name="legals_third_party_notices">Bibliotheken van derden</string>
<string name="legals_identity_server_title">Uw identiteitsserverbeleid</string>
<string name="legals_application_title">${app_name} beleid</string>
<string name="legals_application_title">${app_name}-beleid</string>
<string name="analytics_opt_in_list_item_2">We delen <b>geen</b> informatie met derden</string>
<string name="analytics_opt_in_list_item_1">We registreren of profileren <b>geen</b> accountgegevens</string>
<string name="analytics_opt_in_content_link">hier</string>
@ -1601,7 +1601,7 @@
<string name="settings_show_emoji_keyboard_summary">Voeg een knop toe aan de invoerveld om het emoji-toetsenbord te openen</string>
<string name="settings_show_emoji_keyboard">Emoji-toetsenbord weergeven</string>
<string name="settings_chat_effects_description">Gebruik /confetti commando of stuur een bericht met ❄️ of 🎉</string>
<string name="settings_chat_effects_title">Toon chateffecten</string>
<string name="settings_chat_effects_title">Chateffecten weergeven</string>
<string name="settings_room_upgrades">Kamer upgrades</string>
<string name="settings_messages_by_bot">Berichten door bot</string>
<string name="settings_room_invitations">Kameruitnodigingen</string>
@ -1754,7 +1754,7 @@
<string name="settings_security_pin_code_grace_period_summary_on">Pincode is vereist na 2 minuten ${app_name} niet te hebben gebruikt.</string>
<string name="settings_security_pin_code_grace_period_title">Pincode vereist na 2 minuten</string>
<string name="settings_security_pin_code_notifications_summary_off">Geef alleen het aantal ongelezen berichten weer in een eenvoudige melding.</string>
<string name="settings_security_pin_code_notifications_summary_on">Toon details zoals kamernamen en berichtinhoud.</string>
<string name="settings_security_pin_code_notifications_summary_on">Geeft details weer zoals kamernamen en berichtinhoud.</string>
<string name="settings_security_pin_code_notifications_title">Inhoud in meldingen weergeven</string>
<string name="settings_security_pin_code_use_biometrics_summary_off">Pincode is de enige manier om ${app_name} te ontgrendelen.</string>
<string name="settings_security_pin_code_use_biometrics_summary_on">Schakel apparaatspecifieke biometrische gegevens in, zoals vingerafdrukken en gezichtsherkenning.</string>
@ -1831,8 +1831,8 @@
<string name="choose_locale_other_locales_title">Andere beschikbare talen</string>
<string name="user_code_info_text">Deel deze code met mensen zodat ze deze kunnen scannen om u toe te voegen en te beginnen met chatten.</string>
<string name="user_code_my_code">Mijn code</string>
<string name="user_code_share">Deel mijn code</string>
<string name="user_code_scan">Scan een QR-code</string>
<string name="user_code_share">Mijn code delen</string>
<string name="user_code_scan">Een QR-code scannen</string>
<string name="invite_users_to_room_failure">We kunnen geen personen uitnodigen. Controleer de personen die u wilt uitnodigen en probeer het opnieuw.</string>
<plurals name="invitations_sent_to_one_and_more_users">
<item quantity="one">Uitnodigingen verzonden naar %1$s en nog één</item>
@ -1843,7 +1843,7 @@
<string name="invitation_sent_to_one_user">Uitnodiging verzonden naar %1$s</string>
<string name="invite_friends_rich_title">🔐️ Doe mee met ${app_name}</string>
<string name="invite_friends_text">Hé, praat met me op ${app_name}: %s</string>
<string name="invite_friends">Nodig vrienden uit</string>
<string name="invite_friends">Vrienden uitnodigen</string>
<string name="add_people">Mensen toevoegen</string>
<string name="create_room_dm_failure">We kunnen je DM niet maken. Controleer de personen die u wilt uitnodigen en probeer het opnieuw.</string>
<string name="external_link_confirmation_message">De link %1$s brengt u naar een andere site: %2$s.
@ -1912,7 +1912,7 @@
<string name="error_failed_to_import_keys">Kan sleutels niet importeren</string>
<string name="qr_code_scanned_verif_waiting">Wachten op %s…</string>
<string name="qr_code_scanned_verif_waiting_notice">Bijna daar! Op bevestiging wachten…</string>
<string name="qr_code_scanned_self_verif_notice">Bijna daar! Toont het andere apparaat een vinkje\?</string>
<string name="qr_code_scanned_self_verif_notice">Bijna klaar! Toont het andere apparaat een vinkje\?</string>
<string name="add_a_topic_link_text">Een onderwerp toevoegen</string>
<string name="room_created_summary_no_topic_creation_text">%s om mensen te laten weten waar deze kamer over gaat.</string>
<string name="this_is_the_beginning_of_dm">Dit is het begin van uw privéberichtgeschiedenis met %s.</string>
@ -1989,7 +1989,7 @@
\nWees voorzichtig, het kan leiden tot onverwacht gedrag.</string>
<string name="no_connectivity_to_the_server_indicator_airplane">Vliegtuigmodus is ingeschakeld</string>
<string name="no_connectivity_to_the_server_indicator">Verbinding met de server is verbroken</string>
<string name="qr_code_scanned_by_other_notice">Bijna daar! Toont %s een vinkje\?</string>
<string name="qr_code_scanned_by_other_notice">Bijna klaar! Toont %s een vinkje\?</string>
<string name="verification_profile_device_untrust_info">Totdat deze persoon deze sessie vertrouwt, worden berichten die van en naar de sessie worden verzonden, gelabeld met waarschuwingen. U kunt het ook handmatig verifiëren.</string>
<string name="verification_profile_device_new_signing">%1$s (%2$s) aangemeld met een nieuwe sessie:</string>
<string name="verification_profile_device_verified_because">Deze sessie wordt vertrouwd voor veilig berichtenverkeer omdat %1$s (%2$s) deze heeft geverifieerd:</string>
@ -2011,7 +2011,7 @@
<string name="settings_server_version">Serverversie</string>
<string name="settings_server_name">Server naam</string>
<string name="settings_active_sessions_signout_device">Afmelden voor deze sessie</string>
<string name="settings_active_sessions_show_all">Toon alle sessies</string>
<string name="settings_active_sessions_show_all">Alle sessies tonen</string>
<string name="settings_hs_admin_e2e_disabled">Uw serverbeheerder heeft standaard end-to-end versleuteling uitgeschakeld in privékamers en privéberichten.</string>
<string name="encryption_information_dg_xsigning_disabled">Kruisondertekenen is niet ingeschakeld</string>
<string name="encryption_information_dg_xsigning_not_trusted">Kruisondertekenen is ingeschakeld.
@ -2070,21 +2070,21 @@
<string name="verification_sas_do_not_match">Ze komen niet overeen</string>
<string name="verification_conclusion_warning">Niet-vertrouwd inloggen</string>
<string name="login_error_threepid_denied">Uw e-maildomein is niet geautoriseerd om op deze server te registreren</string>
<string name="create_space_in_progress">Space aanmaken…</string>
<string name="create_space_in_progress">Ruimte aanmaken…</string>
<string name="create_room_in_progress">Kamer aanmaken…</string>
<string name="create_room_alias_invalid">Sommige tekens zijn niet toegestaan</string>
<string name="create_room_alias_empty">Geef een kameradres op</string>
<string name="create_room_alias_already_in_use">Dit adres is al in gebruik</string>
<string name="create_space_alias_hint">Space adres</string>
<string name="create_space_alias_hint">Ruimte-adres</string>
<string name="create_room_disable_federation_description">U kunt dit inschakelen als de kamer alleen wordt gebruikt voor samenwerking met interne teams op uw server. Dit kan later niet meer worden gewijzigd.</string>
<string name="create_room_disable_federation_title">Blokkeer iedereen die geen deel uitmaakt van %s om ooit deel te nemen aan deze kamer</string>
<string name="hide_advanced">Verberg geavanceerd</string>
<string name="show_advanced">Toon geavanceerd</string>
<string name="show_advanced">Geavanceerd weergeven</string>
<string name="create_room_encryption_description">Eenmaal ingeschakeld, kan versleuteling niet worden uitgeschakeld.</string>
<string name="command_description_lenny">Voegt ( ͡° ͜ʖ ͡°) toe aan een bericht in platte tekst</string>
<string name="command_description_shrug">Voegt ¯\\_(ツ)_/¯ toe aan een bericht in platte tekst</string>
<string name="settings_developer_mode_show_info_on_screen_summary">Toon wat nuttige informatie om te helpen bij het debuggen van de applicatie</string>
<string name="settings_developer_mode_show_info_on_screen_title">Toon debug-informatie op het scherm</string>
<string name="settings_developer_mode_show_info_on_screen_summary">Geeft wat nuttige informatie weer om te helpen bij foutopsporing van de app.</string>
<string name="settings_developer_mode_show_info_on_screen_title">Foutopsporingsinformatie op het scherm weergeven</string>
<string name="settings_developer_mode_fail_fast_summary">${app_name} kan vaker crashen als er een onverwachte fout optreedt</string>
<string name="autocomplete_limited_results">Laat alleen de eerste resultaten zien, typ meer letters…</string>
<string name="settings_rageshake_detection_threshold_summary">Schud je telefoon om de detectiedrempel te testen</string>
@ -2157,9 +2157,9 @@
<string name="login_reset_password_mail_confirmation_submit">Ik heb mijn e-mailadres geverifieerd</string>
<string name="login_reset_password_mail_confirmation_notice_2">Tik op de link om uw nieuwe wachtwoord te bevestigen. Klik hieronder als u de link hebt gevolgd die erin staat.</string>
<string name="ftue_auth_carousel_secure_title">Word eigenaar van uw gesprekken.</string>
<string name="create_space">Space aanmaken</string>
<string name="create_spaces_loading_message">Space aanmaken…</string>
<string name="activity_create_space_title">Aanmaken een space</string>
<string name="create_space">Ruimte aanmaken</string>
<string name="create_spaces_loading_message">Ruimte aanmaken…</string>
<string name="activity_create_space_title">Een ruimte aanmaken</string>
<string name="dev_tools_event_content_hint">Gebeurtenis inhoud</string>
<string name="upgrade_room_for_restricted_note">Houd er rekening mee dat bij het upgraden een nieuwe versie van de kamer wordt gemaakt. Alle huidige berichten blijven in deze gearchiveerde kamer.</string>
<string name="upgrade_room_for_restricted_no_param">Iedereen in een ouderkamer kan deze kamer vinden en er lid van worden. Het is niet nodig om iedereen handmatig uit te nodigen. U kunt dit op elk moment wijzigen in de kamer instellingen.</string>
@ -2247,7 +2247,7 @@
<string name="spaces_feeling_experimental_subspace">Experimenteel voelen\?
\nU kunt bestaande spaces aan een space toevoegen.</string>
<string name="all_rooms_youre_in_will_be_shown_in_home">Alle kamers waarin u deelneemt, worden weergegeven in Home.</string>
<string name="preference_show_all_rooms_in_home">Toon alle kamers in Home</string>
<string name="preference_show_all_rooms_in_home">Alle kamers op startscherm weergeven</string>
<string name="space_manage_rooms_and_spaces">Kamers en spaces beheren</string>
<string name="space_mark_as_suggested">Markeren als aanbevolen</string>
<string name="space_mark_as_not_suggested">Markeren als niet aanbevolen</string>
@ -2300,16 +2300,16 @@
<string name="create_spaces_details_public_header">Voeg wat details toe om het te laten opvallen. U kunt deze op elk moment wijzigen.</string>
<string name="space_type_private_desc">Alleen op uitnodiging, het beste voor uzelf of teams</string>
<string name="space_type_public_desc">Open voor iedereen, het beste voor gemeenschappen</string>
<string name="create_spaces_private_teammates">Een privé space voor u en uw teamgenoten</string>
<string name="create_spaces_private_teammates">Een privé-ruimte voor u en uw teamgenoten</string>
<string name="create_spaces_me_and_teammates">Ik en teamgenoten</string>
<string name="create_spaces_organise_rooms">Een privé space om je kamers te organiseren</string>
<string name="create_spaces_just_me">Alleen ik</string>
<string name="create_spaces_make_sure_access">Zorg ervoor dat de juiste mensen toegang hebben tot %s.</string>
<string name="create_spaces_who_are_you_working_with">Met wie werkt u samen\?</string>
<string name="create_spaces_you_can_change_later">U kunt dit later wijzigen</string>
<string name="create_spaces_choose_type_label">Wat voor soort space wilt u aanmaken\?</string>
<string name="your_private_space">Uw privé space</string>
<string name="your_public_space">Uw openbare space</string>
<string name="create_spaces_choose_type_label">Wat voor soort ruimte wilt u aanmaken\?</string>
<string name="your_private_space">Uw privé-ruimte</string>
<string name="your_public_space">Uw openbare ruimte</string>
<string name="add_space">Space toevoegen</string>
<string name="private_space">Privé space</string>
<string name="public_space">Openbare space</string>
@ -2352,7 +2352,7 @@
<string name="attachment_type_location">Locatie</string>
<string name="room_unsupported_e2e_algorithm_as_admin">De versleuteling is verkeerd geconfigureerd, zodat u geen berichten kunt versturen. Klik om instellingen te openen.</string>
<string name="room_unsupported_e2e_algorithm">De versleuteling is verkeerd geconfigureerd, zodat u geen berichten kunt versturen. Neem contact op met een beheerder om de versleuteling in een geldige staat te herstellen.</string>
<string name="message_bubbles">Toon bericht bubbels</string>
<string name="message_bubbles">Berichtbubbels weergeven</string>
<string name="location_timeline_failed_to_load_map">Kan kaart niet laden</string>
<string name="a11y_static_map_image">Kaart</string>
<string name="labs_enable_thread_messages_desc">Let op: app wordt opnieuw gestart</string>
@ -2393,7 +2393,7 @@
<item quantity="one">%1$d meer</item>
<item quantity="other">%1$d meer</item>
</plurals>
<string name="message_reaction_show_less">Toon minder</string>
<string name="message_reaction_show_less">Minder weergeven</string>
<string name="live_location_sharing_notification_description">Locatie delen is bezig</string>
<string name="live_location_sharing_notification_title">${app_name} Live locatie</string>
<string name="location_share_live_stop">Stop</string>
@ -2471,8 +2471,8 @@
\n
\nHoud er rekening mee dat deze actie de app opnieuw zal starten en dat dit enige tijd kan duren.</string>
<string name="initial_sync_request_title">Initieel synchronisatieverzoek</string>
<string name="settings_show_latest_profile_description">Toon de laatste profielinformatie (avatar en weergavenaam) voor alle berichten.</string>
<string name="settings_show_latest_profile">Toon laatste persoonsinformatie</string>
<string name="settings_show_latest_profile_description">Geeft de meest recente gebruikersinfo (avatar en weergavenaam) weer voor alle berichten.</string>
<string name="settings_show_latest_profile">Meest recente gebruikersinfo weergeven</string>
<string name="a11y_presence_busy">Bezet</string>
<string name="keys_backup_settings_signature_from_this_user">Back-up heeft een geldige handtekening van deze persoon.</string>
<string name="live_location_bottom_sheet_last_updated_at">%1$s geleden bijgewerkt</string>
@ -2563,7 +2563,7 @@
<string name="ftue_auth_email_subtitle">%s moet uw account verifiëren</string>
<string name="ftue_auth_email_title">Vul uw e-mailadres in</string>
<string name="ftue_auth_terms_subtitle">Lees de voorwaarden en het beleid van %s door</string>
<string name="ftue_auth_terms_title">Serverbeleid</string>
<string name="ftue_auth_terms_title">Serverbeleiden</string>
<string name="ftue_auth_choose_server_ems_cta">Neem contact op</string>
<string name="ftue_auth_choose_server_ems_subtitle">Element Matrix Services (EMS) is een robuuste en betrouwbare hostingservice voor snelle, veilige en realtime communicatie. Ontdek hoe op <a href="${ftue_ems_url}">element.io/ems</a></string>
<string name="ftue_auth_choose_server_ems_title">Wilt u uw eigen server hosten\?</string>
@ -2596,7 +2596,7 @@
</plurals>
<string name="search_space_two_parents">%1$s en %2$s</string>
<string name="auth_reset_password_error_unverified">E-mailadres niet geverifieerd, controleer je inbox</string>
<string name="device_manager_settings_active_sessions_show_all">Toon alle sessies (V2, WIP)</string>
<string name="device_manager_settings_active_sessions_show_all">Alle sessies weergeven (V2, WIP)</string>
<string name="location_share_loading_map_error">Kan kaart niet laden
\nDeze server is mogelijk niet geconfigureerd om kaarten weer te geven.</string>
<string name="a11y_open_settings">Open instellingen</string>
@ -2604,7 +2604,7 @@
<string name="device_manager_sessions_other_title">Andere sessies</string>
<string name="settings_sessions_list">Sessies</string>
<string name="a11y_open_spaces">Lijst met publieke spaces</string>
<string name="a11y_create_message">Maak een nieuw gesprek of een nieuwe kamer</string>
<string name="a11y_create_message">Nieuw gesprek of nieuwe kamer aanmaken</string>
<string name="room_list_filter_people">Personen</string>
<string name="room_list_filter_favourites">Favorieten</string>
<string name="room_list_filter_unreads">Ongelezen</string>
@ -2613,10 +2613,59 @@
<string name="home_layout_preferences_sort_activity">Activiteit</string>
<string name="home_layout_preferences_sort_by">Sorteer op</string>
<string name="home_layout_preferences_recents">Recente tonen</string>
<string name="home_layout_preferences_filters">Toon filters</string>
<string name="home_layout_preferences_filters">Filters weergeven</string>
<string name="home_layout_preferences">Lay-outvoorkeuren</string>
<string name="explore_rooms">Ontdek kamers</string>
<string name="create_room">Kamer creëren</string>
<string name="start_chat">Start gesprek</string>
<string name="start_chat">Gesprek starten</string>
<string name="all_chats">Alle gesprekken</string>
<string name="onboarding_new_app_layout_feedback_message">U kunt feedback geven via het menu rechtsboven.</string>
<string name="onboarding_new_app_layout_spaces_message">Krijg sneller en gemakkelijker toegang tot uw ruimten (rechtsonder).</string>
<string name="onboarding_new_app_layout_welcome_message">Om ${app_name} te versimpelen zijn tabbladen nu optioneel. U kunt ze beheren in het menu rechtsboven.</string>
<string name="home_empty_no_unreads_message">Hier zullen uw ongelezen berichten verschijnen wanneer u deze heeft.</string>
<string name="home_empty_no_rooms_message">De allesomvattende beveiligde chat-app voor teams, vrienden en organisaties. Maak een gesprek aan of word deelnemer van een bestaande kamer om te beginnen.</string>
<string name="home_empty_space_no_rooms_message">Ruimten zijn een nieuwe manier om kamers en personen te groeperen. Voeg een bestaande kamer toe, of maak een nieuwe aan via de knop rechtsonder.</string>
<plurals name="device_manager_inactive_sessions_description">
<item quantity="one">Overweeg uit te loggen van oude sessies (%1$d of meer dagen) welke u niet meer gebruikt.</item>
<item quantity="other">Overweeg uit te loggen van oude sessies (%1$d of meer dagen) welke u niet meer gebruikt.</item>
</plurals>
<string name="device_manager_unverified_sessions_description">Verifieer of log uit van ongeverifieerde sessies.</string>
<string name="device_manager_header_section_security_recommendations_description">Verbeter uw accountbeveiliging door deze aanbevelingen te volgen.</string>
<plurals name="device_manager_other_sessions_description_inactive">
<item quantity="one">Al %1$d+ dag inactief (%2$s)</item>
<item quantity="other">Al %1$d+ dagen inactief (%2$s)</item>
</plurals>
<string name="device_manager_header_section_security_recommendations_title">Beveiligingsaanbevelingen</string>
<string name="device_manager_unverified_sessions_title">Niet-geverifieerde sessies</string>
<string name="device_manager_inactive_sessions_title">Inactieve sessies</string>
<string name="home_empty_space_no_rooms_title">%s
\nziet er vrij leeg uit.</string>
<string name="home_empty_no_rooms_title">Welkom bij ${app_name},
\n%s.</string>
<string name="home_empty_no_unreads_title">Niets te melden.</string>
<string name="onboarding_new_app_layout_welcome_title">Welkom bij een nieuw uiterlijk!</string>
<string name="onboarding_new_app_layout_spaces_title">Toegang tot ruimten</string>
<string name="onboarding_new_app_layout_feedback_title">Feedback geven</string>
<string name="onboarding_new_app_layout_button_try">Uitproberen</string>
<string name="device_manager_other_sessions_description_unverified">Niet-geverifieerd · Laatste activiteit %1$s</string>
<string name="device_manager_other_sessions_description_verified">Geverifieerd · Laatste activiteit %1$s</string>
<string name="device_manager_other_sessions_view_all">Alle bekijken (%1$d)</string>
<string name="device_manager_view_details">Details bekijken</string>
<string name="device_manager_verify_session">Sessie verifiëren</string>
<string name="timeline_error_room_not_found">Sorry, deze kamer kon niet worden gevonden.
\nProbeer het later opnieuw. %s</string>
<string name="invites_empty_message">Dit is waar uw nieuwe verzoeken en uitnodigingen zullen verschijnen.</string>
<string name="space_list_empty_message">Ruimten zijn een nieuwe manier om kamers en personen te groeperen. Maak een ruimte aan om te beginnen.</string>
<string name="device_manager_verification_status_unverified">Ongeverifieerde sessie</string>
<string name="device_manager_verification_status_verified">Geverifieerde sessie</string>
<string name="a11y_device_manager_device_type_unknown">Onbekend apparaattype</string>
<string name="a11y_device_manager_device_type_desktop">Desktop</string>
<string name="a11y_device_manager_device_type_web">Web</string>
<string name="a11y_device_manager_device_type_mobile">Mobiel</string>
<string name="invites_empty_title">Niets nieuws.</string>
<string name="invites_title">Uitnodigingen</string>
<string name="space_list_empty_title">Nog geen ruimten.</string>
<string name="a11y_collapse_space_children">%s subitems inklappen</string>
<string name="a11y_expand_space_children">%s subitems uitvouwen</string>
<string name="change_space">Ruimte aanpassen</string>
</resources>

View file

@ -145,7 +145,7 @@
<string name="room_jump_to_first_unread">Przejdź do pierwszej nieprzeczytanej wiadomości</string>
<string name="room_participants_leave_prompt_title">Opuść pokój</string>
<string name="room_participants_leave_prompt_msg">Czy na pewno chcesz opuścić pokój?</string>
<string name="room_participants_header_direct_chats">WIADOMOŚCI BEZPOŚREDNIE</string>
<string name="room_participants_header_direct_chats">Wiadomości bezpośrednie</string>
<string name="room_participants_action_invite">Zaproś</string>
<string name="room_participants_action_ban">Blokuj</string>
<string name="room_participants_action_unban">Odbanuj</string>
@ -548,7 +548,7 @@
<string name="room_list_rooms_empty_title">Pokoje</string>
<string name="message_add_reaction">Dodaj reakcję</string>
<string name="create_new_room">Utwórz nowy pokój</string>
<string name="fab_menu_create_chat">Wiadomości Bezpośrednie</string>
<string name="fab_menu_create_chat">Wiadomości bezpośrednie</string>
<string name="create_room_action_create">STWÓRZ</string>
<string name="create_room_name_hint">Nazwa</string>
<string name="create_room_public_title">Publiczny</string>
@ -654,7 +654,7 @@
<string name="keys_backup_setup_step3_please_make_copy">Proszę wykonać kopię</string>
<string name="settings_preferences">Preferencje</string>
<string name="preference_voice_and_video">Głos i wideo</string>
<string name="bottom_action_people_x">Wiadomości Bezpośrednie</string>
<string name="bottom_action_people_x">Wiadomości bezpośrednie</string>
<string name="room_filtering_filter_hint">Filtruj rozmowy…</string>
<string name="room_filtering_footer_create_new_direct_message">Wyślij nową wiadomość bezpośrednią</string>
<string name="settings_sdk_version">Wersja Matrix SDK</string>
@ -841,7 +841,7 @@
<string name="push_gateway_item_url">Url:</string>
<string name="push_gateway_item_format">Format:</string>
<string name="settings_troubleshoot_test_token_registration_quick_fix">Zarejestruj token</string>
<string name="send_suggestion_sent">Dziękujemy, sugestia została szczęśliwie wysłana</string>
<string name="send_suggestion_sent">Dziękujemy, sugestia została pomyślnie wysłana</string>
<string name="send_suggestion_failed">Wysłanie sugestii nie powiodło się (%s)</string>
<string name="settings_labs_show_hidden_events_in_timeline">Wyświetl ukryte wydarzenia na linii czasowej</string>
<string name="edited_suffix">(edytowano)</string>
@ -2721,10 +2721,8 @@
<string name="device_manager_other_sessions_description_unverified">Nie zweryfikowano · Ostatnia aktywność %1$s</string>
<string name="device_manager_other_sessions_description_verified">Zweryfikowano · Ostatnia aktywność %1$s</string>
<string name="device_manager_other_sessions_view_all">Pokaż wszystkie (%1$d)</string>
<string name="device_manager_header_section_current_session">Obecna sesja</string>
<string name="device_manager_view_details">Pokaż szczegóły</string>
<string name="device_manager_verify_session">Zweryfikuj sesję</string>
<string name="device_manager_verification_status_detail_verified">Twoja obecna sesja jest przygotowana do bezpiecznej komunikacji.</string>
<string name="device_manager_verification_status_unverified">Niezweryfikowana sesja</string>
<string name="device_manager_verification_status_verified">Zweryfikowana sesja</string>
<string name="a11y_device_manager_device_type_unknown">Nieznany typ urządzenia</string>

View file

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="notice_room_invite_no_invitee">convite de %s</string>
<string name="notice_room_invite_no_invitee">Convite de %s</string>
<string name="notice_room_invite">%1$s convidou %2$s</string>
<string name="notice_room_invite_you">%1$s convidou você</string>
<string name="notice_room_join">%1$s juntou-se à sala</string>
@ -2320,7 +2320,7 @@
<string name="tooltip_attachment_gallery">Enviar imagens e vídeos</string>
<string name="tooltip_attachment_photo">Abrir câmera</string>
<string name="labs_auto_report_uisi_desc">Seu sistema vai automaticamente enviar logs quando um erro incapaz de decriptar ocorre</string>
<string name="labs_auto_report_uisi">Auro Reportar Erros de Decriptação.</string>
<string name="labs_auto_report_uisi">Auto Reportar Erros de Decriptação.</string>
<string name="room_member_override_nick_color">Sobrepor cor de nome de exibição</string>
<string name="login_splash_already_have_account">Eu já tenho uma conta</string>
<string name="ftue_auth_carousel_encrypted_title">Mensageria segura.</string>
@ -2477,7 +2477,7 @@
<string name="keys_backup_settings_signature_from_this_user">Backup tem uma assinatura válida desta(e) usuária(o).</string>
<string name="live_location_bottom_sheet_last_updated_at">Atualizada %1$s atrás</string>
<string name="labs_enable_live_location_summary">Implementação tempoária: locais persistem em histórico de sala</string>
<string name="labs_enable_live_location">Habilitar Compartilhament de Localização Ao Vivo</string>
<string name="labs_enable_live_location">Habilitar Compartilhamento de Localização Ao Vivo</string>
<string name="location_share_live_remaining_time">%1$s restando</string>
<string name="location_share_live_until">Ao vivo até %1$s</string>
<string name="location_share_live_view">Ver localização ao vivo</string>
@ -2499,7 +2499,7 @@
<string name="settings_troubleshoot_test_current_endpoint_title">Endpoint</string>
<string name="settings_troubleshoot_test_current_gateway_title">Gateway</string>
<string name="live_location_labs_promotion_switch_title">Ativar compartilhamento de localização</string>
<string name="live_location_labs_promotion_title">Compartilhamento de localização em tempo real</string>
<string name="live_location_labs_promotion_title">Compartilhamento de localização ao vivo</string>
<string name="settings_troubleshoot_test_current_gateway">Gateway atual: %s</string>
<string name="settings_troubleshoot_test_current_endpoint_failed">Não foi possível encontrar o endpoint.</string>
<string name="settings_troubleshoot_test_current_endpoint_success">Endpoint atual: %s</string>
@ -2538,7 +2538,7 @@
<string name="ftue_auth_login_username_entry">Nome de Usuária(o) / Email / Telefone</string>
<string name="ftue_auth_captcha_title">Você é um/uma humano(a)\?</string>
<string name="ftue_auth_password_reset_email_confirmation_subtitle">Siga as instruções enviadas para %s</string>
<string name="ftue_auth_password_reset_confirmation">Reset de senha</string>
<string name="ftue_auth_password_reset_confirmation">Senha resettada</string>
<string name="ftue_auth_forgot_password">Esqueceu senha</string>
<string name="ftue_auth_email_resend_email">Reenviar email</string>
<string name="ftue_auth_email_verification_footer">Não recebeu um email\?</string>
@ -2622,11 +2622,8 @@
<string name="device_manager_other_sessions_description_unverified">Não-verificada · Última atividade %1$s</string>
<string name="device_manager_other_sessions_description_verified">Verificada · Última atividade %1$s</string>
<string name="device_manager_other_sessions_view_all">Ver Todas (%1$d)</string>
<string name="device_manager_header_section_current_session">Sessão Atual</string>
<string name="device_manager_view_details">Visualizar Detalhes</string>
<string name="device_manager_verify_session">Verificar Sessão</string>
<string name="device_manager_verification_status_detail_unverified">Verifique sua sessão atual para mensageria segura melhorada.</string>
<string name="device_manager_verification_status_detail_verified">Sua sessão atual está pronta para mensageria segura.</string>
<string name="device_manager_verification_status_unverified">Sessão não-verificada</string>
<string name="device_manager_verification_status_verified">Sessão verificada</string>
<string name="a11y_device_manager_device_type_unknown">Tipo de dispositivo desconhecido</string>
@ -2636,4 +2633,39 @@
<string name="timeline_error_room_not_found">Desculpe, esta sala não tem sido encontrada.
\nPor favor retente mais tarde.%s</string>
<string name="invites_title">Convites</string>
<string name="onboarding_new_app_layout_button_try">Teste aí</string>
<string name="onboarding_new_app_layout_feedback_message">Toque na direita topo para ver a opção para feedback.</string>
<string name="onboarding_new_app_layout_feedback_title">Dar Feedback</string>
<string name="onboarding_new_app_layout_spaces_message">Acessar seus Espaços (direito fundo) mais rápido e fácio que jamais antes.</string>
<string name="onboarding_new_app_layout_spaces_title">Acessar Espaços</string>
<string name="onboarding_new_app_layout_welcome_message">Para simplificar seu ${app_name}, abas são agora opcionais. Gerencie-as usando o menu direito topo.</string>
<string name="onboarding_new_app_layout_welcome_title">Boas-vindas a uma nova visão!</string>
<string name="home_empty_no_unreads_message">Isto é onde suas mensagens não-lidas vão aparecer, quando você tiver algumas.</string>
<string name="home_empty_no_unreads_title">Nada a reportar.</string>
<string name="home_empty_no_rooms_message">O app de chat seguro tudo-em-um para equipes, amigas(os) e organizações. Crie um chat, ou junte-se a uma sala existe, para começar.</string>
<string name="home_empty_no_rooms_title">Boas-vindas a ${app_name},
\n%s.</string>
<string name="home_empty_space_no_rooms_message">Espaços são uma nova maneira de agrupar salas e pessoas. Adicione uma sala existente, ou crie uma nova, usando o botão direito fundo.</string>
<string name="home_empty_space_no_rooms_title">%s
\nestá parecendo um pouco vazio.</string>
<plurals name="device_manager_inactive_sessions_description">
<item quantity="one">Considere fazer signout de sessões antigas (%1$d dia ou mais) que você não usa mais.</item>
<item quantity="other">Considere fazer signout de sessões antigas (%1$d dias ou mais) que você não usa mais.</item>
</plurals>
<string name="device_manager_inactive_sessions_title">Sessões inativas</string>
<string name="device_manager_unverified_sessions_description">Verificar ou fazer signout de sessões não-verificadas.</string>
<string name="device_manager_unverified_sessions_title">Sessões não-verificadas</string>
<string name="device_manager_header_section_security_recommendations_description">Melhore a segurança de sua conta ao seguir estas recomendações.</string>
<string name="device_manager_header_section_security_recommendations_title">Recomendações de segurança</string>
<plurals name="device_manager_other_sessions_description_inactive">
<item quantity="one">Inativa(o) por %1$d+ dia (%2$s)</item>
<item quantity="other">Inativa(o) por %1$d+ dias (%2$s)</item>
</plurals>
<string name="invites_empty_message">Isto é onde suas novas requisições e convites vão estar.</string>
<string name="invites_empty_title">Nada novo.</string>
<string name="space_list_empty_message">Espaços são uma nova maneira de agrupar salas e pessoas. Crie um espaço para começar.</string>
<string name="space_list_empty_title">Nenhum espaço ainda.</string>
<string name="a11y_collapse_space_children">Colapsar filhos de %s</string>
<string name="a11y_expand_space_children">Expandir filhos de %s</string>
<string name="change_space">Mudar Espaço</string>
</resources>

View file

@ -2678,4 +2678,19 @@
<string name="explore_rooms">Обзор комнат</string>
<string name="start_chat">Начать беседу</string>
<string name="create_room">Создать комнату</string>
<string name="device_manager_other_sessions_view_all">Посмотреть все (%1$d)</string>
<string name="device_manager_header_section_security_recommendations_description">Повысьте безопасность учётной записи, следуя этим рекомендациям.</string>
<string name="device_manager_other_sessions_description_verified">Заверенная · Последняя активность %1$s</string>
<string name="device_manager_verification_status_unverified">Незаверенная сессия</string>
<string name="device_manager_verification_status_verified">Заверенная сессия</string>
<string name="a11y_device_manager_device_type_unknown">Неизвестный тип устройства</string>
<string name="a11y_device_manager_device_type_desktop">Компьютер</string>
<string name="a11y_device_manager_device_type_mobile">Мобильный</string>
<string name="device_manager_other_sessions_description_unverified">Незаверенная · Последняя активность %1$s</string>
<string name="device_manager_header_section_security_recommendations_title">Рекомендации по безопасности</string>
<string name="device_manager_unverified_sessions_title">Незаверенные сессии</string>
<string name="device_manager_inactive_sessions_title">Неактивные сессии</string>
<string name="home_empty_no_rooms_title">Добро пожаловать в ${app_name},
\n%s.</string>
<string name="onboarding_new_app_layout_feedback_title">Оставить отзыв</string>
</resources>

View file

@ -2672,11 +2672,8 @@
<string name="device_manager_other_sessions_description_unverified">Neoverené - Posledná aktivita %1$s</string>
<string name="device_manager_other_sessions_description_verified">Overené - Posledná aktivita %1$s</string>
<string name="device_manager_other_sessions_view_all">Zobraziť všetky (%1$d)</string>
<string name="device_manager_header_section_current_session">Aktuálna relácia</string>
<string name="device_manager_view_details">Zobraziť podrobnosti</string>
<string name="device_manager_verify_session">Overiť reláciu</string>
<string name="device_manager_verification_status_detail_unverified">Overte svoju aktuálnu reláciu pre vylepšené bezpečné zasielanie správ.</string>
<string name="device_manager_verification_status_detail_verified">Vaša aktuálna relácia je pripravená na bezpečné zasielanie správ.</string>
<string name="device_manager_verification_status_unverified">Neoverená relácia</string>
<string name="device_manager_verification_status_verified">Overená relácia</string>
<string name="a11y_device_manager_device_type_unknown">Neznámy typ zariadenia</string>
@ -2686,4 +2683,41 @@
<string name="timeline_error_room_not_found">Je nám ľúto, táto miestnosť nebola nájdená.
\nProsím, skúste to neskôr.%s</string>
<string name="invites_title">Pozvánky</string>
<string name="onboarding_new_app_layout_button_try">Vyskúšajte si to</string>
<string name="onboarding_new_app_layout_feedback_message">Ťuknutím na položku vpravo hore zobrazíte možnosť spätnej väzby.</string>
<string name="onboarding_new_app_layout_feedback_title">Poskytnite spätnú väzbu</string>
<string name="onboarding_new_app_layout_spaces_message">Získajte prístup k svojim priestorom (vľavo dole) rýchlejšie a jednoduchšie ako kedykoľvek predtým.</string>
<string name="onboarding_new_app_layout_spaces_title">Prístup k priestorom</string>
<string name="onboarding_new_app_layout_welcome_message">Pre zjednodušenie vašej aplikácie ${app_name}, sú teraz karty voliteľné. Spravujte ich pomocou ponuky vpravo hore.</string>
<string name="onboarding_new_app_layout_welcome_title">Vitajte v novom zobrazení!</string>
<string name="home_empty_no_unreads_message">Tu sa zobrazia neprečítané správy, ak nejaké máte.</string>
<string name="home_empty_no_unreads_title">Nič, o čom by bolo potrebné podať správu.</string>
<string name="home_empty_no_rooms_message">Kompletná zabezpečená aplikácia na komunikáciu pre tímy, priateľov a organizácie. Začnite konverzáciu alebo sa pridajte k existujúcej miestnosti.</string>
<string name="home_empty_no_rooms_title">Vitajte v aplikácii ${názov_aplikácie},
\n%s.</string>
<string name="home_empty_space_no_rooms_message">Priestory sú novým spôsobom zoskupovania miestností a ľudí. Pomocou tlačidla vpravo dole môžete pridať existujúcu miestnosť alebo vytvoriť novú.</string>
<string name="home_empty_space_no_rooms_title">%s
\nvyzerá trochu prázdne.</string>
<plurals name="device_manager_inactive_sessions_description">
<item quantity="one">Zvážte odhlásenie zo starých relácií (%1$d deň alebo viac), ktoré už nepoužívate.</item>
<item quantity="few">Zvážte odhlásenie zo starých relácií (%1$d dni alebo viac), ktoré už nepoužívate.</item>
<item quantity="other">Zvážte odhlásenie zo starých relácií (%1$d dní alebo viac), ktoré už nepoužívate.</item>
</plurals>
<string name="device_manager_inactive_sessions_title">Neaktívne relácie</string>
<string name="device_manager_unverified_sessions_description">Overte alebo sa odhláste z neoverených relácií.</string>
<string name="device_manager_unverified_sessions_title">Neoverené relácie</string>
<string name="device_manager_header_section_security_recommendations_description">Zlepšite zabezpečenie svojho účtu dodržiavaním týchto odporúčaní.</string>
<string name="device_manager_header_section_security_recommendations_title">Bezpečnostné odporúčania</string>
<plurals name="device_manager_other_sessions_description_inactive">
<item quantity="one">Neaktívny už %1$d+ deň (%2$s)</item>
<item quantity="few">Neaktívny už %1$d+ dni (%2$s)</item>
<item quantity="other">Neaktívny už %1$d+ dní (%2$s)</item>
</plurals>
<string name="invites_empty_message">Tu sa budú nachádzať vaše nové žiadosti a pozvánky.</string>
<string name="invites_empty_title">Nič nové.</string>
<string name="space_list_empty_message">Priestory sú novým spôsobom zoskupovania miestností a ľudí. Vytvorte si priestor a začnite.</string>
<string name="space_list_empty_title">Zatiaľ žiadne priestory.</string>
<string name="a11y_collapse_space_children">Zbaliť %s podpriestory</string>
<string name="a11y_expand_space_children">Rozbaliť %s podpriestory</string>
<string name="change_space">Zmeniť priestor</string>
</resources>

View file

@ -2722,11 +2722,8 @@
<string name="device_manager_other_sessions_description_unverified">Не звірений · Остання активність %1$s</string>
<string name="device_manager_other_sessions_description_verified">Звірений · Остання активність %1$s</string>
<string name="device_manager_other_sessions_view_all">Переглянути всі (%1$d)</string>
<string name="device_manager_header_section_current_session">Поточний сеанс</string>
<string name="device_manager_view_details">Переглянути подробиці</string>
<string name="device_manager_verify_session">Звірити сеанс</string>
<string name="device_manager_verification_status_detail_unverified">Звірте свій поточний сеанс для безпечнішого обміну повідомленнями.</string>
<string name="device_manager_verification_status_detail_verified">Ваш поточний сеанс готовий для безпечного обміну повідомленнями.</string>
<string name="device_manager_verification_status_unverified">Не звірений сеанс</string>
<string name="device_manager_verification_status_verified">Звірений сеанс</string>
<string name="a11y_device_manager_device_type_unknown">Невідомий тип пристрою</string>
@ -2736,4 +2733,43 @@
<string name="timeline_error_room_not_found">Перепрошуємо, цю кімнату не знайдено.
\nСпробуйте пізніше.%s</string>
<string name="invites_title">Запрошення</string>
<string name="onboarding_new_app_layout_button_try">Спробувати</string>
<string name="onboarding_new_app_layout_feedback_message">Клацніть праворуч вгорі, щоб побачити опцію відгуку.</string>
<string name="onboarding_new_app_layout_feedback_title">Надіслати відгук</string>
<string name="onboarding_new_app_layout_spaces_message">Отримуйте доступ до своїх просторів (унизу праворуч) швидше та легше, ніж раніше.</string>
<string name="onboarding_new_app_layout_spaces_title">Доступ до просторів</string>
<string name="onboarding_new_app_layout_welcome_message">Щоб спростити ваш ${app_name}, вкладки тепер необов’язкові. Керуйте ними у верхньому правому меню.</string>
<string name="onboarding_new_app_layout_welcome_title">Вітаємо в новому вигляді!</string>
<string name="home_empty_no_unreads_message">Тут з\'являтимуться ваші непрочитані повідомлення, якщо вони є.</string>
<string name="home_empty_no_unreads_title">Немає про що звітувати.</string>
<string name="home_empty_no_rooms_message">Універсальний безпечний застосунок для спілкування з командами, друзями й організаціями. Створіть бесіду або приєднайтеся до наявної кімнати, щоб розпочати.</string>
<string name="home_empty_no_rooms_title">Вітаємо в ${app_name},
\n%s.</string>
<string name="home_empty_space_no_rooms_message">Простори це новий спосіб групувати кімнати та людей. Додайте наявну кімнату або створіть нову, використовуючи кнопку внизу праворуч.</string>
<string name="home_empty_space_no_rooms_title">%s
\nмає дещо порожній вигляд.</string>
<plurals name="device_manager_inactive_sessions_description">
<item quantity="one">Зважте потребу вийти зі старих сеансів (%1$d день або більше), який ви більше не використовуєте.</item>
<item quantity="few">Зважте потребу вийти зі старих сеансів (%1$d дні або більше), які ви більше не використовуєте.</item>
<item quantity="many">Зважте потребу вийти зі старих сеансів (%1$d днів або більше), які ви більше не використовуєте.</item>
<item quantity="other">Зважте потребу вийти зі старих сеансів (%1$d днів або більше), які ви більше не використовуєте.</item>
</plurals>
<string name="device_manager_inactive_sessions_title">Неактивні сеанси</string>
<string name="device_manager_unverified_sessions_description">Звірити або вийти з не звірених сеансів.</string>
<string name="device_manager_unverified_sessions_title">Не звірений сеанс</string>
<string name="device_manager_header_section_security_recommendations_description">Удоскональте безпеку свого облікового запису, дотримуючись цих порад.</string>
<string name="device_manager_header_section_security_recommendations_title">Поради щодо безпеки</string>
<plurals name="device_manager_other_sessions_description_inactive">
<item quantity="one">Без активності %1$d+ день (%2$s)</item>
<item quantity="few">Без активності %1$d+ дні (%2$s)</item>
<item quantity="many">Без активності %1$d+ днів (%2$s)</item>
<item quantity="other">Без активності %1$d+ днів (%2$s)</item>
</plurals>
<string name="invites_empty_message">Тут з\'являтимуться нові запити та запрошення.</string>
<string name="invites_empty_title">Нічого нового.</string>
<string name="space_list_empty_message">Простори це новий спосіб групувати кімнати та людей. Створіть простір, щоб розпочати.</string>
<string name="space_list_empty_title">Ще немає просторів.</string>
<string name="a11y_collapse_space_children">Згорнути дочірні елементи %s</string>
<string name="a11y_expand_space_children">Розгорнути дочірні елементи %s</string>
<string name="change_space">Змінити простір</string>
</resources>

View file

@ -2500,7 +2500,7 @@
<string name="settings_presence_user_always_appears_offline_summary">若启用,即使正在使用应用,你也会对其他用户显示为离线状态。</string>
<string name="settings_presence_user_always_appears_offline">离线模式</string>
<string name="settings_presence">在场</string>
<string name="settings_autoplay_animated_images_summary">动画图片一出现就在时间中播放</string>
<string name="settings_autoplay_animated_images_summary">动画图片一出现就在时间线中播放</string>
<string name="threads_labs_enable_notice_title">Threads Beta</string>
<string name="initial_sync_request_content">${app_name} needs to perform a clear cache to be up to date, 原因如下:
\n%s
@ -2574,13 +2574,34 @@
<string name="device_manager_other_sessions_description_unverified">未验证 · 上次活跃 %1$s</string>
<string name="device_manager_other_sessions_description_verified">已验证 · 上次活跃 %1$s</string>
<string name="device_manager_other_sessions_view_all">查看全部(%1$d</string>
<string name="device_manager_header_section_current_session">当前会话</string>
<string name="device_manager_view_details">查看详情</string>
<string name="device_manager_verify_session">验证会话</string>
<string name="device_manager_verification_status_detail_unverified">为了获得增强的安全的消息传送,请验证你当前的会话。</string>
<string name="device_manager_verification_status_detail_verified">你的当前会话已准备好安全地收发消息。</string>
<string name="device_manager_verification_status_unverified">未验证的会话</string>
<string name="device_manager_verification_status_verified">已验证的会话</string>
<string name="a11y_device_manager_device_type_unknown">未知的设备类型</string>
<string name="invites_title">邀请</string>
<string name="a11y_device_manager_device_type_mobile">移动设备</string>
<string name="a11y_device_manager_device_type_web">Web</string>
<string name="a11y_device_manager_device_type_desktop">桌面</string>
<string name="change_space">更改空间</string>
<string name="space_list_empty_title">尚无空间。</string>
<string name="invites_empty_title">没有新的东西。</string>
<string name="invites_empty_message">你的新请求和邀请会在这里。</string>
<plurals name="device_manager_other_sessions_description_inactive">
<item quantity="other">%1$d+天不活跃(%2$s</item>
</plurals>
<string name="device_manager_header_section_security_recommendations_title">安全建议</string>
<string name="device_manager_header_section_security_recommendations_description">按照这些建议改善你的账户安全。</string>
<string name="device_manager_unverified_sessions_title">未验证的会话</string>
<string name="device_manager_unverified_sessions_description">验证未验证的会话或从之登出。</string>
<string name="device_manager_inactive_sessions_title">不活跃的会话</string>
<plurals name="device_manager_inactive_sessions_description">
<item quantity="other">请考虑从不再使用的旧会话(%1$d天或更久登出。</item>
</plurals>
<string name="home_empty_no_rooms_title">欢迎来到${app_name}
\n%s。</string>
<string name="home_empty_no_unreads_message">未读消息会在这里显示。</string>
<string name="onboarding_new_app_layout_feedback_title">提供反馈</string>
<string name="onboarding_new_app_layout_feedback_message">点击右上角查看反馈选项。</string>
<string name="onboarding_new_app_layout_button_try">试用</string>
</resources>

View file

@ -2572,11 +2572,8 @@
<string name="device_manager_other_sessions_description_unverified">未驗證 · 最後活動 %1$s</string>
<string name="device_manager_other_sessions_description_verified">已驗證 · 最後活動 %1$s</string>
<string name="device_manager_other_sessions_view_all">檢視全部 (%1$d)</string>
<string name="device_manager_header_section_current_session">目前工作階段</string>
<string name="device_manager_view_details">檢視詳細資訊</string>
<string name="device_manager_verify_session">驗證工作階段</string>
<string name="device_manager_verification_status_detail_unverified">驗證您目前的工作階段以強化安全通訊。</string>
<string name="device_manager_verification_status_detail_verified">您目前的工作階段已準備好進行安全通訊。</string>
<string name="device_manager_verification_status_unverified">未驗證的工作階段</string>
<string name="device_manager_verification_status_verified">已驗證的工作階段</string>
<string name="a11y_device_manager_device_type_unknown">未知的裝置類型</string>
@ -2586,4 +2583,37 @@
<string name="timeline_error_room_not_found">抱歉,找不到此聊天室。
\n請稍後再試。%s</string>
<string name="invites_title">邀請</string>
<string name="onboarding_new_app_layout_button_try">試試看</string>
<string name="onboarding_new_app_layout_feedback_message">輕點右上角來檢視回饋選項。</string>
<string name="onboarding_new_app_layout_feedback_title">給予回饋</string>
<string name="onboarding_new_app_layout_spaces_message">存取您的空間(右下角)比以往任何時候都更快且更輕鬆。</string>
<string name="onboarding_new_app_layout_spaces_title">存取空間</string>
<string name="onboarding_new_app_layout_welcome_message">為了簡化您的 ${app_name},分頁現在是選擇性的。使用右上角的選單管理它們。</string>
<string name="onboarding_new_app_layout_welcome_title">歡迎使用新的檢視!</string>
<string name="home_empty_no_unreads_message">當您有一些未讀的訊息時,這裡會顯示您的未讀訊息。</string>
<string name="home_empty_no_unreads_title">沒有要回報的東西。</string>
<string name="home_empty_no_rooms_message">適用於團隊、朋友與組織的多合一安全聊天應用程式。建立聊天室,或加入一個既有的聊天室。</string>
<string name="home_empty_no_rooms_title">歡迎使用 ${app_name},
\n%s.</string>
<string name="home_empty_space_no_rooms_message">空間是一種為聊天室與人們分組的新方式。使用右下角的按鈕新增既有的聊天室或建立新的。</string>
<string name="home_empty_space_no_rooms_title">%s
\n看起來有點空。</string>
<plurals name="device_manager_inactive_sessions_description">
<item quantity="other">考慮登出您不再使用的舊工作階段(%1$d天或更久</item>
</plurals>
<string name="device_manager_inactive_sessions_title">不活躍的工作階段</string>
<string name="device_manager_unverified_sessions_description">驗證或從未驗證的工作階段登出。</string>
<string name="device_manager_unverified_sessions_title">未驗證的工作階段</string>
<string name="device_manager_header_section_security_recommendations_description">按照這些建議提高您的帳號安全性。</string>
<string name="device_manager_header_section_security_recommendations_title">安全建議</string>
<plurals name="device_manager_other_sessions_description_inactive">
<item quantity="other">不活躍 %1$d+ 天 (%2$s)</item>
</plurals>
<string name="invites_empty_message">這是您的新請求與邀請的所在。</string>
<string name="invites_empty_title">沒有新東西。</string>
<string name="space_list_empty_message">空間是一種對聊天室與人們分組的新方式。建立空間以開始。</string>
<string name="space_list_empty_title">尚無空間。</string>
<string name="a11y_collapse_space_children">折疊 %s 個子空間</string>
<string name="a11y_expand_space_children">展開 %s 個子空間</string>
<string name="change_space">變更空間</string>
</resources>

View file

@ -442,6 +442,9 @@
<string name="labs_enable_new_app_layout_title">Enable new layout</string>
<string name="labs_enable_new_app_layout_summary">A simplified Element with optional tabs</string>
<string name="labs_enable_deferred_dm_title">Enable deferred DMs</string>
<string name="labs_enable_deferred_dm_summary">Create DM only on first message</string>
<!-- Home fragment -->
<string name="invitations_header">Invites</string>
<string name="low_priority_header">Low priority</string>
@ -1401,6 +1404,7 @@
<string name="command_description_avatar_for_room">Changes your avatar in this current room only</string>
<string name="command_description_markdown">On/Off markdown</string>
<string name="command_description_clear_scalar_token">To fix Matrix Apps management</string>
<string name="command_description_devtools">Open the developer tools screen</string>
<string name="command_description_whois">Displays information about a user</string>
<string name="markdown_has_been_enabled">Markdown has been enabled.</string>
@ -3229,18 +3233,12 @@
<string name="a11y_device_manager_device_type_unknown">Unknown device type</string>
<string name="device_manager_verification_status_verified">Verified session</string>
<string name="device_manager_verification_status_unverified">Unverified session</string>
<!-- TODO TO BE REMOVED: replaced by device_manager_verification_status_detail_current_session_verified -->
<string name="device_manager_verification_status_detail_verified" tools:ignore="UnusedResources">Your current session is ready for secure messaging.</string>
<!-- TODO TO BE REMOVED: replaced by device_manager_verification_status_detail_current_session_unverified -->
<string name="device_manager_verification_status_detail_unverified" tools:ignore="UnusedResources">Verify your current session for enhanced secure messaging.</string>
<string name="device_manager_verification_status_detail_current_session_verified">Your current session is ready for secure messaging.</string>
<string name="device_manager_verification_status_detail_other_session_verified">This session is ready for secure messaging.</string>
<string name="device_manager_verification_status_detail_current_session_unverified">Verify your current session for enhanced secure messaging.</string>
<string name="device_manager_verification_status_detail_other_session_unverified">Verify or sign out from this session for best security and reliability.</string>
<string name="device_manager_verify_session">Verify Session</string>
<string name="device_manager_view_details">View Details</string>
<!-- TODO TO BE REMOVED: replaced by device_manager_current_session_title -->
<string name="device_manager_header_section_current_session" tools:ignore="UnusedResources">Current Session</string>
<string name="device_manager_other_sessions_view_all">View All (%1$d)</string>
<!-- Examples: Verified · Last activity Yesterday at 6PM, Verified · Last activity Aug 31 at 5:47PM -->
<string name="device_manager_other_sessions_description_verified">Verified · Last activity %1$s</string>

View file

@ -14,6 +14,7 @@
android:id="@+id/menuDebug2"
android:icon="@drawable/ic_debug_icon"
android:title="Send"
app:showAsAction="always" />
app:showAsAction="always"
tools:ignore="AlwaysShowAction" />
</menu>
</menu>

View file

@ -60,7 +60,7 @@ android {
// that the app's state is completely cleared between tests.
testInstrumentationRunnerArguments clearPackageData: 'true'
buildConfigField "String", "SDK_VERSION", "\"1.5.0\""
buildConfigField "String", "SDK_VERSION", "\"1.5.2\""
buildConfigField "String", "GIT_SDK_REVISION", "\"${gitRevision()}\""
buildConfigField "String", "GIT_SDK_REVISION_UNIX_DATE", "\"${gitRevisionUnixDate()}\""

View file

@ -36,6 +36,7 @@ import org.junit.Assert.assertNotNull
import org.junit.Assert.assertTrue
import org.matrix.android.sdk.api.MatrixCallback
import org.matrix.android.sdk.api.MatrixConfiguration
import org.matrix.android.sdk.api.SyncConfig
import org.matrix.android.sdk.api.auth.data.HomeServerConnectionConfig
import org.matrix.android.sdk.api.auth.registration.RegistrationResult
import org.matrix.android.sdk.api.session.Session
@ -103,7 +104,8 @@ class CommonTestHelper internal constructor(context: Context) {
context,
MatrixConfiguration(
applicationFlavor = "TestFlavor",
roomDisplayNameFallbackProvider = TestRoomDisplayNameFallbackProvider()
roomDisplayNameFallbackProvider = TestRoomDisplayNameFallbackProvider(),
syncConfig = SyncConfig(longPollTimeout = 5_000L),
)
)
}

View file

@ -70,4 +70,8 @@ data class MatrixConfiguration(
* List of network interceptors, they will be added when building an OkHttp client.
*/
val networkInterceptors: List<Interceptor> = emptyList(),
/**
* Sync configuration.
*/
val syncConfig: SyncConfig = SyncConfig(),
)

View file

@ -0,0 +1,24 @@
/*
* Copyright 2022 The Matrix.org Foundation C.I.C.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.matrix.android.sdk.api
data class SyncConfig(
/**
* Time to keep sync connection alive for before making another request in milliseconds.
*/
val longPollTimeout: Long = 30_000L,
)

View file

@ -131,11 +131,10 @@ class SecretStoringUtils @Inject constructor(
*
* The secret is encrypted using the following method: AES/GCM/NoPadding
*/
@SuppressLint("NewApi")
@Throws(Exception::class)
fun securelyStoreBytes(secret: ByteArray, keyAlias: String): ByteArray {
return when {
buildVersionSdkIntProvider.get() >= Build.VERSION_CODES.M -> encryptBytesM(secret, keyAlias)
buildVersionSdkIntProvider.isAtLeast(Build.VERSION_CODES.M) -> encryptBytesM(secret, keyAlias)
else -> encryptBytes(secret, keyAlias)
}
}
@ -156,10 +155,9 @@ class SecretStoringUtils @Inject constructor(
}
}
@SuppressLint("NewApi")
fun securelyStoreObject(any: Any, keyAlias: String, output: OutputStream) {
when {
buildVersionSdkIntProvider.get() >= Build.VERSION_CODES.M -> saveSecureObjectM(keyAlias, output, any)
buildVersionSdkIntProvider.isAtLeast(Build.VERSION_CODES.M) -> saveSecureObjectM(keyAlias, output, any)
else -> saveSecureObject(keyAlias, output, any)
}
}
@ -189,7 +187,6 @@ class SecretStoringUtils @Inject constructor(
return cipher
}
@SuppressLint("NewApi")
@RequiresApi(Build.VERSION_CODES.M)
private fun getOrGenerateSymmetricKeyForAliasM(alias: String): SecretKey {
val secretKeyEntry = (keyStore.getEntry(alias, null) as? KeyStore.SecretKeyEntry)

View file

@ -16,6 +16,8 @@
package org.matrix.android.sdk.api.util
import androidx.annotation.ChecksSdkIntAtLeast
interface BuildVersionSdkIntProvider {
/**
* Return the current version of the Android SDK.
@ -26,9 +28,13 @@ interface BuildVersionSdkIntProvider {
* Checks the if the current OS version is equal or greater than [version].
* @return A `non-null` result if true, `null` otherwise.
*/
@ChecksSdkIntAtLeast(parameter = 0, lambda = 1)
fun <T> whenAtLeast(version: Int, result: () -> T): T? {
return if (get() >= version) {
result()
} else null
}
@ChecksSdkIntAtLeast(parameter = 0)
fun isAtLeast(version: Int) = get() >= version
}

View file

@ -1,235 +0,0 @@
/*
* Copyright 2020 The Matrix.org Foundation C.I.C.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.matrix.android.sdk.internal.session.room.send.queue
import kotlinx.coroutines.CancellationException
import kotlinx.coroutines.launch
import kotlinx.coroutines.runBlocking
import org.matrix.android.sdk.api.auth.data.SessionParams
import org.matrix.android.sdk.api.auth.data.sessionId
import org.matrix.android.sdk.api.extensions.tryOrNull
import org.matrix.android.sdk.api.failure.Failure
import org.matrix.android.sdk.api.failure.isLimitExceededError
import org.matrix.android.sdk.api.failure.isTokenError
import org.matrix.android.sdk.api.session.Session
import org.matrix.android.sdk.api.session.crypto.CryptoService
import org.matrix.android.sdk.api.session.events.model.Event
import org.matrix.android.sdk.api.session.sync.SyncState
import org.matrix.android.sdk.api.util.Cancelable
import org.matrix.android.sdk.internal.session.SessionScope
import org.matrix.android.sdk.internal.task.TaskExecutor
import timber.log.Timber
import java.io.IOException
import java.util.Timer
import java.util.TimerTask
import java.util.concurrent.LinkedBlockingQueue
import javax.inject.Inject
import kotlin.concurrent.schedule
/**
* A simple ever running thread unique for that session responsible of sending events in order.
* Each send is retried 3 times, if there is no network (e.g if cannot ping homeserver) it will wait and
* periodically test reachability before resume (does not count as a retry)
*
* If the app is killed before all event were sent, on next wakeup the scheduled events will be re posted
*/
@Deprecated("You should know use EventSenderProcessorCoroutine instead")
@SessionScope
internal class EventSenderProcessorThread @Inject constructor(
private val cryptoService: CryptoService,
private val sessionParams: SessionParams,
private val queuedTaskFactory: QueuedTaskFactory,
private val taskExecutor: TaskExecutor,
private val memento: QueueMemento
) : Thread("Matrix-SENDER_THREAD_SID_${sessionParams.credentials.sessionId()}"), EventSenderProcessor {
private fun markAsManaged(task: QueuedTask) {
memento.track(task)
}
private fun markAsFinished(task: QueuedTask) {
memento.unTrack(task)
}
override fun onSessionStarted(session: Session) {
start()
}
override fun onSessionStopped(session: Session) {
interrupt()
}
override fun start() {
super.start()
// We should check for sending events not handled because app was killed
// But we should be careful of only took those that was submitted to us, because if it's
// for example it's a media event it is handled by some worker and he will handle it
// This is a bit fragile :/
// also some events cannot be retried manually by users, e.g reactions
// they were previously relying on workers to do the work :/ and was expected to always finally succeed
// Also some echos are not to be resent like redaction echos (fake event created for aggregation)
tryOrNull {
taskExecutor.executorScope.launch {
Timber.d("## Send relaunched pending events on restart")
memento.restoreTasks(this@EventSenderProcessorThread)
}
}
}
// API
override fun postEvent(event: Event): Cancelable {
return postEvent(event, event.roomId?.let { cryptoService.isRoomEncrypted(it) } ?: false)
}
override fun postEvent(event: Event, encrypt: Boolean): Cancelable {
val task = queuedTaskFactory.createSendTask(event, encrypt)
return postTask(task)
}
override fun postRedaction(redactionLocalEcho: Event, reason: String?): Cancelable {
return postRedaction(redactionLocalEcho.eventId!!, redactionLocalEcho.redacts!!, redactionLocalEcho.roomId!!, reason)
}
override fun postRedaction(redactionLocalEchoId: String, eventToRedactId: String, roomId: String, reason: String?): Cancelable {
val task = queuedTaskFactory.createRedactTask(redactionLocalEchoId, eventToRedactId, roomId, reason)
return postTask(task)
}
override fun postTask(task: QueuedTask): Cancelable {
// non blocking add to queue
sendingQueue.add(task)
markAsManaged(task)
return task
}
override fun cancel(eventId: String, roomId: String) {
(currentTask as? SendEventQueuedTask)
?.takeIf { it.event.eventId == eventId && it.event.roomId == roomId }
?.cancel()
}
companion object {
private const val RETRY_WAIT_TIME_MS = 10_000L
}
private var currentTask: QueuedTask? = null
private var sendingQueue = LinkedBlockingQueue<QueuedTask>()
private var networkAvailableLock = Object()
private var canReachServer = true
private var retryNoNetworkTask: TimerTask? = null
override fun run() {
Timber.v("## SendThread started")
try {
while (!isInterrupted) {
Timber.v("## SendThread wait for task to process")
val task = sendingQueue.take()
.also { currentTask = it }
Timber.v("## SendThread Found task to process $task")
if (task.isCancelled()) {
Timber.v("## SendThread send cancelled for $task")
// we do not execute this one
continue
}
// we check for network connectivity
while (!canReachServer) {
Timber.v("## SendThread cannot reach server")
// schedule to retry
waitForNetwork()
// if thread as been killed meanwhile
// if (state == State.KILLING) break
}
Timber.v("## Server is Reachable")
// so network is available
runBlocking {
retryLoop@ while (task.retryCount.get() < 3) {
try {
// SendPerformanceProfiler.startStage(task.event.eventId!!, SendPerformanceProfiler.Stages.SEND_WORKER)
Timber.v("## SendThread retryLoop for $task retryCount ${task.retryCount}")
task.execute()
// sendEventTask.execute(SendEventTask.Params(task.event, task.encrypt, cryptoService))
// SendPerformanceProfiler.stopStage(task.event.eventId, SendPerformanceProfiler.Stages.SEND_WORKER)
break@retryLoop
} catch (exception: Throwable) {
when {
exception is IOException || exception is Failure.NetworkConnection -> {
canReachServer = false
if (task.retryCount.getAndIncrement() >= 3) task.onTaskFailed()
while (!canReachServer) {
Timber.v("## SendThread retryLoop cannot reach server")
// schedule to retry
waitForNetwork()
}
}
(exception.isLimitExceededError()) -> {
if (task.retryCount.getAndIncrement() >= 3) task.onTaskFailed()
Timber.v("## SendThread retryLoop retryable error for $task reason: ${exception.localizedMessage}")
// wait a bit
// Todo if its a quota exception can we get timout?
sleep(3_000)
continue@retryLoop
}
exception.isTokenError() -> {
Timber.v("## SendThread retryLoop retryable TOKEN error, interrupt")
// we can exit the loop
task.onTaskFailed()
throw InterruptedException()
}
exception is CancellationException -> {
Timber.v("## SendThread task has been cancelled")
break@retryLoop
}
else -> {
Timber.v("## SendThread retryLoop Un-Retryable error, try next task")
// this task is in error, check next one?
task.onTaskFailed()
break@retryLoop
}
}
}
}
}
markAsFinished(task)
}
} catch (interruptionException: InterruptedException) {
// will be thrown is thread is interrupted while seeping
interrupt()
Timber.v("## InterruptedException!! ${interruptionException.localizedMessage}")
}
// state = State.KILLED
// is this needed?
retryNoNetworkTask?.cancel()
Timber.w("## SendThread finished")
}
private fun waitForNetwork() {
retryNoNetworkTask = Timer(SyncState.NoNetwork.toString(), false).schedule(RETRY_WAIT_TIME_MS) {
synchronized(networkAvailableLock) {
canReachServer = HomeServerAvailabilityChecker(sessionParams).check().also {
Timber.v("## SendThread checkHostAvailable $it")
}
networkAvailableLock.notify()
}
}
synchronized(networkAvailableLock) { networkAvailableLock.wait() }
}
}

View file

@ -30,6 +30,7 @@ import kotlinx.coroutines.flow.MutableSharedFlow
import kotlinx.coroutines.flow.SharedFlow
import kotlinx.coroutines.launch
import kotlinx.coroutines.runBlocking
import org.matrix.android.sdk.api.MatrixConfiguration
import org.matrix.android.sdk.api.extensions.orFalse
import org.matrix.android.sdk.api.failure.Failure
import org.matrix.android.sdk.api.failure.isTokenError
@ -52,7 +53,6 @@ import javax.inject.Inject
import kotlin.concurrent.schedule
private const val RETRY_WAIT_TIME_MS = 10_000L
private const val DEFAULT_LONG_POOL_TIMEOUT = 30_000L
private val loggerTag = LoggerTag("SyncThread", LoggerTag.SYNC)
@ -61,7 +61,8 @@ internal class SyncThread @Inject constructor(
private val networkConnectivityChecker: NetworkConnectivityChecker,
private val backgroundDetectionObserver: BackgroundDetectionObserver,
private val activeCallHandler: ActiveCallHandler,
private val lightweightSettingsStorage: DefaultLightweightSettingsStorage
private val lightweightSettingsStorage: DefaultLightweightSettingsStorage,
private val matrixConfiguration: MatrixConfiguration,
) : Thread("Matrix-SyncThread"), NetworkConnectivityChecker.Listener, BackgroundDetectionObserver.Listener {
private var state: SyncState = SyncState.Idle
@ -181,7 +182,7 @@ internal class SyncThread @Inject constructor(
val timeout = when {
previousSyncResponseHasToDevice -> 0L /* Force timeout to 0 */
afterPause -> 0L /* No timeout after a pause */
else -> DEFAULT_LONG_POOL_TIMEOUT
else -> matrixConfiguration.syncConfig.longPollTimeout
}
Timber.tag(loggerTag.value).d("Execute sync request with timeout $timeout")
val presence = lightweightSettingsStorage.getSyncPresenceStatus()

View file

@ -118,3 +118,10 @@ if (hasPngs) {
if (github.requested_reviewers.users.length == 0 && !pr.draft) {
warn("Please add a reviewer to your PR.")
}
// Check that translations have not been modified by developers
if (user != "RiotTranslateBot") {
if (editedFiles.some(file => file.endsWith("strings.xml") && !file.endsWith("values/strings.xml"))) {
fail("Some translation files have been edited. Only user `RiotTranslateBot` (i.e. translations coming from Weblate) is allowed to do that.\nPlease read more about translations management [in the doc](https://github.com/vector-im/element-android/blob/develop/CONTRIBUTING.md#internationalisation).")
}
}

View file

@ -19,6 +19,9 @@
<issue id="IconExpectedSize" severity="error" />
<issue id="LocaleFolder" severity="error" />
<!-- AlwaysShowAction is considered as an error to force ignoring the issue when detected -->
<issue id="AlwaysShowAction" severity="error" />
<issue id="TooManyViews" severity="warning">
<!-- Ignore TooManyViews in debug build type -->
<ignore path="**/src/debug/**" />
@ -77,6 +80,7 @@
<issue id="KotlinPropertyAccess" severity="error" />
<issue id="DefaultLocale" severity="error" />
<issue id="CheckResult" severity="error" />
<issue id="StaticFieldLeak" severity="error" />
<issue id="InvalidPackage">
<!-- Ignore error from HtmlCompressor lib -->
@ -87,6 +91,7 @@
<!-- Manifest -->
<issue id="PermissionImpliesUnsupportedChromeOsHardware" severity="error" />
<issue id="DataExtractionRules" severity="error" />
<!-- Performance -->
<issue id="UselessParent" severity="error" />
@ -104,6 +109,9 @@
<issue id="TypographyDashes" severity="error" />
<issue id="PluralsCandidate" severity="error" />
<!-- Notification -->
<issue id="LaunchActivityFromNotification" severity="error" />
<!-- DI -->
<issue id="JvmStaticProvidesInObjectDetector" severity="error" />
</lint>

View file

@ -36,7 +36,7 @@ ext.versionMinor = 5
// Note: even values are reserved for regular release, odd values for hotfix release.
// When creating a hotfix, you should decrease the value, since the current value
// is the value for the next regular release.
ext.versionPatch = 0
ext.versionPatch = 2
static def getGitTimestamp() {
def cmd = 'git show -s --format=%ct'
@ -191,7 +191,7 @@ android {
// Known limitation: it does not modify the value in the BuildConfig.java generated file
// See https://issuetracker.google.com/issues/171133218
output.versionCodeOverride = baseVariantVersion + baseAbiVersionCode
print "ABI " + output.getFilter(OutputFile.ABI) + " \t-> VersionCode = " + output.versionCodeOverride + "\n"
print "ABI " + output.getFilter(OutputFile.ABI) + " \t-> VersionCode = " + output.versionCode + "\n"
output.outputFileName = output.outputFileName.replace("vector-app", "vector")
}
}

View file

@ -26,6 +26,7 @@ import androidx.test.filters.LargeTest
import com.adevinta.android.barista.internal.viewaction.SleepViewAction
import im.vector.app.features.MainActivity
import im.vector.app.ui.robot.ElementRobot
import org.junit.Ignore
import org.junit.Rule
import org.junit.Test
import org.junit.rules.RuleChain
@ -34,6 +35,7 @@ import java.util.UUID
@RunWith(AndroidJUnit4::class)
@LargeTest
@Ignore("Disabled temporarily so that we can unblock other PRs.")
class CantVerifyTest {
@get:Rule

View file

@ -225,8 +225,8 @@ class VerifySessionInteractiveTest : VerificationTestBase() {
// Wait until local secrets are known (gossip)
withIdlingResource(allSecretsKnownIdling(uiSession)) {
onView(withId(R.id.roomListContainer))
.check(matches(isDisplayed()))
onView(withId(R.id.groupToolbarAvatarImageView))
.perform(click())
}
}

View file

@ -20,11 +20,13 @@ import androidx.test.platform.app.InstrumentationRegistry
import im.vector.app.features.room.VectorRoomDisplayNameFallbackProvider
import org.matrix.android.sdk.api.Matrix
import org.matrix.android.sdk.api.MatrixConfiguration
import org.matrix.android.sdk.api.SyncConfig
fun getMatrixInstance(): Matrix {
val context = InstrumentationRegistry.getInstrumentation().targetContext
val configuration = MatrixConfiguration(
roomDisplayNameFallbackProvider = VectorRoomDisplayNameFallbackProvider(context)
roomDisplayNameFallbackProvider = VectorRoomDisplayNameFallbackProvider(context),
syncConfig = SyncConfig(longPollTimeout = 5_000L),
)
return Matrix(context, configuration)
}

View file

@ -92,7 +92,6 @@ private fun useMediaStoreScreenshotStorage(
}
}
@Suppress("DEPRECATION")
private fun usePublicExternalScreenshotStorage(
contentValues: ContentValues,
contentResolver: ContentResolver,

View file

@ -50,7 +50,7 @@ import im.vector.app.withIdlingResource
import timber.log.Timber
class ElementRobot(
private val labsPreferences: LabFeaturesPreferences = LabFeaturesPreferences(true)
private val labsPreferences: LabFeaturesPreferences = LabFeaturesPreferences(false)
) {
fun onboarding(block: OnboardingRobot.() -> Unit) {
block(OnboardingRobot())
@ -110,9 +110,6 @@ class ElementRobot(
closeSoftKeyboard()
block(NewDirectMessageRobot())
pressBack()
if (labsPreferences.isNewAppLayoutEnabled) {
pressBack() // close create dialog
}
waitUntilViewVisible(withId(R.id.roomListContainer))
}
@ -121,9 +118,6 @@ class ElementRobot(
clickOn(R.id.bottom_action_rooms)
}
RoomListRobot(labsPreferences).newRoom { block() }
if (labsPreferences.isNewAppLayoutEnabled) {
pressBack() // close create dialog
}
waitUntilViewVisible(withId(R.id.roomListContainer))
}

View file

@ -80,11 +80,6 @@ class DebugFeaturesStateFactory @Inject constructor(
key = DebugFeatureKeys.forceUsageOfOpusEncoder,
factory = VectorFeatures::forceUsageOfOpusEncoder
),
createBooleanFeature(
label = "Start DM on first message",
key = DebugFeatureKeys.startDmOnFirstMsg,
factory = VectorFeatures::shouldStartDmOnFirstMessage
),
createBooleanFeature(
label = "Enable New App Layout",
key = DebugFeatureKeys.newAppLayoutEnabled,

View file

@ -73,9 +73,6 @@ class DebugVectorFeatures(
override fun forceUsageOfOpusEncoder(): Boolean = read(DebugFeatureKeys.forceUsageOfOpusEncoder)
?: vectorFeatures.forceUsageOfOpusEncoder()
override fun shouldStartDmOnFirstMessage(): Boolean = read(DebugFeatureKeys.startDmOnFirstMsg)
?: vectorFeatures.shouldStartDmOnFirstMessage()
override fun isNewAppLayoutFeatureEnabled(): Boolean = read(DebugFeatureKeys.newAppLayoutEnabled)
?: vectorFeatures.isNewAppLayoutFeatureEnabled()

View file

@ -23,7 +23,7 @@ import android.content.IntentFilter
import android.content.SharedPreferences
import androidx.core.content.edit
import im.vector.app.core.debug.DebugReceiver
import im.vector.app.core.di.DefaultSharedPreferences
import im.vector.app.core.di.DefaultPreferences
import im.vector.app.core.utils.lsFiles
import timber.log.Timber
import javax.inject.Inject
@ -31,7 +31,10 @@ import javax.inject.Inject
/**
* Receiver to handle some command from ADB
*/
class VectorDebugReceiver @Inject constructor() : BroadcastReceiver(), DebugReceiver {
class VectorDebugReceiver @Inject constructor(
@DefaultPreferences
private val sharedPreferences: SharedPreferences,
) : BroadcastReceiver(), DebugReceiver {
override fun register(context: Context) {
context.registerReceiver(this, getIntentFilter(context))
@ -47,14 +50,14 @@ class VectorDebugReceiver @Inject constructor() : BroadcastReceiver(), DebugRece
intent.action?.let {
when {
it.endsWith(DEBUG_ACTION_DUMP_FILESYSTEM) -> lsFiles(context)
it.endsWith(DEBUG_ACTION_DUMP_PREFERENCES) -> dumpPreferences(context)
it.endsWith(DEBUG_ACTION_ALTER_SCALAR_TOKEN) -> alterScalarToken(context)
it.endsWith(DEBUG_ACTION_DUMP_PREFERENCES) -> dumpPreferences()
it.endsWith(DEBUG_ACTION_ALTER_SCALAR_TOKEN) -> alterScalarToken()
}
}
}
private fun dumpPreferences(context: Context) {
logPrefs("DefaultSharedPreferences", DefaultSharedPreferences.getInstance(context))
private fun dumpPreferences() {
logPrefs("DefaultSharedPreferences", sharedPreferences)
}
private fun logPrefs(name: String, sharedPreferences: SharedPreferences?) {
@ -67,8 +70,8 @@ class VectorDebugReceiver @Inject constructor() : BroadcastReceiver(), DebugRece
}
}
private fun alterScalarToken(context: Context) {
DefaultSharedPreferences.getInstance(context).edit {
private fun alterScalarToken() {
sharedPreferences.edit {
// putString("SCALAR_TOKEN_PREFERENCE_KEY" + Matrix.getInstance(context).defaultSession.myUserId, "bad_token")
}
}

View file

@ -17,6 +17,7 @@ package im.vector.app.push.fcm
import android.app.Activity
import android.content.Context
import android.content.SharedPreferences
import android.widget.Toast
import androidx.core.content.edit
import com.google.android.gms.common.ConnectionResult
@ -24,7 +25,7 @@ import com.google.android.gms.common.GoogleApiAvailability
import com.google.firebase.messaging.FirebaseMessaging
import im.vector.app.R
import im.vector.app.core.di.ActiveSessionHolder
import im.vector.app.core.di.DefaultSharedPreferences
import im.vector.app.core.di.DefaultPreferences
import im.vector.app.core.pushers.FcmHelper
import im.vector.app.core.pushers.PushersManager
import timber.log.Timber
@ -35,14 +36,13 @@ import javax.inject.Inject
* It has an alter ego in the fdroid variant.
*/
class GoogleFcmHelper @Inject constructor(
context: Context,
@DefaultPreferences
private val sharedPrefs: SharedPreferences,
) : FcmHelper {
companion object {
private const val PREFS_KEY_FCM_TOKEN = "FCM_TOKEN"
}
private val sharedPrefs = DefaultSharedPreferences.getInstance(context)
override fun isFirebaseAvailable(): Boolean = true
override fun getFcmToken(): String? {

View file

@ -6,6 +6,8 @@
<application
android:name="im.vector.app.VectorApplication"
android:allowBackup="false"
android:dataExtractionRules="@xml/data_extraction_rules"
android:fullBackupContent="@xml/backup_rules"
android:hasFragileUserData="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"

View file

@ -53,7 +53,7 @@ import im.vector.app.core.resources.BuildMeta
import im.vector.app.features.analytics.VectorAnalytics
import im.vector.app.features.call.webrtc.WebRtcCallManager
import im.vector.app.features.configuration.VectorConfiguration
import im.vector.app.features.disclaimer.doNotShowDisclaimerDialog
import im.vector.app.features.disclaimer.DisclaimerDialog
import im.vector.app.features.invite.InvitesAcceptor
import im.vector.app.features.lifecycle.VectorActivityLifecycleCallbacks
import im.vector.app.features.notifications.NotificationDrawerManager
@ -109,6 +109,8 @@ class VectorApplication :
@Inject lateinit var fcmHelper: FcmHelper
@Inject lateinit var buildMeta: BuildMeta
@Inject lateinit var leakDetector: LeakDetector
@Inject lateinit var vectorLocale: VectorLocale
@Inject lateinit var disclaimerDialog: DisclaimerDialog
// font thread handler
private var fontThreadHandler: Handler? = null
@ -159,7 +161,7 @@ class VectorApplication :
R.array.com_google_android_gms_fonts_certs
)
FontsContractCompat.requestFont(this, fontRequest, emojiCompatFontProvider, getFontThreadHandler())
VectorLocale.init(this, buildMeta)
vectorLocale.init()
ThemeUtils.init(this)
vectorConfiguration.applyToApplicationContext()
@ -171,7 +173,7 @@ class VectorApplication :
val sessionImported = legacySessionImporter.process()
if (!sessionImported) {
// Do not display the name change popup
doNotShowDisclaimerDialog(this)
disclaimerDialog.doNotShowDisclaimerDialog()
}
ProcessLifecycleOwner.get().lifecycle.addObserver(object : DefaultLifecycleObserver {

View file

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<full-backup-content>
<exclude
domain="file"
path="." />
<exclude
domain="database"
path="." />
<exclude
domain="sharedpref"
path="." />
<exclude
domain="external"
path="." />
<exclude
domain="root"
path="." />
</full-backup-content>

View file

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<data-extraction-rules>
<cloud-backup>
<exclude domain="root" />
<exclude domain="file" />
<exclude domain="database" />
<exclude domain="sharedpref" />
<exclude domain="external" />
</cloud-backup>
<device-transfer>
<exclude domain="root" />
<exclude domain="file" />
<exclude domain="database" />
<exclude domain="sharedpref" />
<exclude domain="external" />
</device-transfer>
</data-extraction-rules>

View file

@ -37,8 +37,10 @@
<bool name="settings_ignored_users_visible">true</bool>
<!-- Level 1: Labs -->
<bool name="settings_labs_deferred_dm_visible">true</bool>
<bool name="settings_labs_deferred_dm_default">true</bool>
<bool name="settings_labs_thread_messages_default">false</bool>
<bool name="settings_labs_new_app_layout_default">true</bool>
<bool name="settings_labs_new_app_layout_default">false</bool>
<bool name="settings_timeline_show_live_sender_info_visible">true</bool>
<bool name="settings_timeline_show_live_sender_info_default">false</bool>
<!-- Level 1: Advanced settings -->

View file

@ -230,9 +230,9 @@ dependencies {
}
// UnifiedPush
implementation 'com.github.UnifiedPush:android-connector:2.0.1'
implementation 'com.github.UnifiedPush:android-connector:2.1.0'
implementation "androidx.emoji2:emoji2:1.1.0"
implementation "androidx.emoji2:emoji2:1.2.0"
// WebRTC
// org.webrtc:google-webrtc is for development purposes only

View file

@ -1,46 +0,0 @@
/*
* Copyright (c) 2022 New Vector Ltd
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package im.vector.app
import android.os.Build
import java.lang.reflect.Field
/**
* Used to override [Build.VERSION.SDK_INT]. Ideally an interface should be used instead, but that approach forces us to either add suppress lint annotations
* and potentially miss an API version issue or write a custom lint rule, which seems like an overkill.
*/
object AndroidVersionTestOverrider {
private var initialValue: Int? = null
fun override(newVersion: Int) {
if (initialValue == null) {
initialValue = Build.VERSION.SDK_INT
}
val field = Build.VERSION::class.java.getField("SDK_INT")
setStaticField(field, newVersion)
}
fun restore() {
initialValue?.let { override(it) }
}
private fun setStaticField(field: Field, value: Any) {
field.isAccessible = true
field.set(null, value)
}
}

Some files were not shown because too many files have changed in this diff Show more